Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Oh My Zsh
Commits
a9a0f580
Commit
a9a0f580
authored
Dec 14, 2011
by
Robby Russell
Browse files
Merge pull request #706 from docwhat/termsupport-hook
lib/termsupport now uses add-zsh-hook
parents
d3cc1849
5277a0ff
Changes
4
Hide whitespace changes
Inline
Side-by-side
lib/termsupport.zsh
View file @
a9a0f580
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
#Limited support for Apple Terminal (Terminal can't set window or tab separately)
#Limited support for Apple Terminal (Terminal can't set window or tab separately)
function
title
{
function
title
{
[
"
$DISABLE_AUTO_TITLE
"
!=
"true"
]
||
return
[
"
$DISABLE_AUTO_TITLE
"
!=
"true"
]
||
return
if
[[
"
$TERM
"
==
screen
*
]]
;
then
if
[[
"
$TERM
"
==
screen
*
]]
;
then
print
-Pn
"
\e
k
$1
:q
\e\\
"
#set screen hardstatus, usually truncated at 20 chars
print
-Pn
"
\e
k
$1
:q
\e\\
"
#set screen hardstatus, usually truncated at 20 chars
elif
[[
"
$TERM
"
==
xterm
*
]]
||
[[
$TERM
==
rxvt
*
]]
||
[[
"
$TERM_PROGRAM
"
==
"iTerm.app"
]]
;
then
elif
[[
"
$TERM
"
==
xterm
*
]]
||
[[
$TERM
==
rxvt
*
]]
||
[[
"
$TERM_PROGRAM
"
==
"iTerm.app"
]]
;
then
print
-Pn
"
\e
]2;
$2
:q
\a
"
#set window name
print
-Pn
"
\e
]2;
$2
:q
\a
"
#set window name
...
@@ -16,14 +16,18 @@ ZSH_THEME_TERM_TAB_TITLE_IDLE="%15<..<%~%<<" #15 char left truncated PWD
...
@@ -16,14 +16,18 @@ ZSH_THEME_TERM_TAB_TITLE_IDLE="%15<..<%~%<<" #15 char left truncated PWD
ZSH_THEME_TERM_TITLE_IDLE
=
"%n@%m: %~"
ZSH_THEME_TERM_TITLE_IDLE
=
"%n@%m: %~"
#Appears when you have the prompt
#Appears when you have the prompt
function
precmd
{
function
omz_termsupport_
precmd
{
title
$ZSH_THEME_TERM_TAB_TITLE_IDLE
$ZSH_THEME_TERM_TITLE_IDLE
title
$ZSH_THEME_TERM_TAB_TITLE_IDLE
$ZSH_THEME_TERM_TITLE_IDLE
}
}
#Appears at the beginning of (and during) of command execution
#Appears at the beginning of (and during) of command execution
function
preexec
{
function
omz_termsupport_
preexec
{
emulate
-L
zsh
emulate
-L
zsh
setopt extended_glob
setopt extended_glob
local
CMD
=
${
1
[(wr)^(*=*|sudo|ssh|-*)]
}
#cmd name only, or if this is sudo or ssh, the next cmd
local
CMD
=
${
1
[(wr)^(*=*|sudo|ssh|-*)]
}
#cmd name only, or if this is sudo or ssh, the next cmd
title
"
$CMD
"
"%100>...>
$2
%<<"
title
"
$CMD
"
"%100>...>
$2
%<<"
}
}
autoload
-U
add-zsh-hook
add-zsh-hook precmd omz_termsupport_precmd
add-zsh-hook preexec omz_termsupport_preexec
themes/apple.zsh-theme
View file @
a9a0f580
...
@@ -2,7 +2,7 @@ function toon {
...
@@ -2,7 +2,7 @@ function toon {
echo -n ""
echo -n ""
}
}
get_git_dirty() {
get_git_dirty() {
git diff --quiet || echo '*'
git diff --quiet || echo '*'
}
}
...
@@ -18,9 +18,12 @@ zstyle ':vcs_info:*' formats \
...
@@ -18,9 +18,12 @@ zstyle ':vcs_info:*' formats \
zstyle ':vcs_info:(sv[nk]|bzr):*' branchformat '%b%F{1}:%F{3}%r'
zstyle ':vcs_info:(sv[nk]|bzr):*' branchformat '%b%F{1}:%F{3}%r'
zstyle ':vcs_info:*' enable git cvs svn
zstyle ':vcs_info:*' enable git cvs svn
precmd () {
theme_
precmd () {
vcs_info
vcs_info
}
}
setopt prompt_subst
setopt prompt_subst
PROMPT='%{$fg[magenta]%}$(toon)%{$reset_color%} %~/ %{$reset_color%}${vcs_info_msg_0_}%{$reset_color%}'
PROMPT='%{$fg[magenta]%}$(toon)%{$reset_color%} %~/ %{$reset_color%}${vcs_info_msg_0_}%{$reset_color%}'
autoload -U add-zsh-hook
add-zsh-hook precmd theme_precmd
\ No newline at end of file
themes/jonathan.zsh-theme
View file @
a9a0f580
function precmd {
function
theme_
precmd {
local TERMWIDTH
local TERMWIDTH
(( TERMWIDTH = ${COLUMNS} - 1 ))
(( TERMWIDTH = ${COLUMNS} - 1 ))
###
###
# Truncate the path if it's too long.
# Truncate the path if it's too long.
PR_FILLBAR=""
PR_FILLBAR=""
PR_PWDLEN=""
PR_PWDLEN=""
local promptsize=${#${(%):---(%n@%m:%l)---()--}}
local promptsize=${#${(%):---(%n@%m:%l)---()--}}
local rubyprompt=`rvm_prompt_info`
local rubyprompt=`rvm_prompt_info`
local rubypromptsize=${#${rubyprompt}}
local rubypromptsize=${#${rubyprompt}}
local pwdsize=${#${(%):-%~}}
local pwdsize=${#${(%):-%~}}
if [[ "$promptsize + $rubypromptsize + $pwdsize" -gt $TERMWIDTH ]]; then
if [[ "$promptsize + $rubypromptsize + $pwdsize" -gt $TERMWIDTH ]]; then
((PR_PWDLEN=$TERMWIDTH - $promptsize))
((PR_PWDLEN=$TERMWIDTH - $promptsize))
else
else
...
@@ -24,7 +24,7 @@ function precmd {
...
@@ -24,7 +24,7 @@ function precmd {
setopt extended_glob
setopt extended_glob
preexec () {
theme_
preexec () {
if [[ "$TERM" == "screen" ]]; then
if [[ "$TERM" == "screen" ]]; then
local CMD=${1[(wr)^(*=*|sudo|-*)]}
local CMD=${1[(wr)^(*=*|sudo|-*)]}
echo -n "\ek$CMD\e\\"
echo -n "\ek$CMD\e\\"
...
@@ -69,7 +69,7 @@ setprompt () {
...
@@ -69,7 +69,7 @@ setprompt () {
###
###
# See if we can use extended characters to look nicer.
# See if we can use extended characters to look nicer.
typeset -A altchar
typeset -A altchar
set -A altchar ${(s..)terminfo[acsc]}
set -A altchar ${(s..)terminfo[acsc]}
PR_SET_CHARSET="%{$terminfo[enacs]%}"
PR_SET_CHARSET="%{$terminfo[enacs]%}"
...
@@ -81,10 +81,10 @@ setprompt () {
...
@@ -81,10 +81,10 @@ setprompt () {
PR_LRCORNER=${altchar[j]:--}
PR_LRCORNER=${altchar[j]:--}
PR_URCORNER=${altchar[k]:--}
PR_URCORNER=${altchar[k]:--}
###
###
# Decide if we need to set titlebar text.
# Decide if we need to set titlebar text.
case $TERM in
case $TERM in
xterm*)
xterm*)
PR_TITLEBAR=$'%{\e]0;%(!.-=*[ROOT]*=- | .)%n@%m:%~ | ${COLUMNS}x${LINES} | %y\a%}'
PR_TITLEBAR=$'%{\e]0;%(!.-=*[ROOT]*=- | .)%n@%m:%~ | ${COLUMNS}x${LINES} | %y\a%}'
...
@@ -96,8 +96,8 @@ setprompt () {
...
@@ -96,8 +96,8 @@ setprompt () {
PR_TITLEBAR=''
PR_TITLEBAR=''
;;
;;
esac
esac
###
###
# Decide whether to set a screen title
# Decide whether to set a screen title
if [[ "$TERM" == "screen" ]]; then
if [[ "$TERM" == "screen" ]]; then
...
@@ -105,8 +105,8 @@ setprompt () {
...
@@ -105,8 +105,8 @@ setprompt () {
else
else
PR_STITLE=''
PR_STITLE=''
fi
fi
###
###
# Finally, the prompt.
# Finally, the prompt.
...
@@ -135,3 +135,7 @@ $PR_CYAN$PR_SHIFT_IN$PR_HBAR$PR_SHIFT_OUT$PR_NO_COLOUR '
...
@@ -135,3 +135,7 @@ $PR_CYAN$PR_SHIFT_IN$PR_HBAR$PR_SHIFT_OUT$PR_NO_COLOUR '
}
}
setprompt
setprompt
autoload -U add-zsh-hook
add-zsh-hook precmd theme_precmd
add-zsh-hook preexec theme_preexec
\ No newline at end of file
themes/kolo.zsh-theme
View file @
a9a0f580
...
@@ -7,7 +7,7 @@ zstyle ':vcs_info:*' unstagedstr '%F{yellow}●'
...
@@ -7,7 +7,7 @@ zstyle ':vcs_info:*' unstagedstr '%F{yellow}●'
zstyle ':vcs_info:*' check-for-changes true
zstyle ':vcs_info:*' check-for-changes true
zstyle ':vcs_info:(sv[nk]|bzr):*' branchformat '%b%F{1}:%F{11}%r'
zstyle ':vcs_info:(sv[nk]|bzr):*' branchformat '%b%F{1}:%F{11}%r'
zstyle ':vcs_info:*' enable git svn
zstyle ':vcs_info:*' enable git svn
precmd () {
theme_
precmd () {
if [[ -z $(git ls-files --other --exclude-standard 2> /dev/null) ]] {
if [[ -z $(git ls-files --other --exclude-standard 2> /dev/null) ]] {
zstyle ':vcs_info:*' formats ' [%b%c%u%B%F{green}]'
zstyle ':vcs_info:*' formats ' [%b%c%u%B%F{green}]'
} else {
} else {
...
@@ -19,3 +19,6 @@ precmd () {
...
@@ -19,3 +19,6 @@ precmd () {
setopt prompt_subst
setopt prompt_subst
PROMPT='%B%F{magenta}%c%B%F{green}${vcs_info_msg_0_}%B%F{magenta} %{$reset_color%}%% '
PROMPT='%B%F{magenta}%c%B%F{green}${vcs_info_msg_0_}%B%F{magenta} %{$reset_color%}%% '
autoload -U add-zsh-hook
add-zsh-hook precmd theme_precmd
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment