X-Git-Url: https://git.sev.monster/~sev/dotfiles.git/blobdiff_plain/b484bab8b0951f1f1aa631b62fd486b685c6e0ff..HEAD:/etc/zsh/.zlogout diff --git a/etc/zsh/.zlogout b/etc/zsh/.zlogout index 1b2b266..df25b19 100644 --- a/etc/zsh/.zlogout +++ b/etc/zsh/.zlogout @@ -15,27 +15,29 @@ if [[ -o interactive ]] { # send xterm scrollback clear extension just in case: # - TERM may not be set correctly # - terminfo/termcap database entry for reset may be buggy - echo -n '\e[3J' + echo -en '\e[3J' # use terminfo/termcap directly instead of relying on system clear/reset: # - often they are just wrappers for ncurses tput or other tools # - they may not even exist on lightweight systems # - provided scripts/binaries may be buggy or broken - y=0 - for x (rs1 rs2 rs3) { - [[ -v terminfo[$x] ]] || continue - echoti $x - y=1 + y=1 + if [[ -v terminfo ]] { + for x (rs1 rs2 rs3) { + [[ -v terminfo[$x] ]] || continue + echoti $x + y=0 + } } - if (( y == 0 )) { + if { (( y )) && -v termcap ]] } { for x (rs r1 r2 r3) { [[ -v termcap[$x] ]] || continue echotc $x - y=1 + y=0 } } - if (( y == 0 )) { + if (( y )) { # fallback, send ECMA-48 clear - echo -n '\e[2J' + echo -en '\e[2J' } echo logout }