Skip to content

sc0ttj/surf

Repository files navigation

surf - simple webkit-based browser
==================================
surf is a simple Web browser based on WebKit/GTK+.

Changes to this fork
------------

## Features added

- requires a patched dmenu (https://github.com/sc0ttj/dmenu) with the `-t` option
- omnibar & custom search engines
  - modified "space search" & "searchengines" patches
- new `-l` option, to open locator bar on startup
- default homepage if no URL given (disabled if -l only option)
  - modified "default homepage" and "startgo" patches
- bookmarks patch (save your bookmarks in ~/.surf/bookmarks)
- sensible hotkeys, and more of them
- support special browser-specific keyboard keys
- improved downloads:
   - always download to ~/Downloads
   - slightly nicer popup
- faster scroll patch
- clipboard patch (choose PRIMARY or CLIPBOARD at compile time)
- multiple JS files patch (add to  ~/.surf/addons/*.js)
- utf8 dmenu fix
- enable DNSPrefetch, StrictTLS, WebGL by default
- added: site specific browser settings
- added: site specific CSS
- fixes in `surf-open.sh`:
  - close window when all tabs closed
- added some scripts to `extras/` (not being used yet)

## Key bindings

I've added hot keys that are more like Firefox, Chrome, etc.

Here are the key bindings I have added to this fork:

```
  ctrl-l         # open location/search bar (omnibar)
  alt-left       # go back one page
  alt-right      # go forward on page
  ctrl-b         # bookmarks menu
  ctrl-d         # bookmark current page
  ctrl-+/=       # zoom in
  ctrl-minus     # zoom out
  ctrl-0         # reset zoom
  ctrl-w         # to call externel player
  ctrl-q         # quit the browser
```

Browser-specific keyboard keys supported:

```
  Forward, Back, Refresh, Favorites, Find (in page),
  Search (URL), ZoomIn, ZoomOut'
```

Note: All standard `surf` key bindings are still supported, except these ones:

```
	ctrl-j,      scroll up 10% +10
	ctrl-i,      scroll up 10% +10
	ctrl-space,  scroll up 50% +50
	ctrl-k,      scroll down 10% -10
	ctrl-u,      scroll down 10% -10
	ctrl-b,      scroll down 50% -50
```

## Config

See `config.def.h`

## End of fork

End of my changes, see regular `surf` README below.

---

Requirements
------------
In order to build surf you need GTK+ and Webkit/GTK+ header files.

In order to use the functionality of the url-bar, also install dmenu[0].

Installation
------------
Edit config.mk to match your local setup (surf is installed into
the /usr/local namespace by default).

Afterwards enter the following command to build and install surf (if
necessary as root):

    make clean install

Running surf
------------
run
	surf [URI]

See the manpage for further options.

Running surf in tabbed
----------------------
For running surf in tabbed[1] there is a script included in the distribution,
which is run like this:

	surf-open.sh [URI]

Further invocations of the script will run surf with the specified URI in this
instance of tabbed.

[0] http://tools.suckless.org/dmenu
[1] http://tools.suckless.org/tabbed