123 Commits

Author SHA1 Message Date
Quentin Rameau 1c640fe0f5 Bump year in program 2017-04-24 11:22:27 +02:00
Quentin Rameau 9ba143baba Bump version to 1.8
We're using the new scheme: 1.x is for webkit1, so we jump from previous
0.7 to 1.8
2017-03-28 18:15:47 +02:00
Quentin Rameau 58634c74b3 Add contributors to the LICENSE 2017-03-28 18:15:27 +02:00
Quentin Rameau ab16fa5e7c Simplify proxy toggle 2017-02-08 15:59:55 +01:00
Christoph Lohmann dcabd0239e Add a way to toggle proxy usage while running. 2017-02-06 11:30:44 +01:00
Christoph Lohmann 6c8da4c851 Style change. (Test commit for new update script in hackers@) 2016-08-11 10:41:38 +02:00
Christoph Lohmann 31ec0fb93d Fixing the last patch to the surf style. 2016-06-03 15:14:53 +02:00
Dmitry Bogatov 1308872b8b Check $HOME and home dir of $USER before getpwuid()->pw_dir
getpwnam(3) recommends to use $HOME instead of getpwuid()->pw_dir,
as it allows users to point programs to a different path.

Using getpwuid() also breaks namespaces-related use cases,
like `unshare -r`.

Patch was submitted by Dmitry Bogatov on the Debian bug tracker:
https://bugs.debian.org/825397

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2016-06-03 15:09:08 +02:00
Christoph Lohmann f5e8baad06 Disable globbing in curl. 2016-03-07 14:28:23 +01:00
Christoph Lohmann 842103322c Import the arg.h from st which fixed the oob bug. 2016-02-22 06:47:46 +01:00
Christoph Lohmann 7895fb9c5d Add Code of Conduct. 2016-01-27 16:01:23 +01:00
Christoph Lohmann fd6e80a279 Check for about: too.
Thanks to Claudio Alessi <smoppy@gmail.com>!
2016-01-27 06:44:31 +01:00
Markus Teich 743fa9f3d1 style fixes (mainly whitespace)
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2016-01-18 22:45:04 +01:00
Charles Lehner 0ac6bf5a97 Reload on SIGHUP
This patch makes surf reload its pages when it receives a SIGHUP signal. This makes it easier for shell scripts to trigger surf to reload.

I'm aware of using xdotool to trigger ctrl+r keypresses for reloading [1] but I wasn't able to get that to work in a general way.

I'm sending this here in case surf maintainers and users would like to include this in core - if not I will submit it to the wiki.

Regards,
Charles

[1] http://surf.suckless.org/files/autorefresh

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2016-01-09 21:14:30 +01:00
Christoph Lohmann 3d81a0f0b7 Bump year. 2016-01-01 14:18:19 +01:00
Felix Janda 018a67986d Include fcntl.h for open()
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-12-31 15:18:07 +01:00
Christoph Lohmann 3393ded725 Bumping up to 0.7 for release. 2015-12-19 15:59:30 +01:00
Christoph Lohmann cd7f831776 Remove unncessary includes. 2015-12-17 23:38:51 +01:00
Ivan Tham 86efaf8093 proxy-uri -> proxy-resolver for no_proxy; add #inc
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-12-17 23:36:56 +01:00
Ivan Tham 9fa4ffef72 Fix title handling
1. file:/// stay the same when you navigate
    2. Fix "http://~" to "file://~" in home dir
    3. Expands "file://~" to "file://home/user"

Thanks to quinq for fixing the issue #1 in commit 934705c in surf2.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-12-12 11:54:28 +01:00
Michael Stevens 002e82d188 Fix spelling of otherwise in surf.1
Add more spelling to surf.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-12-08 18:26:30 +01:00
Alexander Huemer bae5a785b3 remove duplicate header inclusion of string.h
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-11-22 12:34:54 +01:00
Ivan Tham b7a359a84f Fix cookies wording
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-11-18 08:58:18 +01:00
Quentin Rameau 9b1e1873b0 buildfile: don't forget to free temporary string bpath
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-11-04 16:47:04 +01:00
Quentin Rameau 5333171961 Be more specific about what enablestyles parameter does.
The enablestyles configuration variable and parameter flag manages the
global application of styles, not just the site-specific styles.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-11-03 19:45:50 +01:00
Quentin Rameau 2223e9ed22 Fix inspector handling when inspector is disabled.
Do not try to show the inspector window when the inspector is disabled.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-11-03 19:45:04 +01:00
Quentin Rameau 1ebb5c624e Fix usage(), -m and -M for styles were absent.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-11-03 19:44:20 +01:00
Quentin Rameau 9a2547230a Fix fullscreen handling
Handle the fullscreen in a more consistent way with other options:
-f disables fullscreen while -F enables fullscreen.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-11-03 19:44:05 +01:00
Quentin Rameau 0290066b31 Add setstyle()
Regroup style uri setting application calls under one function.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-31 17:50:06 +01:00
Quentin Rameau d84fe71094 Fix style files handling: stop leaking strings.
Everytime getstyle() was being called, we returned newly allocated
strings without ever freing them.
Now uri stylefiles only get allocated once at setup().

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-31 17:50:03 +01:00
Christoph Lohmann d486169fa4 Style changes in config.def.h. 2015-10-31 17:49:36 +01:00
Quentin Rameau c65c8d422b Continue style fixing: function declarations, code alignement
Here are the changes we discussed on the mailing-list.
Alignement is pushed to the first parameter of the function, which seems
to be what people agrees on.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-20 17:52:54 +02:00
Markus Teich 9f5c6ff8d7 style fixes: space after keywords, () with sizeof
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-18 23:01:56 +02:00
Markus Teich c2bb8d0325 whitespace fixes
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-18 23:01:52 +02:00
Markus Teich 6a65dcb394 fix style path generation
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-18 16:34:11 +02:00
Christoph Lohmann c81fbbaf43 Style cleanup. 2015-10-13 21:48:38 +02:00
Quentin Rameau 8a898ec4df Fix the way system files are handled at surf startup.
1. Do not chmod existing directories.
2. Fix the handling of tilde expansion in paths, don't expand ~foo to
   $HOME/foo but to foo's home directory.
3. Separate the creation of files and directories. We don't have to
   worry anymore about pathnames having to end with a '/' to be correctly
   handled.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-13 21:45:14 +02:00
Quentin Rameau 1554354f16 Fix atom value parsing in SETPROP
xprop(1) encloses the returned atom string value in double quotes while
it doesn't when the value is unset. Original simple parsing would fail
and parse the atom name instead of getting an empty value.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-10-13 14:28:09 +02:00
Christoph Lohmann 3c2acda0b7 Remove the pax intermediary.
Compile webkit without jit and you don't need to disable mprotect.
2015-09-08 20:28:11 +02:00
Christoph Lohmann 8e88984a40 Fixing the paxctl check.
Thanks quinq for the tip.
2015-08-19 06:28:31 +02:00
Christoph Lohmann 294142a806 Add PaX support.
Mprotect needs to be turned off for Webkit.
2015-08-18 18:21:34 +02:00
GhostAV 957a6f0812 Torified surf is unstable
On Tue, Aug 18, 2015 at 12:38:40PM +0200, Gabriel Pérez-Cerezo wrote:
> It really seems  to be a problem with torsocks.  I have already solved
> this problem with a patch GhostAV just  sent me on this list that adds
> SOCKS support to surf. It works fine now.

As i failed to send the patch to the list, i resend it now:
-- >8 --
From: Jonas Rabenstein <jonas.rabenstein@studium.uni-erlangen.de>
Subject: [PATCH] allow sock proxies

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-08-18 17:43:18 +02:00
Quentin Rameau 9b6998e7ae Fix type of strictssl property.
Thanks to Mark Edgar <medgar123@gmail.com> for having spotted this.
2015-07-13 13:31:22 +02:00
Christoph Lohmann b4ca032b8c Removing the debug print from the last commit. 2015-02-10 19:06:56 +01:00
Markus Teich 29c2ab207a allow buttonrelease customization in config.h
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-02-10 19:05:39 +01:00
Greg Reagle f7e358280c surf: see hover URL without changing title
On Tue, Jan 27, 2015, at 11:52 AM, Christoph Lohmann wrote:
> Then hook to the window leaving event in GTK or X11 and set the title to
> your needs. I will welcome a patch.

Patch is attached.  I am a total novice in GTK programming, so I don't
know what type the callback function is supposed to be (hence the void
pointers) or whether I registered it properly.  But it does work well
for me.

--
http://www.fastmail.com - Access your email from home and the web

From a33f06da092bf920b6a286ea7688b32944d79a50 Mon Sep 17 00:00:00 2001
From: Greg Reagle <greg.reagle@umbc.edu>
Date: Tue, 27 Jan 2015 13:22:15 -0500
Subject: [PATCH] ensure that window title is web page title (not hover link)
 when leaving window

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-02-03 17:25:26 +01:00
Christoph Lohmann b3a4392923 Some cleanup in style. 2015-02-03 17:17:04 +01:00
Christoph Lohmann b1c5e594d1 Describe the web page indicators too. 2015-01-26 21:47:18 +01:00
Christoph Lohmann e573e094d6 It wasn't really clear what was meant with site indicators in the manpage. 2015-01-26 21:44:54 +01:00
Greg Reagle ee6376ea1e surf: documented indicators in man page
Patch attached.

--
http://www.fastmail.com - The professional email service

From 4a64624fee94c16c093d2b192389bad9bd6675d8 Mon Sep 17 00:00:00 2001
From: Greg Reagle <greg.reagle@umbc.edu>
Date: Mon, 26 Jan 2015 14:29:05 -0500
Subject: [PATCH] Documented indicators

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-01-26 21:44:09 +01:00
Markus Teich 90de5cdd15 fix stylesheet interna.
* no more segfault when running `surf -m`
* allow to enable custom styles after `surf -m` with mod+shift+m
* use enablestyles instead of the webkit-setting, which clears things up a bit

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-01-20 17:45:04 +01:00
Christoph Lohmann 344efec3fb Only plumb some URI, when it's ASCII. 2015-01-20 17:38:22 +01:00
Christoph Lohmann d4e31d9472 Oh my blob!
Adding blob: to the URIS handled by the browser.
2015-01-20 01:59:53 +01:00
Christoph Lohmann 68813b3a46 Data: is part of the browser too. 2015-01-19 22:51:29 +01:00
Christoph Lohmann 87224dcdfa file:// should be handled in surf too. 2015-01-19 22:43:42 +01:00
Christoph Lohmann d511226ea6 Remove the debugging from the testing. 2015-01-19 22:31:31 +01:00
Christoph Lohmann b36921fbe8 Add some description for the plumb feature. 2015-01-19 22:16:07 +01:00
Christoph Lohmann 9c3b5ad353 Add plumbing functionality. 2015-01-19 22:15:18 +01:00
Christoph Lohmann 7c34d5061e Add a comment about how the styles are iterated.
Thanks quing for noticing.
2015-01-18 14:41:20 +01:00
Christoph Lohmann 9333d5d727 My CMD was too short. :O
Thanks Carlos Torres for mentioning this.
2015-01-18 11:44:39 +01:00
Christoph Lohmann e7d1c09916 Add the manpage changes for the disk cache support. 2015-01-17 20:52:16 +01:00
Christoph Lohmann 117d484833 Adding disk cache support for soup.
This is a merge of the patch of Ben Woolley <tautolog@gmail.com>
2015-01-17 20:50:21 +01:00
Ben Woolley 24ec46fc24 Fix extra newline, and add -g where other switches are forwarded.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-01-17 07:23:48 +01:00
Christoph Lohmann a5b85836ac Newer libc want _DEFAULT_SOURCE. 2015-01-17 07:21:15 +01:00
Christoph Lohmann c2da2bae5d Major styles update.
In config.h there is now some styles array to apply site-specific styles.
This can be toggled using the -mM flags. If a stylefile is manually specified,
then this will overwrite everything.
2015-01-17 07:19:48 +01:00
Jakukyo Friel c467e5a3b3 Fix a typo in surf manual.
`Ctrl-/` displays incorrectly in `man surf` on my machine.

A patch is attached.

(You also access it here:
https://github.com/weakish/surf/commit/07e97eccedd96eabf14b2fbf77de75ec1b594d97)

----

 surf.1 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2015-01-02 14:18:23 +01:00
Christoph Lohmann 3e89b4451c Minor style change. 2014-09-28 08:03:42 +02:00
Christoph Lohmann dd705d43eb Make »Copy image address« work.
Thanks yui@blekksprut.net for the patch!
2014-09-28 08:02:48 +02:00
Christoph Lohmann 531f71f851 Mention xdotool in SEE ALSO too. 2014-08-07 17:35:27 +02:00
Christoph Lohmann d5b04aac60 Fix the manpage about xid.
Something was missing from this one sentence. Now it is complete.
2014-08-07 17:34:43 +02:00
Christoph Lohmann bb287fa2e8 Add a FAQ to surf. 2014-08-04 17:54:00 +02:00
Christoph Lohmann 285cc3843f Add information about the dmenu requirement.
Thanks <surfsup@inbox.lv>!
2014-05-17 19:24:25 +02:00
Markus Teich ea9d60c5c0 fix some indentation in config.def.h
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2014-02-28 18:16:22 +01:00
Christoph Lohmann f8f0c30f3e Enable resizable text areas. 2014-02-16 17:17:15 +01:00
Quentin Rameau a8267f7b95 deprecating signal “populate-popup” for “context-menu”
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2014-02-08 20:05:38 +01:00
Quentin Rameau 618c3dfd52 Prevent title from being empty when following an anchor
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2014-02-08 14:03:22 +01:00
Quentin Rameau 3cc5f87db8 deprecating signal “title-changed” for “notify::title”
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2014-02-06 19:14:36 +01:00
Christoph Lohmann 637902b452 The check for NULL is not necessary before free. 2014-02-06 16:49:26 +01:00
Christoph Lohmann 127dc366ef Removing a memory leak when u wasn't freed. 2014-02-06 06:47:22 +01:00
Christoph Lohmann 361da0b3c4 Making the empty title possible. 2014-02-05 21:14:16 +01:00
Quentin Rameau b7435badc2 Draw flags on window creation
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2014-02-05 20:17:35 +01:00
Quentin Rameau 4b623bd28a Keep cookie policies for new windows
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2014-02-05 20:17:26 +01:00
Christoph Lohmann 7ad886fb0b Change the accept no third party in the doc to the right meaning. 2014-01-30 20:57:24 +01:00
Christoph Lohmann fa9b187393 Add the commandline flag for the cookie policies too. 2014-01-30 20:47:03 +01:00
Christoph Lohmann 780cca964c Add a way to define the cookie policy.
This adds the -a flag to define a string of the toggle string for the cookie
policy modes. There is now a new »cookiepolicies« string in config.h and the
Mod+Shift+a now can toggle the policy but will not cause a reload, because
this would only add a burden when toggling through accept and not accept.

Thanks Quentin Rameau <quinq.ml@gmail.com> for the suggestions!
2014-01-30 20:36:06 +01:00
Christoph Lohmann e4869357f1 Replacing the deprecated ssl-ca-file with tls-database.
Thanks Steve Dee <mrdomino@gmail.com>!
2014-01-30 19:39:32 +01:00
Christoph Lohmann a78aec6630 Fix the ssl trusted check.
Thank you Steve Dee <mrdomino@gmail.com>!
2014-01-30 19:35:54 +01:00
Christoph Lohmann 9eedabe348 Make surf set the URI atom right on manual URI entering. 2014-01-13 17:58:45 +01:00
Christoph Lohmann 432f45a852 Add zoom level support. 2013-10-19 18:55:53 +02:00
David Dufberg 7e9a37f25f c->uri is unused
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-10-10 18:49:26 +02:00
Christoph Lohmann 83df29393f Make it possible to open a link in a new window with holding the mod key.
Thanks David Dufberg Tøttrup <david@dufberg.se>!
2013-09-07 11:55:23 +02:00
Christoph Lohmann f3d97922e9 Add a flag to disable fullscreen.
This also updates the usage of surf to represent the current status.
Thanks Alexander Sedov for the suggestion, but you forgot the manpage
entry so I did this patch.
2013-08-31 20:00:41 +02:00
Christoph Lohmann 237e10058a Add fullscreen mode as flag and config option. 2013-08-25 19:50:40 +02:00
Christoph Lohmann 058f7f45e2 Just some comment correction. 2013-08-09 01:36:51 +02:00
Anselm R Garbe 7001df98d1 applied Nick's 96dpi patch, thanks 2013-07-20 08:52:10 +02:00
Christoph Lohmann 2e978627dd Setting the cookie file on new instances. 2013-07-12 06:52:37 +02:00
Christoph Lohmann 0b44a5948e Updating the TODO file. 2013-06-21 07:02:45 +02:00
Christoph Lohmann c234737bea Adding a common way to enable and disable features. 2013-05-21 21:30:00 +02:00
Christoph Lohmann 4f45ae9307 There's only one escape. 2013-05-14 20:57:35 +02:00
Christoph Lohmann ffaf10bd8f Correcting the backslash in the surf manpage. 2013-05-11 22:01:02 +02:00
Christoph Lohmann 067c313e6c Allowing geo location policy decisions. 2013-04-28 21:26:56 +02:00
Alexander Sedov d0309a1a22 Disabling WebKit deletion interface feature by default.
Webkit has an amazing "feature" that shows black outline with cross
around some randomly chosen text fields. Its only fucntion is to
clear field. It's ugly and gets in the way when trying to actually
ready what you've written, so here's a patch to disable it.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-04-17 19:26:12 +02:00
Christoph Lohmann 083ea8ecde Add an option to disable the indicators. 2013-04-14 14:26:44 +02:00
Nick White a383964c95 Ensure curl follows redirects for downloads
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-03-31 11:57:34 +02:00
Alexander Sedov e0e4a844f7 A typo in SETPROP macro: should be `printf %b'', not `printf''.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-03-30 06:49:57 +01:00
Alexander Sedov f6dc8b2541 Fixed SETPROP() macro behaviour in config.def.h to handle escapes correctly.
xprop prints information in format PROPERTY(STRING) = "escaped string",
which causes problem with repeated Ctrl-F: any non-ascii turns into
\ooo\ooo, this later turns into \\ooo\\ooo, and so on. To de-escape
string, printf(1) is used, getting information from xargs -0; without -0
xargs will try to handle escapes by itself and also do shenanigans
with quotes, which is totally undesired.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-03-21 18:10:35 +01:00
Christoph Lohmann 12101938d8 There are people not reading the existing code.
I fucking hate to have to correct all of this. People learn to read!
2013-03-15 18:37:12 +01:00
Alexander Sedov bccfe2a9a5 Fixed keys handling for multilayout environments.
There is a bug in GTK+ that does not allow capturing shortcuts using
letter keys on layouts other than "us". The bug is there for ages and
there is probably no hope that it will get fixed. This patch switches
shortcut handling method to GtkAccelGroup, which handles this case
correctly. Enjoy!

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-03-15 18:34:31 +01:00
Christoph Lohmann dcb4f81ad2 Removing the .hgtags file. 2013-03-15 14:13:20 +01:00
Christoph Lohmann a69c41ccac Support relative paths for surf.
Thanks Kurt Van Dijck <kurt.van.dijck@eia.be>!
2013-03-14 19:14:44 +01:00
Christoph Lohmann d02f73d990 Adding a default font size option.
Thanks Alexander Sedov <alex0player@gmail.com>!
2013-03-14 06:35:42 +01:00
Alexander Sedov a5dddd8fd3 Fix output redirection in surf-open.sh
Incorrect order of output rediection specifiers was causing useless
text appearing in terminal when starting surf-open (for example,
BadWindow error from xprop when tabbed window is already closed).
It isn't now.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-03-14 06:33:02 +01:00
Christoph Lohmann c6fbbd9dc6 Fixing kiosk mode when a new surf instance is run. 2013-03-11 22:08:14 +01:00
Christoph Lohmann badb84387e Adding kiosk mode.
Thanks to Christian Hesse <mail@eworm.de>!
2013-03-11 21:26:22 +01:00
Carlos J. Torres fe3bd631d4 disable/toggle scrollbars
* add flag to main
	* add flag to manual
	* add signal handler to block default scrollbar policy
	* add toggle of scrollbars (hacky - but no reload) with a twitch
	* add key map to manual
	* add commandline flag to children surfers
	* update TODO
	* sort stuff alphabetically for the style inquisition

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-02-25 13:42:19 +01:00
Christoph Lohmann 69004b2ff6 Style inquisition. 2013-02-17 00:37:43 +01:00
Christoph Lohmann bd5bbb7fc3 Add a toggle command for the stylefile.
The patch adds some better formatting for the manpage too.

Thanks to Nick <suckless-dev@njw.me.uk> for the toggle patch!
2013-02-16 16:18:05 +01:00
Christoph Lohmann 3e972f8e2a The Item struct is not used. 2013-02-15 17:43:42 +01:00
Jens Nyberg 053a8f1a73 Fixed a bug in pagestat
Forgot to add a null character at the end.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-02-15 17:42:06 +01:00
Carlos J. Torres ba634ea8e3 fix DOWNLOAD macro to use cookiefile variable
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-02-13 06:49:17 +01:00
Jens Nyberg 24f0f83197 Changed character for non-encrypted page
-/T/U: No SSL, Trusted SSL, Untrusted SSL

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-02-12 21:32:07 +01:00
Jens Nyberg 3c1ed5d56a Removed progress indicator
This removes the progress indicator and replaces it with
letters in the window title.

T/U: Trusted, Untrusted
P/-: Proxy, No proxy

Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-02-12 21:10:43 +01:00
Shayan Pooya 27dac4a157 Remove the redundant ctrl-l and ctrl-h description from the man page.
Signed-off-by: Christoph Lohmann <20h@r-36.net>
2013-02-11 20:20:07 +01:00
12 changed files with 1542 additions and 627 deletions
-10
View File
@@ -1,10 +0,0 @@
d8628fc93353faa411c9fc7eef82d11a84d26ae2 0.1
d8628fc93353faa411c9fc7eef82d11a84d26ae2 0.1
9c8ebcf54061112b5979742b403de26fc94007ff 0.1
3ef997607115303fe93873b592d152f0ec186f77 0.1.1
bffb0c3c23410ac7f260d167f4b9771497fc1127 0.1.2
a5db79d487c85615be2ecf30815c6b4977e88000 0.2
46d516fd216731adf91740496e6823c1be4f6199 0.3
ac8e058003ed2c0974529808752e5da7692fd7d8 0.4
71388899ac09d21e6c93518cc57a28395034f63c 0.4.1
f0cea0f2bfc6a32a0e352b6c69d781f1dbddbcda 0.5
+85
View File
@@ -0,0 +1,85 @@
Code of Conduct
===============
> ==Phrack Inc.==
> Volume One, Issue 7, Phile 3 of 10
>
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
>
> The following was written shortly after my arrest...
>
> \/\The Conscience of a Hacker/\/
>
> by
>
> +++The Mentor+++
>
> Written on January 8, 1986
>
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
>
> Another one got caught today, it's all over the papers. "Teenager
> Arrested in Computer Crime Scandal", "Hacker Arrested after Bank Tampering"...
> Damn kids. They're all alike.
>
> But did you, in your three-piece psychology and 1950's technobrain,
> ever take a look behind the eyes of the hacker? Did you ever wonder what
> made him tick, what forces shaped him, what may have molded him?
> I am a hacker, enter my world...
> Mine is a world that begins with school... I'm smarter than most of
> the other kids, this crap they teach us bores me...
> Damn underachiever. They're all alike.
>
> I'm in junior high or high school. I've listened to teachers explain
> for the fifteenth time how to reduce a fraction. I understand it. "No, Ms.
> Smith, I didn't show my work. I did it in my head..."
> Damn kid. Probably copied it. They're all alike.
>
> I made a discovery today. I found a computer. Wait a second, this is
> cool. It does what I want it to. If it makes a mistake, it's because I
> screwed it up. Not because it doesn't like me...
> Or feels threatened by me...
> Or thinks I'm a smart ass...
> Or doesn't like teaching and shouldn't be here...
> Damn kid. All he does is play games. They're all alike.
>
> And then it happened... a door opened to a world... rushing through
> the phone line like heroin through an addict's veins, an electronic pulse is
> sent out, a refuge from the day-to-day incompetencies is sought... a board is
> found.
> "This is it... this is where I belong..."
> I know everyone here... even if I've never met them, never talked to
> them, may never hear from them again... I know you all...
> Damn kid. Tying up the phone line again. They're all alike...
>
> You bet your ass we're all alike... we've been spoon-fed baby food at
> school when we hungered for steak... the bits of meat that you did let slip
> through were pre-chewed and tasteless. We've been dominated by sadists, or
> ignored by the apathetic. The few that had something to teach found us will-
> ing pupils, but those few are like drops of water in the desert.
>
> This is our world now... the world of the electron and the switch, the
> beauty of the baud. We make use of a service already existing without paying
> for what could be dirt-cheap if it wasn't run by profiteering gluttons, and
> you call us criminals. We explore... and you call us criminals. We seek
> after knowledge... and you call us criminals. We exist without skin color,
> without nationality, without religious bias... and you call us criminals.
> You build atomic bombs, you wage wars, you murder, cheat, and lie to us
> and try to make us believe it's for our own good, yet we're the criminals.
>
> Yes, I am a criminal. My crime is that of curiosity. My crime is
> that of judging people by what they say and think, not what they look like.
> My crime is that of outsmarting you, something that you will never forgive me
> for.
>
> I am a hacker, and this is my manifesto. You may stop this individual,
> but you can't stop us all... after all, we're all alike.
Keep to your sanity, question the world, even this manifest.
Don't follow morals, nothing is right or wrong.
Have fun.
Yours project maintainer on 2016-01-27.
+10
View File
@@ -0,0 +1,10 @@
# Frequently Asked Questions
## Surf is starting up slowly. What might happen?
The first suspect for such a behaviour is the plugin handling. Run surf
on the commandline and see if there are errors because of »nspluginwrap
per« or failed RPCs to them. If that is true, go to ~/.mozilla/plugins
and try removing stale links to plugins not on your system anymore. This
will stop surf from trying to load them.
+27 -3
View File
@@ -1,8 +1,32 @@
MIT/X Consortium License
© 2011-2012 Troels Henriksen <athas@sigkill.at>
© 2009-2011 Enno Boland <g s01 de>
© 2012 Christoph Lohmann <20h@r-36.net>
© 2009-2010 Enno Boland <tox@s01.de>
© 2009 Thomas Menari <spaceinvader@chaotika.org>
© 2009 Simon Rozet <simon@rozet.name>
© 2009 Andrew Antle <andrew.antle@gmail.com>
© 2010-2011 pancake <nopcode.org>
© 2011-2013 Anselm R Garbe <anselm@garbe.us>
© 2011-2012 Troels Henriksen <athas@sigkill.dk>
© 2011 Connor Lane Smith <cls@lubutu.com>
© 2012-2017 Christoph Lohmann <20h@r-36.net>
© 2013 Shayan Pooya <shayan@liveve.org>
© 2013 Jens Nyberg <jens.nyberg@gmail.com>
© 2013 Carlos J. Torres <vlaadbrain@gmail.com>
© 2013 Alexander Sedov <alex0player@gmail.com>
© 2013 Nick White <git@njw.me.uk>
© 2013 David Dufberg <david@dufberg.se>
© 2014-2017 Quentin Rameau <quinq@fifth.space>
© 2014-2016 Markus Teich <markus.teich@stusta.mhn.de>
© 2015 Jakukyo Friel <weakish@gmail.com>
© 2015 Ben Woolley <tautolog@gmail.com>
© 2015 Greg Reagle <greg.reagle@umbc.edu>
© 2015 GhostAV <ghostav@riseup.net>
© 2015 Ivan Tham <pickfire@riseup.net>
© 2015 Alexander Huemer <alexander.huemer@xx.vu>
© 2015 Michael Stevens <mstevens@etla.org>
© 2015 Felix Janda <felix.janda@posteo.de>
© 2016 Charles Lehner <cel@celehner.com>
© 2016 Dmitry Bogatov <KAction@gnu.org>
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
+4 -2
View File
@@ -6,6 +6,7 @@ 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
------------
@@ -26,7 +27,7 @@ See the manpage for further options.
Running surf in tabbed
----------------------
For running surf in tabbed[0] there is a script included in the distribution,
For running surf in tabbed[1] there is a script included in the distribution,
which is run like this:
surf-open.sh [URI]
@@ -34,5 +35,6 @@ which is run like this:
Further invocations of the script will run surf with the specified URI in this
instance of tabbed.
[0] http://tools.suckless.org/tabbed
[0] http://tools.suckless.org/dmenu
[1] http://tools.suckless.org/tabbed
+1 -2
View File
@@ -1,8 +1,7 @@
# TODO
* suckless adblocking
* integrate the WebKitWebInspector API
* make scrollbars a switch and allow them to be disabled
* replace twitch() with proper gtk calls to make scrollbars reappear
* replace webkit with something sane
* add video player options
* play in plugin
+27 -20
View File
@@ -3,39 +3,46 @@
* by 20h
*/
#ifndef __ARG_H__
#define __ARG_H__
#ifndef ARG_H__
#define ARG_H__
extern char *argv0;
#define USED(x) ((void)(x))
/* use main(int argc, char *argv[]) */
#define ARGBEGIN for (argv0 = *argv, argv++, argc--;\
argv[0] && argv[0][1]\
&& argv[0][0] == '-';\
argv[0] && argv[0][0] == '-'\
&& argv[0][1];\
argc--, argv++) {\
char _argc;\
char **_argv;\
char argc_;\
char **argv_;\
int brk_;\
if (argv[0][1] == '-' && argv[0][2] == '\0') {\
argv++;\
argc--;\
break;\
}\
for (argv[0]++, _argv = argv; argv[0][0];\
for (brk_ = 0, argv[0]++, argv_ = argv;\
argv[0][0] && !brk_;\
argv[0]++) {\
if (_argv != argv)\
if (argv_ != argv)\
break;\
_argc = argv[0][0];\
switch (_argc)
argc_ = argv[0][0];\
switch (argc_)
#define ARGEND }\
USED(_argc);\
}\
USED(argv);\
USED(argc);
}
#define EARGF(x) ((argv[1] == NULL)? ((x), abort(), (char *)0) :\
(argc--, argv++, argv[0]))
#define ARGC() argc_
#define EARGF(x) ((argv[0][1] == '\0' && argv[1] == NULL)?\
((x), abort(), (char *)0) :\
(brk_ = 1, (argv[0][1] != '\0')?\
(&argv[0][1]) :\
(argc--, argv++, argv[0])))
#define ARGF() ((argv[0][1] == '\0' && argv[1] == NULL)?\
(char *)0 :\
(brk_ = 1, (argv[0][1] != '\0')?\
(&argv[0][1]) :\
(argc--, argv++, argv[0])))
#endif
+105 -57
View File
@@ -1,48 +1,80 @@
/* modifier 0 means no modifier */
static char *useragent = "Mozilla/5.0 (X11; U; Unix; en-US) "
"AppleWebKit/537.15 (KHTML, like Gecko) Chrome/24.0.1295.0 "
"Safari/537.15 Surf/"VERSION;
static char *progress = "#0000FF";
static char *progress_untrust = "#FF0000";
static char *progress_trust = "#00FF00";
static char *progress_proxy = "#FFFF00";
static char *progress_proxy_trust = "#66FF00";
static char *progress_proxy_untrust = "#FF6600";
static char *stylefile = "~/.surf/style.css";
"AppleWebKit/537.15 (KHTML, like Gecko) "
"Chrome/24.0.1295.0 Safari/537.15 Surf/"VERSION;
static char *scriptfile = "~/.surf/script.js";
static char *styledir = "~/.surf/styles/";
static char *cachefolder = "~/.surf/cache/";
static Bool kioskmode = FALSE; /* Ignore shortcuts */
static Bool showindicators = TRUE; /* Show indicators in window title */
static Bool zoomto96dpi = TRUE; /* Zoom pages to always emulate 96dpi */
static Bool runinfullscreen = FALSE; /* Run in fullscreen mode by default */
static guint defaultfontsize = 12; /* Default font size */
static gfloat zoomlevel = 1.0; /* Default zoom level */
/* Soup default features */
static char *cookiefile = "~/.surf/cookies.txt";
static time_t sessiontime = 3600;
static char *cookiepolicies = "Aa@"; /* A: accept all; a: accept nothing,
* @: accept all except third party */
static char *cafile = "/etc/ssl/certs/ca-certificates.crt";
static char *strictssl = FALSE; /* Refuse untrusted SSL connections */
static int indicator_thickness = 2;
static Bool strictssl = FALSE; /* Refuse untrusted SSL connections */
static time_t sessiontime = 3600;
/* Webkit default features */
static Bool enablescrollbars = TRUE;
static Bool enablespatialbrowsing = TRUE;
static Bool enableplugins = TRUE;
static Bool enablescripts = TRUE;
static Bool enableinspector = TRUE;
static Bool loadimages = TRUE;
static Bool hidebackground = FALSE;
static Bool enablediskcache = TRUE;
static int diskcachebytes = 5 * 1024 * 1024;
static Bool enableplugins = TRUE;
static Bool enablescripts = TRUE;
static Bool enableinspector = TRUE;
static Bool enablestyle = TRUE;
static Bool loadimages = TRUE;
static Bool hidebackground = FALSE;
static Bool allowgeolocation = TRUE;
#define SETPROP(p, q) { \
.v = (char *[]){ "/bin/sh", "-c", \
"prop=\"`xprop -id $2 $0 | cut -d '\"' -f 2 | dmenu`\" &&" \
"xprop -id $2 -f $1 8s -set $1 \"$prop\"", \
p, q, winid, NULL \
"prop=\"`xprop -id $2 $0 " \
"| sed \"s/^$0(STRING) = \\(\\\\\"\\?\\)\\(.*\\)\\1$/\\2/\" " \
"| xargs -0 printf %b | dmenu`\" &&" \
"xprop -id $2 -f $1 8s -set $1 \"$prop\"", \
p, q, winid, NULL \
} \
}
/* DOWNLOAD(URI, referer) */
#define DOWNLOAD(d, r) { \
.v = (char *[]){ "/bin/sh", "-c", \
"st -e /bin/sh -c \"curl -J -O --user-agent '$1'" \
" --referer '$2'" \
" -b ~/.surf/cookies.txt -c ~/.surf/cookies.txt '$0';" \
" sleep 5;\"", \
d, useragent, r, NULL \
"st -e /bin/sh -c \"curl -g -L -J -O --user-agent '$1'" \
" --referer '$2' -b $3 -c $3 '$0';" \
" sleep 5;\"", \
d, useragent, r, cookiefile, NULL \
} \
}
/* PLUMB(URI) */
/* This called when some URI which does not begin with "about:",
* "http://" or "https://" should be opened.
*/
#define PLUMB(u) {\
.v = (char *[]){ "/bin/sh", "-c", \
"xdg-open \"$0\"", u, NULL \
} \
}
/* styles */
/*
* The iteration will stop at the first match, beginning at the beginning of
* the list.
*/
static SiteStyle styles[] = {
/* regexp file in $styledir */
{ ".*", "default.css" },
};
#define MODKEY GDK_CONTROL_MASK
/* hotkeys */
@@ -51,45 +83,61 @@ static Bool hidebackground = FALSE;
* edit the CLEANMASK() macro.
*/
static Key keys[] = {
/* modifier keyval function arg Focus */
{ MODKEY|GDK_SHIFT_MASK,GDK_r, reload, { .b = TRUE } },
{ MODKEY, GDK_r, reload, { .b = FALSE } },
{ MODKEY|GDK_SHIFT_MASK,GDK_p, print, { 0 } },
/* modifier keyval function arg Focus */
{ MODKEY|GDK_SHIFT_MASK,GDK_r, reload, { .b = TRUE } },
{ MODKEY, GDK_r, reload, { .b = FALSE } },
{ MODKEY|GDK_SHIFT_MASK,GDK_p, print, { 0 } },
{ MODKEY, GDK_p, clipboard, { .b = TRUE } },
{ MODKEY, GDK_y, clipboard, { .b = FALSE } },
{ MODKEY, GDK_p, clipboard, { .b = TRUE } },
{ MODKEY, GDK_y, clipboard, { .b = FALSE } },
{ MODKEY|GDK_SHIFT_MASK,GDK_j, zoom, { .i = -1 } },
{ MODKEY|GDK_SHIFT_MASK,GDK_k, zoom, { .i = +1 } },
{ MODKEY|GDK_SHIFT_MASK,GDK_q, zoom, { .i = 0 } },
{ MODKEY, GDK_minus, zoom, { .i = -1 } },
{ MODKEY, GDK_plus, zoom, { .i = +1 } },
{ MODKEY|GDK_SHIFT_MASK,GDK_j, zoom, { .i = -1 } },
{ MODKEY|GDK_SHIFT_MASK,GDK_k, zoom, { .i = +1 } },
{ MODKEY|GDK_SHIFT_MASK,GDK_q, zoom, { .i = 0 } },
{ MODKEY, GDK_minus, zoom, { .i = -1 } },
{ MODKEY, GDK_plus, zoom, { .i = +1 } },
{ MODKEY, GDK_l, navigate, { .i = +1 } },
{ MODKEY, GDK_h, navigate, { .i = -1 } },
{ MODKEY, GDK_l, navigate, { .i = +1 } },
{ MODKEY, GDK_h, navigate, { .i = -1 } },
{ MODKEY, GDK_j, scroll_v, { .i = +1 } },
{ MODKEY, GDK_k, scroll_v, { .i = -1 } },
{ MODKEY, GDK_b, scroll_v, { .i = -10000 } },
{ MODKEY, GDK_space, scroll_v, { .i = +10000 } },
{ MODKEY, GDK_i, scroll_h, { .i = +1 } },
{ MODKEY, GDK_u, scroll_h, { .i = -1 } },
{ MODKEY, GDK_j, scroll_v, { .i = +1 } },
{ MODKEY, GDK_k, scroll_v, { .i = -1 } },
{ MODKEY, GDK_b, scroll_v, { .i = -10000 } },
{ MODKEY, GDK_space, scroll_v, { .i = +10000 } },
{ MODKEY, GDK_i, scroll_h, { .i = +1 } },
{ MODKEY, GDK_u, scroll_h, { .i = -1 } },
{ 0, GDK_F11, fullscreen, { 0 } },
{ 0, GDK_Escape, stop, { 0 } },
{ MODKEY, GDK_o, source, { 0 } },
{ MODKEY|GDK_SHIFT_MASK,GDK_o, inspector, { 0 } },
{ 0, GDK_F11, fullscreen, { 0 } },
{ 0, GDK_Escape, stop, { 0 } },
{ MODKEY, GDK_o, source, { 0 } },
{ MODKEY|GDK_SHIFT_MASK,GDK_o, inspector, { 0 } },
{ MODKEY, GDK_g, spawn, SETPROP("_SURF_URI", "_SURF_GO") },
{ MODKEY, GDK_f, spawn, SETPROP("_SURF_FIND", "_SURF_FIND") },
{ MODKEY, GDK_slash, spawn, SETPROP("_SURF_FIND", "_SURF_FIND") },
{ MODKEY, GDK_g, spawn, SETPROP("_SURF_URI", "_SURF_GO") },
{ MODKEY, GDK_f, spawn, SETPROP("_SURF_FIND", "_SURF_FIND") },
{ MODKEY, GDK_slash, spawn, SETPROP("_SURF_FIND", "_SURF_FIND") },
{ MODKEY, GDK_n, find, { .b = TRUE } },
{ MODKEY|GDK_SHIFT_MASK,GDK_n, find, { .b = FALSE } },
{ MODKEY, GDK_n, find, { .b = TRUE } },
{ MODKEY|GDK_SHIFT_MASK,GDK_n, find, { .b = FALSE } },
{ MODKEY|GDK_SHIFT_MASK,GDK_c, toggle, { .v = "enable-caret-browsing" } },
{ MODKEY|GDK_SHIFT_MASK,GDK_i, toggle, { .v = "auto-load-images" } },
{ MODKEY|GDK_SHIFT_MASK,GDK_s, toggle, { .v = "enable-scripts" } },
{ MODKEY|GDK_SHIFT_MASK,GDK_v, toggle, { .v = "enable-plugins" } },
{ MODKEY|GDK_SHIFT_MASK,GDK_c, toggle, { .v = "enable-caret-browsing" } },
{ MODKEY|GDK_SHIFT_MASK,GDK_i, toggle, { .v = "auto-load-images" } },
{ MODKEY|GDK_SHIFT_MASK,GDK_s, toggle, { .v = "enable-scripts" } },
{ MODKEY|GDK_SHIFT_MASK,GDK_v, toggle, { .v = "enable-plugins" } },
{ MODKEY|GDK_SHIFT_MASK,GDK_a, togglecookiepolicy, { 0 } },
{ MODKEY|GDK_SHIFT_MASK,GDK_m, togglestyle, { 0 } },
{ MODKEY|GDK_SHIFT_MASK,GDK_b, togglescrollbars, { 0 } },
{ MODKEY|GDK_SHIFT_MASK,GDK_g, togglegeolocation, { 0 } },
{ MODKEY|GDK_SHIFT_MASK,GDK_y, toggleproxy, { 0 } },
};
/* button definitions */
/* click can be ClkDoc, ClkLink, ClkImg, ClkMedia, ClkSel, ClkEdit, ClkAny */
static Button buttons[] = {
/* click event mask button function argument */
{ ClkLink, 0, 2, linkopenembed, { 0 } },
{ ClkLink, MODKEY, 2, linkopen, { 0 } },
{ ClkLink, MODKEY, 1, linkopen, { 0 } },
{ ClkAny, 0, 8, navigate, { .i = -1 } },
{ ClkAny, 0, 9, navigate, { .i = +1 } },
};
+2 -2
View File
@@ -1,5 +1,5 @@
# surf version
VERSION = 0.6
VERSION = 1.8
# Customize below to fit your system
@@ -18,7 +18,7 @@ INCS = -I. -I/usr/include -I${X11INC} ${GTKINC}
LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 ${GTKLIB} -lgthread-2.0
# flags
CPPFLAGS = -DVERSION=\"${VERSION}\" -D_BSD_SOURCE
CPPFLAGS = -DVERSION=\"${VERSION}\" -D_DEFAULT_SOURCE
CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
LDFLAGS = -g ${LIBS}
+2 -2
View File
@@ -21,12 +21,12 @@ then
runtabbed
else
xid=$(cat "$xidfile")
xprop -id "$xid" 2>&1 >/dev/null
xprop -id "$xid" >/dev/null 2>&1
if [ $? -gt 0 ];
then
runtabbed
else
surf -e "$xid" "$uri" 2>&1 >/dev/null &
surf -e "$xid" "$uri" >/dev/null 2>&1 &
fi
fi
+174 -29
View File
@@ -3,12 +3,14 @@
surf \- simple webkit-based browser
.SH SYNOPSIS
.B surf
.RB [-ipnsvx]
.RB [-bBdDfFgGiIkKmMnNpPsSvx]
.RB [-a\ cookiepolicies]
.RB [-c\ cookiefile]
.RB [-e\ xid]
.RB [-r\ scriptfile]
.RB [-t\ stylefile]
.RB [-u\ useragent]
.RB [-z\ zoomlevel]
.RB "URI"
.SH DESCRIPTION
surf is a simple Web browser based on WebKit/GTK+. It is able
@@ -17,38 +19,111 @@ which makes it possible to embed it in another application. Furthermore,
one can point surf to another URI by setting its XProperties.
.SH OPTIONS
.TP
.B \-a cookiepolicies
Define the order of
.I cookie policies.
The default is "Aa@" but could be
redefined in the
.I config.h,
with "A" meaning to
accept all cookies, "a" to deny all cookies and "@", which tells surf to
accept no third party cookies.
.TP
.B \-b
Disable Scrollbars
.TP
.B \-B
Enable Scrollbars
.TP
.B \-c cookiefile
Specify the cookiefile to use.
Specify the
.I cookiefile
to use.
.TP
.B \-d
Disable the disk cache.
.TP
.B \-D
Enable the disk cache.
.TP
.B \-e xid
Reparents to window specified by xid.
Reparents to window specified by
.I xid.
.TP
.B \-f
Start surf in windowed mode (not fullscreen).
.TP
.B \-F
Start surf in fullscreen mode.
.TP
.B \-g
Disable giving the geolocation to websites.
.TP
.B \-G
Enable giving the geolocation to websites.
.TP
.B \-i
Disable Images
.TP
.B \-I
Enable Images
.TP
.B \-k
Disable kiosk mode (disable key strokes and right click)
.TP
.B \-K
Enable kiosk mode (disable key strokes and right click)
.TP
.B \-m
Disable application of user style sheets.
.TP
.B \-M
Enable application of user style sheets.
.TP
.B \-n
Disable the Web Inspector (Developer Tools).
.TP
.B \-N
Enable the Web Inspector (Developer Tools).
.TP
.B \-p
Disable Plugins
.TP
.B \-P
Enable Plugins
.TP
.B \-r scriptfile
Specify the user scriptfile.
Specify the user
.I scriptfile.
.TP
.B \-s
Disable Javascript
.TP
.B \-S
Enable Javascript
.TP
.B \-t stylefile
Specify the user stylefile.
Specify the user
.I stylefile.
This does disable the site-specific styles.
.TP
.B \-u useragent
Specify the useragent which surf should use.
Specify the
.I useragent
which surf should use.
.TP
.B \-v
Prints version information to standard output, then exits.
.TP
.B \-x
Prints xid to standard output. This can be used to script the browser by using
Prints xid to standard output. This can be used to script the browser in for
example
.BR xdotool(1).
.TP
.B \-z zoomlevel
Specify the
.I zoomlevel
which surf should use.
.BR xprop(1).
.SH USAGE
.B Escape
@@ -87,13 +162,7 @@ Zooms page out
.B Ctrl\-Shift\-q
Resets Zoom
.TP
.B Ctrl\-h
Navigate back one step in history.
.TP
.B Ctrl\-l
Navigate forward one step in history.
.TP
.B Ctrl\-f and Ctrl\-\\
.B Ctrl\-f and Ctrl\-/
Opens the search-bar.
.TP
.B Ctrl\-n
@@ -103,14 +172,11 @@ Go to next search result.
Go to previous search result.
.TP
.B Ctrl\-g
Opens the URL-bar.
Opens the URL-bar (requires dmenu installed).
.TP
.B Ctrl\-p
Loads URI from primary selection.
.TP
.B Esc
Stop loading the page.
.TP
.B Ctrl\-Shift\-p
Calls Printpage Dialog.
.TP
@@ -118,7 +184,7 @@ Calls Printpage Dialog.
Reloads the website.
.TP
.B Ctrl\-Shift\-r
Reloads the website without using cache.
Reloads the website without using the cache.
.TP
.B Ctrl\-y
Copies current URI to primary selection.
@@ -126,29 +192,107 @@ Copies current URI to primary selection.
.B Ctrl\-o
Show the sourcecode of the current page.
.TP
.B Ctrl\-Shift\-a
Toggle through the the
.I cookie policies.
This will not reload the page.
.TP
.B Ctrl\-Shift\-b
Toggle scrollbars. This will reload the page.
.TP
.B Ctrl\-Shift\-c
Toggle caret browsing. This will reload the page.
.TP
.B Ctrl\-Shift\-i
Toggle auto-loading of images. This will reload the page.
.TP
.B Ctrl\-Shift\-m
Toggle if the
.I stylefile
file should be loaded. This will reload the page.
.TP
.B Ctrl\-Shift\-o
Open the Web Inspector (Developer Tools) window for the current page.
.TP
.B Ctrl\-Shift\-c
Toggle caret browsing.
.TP
.B Ctrl\-Shift\-i
Toggle auto-loading of images.
.TP
.B Ctrl\-Shift\-s
Toggle script execution.
Toggle script execution. This will reload the page.
.TP
.B Ctrl\-Shift\-v
Toggle the enabling of plugins on that surf instance.
Toggle the enabling of plugins on that surf instance. This will reload the
page.
.TP
.B Ctrl\-Shift\-y
Toggle if a proxy should be used (if one is set in the environment).
.TP
.B F11
Toggle fullscreen mode.
.SH INDICATORS OF OPERATION
Surf is showing indicators of operation in front of the site title.
For all indicators, unless otherwise specified, a lower case letter means disabled and an upper case letter means enabled.
.TP
.B A
all cookies accepted
.TP
.B a
no cookies accepted
.TP
.B @
all except third-party cookies accepted
.TP
.B c C
caret browsing
.TP
.B g G
geolocation
.TP
.B d D
disk cache
.TP
.B i I
images
.TP
.B s S
scripts
.TP
.B v V
plugins
.TP
.B m M
styles
.SH INDICATORS OF WEB PAGE
The second part of the indicators specifies modes of the web page itself.
.SS First character: encryption
.TP
.B -
unencrypted
.TP
.B T
encrypted (SSL)
.TP
.B U
attempted encryption but failed
.SS Second character: proxying
.TP
.B -
no proxy
.TP
.B P
using proxy
.SH ENVIRONMENT
.B SURF_USERAGENT
If this variable is set upon startup, surf will use it as the useragent string
If this variable is set upon startup, surf will use it as the
.I useragent
string
.TP
.B http_proxy
If this variable is set and not empty upon startup, surf will use it as the http proxy
.TP
.B no_proxy
If both http_proxy is set and no_proxy contain a
.BR comma-separated
list of domain extensions and both is not empty upon startup, proxy will
.BR not
be used for each of the elements in no_proxy.
.SH PLUGINS
For using plugins in surf, first determine your running architecture. Then get
the appropriate plugin for that architecture and copy it to
@@ -164,6 +308,7 @@ will help you.
.BR dmenu(1),
.BR xprop(1),
.BR tabbed(1),
.BR nspluginwrapper(1)
.BR nspluginwrapper(1),
.BR xdotool(1)
.SH BUGS
Please report them!
+1105 -500
View File
File diff suppressed because it is too large Load Diff