st

Luke's fork of the suckless terminal: vim-bindings, Xresrouces colors, transparency
Log | Files | Refs | README | LICENSE

commit d9575acb88455977b16852360fed597d9415855f
parent e196d09b86326ffc2b8cb73e2747365504885e1a
Author: Luke Smith <luke@lukesmith.xyz>
Date:   Fri,  3 May 2019 20:11:37 -0400

copy urls with alt-y

Diffstat:
MREADME.md | 1+
Mconfig.h | 7++++++-
Mst.1 | 3+++
3 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/README.md b/README.md @@ -10,6 +10,7 @@ The [suckless terminal (st)](https://st.suckless.org/) with some additional feat + Copy is alt-c, paste is alt-v or alt-p pastes from primary selection + Alt-l feeds all urls on screen to dmenu, so they user can choose and follow one (requires dmenu installed). + + Alt-y does the same as above, but copies the url with xclip. + Zoom in/out or increase font size with Alt+Shift+k/j or u/d for larger intervals. + Hold alt and press either ↑/↓ or the vim keys k/j to move up/down in the terminal. + Shift+Mouse wheel do the same. diff --git a/config.h b/config.h @@ -207,7 +207,11 @@ MouseKey mkeys[] = { }; static char *openurlcmd[] = { "/bin/sh", "-c", - "sed 's/.*│//g' | tr -d '\n' | grep -aEo '((http|https)://|www\\.)[a-zA-Z0-9./?=_-]*' | uniq | sed 's/^www./http:\\/\\/www\\./g' | dmenu -l 10 | xargs -r xdg-open", + "sed 's/.*│//g' | tr -d '\n' | grep -aEo '((http|https)://|www\\.)[a-zA-Z0-9./?=_-]*' | uniq | sed 's/^www./http:\\/\\/www\\./g' | dmenu -p 'Follow which url?' -l 10 | xargs -r xdg-open", + "externalpipe", NULL }; + +static char *copyurlcmd[] = { "/bin/sh", "-c", + "sed 's/.*│//g' | tr -d '\n' | grep -aEo '((http|https)://|www\\.)[a-zA-Z0-9./?=_-]*' | uniq | sed 's/^www./http:\\/\\/www\\./g' | dmenu -p 'Copy which url?' -l 10 | tr -d '\n' | xclip -selection clipboard", "externalpipe", NULL }; static Shortcut shortcuts[] = { @@ -242,6 +246,7 @@ static Shortcut shortcuts[] = { { MODKEY|ShiftMask, XK_U, zoom, {.f = +2} }, { MODKEY|ShiftMask, XK_D, zoom, {.f = -2} }, { MODKEY, XK_l, externalpipe, { .v = openurlcmd } }, + { MODKEY, XK_y, externalpipe, { .v = copyurlcmd } }, }; /* diff --git a/st.1 b/st.1 @@ -149,6 +149,9 @@ Paste/input primary selection. .B Alt-l Show dmenu menu of all URLs on screen and choose one to open. .TP +.B Alt-y +Show dmenu menu of all URLs on screen and choose one to copy. +.TP .B Break Send a break in the serial line. Break key is obtained in PC keyboards