diff --git a/Xresources b/Xresources index 5f4566d..c7557d7 100644 --- a/Xresources +++ b/Xresources @@ -88,3 +88,6 @@ URxvt*color12: #729FCF URxvt*color13: #AD7FA8 URxvt*color14: #34E2E2 URxvt*color15: #EEEEEC + +/* Rxvt */ +Rxvt*termName: rxvt diff --git a/vimrc b/vimrc index 2e5b7c7..04c3a7f 100644 --- a/vimrc +++ b/vimrc @@ -274,18 +274,18 @@ imap :silent set number! " Don't force column 0 for # inoremap # X# -" Force to be backspace except when in interix mode -" because interix uses that for forward delete... -" and always accept as a backspace key -" Let interix use ^[[U for end and ^[[H for home +" Always map to backspace +" Both interix and cons use C-? as forward delete, +" besides those two exceptions, always set it to backspace +" Also let interix use ^[[U for end and ^[[H for home map map! -if (&term !~ "interix") - map - map! -else +if (&term =~ "interix") map  map  +elseif (&term !~ "cons") + map + map! endif " Python specific stuff diff --git a/zshrc b/zshrc index a2b3659..82b1ba5 100644 --- a/zshrc +++ b/zshrc @@ -86,19 +86,25 @@ export LESS=' -R' # aliases alias cd..='cd ..' +# handles per OS aliases, fixes a few terms case `uname -s` in Linux|CYGWIN*) alias ls="ls -h --color=auto" alias grep='grep -d skip --color=auto' ;; FreeBSD|Darwin|DragonFly) - # we must lie to the mac, for it is dumb export LSCOLORS=ExGxFxDxCxDxDxHbaDacec alias ls="ls -Gh" alias grep='grep -d skip --color=auto' ;; Interix) alias ls="ls --color" + + # sorta hacky, but I cannot find a better way to do this :/ + if [[ `which infocmp` = /usr/local/bin/infocmp ]] ; then + export TERMINFO=/usr/local/share/terminfo + export TERM=$TERM + fi ;; SunOS) if (which gls &> /dev/null) ; then @@ -169,6 +175,10 @@ case $TERM in bindkey '^[[5D' emacs-backward-word bindkey '^[OC' emacs-forward-word bindkey '^[OD' emacs-backward-word + bindkey '^[Oc' emacs-forward-word + bindkey '^[Od' emacs-backward-word + bindkey '^[[c' emacs-forward-word + bindkey '^[[d' emacs-backward-word ;; linux) bindkey '^[[1~' beginning-of-line @@ -184,11 +194,17 @@ case $TERM in bindkey '^[[7~' beginning-of-line bindkey '^[[8~' end-of-line ;; + cons*) + bindkey '^[[H' beginning-of-line + bindkey '^[[F' end-of-line + bindkey '^?' delete-char + ;; interix) bindkey '^[[H' beginning-of-line bindkey '^[[U' end-of-line + bindkey '^?' delete-char ;; - cygwin) + cygwin*) bindkey '^[[1~' beginning-of-line bindkey '^[[4~' end-of-line ;; @@ -208,9 +224,6 @@ precmd() { local termtitle - ## Changing IFS breaks a few things otherwise, especially clear-zle-screen - IFS=$' \t\n' - termtitle=$(print -P "%n@%m") title zsh "$termtitle" } @@ -267,7 +280,6 @@ function title # Use these two for GNU Screen: print -nR $'\ek'$1$'\e'"\\" shift -# print -nR $'\e]0;'$*$'\a' print -nR $'\e_screen \005 | '$*$'\e'"\\" ;; xterm*|rxvt*|cygwin|interix)