about summary refs log tree commit diff
path: root/Functions
diff options
context:
space:
mode:
authorBart Schaefer <barts@users.sourceforge.net>2012-03-01 03:36:48 +0000
committerBart Schaefer <barts@users.sourceforge.net>2012-03-01 03:36:48 +0000
commit915766c624880ead34a80796a80f014822db3d96 (patch)
tree21a258e0a62e5427398ee24c0b408ba9573a9f86 /Functions
parentf2bf8fa36582e79361a1a961119a8ccb128bbb35 (diff)
downloadzsh-915766c624880ead34a80796a80f014822db3d96.tar.gz
zsh-915766c624880ead34a80796a80f014822db3d96.tar.xz
zsh-915766c624880ead34a80796a80f014822db3d96.zip
unposted (users/16697): use a better output file name when the DISPLAY
variable refers to a socket file (MacOS); fix problem with writing the
output file when the user overrides the default value of TERM.
Diffstat (limited to 'Functions')
-rw-r--r--Functions/Misc/zkbd15
1 files changed, 8 insertions, 7 deletions
diff --git a/Functions/Misc/zkbd b/Functions/Misc/zkbd
index a28354b07..1065a84f1 100644
--- a/Functions/Misc/zkbd
+++ b/Functions/Misc/zkbd
@@ -14,8 +14,7 @@ local zkbd term key seq
 zkbd=${ZDOTDIR:-$HOME}/.zkbd
 [[ -d $zkbd ]] || mkdir $zkbd || return 1
 
-print 'typeset -g -A key\n' > $zkbd/$TERM.tmp || return 1
-trap "unfunction getmbkey getseq; command rm -f $zkbd/$TERM.tmp" 0
+trap 'unfunction getmbkey getseq; command rm -f $zkbd/$TERM.tmp' 0
 trap "return 1" 1 2 15
 
 getmbkey () {
@@ -57,6 +56,7 @@ getseq () {
 
 read term"?Enter current terminal type: [$TERM] "
 [[ -n $term ]] && TERM=$term
+print 'typeset -g -A key\n' > $zkbd/$TERM.tmp || return 1
 
 cat <<\EOF
 
@@ -251,21 +251,22 @@ else
     fi
 fi
 
-local termID=${DISPLAY:-$VENDOR-$OSTYPE}
-command mv $zkbd/$TERM.tmp $zkbd/$TERM-$termID
+local termID=${${DISPLAY:t}:-$VENDOR-$OSTYPE} termFile=$zkbd/$TERM.tmp
+command mv $termFile $zkbd/$TERM-$termID && termFile=$zkbd/$TERM-$termID
 
 cat <<EOF
 
 Parameter assignments for the keys you typed have been written to the file:
-$zkbd/$TERM-$termID
+$termFile
 
 You may read this file into ${ZDOTDIR:-$HOME}/.zshrc or another startup
 file with the "source" or "." commands, then reference the \$key parameter
-in bindkey commands, like this:
+in bindkey commands, for example like this:
 
-    source ${zkbd/$HOME/~}/\$TERM-\${DISPLAY:-\$VENDOR-\$OSTYPE}
+    source ${(D)zkbd}/\$TERM-\${\${DISPLAY:t}:-\$VENDOR-\$OSTYPE}
     [[ -n \${key[Left]} ]] && bindkey "\${key[Left]}" backward-char
     [[ -n \${key[Right]} ]] && bindkey "\${key[Right]}" forward-char
     # etc.
 
+Adjust the name of the file being sourced, as necessary.
 EOF