mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-12-04 00:53:37 +08:00
aab235f612
On my linux virtual terminals, where TERM="linux", I was getting annoying output that was messing up my prompt. It turns out the title function was always matching on the elif statement for xterm/rxvt no matter what and the linux vt doesn't know what to do with the title special control sequence and thus was printing out garbage. Through experimentation I figured out that the || inside of the [[ ]] did not work: export TERM=linux $ if [[ $TERM =~ "^xterm" || $TERM == "rxvt" ]]; then echo $TERM; fi linux $ if [[ $TERM =~ "^xterm" ]] || [[ $TERM == "rxvt" ]]; then echo $TERM; fi Signed-off-by: Brandon Philips <brandon@ifup.org> openSUSE running zsh 4.3.10
41 lines
755 B
Bash
41 lines
755 B
Bash
## fixme, i duplicated this in xterms - oops
|
|
function title {
|
|
if [[ $TERM == "screen" ]]; then
|
|
# Use these two for GNU Screen:
|
|
print -nR $'\033k'$1$'\033'\\\
|
|
|
|
print -nR $'\033]0;'$2$'\a'
|
|
elif [[ ($TERM =~ "^xterm") ]] || [[ ($TERM == "rxvt") ]]; then
|
|
# Use this one instead for XTerms:
|
|
print -nR $'\033]0;'$*$'\a'
|
|
fi
|
|
}
|
|
|
|
function precmd {
|
|
title zsh "$PWD"
|
|
}
|
|
|
|
function preexec {
|
|
emulate -L zsh
|
|
local -a cmd; cmd=(${(z)1})
|
|
title $cmd[1]:t "$cmd[2,-1]"
|
|
}
|
|
|
|
function zsh_stats() {
|
|
history | awk '{print $2}' | sort | uniq -c | sort -rn | head
|
|
}
|
|
|
|
function uninstall_oh_my_zsh() {
|
|
/bin/sh $ZSH/tools/uninstall.sh
|
|
}
|
|
|
|
function upgrade_oh_my_zsh() {
|
|
/bin/sh $ZSH/tools/upgrade.sh
|
|
}
|
|
|
|
function take() {
|
|
mkdir -p $1
|
|
cd $1
|
|
}
|
|
|