7 A simple web browser using GTK+ 2, GLib and WebKitGTK+.
12 - An input box to change the URL or to search the current page
13 - Built-in launching of suckless' tabbed
15 - Built-in download manager
16 - Optimized hotkeys: Left hand on keyboard, right hand on mouse
17 - Keyword based searching: Opening "wi foo" will search wikipedia
20 - Cooperative instances using FIFOs
21 - Support for Flash and Java
28 "lariza" stems from a german sentence:
30 Alle anderen waren mir zu anstrengend.
33 That phrase basically means: "It was too tiresome to deal with any other
34 browser." I couldn't find a simple browser that does just what I need.
35 Most of them are utterly bloated, others lack essential functions. Thus,
36 I was forced to write scripts and tools and stuff to deal with these
37 issues. That is what was tiresome. I don't want to work around bugs or
38 nonsensical behavior anymore.
40 So, I wrote my own browser^W WebKit GUI. WebKit does all the dirty work.
43 ================================
44 What lariza is and what it's not
45 ================================
47 lariza does what I need. It won't do other things. I'm open for pull
48 requests but please don't be upset if I turn them down -- which might
49 happen if it's a feature that I simply don't need.
51 Especially, it's very likely that lariza will never have a "follow
52 mode" like dwb, luakit or others have. I've used these browsers for
53 quite some time and I've also used Firefox extensions that add a "follow
54 mode". The point is, "follow mode" doesn't work anymore. This was a good
55 thing ten years ago. Today, a lot of websites make heavy use of
56 JavaScript or hovering. You NEED some kind of pointing device. I found
57 using "follow mode" to be very frustrating today, because you still have
58 to reach for the mouse all the time. So, you might as well just optimize
59 your mousing workflow.
61 lariza does not compete with powerful browsers like dwb or luakit, nor
62 with monstrous applications like Firefox or Chromium. lariza won't have
63 persistent storage, nor a plugin system, nor cloud sync, nor bookmarks.
65 lariza tries not to exceed 1000 lines of code.
68 ========================
69 Using lariza with tabbed
70 ========================
72 By default, lariza automatically launches an instance of suckless'
75 You can turn this feature off (see command line arguments) or you can
76 specify a command line argument to embed lariza in an arbitrary
77 container (XEMBED). Note that lariza will also automatically embed new
78 windows in the same container.
80 When using the automatically launched tabbed instance, you can't use
81 tabbed's Ctrl + Shift + Return hotkey. This is because tabbed is
82 launched with "-d", so it knows nothing about lariza. However, lariza
83 provides its own hotkey to launch a new window which will be embedded in
84 the same instance of tabbed.
93 When the WebKit viewport is focused:
96 Close the current window.
99 Go to your "homepage" which is the first URL specified on
106 Toggles "view source mode". This will display the web pages
107 source code. Note that the page will be reloaded (which is
108 annoying but WebKit enforces this).
111 Reload the current page.
114 Open the download manager.
117 Focus the location bar.
120 Focus the location bar and set its text to "/", allowing you
121 to easily initiate a search.
124 Repeat the last search (forward).
127 Repeat the last search (backward).
133 Open the link under the pointer in a new window.
135 Backward / forward (mouse keys 8 and 9)
138 Mod1 + Wheel up or Ctrl + Wheel up
139 Increase zoom level of the current page.
141 Mod1 + Wheel down or Ctrl + Wheel down
142 Decrase zoom level of the current page.
145 When the location bar is focused:
148 Close the current window.
151 Open the download manager.
154 Reload the current page.
157 Reset the content of the location bar to "/".
160 Reset the content of the location bar to the current URL.
163 "Commit", i.e. begin searching, do a keyword based search or
170 Close the download manager (downloads are not aborted).
173 ======================
174 Command line arguments
175 ======================
177 In addition to the standard arguments of GTK+ 2, lariza knows about the
181 Embeds the main window and all newly created windows in the
182 window specified by <wid>. The download manager is always a
186 Print all navigation requests on STDERR.
189 Disables cooperative instances.
192 Disables automatic launching of suckless' tabbed.
195 =====================
196 Environment variables
197 =====================
199 In addition to the standard variables of GTK+ 2, lariza knows about the
200 following environment variables:
202 LARIZA_ACCEPTED_LANGUAGE
203 In HTTP requests, WebKit sets the "Accepted-Language" header to
204 this value. Defaults to "en-US".
207 All downloads are automatically stored in this directory.
211 Cooperative instances are implemented using a named pipe in the
212 file system. The name of this pipe usually is (at least on
213 modern systems following XDG "standards"):
215 /var/run/$UID/lariza.fifo-$LARIZA_FIFO_SUFFIX
217 $UID is the id of your user. $LARIZA_FIFO_SUFFIX defaults to
218 "main". If you change this variable, you can launch several
219 independent cooperative instances of lariza.
222 Zoom level for WebKit viewports. Defaults to 1.0.
229 lariza has built-in adblock functionality. In each line of
231 ~/.config/lariza/adblock.black
233 you can store a regular expression. These expressions match
234 case-insensitive and partially, i.e. ".*foo.*" is the same as ".*FOO.*"
235 and you can use anchors like "^https?://...".
237 Lines starting with "#" are ignored.
240 =======================
241 Keyword based searching
242 =======================
244 In this file, you can configure keywords and the associated URLs:
246 ~/.config/lariza/keywordsearch
248 Each line has to look like this:
250 wi https://en.wikipedia.org/w/index.php?title=Special:Search&search=%s
252 "wi" is the keyword, so when opening "wi foo", lariza will search in
253 Wikipedia. Note the "%s" at the end of the URL: This is where your
254 search term will be placed.
256 Lines starting with "#" are ignored.
263 Open the download manager using the appropriate hotkey. A new window
264 listing your downloads will appear. Clicking on an item will remove it
265 from the list and -- if needed -- cancel the download.
267 There's no file manager integration (I don't use one), nor does lariza
268 delete, overwrite or resume downloads. If a file already exists, it
269 won't be touched. Instead, the new file name will have a suffix such as
270 ".1", ".2", ".3" and so on.
277 WebKit does create files in your $XDG_* directories, i.e. ~/.local/share
278 or ~/.cache. It's up to you what you want to do with this junk. I remove
279 it regularly if no WebKit browser is running. Another option would be to
280 change the $XDG_* variables.
282 I have explicitly not turned off the local storage feature in WebKit
283 because I don't know if this breaks web applications.
290 lariza needs the following Arch Linux packages:
302 - http://webkitgtk.org/reference/webkitgtk/stable/index.html
303 - https://developer.gnome.org/gtk2/stable/index.html
304 - https://developer.gnome.org/glib/stable/index.html
306 Regular expressions supported by GRegex, you can use these in your
309 - https://developer.gnome.org/glib/stable/glib-regex-syntax.html