]> git.phdru.name Git - dotfiles.git/blobdiff - .fvwm/main.m4
.fvwm/main.m4: add macros for ssh connection sharing terms
[dotfiles.git] / .fvwm / main.m4
index 4230801daf914bcffb6b822fe87f98ff0dce0f45..db62cb9cc640f65f6a4414c4338e4a75aa0ee124 100644 (file)
@@ -91,17 +91,23 @@ define(`TERM_KOI8_BOTRT', `TERM_KOI8 -geometry TERM_GEOM_BOTRT')
 define(`TERM_UTF8_BOTRT', `TERM_UTF8 -geometry TERM_GEOM_BOTRT')
 
 
+define(`REMOTE_HOST_TERM',
+`$1 -e ssh -4 $2')
+
+define(`REMOTE_HOST_TERM_TITLE',
+`$1 -title $3 -n $3 -e ssh -4 $2')
+
 define(`REMOTE_HOST_KOI8',
-`TERM_KOI8 -title "$2" -n "$2" -e ssh -4 "$1"')
+REMOTE_HOST_TERM_TITLE(TERM_KOI8, $1, $2))
 
 define(`REMOTE_HOST_KOI8_MENU',
 "$2 (koi8)" REMOTE_HOST_KOI8($1, $2))
 
 define(`REMOTE_HOST_KOI8_BOTLT',
-TERM_KOI8_BOTLT -title "$2" -n "$2" -e ssh -4 "$1")
+REMOTE_HOST_TERM_TITLE(TERM_KOI8_BOTLT, $1, $2))
 
 define(`REMOTE_HOST_KOI8_BOTRT',
-`TERM_KOI8_BOTRT -title "$2" -n "$2" -e ssh -4 "$1"')
+REMOTE_HOST_TERM_TITLE(TERM_KOI8_BOTRT, $1, $2))
 
 define(`REMOTE_HOST_KOI8_BOTLT_MENU',
 "$2 (koi8,btlt)" REMOTE_HOST_KOI8_BOTLT($1, $2))
@@ -110,16 +116,16 @@ define(`REMOTE_HOST_KOI8_BOTRT_MENU',
 "$2 (koi8,btrt)" REMOTE_HOST_KOI8_BOTRT($1, $2))
 
 define(`REMOTE_HOST_UTF8',
-TERM_UTF8 -e ssh -4 "$1")
+REMOTE_HOST_TERM(TERM_UTF8, $1))
 
 define(`REMOTE_HOST_UTF8_MENU',
 "$2 (utf8)" REMOTE_HOST_UTF8($1, $2))
 
 define(`REMOTE_HOST_UTF8_BOTLT',
-TERM_UTF8_BOTLT -e ssh -4 "$1")
+REMOTE_HOST_TERM(TERM_UTF8_BOTLT, $1))
 
 define(`REMOTE_HOST_UTF8_BOTRT',
-TERM_UTF8_BOTRT -e ssh -4 "$1")
+REMOTE_HOST_TERM(TERM_UTF8_BOTRT, $1))
 
 define(`REMOTE_HOST_UTF8_BOTLT_MENU',
 "$2 (utf8,btlt)" REMOTE_HOST_UTF8_BOTLT($1, $2))
@@ -132,6 +138,28 @@ TERM_KOI8 -geometry TERM_GEOM_BIG -title "$2" -n "$2" -e ssh -4 "$1")
 
 define(`REMOTE_HOST_KOI8_BIG_MENU',
 "$2 (koi8)" REMOTE_HOST_KOI8_BIG($1, $2))
+
+define(`SSH_CONNECTION_SHARING_TERM',
+$1 -title "git@$3" -n "git@$3" -e ssh -N4 "$2")
+
+define(`SSH_CONNECTION_SHARING_UTF8',
+SSH_CONNECTION_SHARING_TERM(TERM_UTF8, $1, $2))
+
+define(`SSH_CONNECTION_SHARING_UTF8_BOTLT',
+SSH_CONNECTION_SHARING_TERM(TERM_UTF8_BOTLT, $1, $2))
+
+define(`SSH_CONNECTION_SHARING_UTF8_BOTRT',
+SSH_CONNECTION_SHARING_TERM(TERM_UTF8_BOTRT, $1, $2))
+
+define(`SSH_CONNECTION_SHARING_UTF8_MENU',
+"git@$2 (utf8)" SSH_CONNECTION_SHARING_UTF8($1, $2))
+
+define(`SSH_CONNECTION_SHARING_UTF8_BOTLT_MENU',
+"git@$2 (utf8,btlt)" SSH_CONNECTION_SHARING_UTF8_BOTLT($1, $2))
+
+define(`SSH_CONNECTION_SHARING_UTF8_BOTRT_MENU',
+"git@$2 (utf8,btrt)" SSH_CONNECTION_SHARING_UTF8_BOTRT($1, $2))
+
 divert
 
 ##########################################################################
@@ -482,6 +510,8 @@ AddToFunc StartStandardSession
 +              I Wait TERM
 +              I PaVuControl
 +              I Exec exec "$HOME"/current/projects/audio-cdr-video/audio/pa-mic-off
++              I XsetbgFilename
++              I Wait gxmessage
 +              I GotoDeskAndPage 1 0 1
 +              I TERM_KOI8
 +              I Wait TERM
@@ -503,7 +533,7 @@ AddToFunc ResumeFunction
 +              I Wait TERM
 +              I None ("Volume Control") PaVuControl
 +              I Exec sleep 10; exec "$HOME"/current/projects/audio-cdr-video/audio/pa-mic-off
-+              I Exec "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
++              I XsetbgFilename
 +              I Wait gxmessage
 +              I Any ("*Mozilla Firefox") GotoDeskAndPage 0 1 0
 +              I TestRc (Match) Break
@@ -615,6 +645,9 @@ DestroyFunc Pidgin
 AddToFunc Pidgin              I GotoDeskAndPage 1 1 0
 +                             I Exec exec pidgin
 
+DestroyFunc XFilename
+AddToFunc XSetbgFilename      I Exec "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
+
 ##############################################################################
 # MENU Setup
 #
@@ -663,6 +696,7 @@ AddToMenu Terminals     "Terminals" Title
 +               "Grey term (utf8,btlt)" TERM_UTF8_BOTLT
 +               "Grey term (utf8,btrt)" TERM_UTF8_BOTRT
 +               "Big grey term (koi8)" TERM_KOI8 -geometry TERM_GEOM_BIG
++               "Big grey term (utf8)" TERM_UTF8 -geometry TERM_GEOM_BIG
 +                       ""      Nop
 +               "White/black term (koi8)" TERM_KOI8 -fg white -cr white -bg black
 +               "White/black term (utf8)" TERM_UTF8 -fg white -bg black
@@ -692,7 +726,14 @@ AddToMenu TermColors    "Term Colors" Title
 +                       "Term: white/deeppink" TERM_KOI8 -fg white -cr white -bg deeppink
 +                       "Term: white/black" TERM_KOI8 -fg white -cr white -bg black
 
+AddToMenu SSH-connection-sharing "SSH connection sharing" Title
++                       SSH_CONNECTION_SHARING_UTF8_MENU(phd@git.code.sf.net, SF)
++                       SSH_CONNECTION_SHARING_UTF8_BOTLT_MENU(git@gitlab.com, gitlab)
++                       SSH_CONNECTION_SHARING_UTF8_BOTRT_MENU(git@github.com, github)
+
 AddToMenu Systems       "Systems" Title
++                       "SSH connection sharing" Popup SSH-connection-sharing
++                       ""        Nop
 +                       REMOTE_HOST_KOI8_MENU(phdru.name, phdru)
 +                       REMOTE_HOST_UTF8_MENU(phdru.name, phdru)
 +                       REMOTE_HOST_KOI8_BIG_MENU(phdru.name, PHDRU)
@@ -841,7 +882,7 @@ changequote([,])
 +                       "Open in browser" Exec exec webbrowserX -n "`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r`"
 +                       "Filename" Exec exec "$HOME"/current/projects/xsetbg/print-filename.py -e koi8-r
 +                       "XFilename" Exec "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
-+                       "XFilename (wrapped)" Exec "$HOME"/current/projects/xsetbg/print-filename.py | text-wrap.py -w TEXT_WIDTH -s -n | gxmessage -buttons Ok -default Ok -fn 'MESSAGE_FONT' -file -
++                       "XFilename (wrapped)" XSetbgFilename
 +                       ""       Nop
 +                       "Xli (prev.)" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r 1`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" "$fn"
 +                       "Xli (prev., scaled)" Exec fn="`$HOME/current/projects/xsetbg/print-filename.py -e koi8-r 1`" && exec xli -title "`echo $fn | sed 's/ /_/g'`" -zoom auto "$fn"