Table of Contents

Midori - Frequently asked questions

This document is licensed under the LGPL 2.1.

This is a list of frequently asked questions about the Midori Web Browser. Anyone feel free to improve and/ or extend this page, but keep it clean and easy to read for other Xfce users.

Getting started

About Midori

What is "Midori" and why should I use it?

Midori is a Web Browser, that aims to be lightweight and fast. It aligns well with the Xfce philosophy of making the most out of available resources.

How to pronounce Midori and what does the name mean?

Pronounce it “midoɺi”, with a Spanish/ Japanese “r” or “Mee-Doh-Ree” in English or read it Italian. The name comes from the Japanese word 緑 (みどり) for the colour “green”.

What does the logo mean?

The paw of a green cat. Obviously. Also it resembles the letter “M” in “Midori”. The curving is supposed to emphasize speed.

On which platforms does Midori run currently?

Midori is basically very portable and should run on all platforms that its dependencies support.

Under which license is Midori distributed?

Midori and all delivered artwork are licensed under the LGPL2.

Common problems

Why does Google Mail/ Calendar/ Maps, Facebook not work or show mobile version?

Because they discriminate against your browser. Go to Preferences > Network > Identify As, and choose Safari. Many other websites use similar means of detecting the browser.

Ideally Google would follow their own recommendation at some point.

There are missing icons/ warnings

The set of themed icons Midori can use is very limited. For instance icons for a new tab or the throbber are not guaranteed to be available. To fix this, install a Freedesktop.org spec compliant icon theme, such as Tango or Gnome, or one that is compatible with these.

Tweaking Midori on the Gtk level

If you don't have a desktop application that takes care of Gtk settings or if your interface doesn't support a particular feature, you can modify any settings easily manually by specifying them in a text file called ~/.gtkrc-2.0 or /etc/gtk-2.0/gtkrc:

Use Tango as a fallback for your icon theme:

gtk-icon-theme-name = "MySuperFancyTheme"
gtk-fallback-icon-theme = "Tango"

Use a smaller toolbar:

gtk-toolbar-icon-size = GTK_ICON_SIZE_SMALL_TOOLBAR

Enable changing hotkeys while hovering menu items:

gtk-can-change-accels = 1

Midori crashes shortly before pages are loaded

There appears to be an issue with Glib 2.16. The recommended solution is to upgrade your Glib package to 2.18.

Flash/ Netscape plugins don't work

You need to set MOZ_PLUGIN_PATH, for example like this:

export MOZ_PLUGIN_PATH="/usr/lib/mozilla/plugins"

The official Flash plugin is called libflashplayer.so .

You can either run that above line and run Midori in the same terminal afterwards or, for the long term, put it in ~/.bash_profile or /etc/profile.d or your respective distribution's place for this.

Flash is crashing all the time

Try searching for a package named nspluginwrapper or similar in your distribution repositories. It implements plugins in their own process so they can't drag down the whole browser.

HTTPS URLS won't load

That's a problem with WebKit. You can work around it to some extent if you start Midori like so:

export WEBKIT_IGNORE_SSL_ERRORS="1" midori

Javascript Popup windows

By default, Midori blocks all popup windows that openen on their own. With WebKitGTK+ 1.1.11 or higher, you can use a hidden setting to enable these windows.

  1. Quit Midori
  2. Open the file ~/.config/midori/config
  3. Add a line “javascript-can-open-windows-automatically=true”

There is also a preference in the git version as of 2010-03-23.

Scroll with middle mouse button

http://ubuntuforums.org/showthread.php?t=478418

HTML5 Video doesn't play

You need to have GStreamer plugins installed which implement the codecs.

  1. You need gstreamer0.10-pulse if you're using PulseAudio.
  2. You may need gstreamer0.10-alsa for ALSA, depending on your distribution.
  3. With Arch Linux, you may need to install liboil explicitly if it is not installed already (see this bug report).
  4. You need plugins for Theora, gstreamer0.10-base and MPEG-4 incluing aac (e.g. gst-plugins-faad), gstreamer0.10-bad. For WebM, you'll need plugins for vorbis (-base), matroska (-good), and vp8 (-bad). Have a look at http://www.gstreamer.net/documentation/plugins.html for details.
  5. For Youtube or Vimeo, you need WebKitGTK+ 1.1.20 or newer.

Java doesn't work, applets don't show up

Java is supported in WebKitGTK+ since 1.1.22. If you need Java, you need to upgrade to at least that version. Sun/ Oracle Java as well as IcedTea are known to work. Distribution specific setup might be required, such as setting LD_LIBRARY_PATH to include the location of libxul.so and making a symbolic link for libnpjp2.so to /usr/lib/mozilla.

icedtea6 version 1.8 and above has been known to crash midori. If this is the case for you, try sun-jre.

Are SOCKS proxy servers supported?

Currently only HTTP proxy servers are supported directly. A way to use SOCKS on Unix is to use tsocks with SSH as follows:

  1. Install 'tsocks'
  2. Open /etc/tsocks.conf in an editor
  3. Type something like this, you can choose the port freely:
    server = 127.0.0.1
    server_type = 5
    server_port = 5555
  4. Open an SSH connection with the same port:
     ssh -D localhost:5555 myhost.com 
  5. Run Midori with “tsocks” in front of it:
     tsocks midori 
  6. Now you can use for example http://www.whatsmyip.org/ to verify that you are using a SOCKS connection. The IP address should match the one of your SSH host. Remember to keep the SSH login running, and don't suspend it, otherwise it won't work.
  7. If the connection fails for some reason, you should see a connection error.

How do I get rid of the menubar?

In the menubar, go to View → Toolbars → Menubar, voilà the menubar is gone and a new icon appears at the right end of the toolbar. Click the icon to access functionality that otherwise sits in the menubar. Midori 0.3.2 disables the menubar by default.

Why can't I use periods when searching from the location bar?

Midori tries to make a smart guess on whether you are searching for something or typing a valid address by hand. Yet there are ambiguous cases so it fails.

Try using 'g' in front of the search terms, like 'g Ms.Marple'. The 'g' is a token that tells the browser you want to use Google. See Tools > Manage Search Engines or right-click the location bar and select the menu item, to look at search engines and tokens.

How can I reload and bypass the cache?

Hold the Shift key while clicking Refresh in the toolbar (this works in Chromium, Mozilla, Opera and Safari, too). Since Midori 0.3.2 you can use Ctrl+Shift+R.

How do I make tabs pinned/ sticky/ minimized?

Right-click the tab label, and click 'Minimize'.

Why doesn't Google "live search" work?

You need to set Preferences > Network > Identify As to Firefox.

Opening html email with Mutt

Place the following in ~/.mutt/mailcap or ~/.mailcap:

text/html; midori -a '%s'; test=test -n "$DISPLAY"; nametemplate=%s.html

Scrolling on website xyz is very slow

  1. Go to Tools > Extensions
  2. Enable 'User Addons' if it's not yet enabled
  3. Create a text file .local/share/midori/styles/scrollfix.user.css
  4. Put this into the file: * {-webkit-box-shadow: none !important;}

File opening doesn't work/ PDFs are opened with GIMP

Midori opens files with GIO, and falls back to xdg-open, exo-open or gnome-open if these are available. All of this relies on freedesktop.org MIME configuration. To tweak this there are multiple options:

  1. Use 'Open With' with a graphical file manager
  2. Edit ~/.local/share/applications/defaults.list with a text editor
  3. Run something like ‘xdg-mime default evince.desktop application/pdf’

xdg-open knows how to handle GNOME, KDE and Xfce. LXDE is unfortunately not supported yet, see https://bugs.freedesktop.org/show_bug.cgi?id=26058

Open magnet:, irc:, apt: and friends with an application

As of git 2011-03-05 02:40:00 UTC and Midori 0.3.3 you can

Add a line to ~/.local/share/applications/mimeapps.list:

  x-scheme-handler/magnet=transmission-gtk.desktop

Or install an application which advertises the scheme like so:

  MimeType=x-scheme-handler/magnet;

Note that incomplete .desktop files will silently fail and it will look as if it doesn't exist.

Features

Web Applications/ Private Browsing

There are two closely related features to open websites as dedicated windows of their own. You can do the following to use them:

  1. File (or Globe button) → Private Browsing
  2. Right-click a hyperlink → Open as Web Application
  3. Add or Edit a bookmark → [x] Run as web application
  4. Type ‘midori -a http://foo.bar’ on a command line

You can also add options such as ‘-e Fullscreen’, ‘-e Navigationbar’ or ‘-e Statusbar’ (as of Midori 0.2.9 ‘midori –help-execute will list all available commands’)

A window like this is always a separate process, so crashes don't affect the normal browser session. No sensitive data such as cookies, history or bookmarks are stored. No extensions are loaded. Panels are not available.

As of Midori 0.2.9 Private Browsing uses preferences, cookies, keyboard shortcuts and search engines from the normal session, but it won't save any changes. This behaviour can be emulated from the command line with ”-a” and ”-c”.

Download Managers

Midori can start downloads with an external download manager. To use that feature, open up the “Preferences” dialog, click the “Applications” tab, insert the name of a program executable or shell script in the “Download Manager” input box, right-click a link, and click “Download with Download Manager”. There is a list of download managers on Wikipedia.

Admiral

Admiral is a shell script that utilizes aria2, Zenity, and libnotify-bin. Admiral allows you to choose the directory to which you wish download a file with a GUI dialog, sends a desktop notification if the download fails and when starting and finishing the download, and logs failures.

Aria2

aria2 is a lightweight multi-protocol & multi-source, cross platform download utility operated in command-line. It supports HTTP/HTTPS, FTP, BitTorrent and Metalink. aria2 has built-in XML-RPC interface. You can manipulate aria2 via XML-RPC interface.

Uget (former Urlgfe)

UGet is a cross platform download manager. It can watch the clipboard to offer download dialogues automatically and it can be configured to pass through files, such as torrents, to the appropriate handler.

GGet

GGet is a download manager primarily for the GNOME desktop, but it also works in other unix/ GTk+ environments.

Proxy servers

By running a local proxy you can modify web content even before it has reached Midori. That allows you to do things similar to what user scripts and user styles provide and even others that neither is suitable for.

To use Midori with a proxy server, there are two options:

  1. WebKit is built with libcurl. Define an environment variable http_proxy and set it to your proxy server like so:
export http_proxy = 234.22.154.11:8000
  1. 2. WebKit is built with libsoup. Midori >= 0.1.2, is built with libsoup. Try to open some web page. Now open the preferences, and you should see a Network tab with a 'Proxy server' field.

Privoxy

Privoxy is a non-caching web proxy with filter capabilites and particular support for blocking advertisements before even loading them.

http://www.privoxy.org/faq/

Mousehole

Mousehole is a scriptable proxy server written in Ruby.

http://code.whytheluckystiff.net/mouseHole/

Polipo

Polipo is a caching web proxy (a web cache) designed to be used by one person or a small group of people. It is similar in spirit to WWWOFFLE, but the implementation techniques are more like the ones used by Squid.

http://www.pps.jussieu.fr/~jch/software/polipo/

Using the Keyboard

Following Links

To enable Hints in Midori [similar to those vimperator provides in Firefox], press .

With hints enabled, type the link number, and press Enter to open the link in the current tab, or Ctrl-Enter to open the link in a new tab. To clear a typed link number before pressing Enter or Ctrl-Enter, use Escape.

Toggling between pages

Enable the History List extension Tools → Extensions. Now you can conveniently toggle between any two pages with Ctrl-Tab.

Customizing keyboard shortcuts

Enable the Shortcuts extension Tools → Extensions. To edit a keybinding Tools → Customize Shortcuts…

Mouse Gestures

Midori has a Mouse Gestures extension (since git 2009-01-21).

As of 0.2.5 the right button initiates gestures.

You can change the button using a hidden option:

  1. Create a text file ~/.config/midori/extensions/libmouse-gestures.so/config .
  2. Type the following in there:
  [settings]
  button=2

For a quick and dirty overview of the gestures in the current release take a look at the preliminary manual. Further information is available at the MGX website.

Additionally, there are programs allowing mouse gestures system-wide, for example EasyStroke.

Spell check

First enable spell checking: Edit→Preferences→Behavior and Check off “Enable Spell Checking”.

Now while typing any errors should get underlined in red. To get suggestions, highlight the word and right-click. Should see a list of suggestions on the top of the menu.

User scripts

Overview

UserScripts are scripts applied on some, or on all web pages. They can modify pages locally to add or alter functionality. That includes fixing bugs in web pages. User scripts are also available in other browsers, in the form of Mozilla's Greasemonkey or Opera's User JavaScript.

How to install a UserScript

First, you need to find some scripts (or write your own). You can find some at userscripts.org. As explained previously, a lot of scripts work, while others do not work.

To install a userscript, you have to download the script as a file, and put it in the following directory ~/.local/share/midori/scripts (you may need to create that directory if it does not exist). Midori will automatically see and use it, which you can also see in the user scripts panel.

Note, if the script is only shown as source code on the page, you first have to create a new text file in a text editor, copy the source code into the new file, and save it as my-user-script.js where ”.js” is the extension.

Flash blocking via a User script

You can use BlockFlash2 as a user script which replaces all Flash elements with a button that says “Play Flash”.

Flash blocking via a User style

You can also use FlashBlock WannaBe as a user script in order to replace Flash elements with placeholders and load them on click. The script is pretty advanced compared to most Flash blockers found on the web.

User styles

Overview

User styles are CSS Cascading Style sheets that are loaded locally and applied on top of web pages, similar to User scripts, in order to add or alter functionality and also fix bugs.

How to install a user style

First, you need to find some styles (or write your own). You can find some at userstyles.org. Many styles may or may not work, depending on whether the author decided to use browser specific features.

To install a user style, you have to download the style as a file, and put it in the following directory ~/.local/share/midori/styles (you may need to create that directory if it does not exist). Midori will automatically see and use it, which you can also see in the user styles panel.

Note, if the style is only shown as source code on the page, you first have to create a new text file in a text editor, copy the source code into the new file, and save it as my-user-style.css where ”.css” is the extension.

How to install a user style before Midori 0.0.20

Open up the Preferences and use the file chooser button beside User Stylesheet to choose a style sheet file. The style sheet will from now on be applied to all sites automatically.

A user css to display the url when a link is hovered

This user css is used to display the corresponding url when a link is hovered. This is similar to what chromium/chrome provides when hovering over a link, shown on the bottom left of the page. Add the following to ~/.local/share/midori/styles, then restart Midori and make sure that it is enabled Tools → Userstyles.

Customize as needed:

a[href]:hover {
            text-decoration: none !important;
        }
        a[href]:hover:after {
            content: attr(href);
            position: fixed; left: 4px; bottom: 4px;
            padding: 0 6px !important;
            max-width: 95%; overflow: hidden;
            white-space: nowrap; text-overflow: ellipsis;
            font:10pt sans-serif !important; text-shadow: 0 0 12px white;
            background-color: ButtonFace !important; color: ButtonText !important;
            opacity: 0.8; outline: ButtonFace solid thick;
            z-index: 9999;
        }