searchengines
authorDaniel Liu <mr.picklepinosaur@gmail.com>
Tue, 4 Aug 2020 16:47:39 +0000 (12:47 -0400)
committerDaniel Liu <mr.picklepinosaur@gmail.com>
Tue, 4 Aug 2020 16:47:39 +0000 (12:47 -0400)
1  2 
config.def.h

diff --combined config.def.h
@@@ -10,7 -10,8 +10,8 @@@ static char *cookiefile     = "~/.surf/
  static SearchEngine searchengines[] = {
      { "g",    "https://www.google.com/search?q=%s"             },
      { "ji",   "https://jisho.org/search/%s"                    },
-     { "aw",   "https://wiki.archlinux.org/index.php?search=%s" }
+     { "aw",   "https://wiki.archlinux.org/index.php?search=%s" },
+     { "s",    "https://searx.danieliu.xyz/?q=%s"               }
  };
  
  /* Webkit default features */
@@@ -76,9 -77,8 +77,9 @@@ static WebKitFindOptions findopts = WEB
  #define SETPROP(r, s, p) { \
          .v = (const char *[]){ "/bin/sh", "-c", \
               "prop=\"$(printf '%b' \"$(xprop -id $1 $2 " \
 -             "| sed \"s/^$2(STRING) = //;s/^\\\"\\(.*\\)\\\"$/\\1/\")\" " \
 -             "| dmenu -p \"$4\" -w $1)\" && xprop -id $1 -f $3 8s -set $3 \"$prop\"", \
 +             "| sed \"s/^$2(STRING) = //;s/^\\\"\\(.*\\)\\\"$/\\1/\" && cat ~/.surf/bookmarks)\" " \
 +             "| dmenu -l 10 -p \"$4\" -w $1)\" && " \
 +             "xprop -id $1 -f $3 8s -set $3 \"$prop\"", \
               "surf-setprop", winid, r, s, p, NULL \
          } \
  }
          } \
  }
  
 +/* BM_ADD(readprop) */
 +#define BM_ADD(r) {\
 +        .v = (const char *[]){ "/bin/sh", "-c", \
 +             "(echo $(xprop -id $0 $1) | cut -d '\"' -f2 " \
 +             "| sed 's/.*https*:\\/\\/\\(www\\.\\)\\?//' && cat ~/.surf/bookmarks) " \
 +             "| awk '!seen[$0]++' > ~/.surf/bookmarks.tmp && " \
 +             "mv ~/.surf/bookmarks.tmp ~/.surf/bookmarks", \
 +             winid, r, NULL \
 +        } \
 +}
 +
  /* styles */
  /*
   * The iteration will stop at the first match, beginning at the beginning of
@@@ -151,7 -140,6 +152,7 @@@ static Key keys[] = 
        { MODKEY,                GDK_KEY_g,      spawn,      SETPROP("_SURF_URI", "_SURF_GO", PROMPT_GO) },
        { MODKEY,                GDK_KEY_f,      spawn,      SETPROP("_SURF_FIND", "_SURF_FIND", PROMPT_FIND) },
        { MODKEY,                GDK_KEY_slash,  spawn,      SETPROP("_SURF_FIND", "_SURF_FIND", PROMPT_FIND) },
 +      { MODKEY,                GDK_KEY_m,      spawn,      BM_ADD("_SURF_URI") },
  
        { 0,                     GDK_KEY_Escape, stop,       { 0 } },
        { MODKEY,                GDK_KEY_c,      stop,       { 0 } },
@@@ -212,5 -200,3 +213,5 @@@ static Button buttons[] = 
        { OnAny,        0,              9,      clicknavigate,  { .i = +1 },    1 },
        { OnMedia,      MODKEY,         1,      clickexternplayer, { 0 },       1 },
  };
 +
 +#define HOMEPAGE "https://searx.danieliu.xyz/"