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
Ohmyzsh
Commits
7295e388
Commit
7295e388
authored
Dec 21, 2014
by
Andrew Janke
Browse files
termsupport: add chpwd hook for setting pwd in Apple Terminal.app
parent
175b4a80
Changes
1
Hide whitespace changes
Inline
Side-by-side
lib/termsupport.zsh
View file @
7295e388
#usage: title short_tab_title looooooooooooooooooooooggggggg_windows_title
#http://www.faqs.org/docs/Linux-mini/Xterm-Title.html#ss3.1
#Fully support screen, iterm, and probably most modern xterm and rxvt
#Limited support for Apple Terminal (Terminal can't set window or tab separately)
function
title
{
if
[[
"
$DISABLE_AUTO_TITLE
"
==
"true"
]]
||
[[
"
$EMACS
"
==
*
term
*
]]
;
then
return
...
...
@@ -10,7 +9,7 @@ function title {
print
-Pn
"
\e
k
$1
:q
\e\\
"
#set screen hardstatus, usually truncated at 20 chars
elif
[[
"
$TERM
"
==
xterm
*
]]
||
[[
$TERM
==
rxvt
*
]]
||
[[
$TERM
==
ansi
]]
||
[[
"
$TERM_PROGRAM
"
==
"iTerm.app"
]]
;
then
print
-Pn
"
\e
]2;
$2
:q
\a
"
#set window name
print
-Pn
"
\e
]1;
$1
:q
\a
"
#set icon (=tab) name
(will override window name on broken terminal)
print
-Pn
"
\e
]1;
$1
:q
\a
"
#set icon (=tab) name
fi
}
...
...
@@ -34,5 +33,18 @@ function omz_termsupport_preexec {
title
'$CMD'
'%100>...>$LINE%<<'
}
#Appears each time pwd is changed
function
omz_termsupport_chpwd
{
#Notify Terminal.app of current directory using undocumented OSC sequence
#found in OS X 10.10's /etc/bashrc
if
[[
$TERM_PROGRAM
==
Apple_Terminal
]]
&&
[[
-z
$INSIDE_EMACS
]]
;
then
local
PWD_URL
=
"file://
$HOSTNAME
${
PWD
// /%20
}
"
printf
'\e]7;%s\a'
"
$PWD_URL
"
fi
}
#Fire it once so the pwd is set properly upon shell startup
omz_termsupport_chpwd
precmd_functions+
=(
omz_termsupport_precmd
)
preexec_functions+
=(
omz_termsupport_preexec
)
chpwd_functions+
=(
omz_termsupport_chpwd
)
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