Rendez-vous sur Arrakis

C'est lorsque nous croyons savoir quelque chose qu'il faut justement réfléchir un peu plus profondément. F. Herbert

Marques-pages avec surf

Voyons comment avoir son propre système de gestion des marques pages avec surf.

Marquer une page.

Bookmarkurl

On crée le script bookmarkurl que l'on enregistre par exemple dans ~/.Scripts/surf :

#!/bin/sh
SB="#000000"
SF="#85879a"
NB="#000000"
NF="#474855"
FN="-*-fixed-medium-r-semicondensed-*-13-*-*-*-*-*-iso10646-*"
file=~/.surf/bookmarks
url=`xprop -id $1 | grep URI | awk '{print $3}' | sed 's/\"//g'`
title=`xprop -id $1 | grep WM_ICON_NAME\(STRING\) | cut -c 24-`
addr=$(echo "$url $title" | dmenu -fn $FN -nb $NB -nf $NF -sb $SB -sf $SF)
echo $addr >> $file

Il enregistre les adresse dans ~/.surf/bookmarks

Configurer surf

On va maintenant configurer surf. Pour cela, on édite le config.h.

Tout d'abord, on ajoute ces 2 lignes, par exemple après #define DOWNLOAD... :

#define ADDBMK { .v = (char *[]){ "/bin/sh", "-c", \
    "~/.Scripts/surf/bookmarkurl $0", winid, NULL } }

:Ajouter cette ligne au config.h de surf dans la section static Key keys[] = {

{ MODKEY|GDK_SHIFT_MASK,GDK_a, spawn, ADDBMK },

On recompile, et hop, maintenant dans surf, il suffit de faire Ctrl-Shift-a pour ajouter un marque-page. Petite astuce, tapez TABULATION, espace, et entrez une description du marque page. Cela permettra de le retrouver plus facilement ensuite.

Charger une page marquée.

Création du script.

Le script suivant liste les liens dans dmenu, et vous permet de choisir celui que vous souhaitez. On l'appellera loadbookmark.

#!/bin/sh
SB="#000000"
SF="#85879a"
NB="#000000"
NF="#474855"
FN="-*-fixed-medium-r-semicondensed-*-13-*-*-*-*-*-iso10646-*"
cat ~/.surf/bookmarks | dmenu -fn $FN -nb $NB -nf $NF -sb $SB -sf $SF -i -l 20 | awk '{print $1}'

Configuration de surf.

Pareil, on ajoute ces deux lignes dans le config.h

#define LOADBMK { .v = (char *[]){ "/bin/sh", "-c", \
    "xprop -id $0 -f _SURF_GO 8s -set _SURF_GO `~/.Scripts/surf/loadbookmark` || exit 0", \
      winid, NULL } }

Et le raccourci dans la section static Key keys[]

{ MODKEY|GDK_SHIFT_MASK,GDK_f,      spawn,      LOADBMK },

Recompilez surf, et maintenant tapez le raccourci ctrl+shift+f. Dmenu s'ouvre, vous n'avez plus qu'à taper les quelques lettres d'une adresse ou de la description que vous lui avez donnée puis valider par entrée.