Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: reading/saving history file dependent on isset(RCS)



On Oct 19,  2:48pm, Benjamin R. Haskell wrote:
} Subject: Re: reading/saving history file dependent on isset(RCS)
}
} On Wed, 19 Oct 2011, Greg Klanderman wrote:
} 
} > Hi, can someone explain the thinking behind reading and saving of the 
} > history file being dependent on isset(RCS)?  The code predates CVS.. 

AFAICT "it has always been that way."  I have sources dating back to
version 2.4 and it's already in there.

} > I did find this partially documented, in section
} > "5.1 Startup/Shutdown Files":
} >
} > | Note also that the RCS option affects the saving of history files,
} > | i.e. if RCS is unset when the shell exits, no history file will be
} > | saved.
} >
} > but it does not document that reading the history file is similarly 
} > conditioned on that option.

There isn't a default setting for HISTFILE, so if no startup files are
read there's no way for the shell to know what history file to read.
That's not "conditioned on" the option, it's just a side-effect.
 
} This bit me last time I was trying to debug someone's history-related 
} issues.  I found that passage, too, (eventually), which is why I didn't 
} complain then.  I don't understand the rationale for the conditioning. 
} I'd be interested in seeing this changed if there's not a good reason 
} for its being conditioned by default.

I'm pretty sure that the reasoning is that if the shell didn't read the
history file in the first place (which it could not possibly have, see
above) then it's likely to destroy information if it writes the file
on exit.  So the user has to deliberately clear the option if he wants
the shell to behave like one that started up with the option off.

-- 
Barton E. Schaefer



Messages sorted by: Reverse Date, Date, Thread, Author