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
e3a01e5a
Commit
e3a01e5a
authored
Aug 12, 2015
by
Robby Russell
Browse files
Merge pull request #4212 from NAR8789/master
Fix chpwd clobbering in dirhistory and last-working-dir
parents
f6a2b973
cddfc3b0
Changes
3
Show whitespace changes
Inline
Side-by-side
plugins/dirhistory/dirhistory.plugin.zsh
View file @
e3a01e5a
...
@@ -49,7 +49,8 @@ function push_future() {
...
@@ -49,7 +49,8 @@ function push_future() {
}
}
# Called by zsh when directory changes
# Called by zsh when directory changes
function
chpwd
()
{
chpwd_functions+
=(
chpwd_dirhistory
)
function
chpwd_dirhistory
()
{
push_past
$PWD
push_past
$PWD
# If DIRHISTORY_CD is not set...
# If DIRHISTORY_CD is not set...
if
[[
-z
"
${
DIRHISTORY_CD
+x
}
"
]]
;
then
if
[[
-z
"
${
DIRHISTORY_CD
+x
}
"
]]
;
then
...
...
plugins/dirpersist/dirpersist.plugin.zsh
View file @
e3a01e5a
...
@@ -11,7 +11,8 @@ if [[ -f ${dirstack_file} ]] && [[ ${#dirstack[*]} -eq 0 ]] ; then
...
@@ -11,7 +11,8 @@ if [[ -f ${dirstack_file} ]] && [[ ${#dirstack[*]} -eq 0 ]] ; then
[[
-d
$dirstack
[
1]
]]
&&
cd
$dirstack
[
1]
&&
cd
$OLDPWD
[[
-d
$dirstack
[
1]
]]
&&
cd
$dirstack
[
1]
&&
cd
$OLDPWD
fi
fi
chpwd
()
{
chpwd_functions+
=(
chpwd_dirpersist
)
chpwd_dirpersist
()
{
if
((
$DIRSTACKSIZE
<
=
0
))
||
[[
-z
$dirstack_file
]]
;
then return
;
fi
if
((
$DIRSTACKSIZE
<
=
0
))
||
[[
-z
$dirstack_file
]]
;
then return
;
fi
local
-ax
my_stack
local
-ax
my_stack
my_stack
=(
${
PWD
}
${
dirstack
}
)
my_stack
=(
${
PWD
}
${
dirstack
}
)
...
...
plugins/last-working-dir/last-working-dir.plugin.zsh
View file @
e3a01e5a
...
@@ -8,7 +8,8 @@ mkdir -p $ZSH_CACHE_DIR
...
@@ -8,7 +8,8 @@ mkdir -p $ZSH_CACHE_DIR
cache_file
=
"
$ZSH_CACHE_DIR
/last-working-dir"
cache_file
=
"
$ZSH_CACHE_DIR
/last-working-dir"
# Updates the last directory once directory is changed.
# Updates the last directory once directory is changed.
function
chpwd
()
{
chpwd_functions+
=(
chpwd_last_working_dir
)
function
chpwd_last_working_dir
()
{
# Use >| in case noclobber is set to avoid "file exists" error
# Use >| in case noclobber is set to avoid "file exists" error
pwd
>
|
"
$cache_file
"
pwd
>
|
"
$cache_file
"
}
}
...
...
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