]>
Commit | Line | Data |
---|---|---|
6d54344e | 1 | ### cleanup |
2 | # XXX: since .zlogout isn't guaranteed to have been run in the same shell as | |
3 | # our .zprofile was (since we source it in .zshenv for SHLVL=1 among other | |
4 | # situations) we are not guaranteed to clean up our current session's tmp, | |
5 | # but it should be cleared out on next session launch | |
6 | _sev_zcleanup | |
7 | ## unset vars that use our tmp since above will remove them | |
e69caf64 | 8 | [[ XDG_CACHE_HOME = $_sev_tmp/.xdg.cache ]] && unset XDG_CACHE_DIR |
9 | [[ XDG_RUNTIME_DIR = $TMPDIR/.xdg.runtime ]] && unset XDG_RUNTIME_DIR | |
6d54344e | 10 | ## clean up any remaining sockets from gpg forwarding |
e69caf64 | 11 | [[ -v _GNUPG_SOCK_DEST_BASE ]] && rm -f $_GNUPG_SOCK_DEST_BASE*(=N) |
79d4a356 | 12 | |
b484bab8 | 13 | ## manually reset terminal for interactive logout |
833b2af3 | 14 | if [[ -o interactive ]] { |
b484bab8 | 15 | # send xterm scrollback clear extension just in case: |
16 | # - TERM may not be set correctly | |
17 | # - terminfo/termcap database entry for reset may be buggy | |
294ed44e | 18 | echo -en '\e[3J' |
b484bab8 | 19 | # use terminfo/termcap directly instead of relying on system clear/reset: |
20 | # - often they are just wrappers for ncurses tput or other tools | |
21 | # - they may not even exist on lightweight systems | |
22 | # - provided scripts/binaries may be buggy or broken | |
b8a33b95 | 23 | y=1 |
24 | if [[ -v terminfo ]] { | |
25 | for x (rs1 rs2 rs3) { | |
26 | [[ -v terminfo[$x] ]] || continue | |
27 | echoti $x | |
28 | y=0 | |
29 | } | |
b484bab8 | 30 | } |
b8a33b95 | 31 | if { (( y )) && -v termcap ]] } { |
b484bab8 | 32 | for x (rs r1 r2 r3) { |
33 | [[ -v termcap[$x] ]] || continue | |
34 | echotc $x | |
b8a33b95 | 35 | y=0 |
b484bab8 | 36 | } |
37 | } | |
b8a33b95 | 38 | if (( y )) { |
b484bab8 | 39 | # fallback, send ECMA-48 clear |
294ed44e | 40 | echo -en '\e[2J' |
b484bab8 | 41 | } |
833b2af3 | 42 | echo logout |
833b2af3 | 43 | } |
8eb81f95 | 44 | |
45 | ### load site-specific | |
4ced48ed | 46 | load-site-dotfile zlogout |