diff options
author | Rafael Marçalo <raroma09@gmail.com> | 2023-11-29 17:20:09 +0000 |
---|---|---|
committer | Rafael Marçalo <raroma09@gmail.com> | 2023-11-29 17:20:09 +0000 |
commit | 8e69478ff67f886451b2e13e00806be03215d61e (patch) | |
tree | 2927fa70e8013832630853c5063d5ed46a40cb64 /suckless | |
parent | 515bba40658d47972d65fb654d9633791e242481 (diff) |
Replaced neovimb with surf
Diffstat (limited to 'suckless')
-rw-r--r-- | suckless/.config/suckless/neovimb/config.h | 117 | ||||
-rw-r--r-- | suckless/.config/suckless/surf/config.h | 205 | ||||
-rwxr-xr-x | suckless/.local/src/compileSource | 8 |
3 files changed, 209 insertions, 121 deletions
diff --git a/suckless/.config/suckless/neovimb/config.h b/suckless/.config/suckless/neovimb/config.h deleted file mode 100644 index 28e8d66..0000000 --- a/suckless/.config/suckless/neovimb/config.h +++ /dev/null @@ -1,117 +0,0 @@ -/** - * vimb - a webkit based vim like browser. - * - * Copyright (C) 2012-2018 Daniel Carl - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see http://www.gnu.org/licenses/. - */ - -/* graphical features */ -/* show wget style progressbar in status bar */ -#define FEATURE_WGET_PROGRESS_BAR -/* show load progress in window title */ -#define FEATURE_TITLE_PROGRESS -/* show page title in url completions */ -#define FEATURE_TITLE_IN_COMPLETION -/* enable the read it later queue */ -#define FEATURE_QUEUE -/* disable X window embedding */ -/* #define FEATURE_NO_XEMBED */ - -#ifdef FEATURE_WGET_PROGRESS_BAR -/* chars to use for the progressbar */ -#define PROGRESS_BAR "=> " -#define PROGRESS_BAR_LEN 20 -#endif -#define FEATURE_AUTOCMD - -/* time in seconds after that message will be removed from inputbox if the - * message where only temporary */ -#define MESSAGE_TIMEOUT 5 - -/* number of chars to be shown in statusbar for ambiguous commands */ -#define SHOWCMD_LEN 10 -/* css applied to the gui elements regardless of user's settings */ -#define GUI_STYLE_CSS_BASE "#input text{background-color:inherit;color:inherit;caret-color:@color;font:inherit;}" - -/* default font size for fonts in webview */ -#define SETTING_DEFAULT_FONT_SIZE 16 -#define SETTING_DEFAULT_MONOSPACE_FONT_SIZE 13 -#define SETTING_GUI_FONT_NORMAL "10pt monospace" -#define SETTING_GUI_FONT_EMPH "bold 10pt monospace" -#define SETTING_COMPLETION_CSS "color:#ffffff;background-color:#656565;font:" SETTING_GUI_FONT_NORMAL -#define SETTING_COMPLETION_HOVER_CSS "background-color:#777777;" -#define SETTING_COMPLETION_SELECTED_CSS "color:#ffffff;background-color:#888888;" -#define SETTING_INPUT_CSS "background-color:#121b1c;color:#b1b9be;font:" SETTING_GUI_FONT_NORMAL -#define SETTING_INPUT_ERROR_CSS "background-color:#ff7777;font:" SETTING_GUI_FONT_EMPH -#define SETTING_STATUS_CSS "color:#b1b9be;background-color:#7B807F;font:" SETTING_GUI_FONT_EMPH -#define SETTING_STATUS_SSL_CSS "background-color:#7B807F;color:#b1b9be;" -#define SETTING_STATUS_SSL_INVLID_CSS "background-color:#ff7777;color:#000000;" - -/* hide input bar automatically */ -#define SETTING_HIDEINPUTBAR on - -#define MAXIMUM_HINTS 500 -/* default window dimensions */ -#define WIN_WIDTH 800 -#define WIN_HEIGHT 600 -/* dark mode */ -#define SETTING_DARK_MODE on - -/* browser features */ -/* if set to 1 neovimb will check if the webextension could be found. */ -#define CHECK_WEBEXTENSION_ON_STARTUP 1 -/* download folder */ -#define SETTING_DOWNLOAD_PATH "~/Downloads" -/* home page */ -#define SETTING_HOME_PAGE "https://rafaelmarcalo.xyz" -/* search engine */ -#define SETTING_SEARCH_ENGINE "https://searxng.rafaelmarcalo.xyz/searxng/search?q=$0" -/* user agent */ -#define SETTING_USER_AGENT "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.4 Safari/605.1.15 " -/* geolocation-accept allowed values always, ask, never */ -#define SETTING_GEOLOCATION_ACCEPT "never" -/* cookie-accept allowed values always, origin, never */ -#define SETTING_COOKIE_ACCEPT "always" -/* javascript */ -#define SETTING_JAVASCRIPT_ACCEPT on -/* download command */ -#define SETTING_DOWNLOAD_COMMAND "/bin/sh -c \"curl -sLJOC - -e '$neovimb_URI' %s\"" - -#define SETTING_HINT_KEYS "0123456789" - -/* This status indicator is only shown if "status-bar-show-settings" is - * enabled. - * The CHAR_MAP(value, internalValue, outputValue, valueIfNotMapped) is a - * little workaround to translate internal used string value like for - * GET_CHAR(c, "cookie-accept") which is one of "always", "origin" or "never" - * to those values that should be shown on statusbar. - * The STATUS_VARAIBLE_SHOW is used as argument for a printf like function. So - * the first argument is the output pattern. */ -/* -#define STATUS_VARAIBLE_SHOW "js: %s, cookies: %s, hint-timeout: %d", \ - GET_BOOL(c, "scripts") ? "on" : "off", \ - GET_CHAR(c, "cookie-accept"), \ - GET_INT(c, "hint-timeout") -*/ -#define COOKIE GET_CHAR(c, "cookie-accept") -#define CHAR_MAP(v, i, m, d) (strcmp(v, i) == 0 ? m : (d)) -#define STATUS_VARAIBLE_SHOW "%c%c%c%c%c%c%c", \ - CHAR_MAP(COOKIE, "always", 'A', CHAR_MAP(COOKIE, "origin", '@', 'a')), \ - GET_BOOL(c, "dark-mode") ? 'D' : 'd', \ - GET_BOOL(c, "images") ? 'I' : 'i', \ - GET_BOOL(c, "html5-local-storage") ? 'L' : 'l', \ - GET_BOOL(c, "stylesheet") ? 'M' : 'm', \ - GET_BOOL(c, "scripts") ? 'S' : 's', \ - GET_BOOL(c, "strict-ssl") ? 'T' : 't' diff --git a/suckless/.config/suckless/surf/config.h b/suckless/.config/suckless/surf/config.h new file mode 100644 index 0000000..ef15e5f --- /dev/null +++ b/suckless/.config/suckless/surf/config.h @@ -0,0 +1,205 @@ +/* modifier 0 means no modifier */ +static int surfuseragent = 1; /* Append Surf version to default WebKit user agent */ +static int extendedtitle = 0; /* 0 to not append surf's toggle and page status to title. */ +static char *fulluseragent = ""; /* Or override the whole user agent string */ +static char *homepage = "rafaelmarcalo.xyz"; +static char *styledir = "~/.config/surf/styles/"; +static char *certdir = "~/.local/share/certificates/"; +static char *cachedir = "~/.cache/surf"; +static char *cookiefile = "~/.local/share/surf/cookies.txt"; +static char *searchurl = "https://searxng.rafaelmarcalo.xyz/searxng/search?q=%s"; +static char *scriptfiles[] = { + "~/.config/surf/scripts/vimnav.js", +}; + +/* Webkit default features */ +/* Highest priority value will be used. + * Default parameters are priority 0 + * Per-uri parameters are priority 1 + * Command parameters are priority 2 + */ +static Parameter defconfig[ParameterLast] = { + /* parameter Arg value priority */ + [AccessMicrophone] = { { .i = 0 }, }, + [AccessWebcam] = { { .i = 0 }, }, + [Certificate] = { { .i = 0 }, }, + [CaretBrowsing] = { { .i = 0 }, }, + [CookiePolicies] = { { .v = "@Aa" }, }, + [DarkMode] = { { .i = 0 }, }, + [DefaultCharset] = { { .v = "UTF-8" }, }, + [DiskCache] = { { .i = 1 }, }, + [DNSPrefetch] = { { .i = 0 }, }, + [Ephemeral] = { { .i = 0 }, }, + [FileURLsCrossAccess] = { { .i = 0 }, }, + [FontSize] = { { .i = 12 }, }, + [FrameFlattening] = { { .i = 0 }, }, + [Geolocation] = { { .i = 0 }, }, + [HideBackground] = { { .i = 0 }, }, + [Inspector] = { { .i = 0 }, }, + [Java] = { { .i = 1 }, }, + [JavaScript] = { { .i = 1 }, }, + [KioskMode] = { { .i = 0 }, }, + [LoadImages] = { { .i = 1 }, }, + [MediaManualPlay] = { { .i = 1 }, }, + [PreferredLanguages] = { { .v = (char *[]){ NULL } }, }, + [RunInFullscreen] = { { .i = 0 }, }, + [ScrollBars] = { { .i = 1 }, }, + [ShowIndicators] = { { .i = 1 }, }, + [SiteQuirks] = { { .i = 1 }, }, + [SmoothScrolling] = { { .i = 0 }, }, + [SpellChecking] = { { .i = 0 }, }, + [SpellLanguages] = { { .v = ((char *[]){ "en_US", NULL }) }, }, + [StrictTLS] = { { .i = 1 }, }, + [Style] = { { .i = 1 }, }, + [WebGL] = { { .i = 0 }, }, + [ZoomLevel] = { { .f = 1.0 }, }, +}; + +static UriParameters uriparams[] = { + { "(://|\\.)suckless\\.org(/|$)", { + [JavaScript] = { { .i = 0 }, 1 }, + }, }, +}; + +/* default window size: width, height */ +static int winsize[] = { 800, 600 }; + +static WebKitFindOptions findopts = WEBKIT_FIND_OPTIONS_CASE_INSENSITIVE | + WEBKIT_FIND_OPTIONS_WRAP_AROUND; + +#define PROMPT_GO "Go:" +#define PROMPT_FIND "Find:" +#define PROMPT_SEARCH "Search:" + +/* SETPROP(readprop, setprop, prompt)*/ +#define SETPROP(r, s, p) { \ + .v = (const char *[]){ "/bin/sh", "-c", \ + "prop=\"$(printf '%b' \"$(xprop -id $1 "r" " \ + "| sed -e 's/^"r"(UTF8_STRING) = \"\\(.*\\)\"/\\1/' " \ + " -e 's/\\\\\\(.\\)/\\1/g')\" " \ + "| dmenu -p '"p"' -w $1)\" " \ + "&& xprop -id $1 -f "s" 8u -set "s" \"$prop\"", \ + "surf-setprop", winid, NULL \ + } \ +} + +/* DOWNLOAD(URI, referer) */ +#define DOWNLOAD(u, r) { \ + .v = (const char *[]){ "st", "-e", "/bin/sh", "-c",\ + "curl -g -L -J -O -A \"$1\" -b \"$2\" -c \"$2\"" \ + " -e \"$3\" \"$4\"; read", \ + "surf-download", useragent, cookiefile, r, u, NULL \ + } \ +} + +/* PLUMB(URI) */ +/* This called when some URI which does not begin with "about:", + * "http://" or "https://" should be opened. + */ +#define PLUMB(u) {\ + .v = (const char *[]){ "/bin/sh", "-c", \ + "xdg-open \"$0\"", u, NULL \ + } \ +} + +/* VIDEOPLAY(URI) */ +#define VIDEOPLAY(u) {\ + .v = (const char *[]){ "/bin/sh", "-c", \ + "mpv --really-quiet \"$0\"", u, NULL \ + } \ +} + +/* SEARCH(searchQuery, prompt) */ +#define SEARCH(s, p) { \ + .v = (const char *[]){ "/bin/sh", "-c", \ + "query=\"$(dmenu -p '"p"' -w $1 < /dev/null)\" " \ + "&& xprop -id $1 -f "s" 8u -set "s" \"$query\"", \ + "surf-search", winid, "_SURF_SEARCH", NULL \ + } \ +} + +/* styles */ +/* + * The iteration will stop at the first match, beginning at the beginning of + * the list. + */ +static SiteSpecific styles[] = { + /* regexp file in $styledir */ + { ".*", "default.css" }, +}; + +/* certificates */ +/* + * Provide custom certificate for urls + */ +static SiteSpecific certs[] = { + /* regexp file in $certdir */ + { "://suckless\\.org/", "suckless.org.crt" }, +}; + +#define MODKEY GDK_CONTROL_MASK + +/* hotkeys */ +/* + * If you use anything else but MODKEY and GDK_SHIFT_MASK, don't forget to + * edit the CLEANMASK() macro. + */ +static Key keys[] = { + /* modifier keyval function arg */ + { MODKEY, GDK_KEY_o, spawn, SETPROP("_SURF_URI", "_SURF_GO", PROMPT_GO) }, + { MODKEY, GDK_KEY_slash, spawn, SETPROP("_SURF_FIND", "_SURF_FIND", PROMPT_FIND) }, + { MODKEY, GDK_KEY_s, spawn, SEARCH("_SURF_SEARCH", PROMPT_SEARCH) }, + + { MODKEY, GDK_KEY_w, playexternal, { 0 } }, + + { 0, GDK_KEY_Escape, stop, { 0 } }, + { MODKEY, GDK_KEY_c, stop, { 0 } }, + + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_r, reload, { .i = 1 } }, + { MODKEY, GDK_KEY_r, reload, { .i = 0 } }, + + { MODKEY, GDK_KEY_l, navigate, { .i = +1 } }, + { MODKEY, GDK_KEY_h, navigate, { .i = -1 } }, + + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_j, zoom, { .i = -1 } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_k, zoom, { .i = +1 } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_q, zoom, { .i = 0 } }, + { MODKEY, GDK_KEY_minus, zoom, { .i = -1 } }, + { MODKEY, GDK_KEY_plus, zoom, { .i = +1 } }, + + { MODKEY, GDK_KEY_p, clipboard, { .i = 1 } }, + { MODKEY, GDK_KEY_y, clipboard, { .i = 0 } }, + + { MODKEY, GDK_KEY_n, find, { .i = +1 } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_n, find, { .i = -1 } }, + + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_p, print, { 0 } }, + { MODKEY, GDK_KEY_t, showcert, { 0 } }, + + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_a, togglecookiepolicy, { 0 } }, + { 0, GDK_KEY_F11, togglefullscreen, { 0 } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_o, toggleinspector, { 0 } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_e, toggletitle, { 0 } }, + + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_c, toggle, { .i = CaretBrowsing } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_f, toggle, { .i = FrameFlattening } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_g, toggle, { .i = Geolocation } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_s, toggle, { .i = JavaScript } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_i, toggle, { .i = LoadImages } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_b, toggle, { .i = ScrollBars } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_t, toggle, { .i = StrictTLS } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_m, toggle, { .i = Style } }, + { MODKEY|GDK_SHIFT_MASK, GDK_KEY_d, toggle, { .i = DarkMode } }, +}; + +/* button definitions */ +/* target can be OnDoc, OnLink, OnImg, OnMedia, OnEdit, OnBar, OnSel, OnAny */ +static Button buttons[] = { + /* target event mask button function argument stop event */ + { OnLink, 0, 2, clicknewwindow, { .i = 0 }, 1 }, + { OnLink, MODKEY, 2, clicknewwindow, { .i = 1 }, 1 }, + { OnLink, MODKEY, 1, clicknewwindow, { .i = 1 }, 1 }, + { OnAny, 0, 8, clicknavigate, { .i = -1 }, 1 }, + { OnAny, 0, 9, clicknavigate, { .i = +1 }, 1 }, + { OnMedia, MODKEY, 1, clickexternplayer, { 0 }, 1 }, +}; diff --git a/suckless/.local/src/compileSource b/suckless/.local/src/compileSource index f9595ab..c0c996a 100755 --- a/suckless/.local/src/compileSource +++ b/suckless/.local/src/compileSource @@ -20,7 +20,7 @@ git clone git@github.com:rafa-99/st.git if [ "$KERNEL" = "Linux" ]; then git clone git@github.com:rafa-99/farbfeld.git - git clone git@github.com:rafa-99/neovimb.git + git clone git@github.com:rafa-99/surf.git git clone git@github.com:rafa-99/sent.git git clone git@github.com:rafa-99/slstatus.git git clone git@github.com:rafa-99/xmouseless.git @@ -35,7 +35,7 @@ cd "$SRC"/st && git pull ; if [ "$KERNEL" = "Linux" ]; then cd "$SRC"/farbfeld && git pull ; - cd "$SRC"/neovimb && git pull ; + cd "$SRC"/surf && git pull ; cd "$SRC"/sent && git pull ; cd "$SRC"/slstatus && git pull ; cd "$SRC"/xmouseless && git pull ; @@ -51,7 +51,7 @@ fi [ ! -f "$SRC"/st/config.h ] && cp -rf "$HOME"/.config/suckless/st/config.h "$SRC"/st/ ; if [ "$KERNEL" = "Linux" ]; then - [ ! -f "$SRC"/neovimb/src/config.h ] && cp -rf "$HOME"/.config/suckless/neovimb/config.h "$SRC"/neovimb/src ; + [ ! -f "$SRC"/surf/src/config.h ] && cp -rf "$HOME"/.config/suckless/surf/config.h "$SRC"/surf/src ; [ ! -f "$SRC"/sent/config.h ] && cp -rf "$HOME"/.config/suckless/sent/config.h "$SRC"/sent/ ; [ ! -f "$SRC"/slstatus/config.h ] && cp -rf "$HOME"/.config/suckless/slstatus/config.h "$SRC"/slstatus/ ; [ ! -f "$SRC"/xmouseless/config.h ] && cp -rf "$HOME"/.config/suckless/xmouseless/config.h "$SRC"/xmouseless/ ; @@ -80,7 +80,7 @@ cd "$SRC"/st && git pull ; doas make clean install ; make clean if [ "$KERNEL" = "Linux" ]; then cd "$SRC"/farbfeld && git pull ; doas make clean install ; make clean - cd "$SRC"/neovimb && git pull ; doas make clean install ; make clean + cd "$SRC"/surf && git pull ; doas make clean install ; make clean cd "$SRC"/sent && git pull ; doas make clean install ; make clean cd "$SRC"/slstatus && git pull ; doas make clean install ; make clean cd "$SRC"/xmouseless && git pull ; doas make clean install ; make clean |