}
;; Synchronize remote terminal size with local window.
-def syncwinsz output stty rows \v(rows) columns \v(cols)\13
+def SYNCWINSZ output stty rows \v(rows) columns \v(cols)\13
+
+;; Special cases for particular target hosts.
+def GUVNOR {
+ set key 127 \8
+ telnet guvnor.distorted.org.uk
+}
+def JUMPTS {
+ local pass
+ set host /network-type:pty ssh -enone -t \%1
+ while true {
+ input 15 \fpattern({{{password:,exit}}})
+ if fail end 1 failed to connect
+ if equal \v(inmatch) exit break
+ if equal \v(inmatch) password: {
+ if ! def pass askq pass {password: }
+ output \m(pass)\13
+ }
+ }
+}
+def FENDERCON {
+ set input echo off
+ jumpts mdw@ts-tfm8.jump.net.uk
+ output 1\13
+ set control prefixed 30
+ connect
+}
+def ARDUINO {
+ set terminal lf-display crlf
+ set line \%1
+ set speed 9600
+ set serial 8n1
+ set modem type none
+ set carrier-watch off
+ set clear-channel on
+ connect
+ set line
+}
;; Local configuration.
if exist \m(_dot)config take \m(_dot)config