Commit cc831508 authored by Jim Hester's avatar Jim Hester
Browse files

Use HISTFILE evironment variable directly rather than copying it

Use the HISTFILE environment variable in place of copying it to
_per_directory_history_global so that users can change the environment variable
after sourcing per-directory-history and have the global variable set correctly
parent baa187e4
...@@ -81,7 +81,6 @@ bindkey '^G' per-directory-history-toggle-history ...@@ -81,7 +81,6 @@ bindkey '^G' per-directory-history-toggle-history
# implementation details # implementation details
#------------------------------------------------------------------------------- #-------------------------------------------------------------------------------
_per_directory_history_global=$HISTFILE
_per_directory_history_directory="$HISTORY_BASE${PWD:A}/history" _per_directory_history_directory="$HISTORY_BASE${PWD:A}/history"
function _per-directory-history-change-directory() { function _per-directory-history-change-directory() {
...@@ -89,7 +88,7 @@ function _per-directory-history-change-directory() { ...@@ -89,7 +88,7 @@ function _per-directory-history-change-directory() {
mkdir -p ${_per_directory_history_directory:h} mkdir -p ${_per_directory_history_directory:h}
if [[ $_per_directory_history_is_global == false ]]; then if [[ $_per_directory_history_is_global == false ]]; then
#save to the global history #save to the global history
fc -AI $_per_directory_history_global fc -AI $HISTFILE
#save history to previous file #save history to previous file
local prev="$HISTORY_BASE${OLDPWD:A}/history" local prev="$HISTORY_BASE${OLDPWD:A}/history"
mkdir -p ${prev:h} mkdir -p ${prev:h}
...@@ -115,7 +114,7 @@ function _per-directory-history-addhistory() { ...@@ -115,7 +114,7 @@ function _per-directory-history-addhistory() {
function _per-directory-history-set-directory-history() { function _per-directory-history-set-directory-history() {
if [[ $_per_directory_history_is_global == true ]]; then if [[ $_per_directory_history_is_global == true ]]; then
fc -AI $_per_directory_history_global fc -AI $HISTFILE
local original_histsize=$HISTSIZE local original_histsize=$HISTSIZE
HISTSIZE=0 HISTSIZE=0
HISTSIZE=$original_histsize HISTSIZE=$original_histsize
...@@ -131,8 +130,8 @@ function _per-directory-history-set-global-history() { ...@@ -131,8 +130,8 @@ function _per-directory-history-set-global-history() {
local original_histsize=$HISTSIZE local original_histsize=$HISTSIZE
HISTSIZE=0 HISTSIZE=0
HISTSIZE=$original_histsize HISTSIZE=$original_histsize
if [[ -e "$_per_directory_history_global" ]]; then if [[ -e "$HISTFILE" ]]; then
fc -R "$_per_directory_history_global" fc -R "$HISTFILE"
fi fi
fi fi
_per_directory_history_is_global=true _per_directory_history_is_global=true
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment