7 A simple web browser using GTK+ 3, GLib and WebKit2GTK+.
12 - An input box to change the URI or to search the current page
13 - Built-in launching of suckless' tabbed
14 - Built-in download manager
15 - Optimized hotkeys: Left hand on keyboard, right hand on mouse
16 - Keyword based searching: Opening "wi foo" will search wikipedia
19 - Cooperative instances using FIFOs
27 "lariza" stems from a german sentence:
29 Alle anderen waren mir zu anstrengend.
32 That phrase basically means: "It was too tiresome to deal with any other
33 browser." I couldn't find a simple browser that does just what I need.
34 Most of them are utterly bloated, others lack essential functions. Thus,
35 I was forced to write scripts and tools and stuff to deal with these
36 issues. That is what was tiresome. I don't want to work around bugs or
37 nonsensical behavior anymore.
39 So, I wrote my own browser^W WebKit GUI. WebKit does all the dirty work.
42 ================================
43 What lariza is and what it's not
44 ================================
46 lariza does what I need. It won't do other things. I'm open for pull
47 requests but please don't be upset if I turn them down -- which might
48 happen if it's a feature that I simply don't need.
50 Especially, it's very likely that lariza will never have a "follow
51 mode" like dwb, luakit or others have. I've used these browsers for
52 quite some time and I've also used Firefox extensions that add a "follow
53 mode". The point is, "follow mode" doesn't work anymore. This was a good
54 thing ten years ago. Today, a lot of websites make heavy use of
55 JavaScript or hovering. You NEED some kind of pointing device. I found
56 using "follow mode" to be very frustrating today, because you still have
57 to reach for the mouse all the time. So, you might as well just optimize
58 your mousing workflow.
60 lariza does not compete with powerful browsers like dwb or luakit, nor
61 with monstrous applications like Firefox or Chromium. lariza won't have
62 persistent storage, nor a plugin system, nor cloud sync, nor bookmarks.
64 lariza tries not to exceed 1000 lines of code.
66 That being said, this kind of minimalism is not for everyone. If you're
67 looking for more features (and a more open feature policy), then you
68 might want to check out okraits' fork:
70 https://github.com/okraits/lariza/
73 ========================
74 Using lariza with tabbed
75 ========================
77 By default, lariza automatically launches an instance of suckless'
80 You can turn this feature off (see command line arguments) or you can
81 specify a command line argument to embed lariza in an arbitrary
82 container (XEMBED). Note that lariza will also automatically embed new
83 windows in the same container.
85 When using the automatically launched tabbed instance, you can't use
86 tabbed's Ctrl + Shift + Return hotkey. This is because tabbed is
87 launched with "-d", so it knows nothing about lariza. However, lariza
88 provides its own hotkey to launch a new window which will be embedded in
89 the same instance of tabbed.
98 When the WebKit viewport is focused:
101 Close the current window.
104 Go to your "homepage". See the environment variable
111 Toggles "view source mode". This will display the web pages
112 source code. Note that the page will be reloaded (which is
113 annoying but WebKit enforces this).
116 Reload the current page.
119 Open the download manager.
122 Focus the location bar.
125 Focus the location bar and set its text to "/", allowing you
126 to easily initiate a search.
129 Repeat the last search (forward).
132 Repeat the last search (backward).
138 Open the link under the pointer in a new window.
140 Backward / forward (mouse keys 8 and 9)
143 Mod1 + Wheel up or Ctrl + Wheel up
144 Increase zoom level of the current page.
146 Mod1 + Wheel down or Ctrl + Wheel down
147 Decrase zoom level of the current page.
150 When the location bar is focused:
153 Close the current window.
156 Open the download manager.
159 Reload the current page.
162 Reset the content of the location bar to "/".
165 Reset the content of the location bar to the current URI.
168 "Commit", i.e. begin searching, do a keyword based search or
175 Close the download manager (downloads are not aborted).
178 ======================
179 Command line arguments
180 ======================
184 lariza [OPTION]... [URI]...
186 In addition to the standard arguments of GTK+ 2, lariza knows about the
190 Embeds the main window and all newly created windows in the
191 window specified by <wid>. The download manager is always a
195 Disables cooperative instances.
198 Disables automatic launching of suckless' tabbed.
200 After these options there can be any number of URIs. If no URIs are
201 given, $LARIZA_HOME_URI will be opened.
204 =====================
205 Environment variables
206 =====================
208 In addition to the standard variables of GTK+ 2, lariza knows about the
209 following environment variables:
211 LARIZA_ACCEPTED_LANGUAGE
212 In HTTP requests, WebKit sets the "Accepted-Language" header to
213 this value. Defaults to "en-US".
216 All downloads are automatically stored in this directory.
220 Cooperative instances are implemented using a named pipe in the
221 file system. The name of this pipe usually is (at least on
222 modern systems following XDG "standards"):
224 /var/run/user/$UID/lariza.fifo-$LARIZA_FIFO_SUFFIX
226 $UID is the id of your user. $LARIZA_FIFO_SUFFIX defaults to
227 "main". If you change this variable, you can launch several
228 independent cooperative instances of lariza.
231 This URI will be opened by pressing the appropriate hotkeys
232 ("homepage" or "new window") and if no URIs are specified on the
233 command line. Defaults to "about:blank".
236 Lariza will identify itself with this string. Uses WebKit's
237 default value if unset.
240 Zoom level for WebKit viewports. Defaults to 1.0.
243 =======================
244 Keyword based searching
245 =======================
247 In this file, you can configure keywords and the associated URIs:
249 ~/.config/lariza/keywordsearch
251 Each line has to look like this:
253 wi https://en.wikipedia.org/w/index.php?title=Special:Search&search=%s
255 "wi" is the keyword, so when opening "wi foo", lariza will search in
256 Wikipedia. Note the "%s" at the end of the URI: This is where your
257 search term will be placed.
259 Lines starting with "#" are ignored.
266 Open the download manager using the appropriate hotkey. A new window
267 listing your downloads will appear. Clicking on an item will remove it
268 from the list and -- if needed -- cancel the download.
270 There's no file manager integration (I don't use one), nor does lariza
271 delete, overwrite or resume downloads. If a file already exists, it
272 won't be touched. Instead, the new file name will have a suffix such as
273 ".1", ".2", ".3" and so on.
280 WebKit does create files in your $XDG_* directories, i.e. ~/.local/share
281 or ~/.cache. It's up to you what you want to do with this junk. I remove
282 it regularly when no WebKit browser is running. Another option would be
283 to change the $XDG_* variables.
285 I have explicitly not turned off the local storage feature in WebKit
286 because I don't know if this breaks web applications.
293 lariza needs the following Arch Linux packages:
296 - webkit2gtk (WebKit2 API for GTK+ 3)
305 - http://webkitgtk.org/reference/webkit2gtk/stable/index.html
306 - https://developer.gnome.org/gtk3/stable/index.html
307 - https://developer.gnome.org/glib/stable/index.html