zsh-workers
 help / color / mirror / code / Atom feed
From: Mikael Magnusson <mikachu@gmail.com>
To: Felipe Contreras <felipe.contreras@gmail.com>
Cc: Daniel Shahaf <d.s@daniel.shahaf.name>, zsh-workers@zsh.org
Subject: Re: [RFC PATCH 3/3] FAQ: sync newuser-install
Date: Sat, 27 Aug 2022 02:23:01 +0200	[thread overview]
Message-ID: <CAHYJk3QMc73SjZq47C-pX=zRkt+GHkvr7Xyg3CcPzfH+3Jg0EA@mail.gmail.com> (raw)
In-Reply-To: <CAMP44s1eWfZU1WowcJ8cGwVzNpY=zebh9ETqahGgX4fJPfKq=Q@mail.gmail.com>

On 8/26/22, Felipe Contreras <felipe.contreras@gmail.com> wrote:
> On Fri, Aug 26, 2022 at 9:02 AM Mikael Magnusson <mikachu@gmail.com> wrote:
>>
>> On 8/26/22, Daniel Shahaf <d.s@daniel.shahaf.name> wrote:
>> > Bart Schaefer wrote on Thu, 25 Aug 2022 23:08 +00:00:
>> >> On Thu, Aug 25, 2022 at 3:44 PM Felipe Contreras
>> >> <felipe.contreras@gmail.com> wrote:
>> >>>
>> >>> This is *less* complicated:
>> >>
>> >> Every addition of an option to change the way something works is
>> >> making the shell as a whole more complicated and the interactions
>> >> among the settings more difficult to explain and understand.
>> >>
>> >> Unless there's an important behavior that it's simply not possible to
>> >> accomplish with the existing configuration controls,
>> >
>> > Does "enable saving of history without specifying the history file's
>> > name"
>> > qualify?
>> >
>> >> adding magical interdependencies and switches to enable same is not
>> >> IMO a good plan.
>> >
>> > What I had in mind was a new option, HIST_RECORD, and have it
>> > implicitly
>> > setopt'd by assignment to $HISTFILE and implicitly unsetopt'd by «unset
>> > HISTFILE«»; and then the default (zsh -f) could be to have HISTFILE set
>> > to
>> > some
>> > value but HIST_RECORD off.
>> >
>> > This design:
>> >
>> > - would not change the default behaviour.
>> >
>> > - would be compatible with existing dotfiles, since assigning to
>> >   HISTFILE would set HIST_RECORD implicitly.
>> >
>> > - would provide the ability to enable history without particularly
>> >   caring about the filename it's saved in, which would put us on par
>> >   with most other programs.  Most programs don't require the user
>> >   to name files the user doesn't interact with directly.  (cc(1) goes
>> > even
>> >   further with its default output filenames, such as foo.o and a.out.)
>> >
>> > - /would/ be an action at a distance.  However, in this case,
>> >   considering a user who unsets $HISTFILE in a universe in which
>> >   HIST_RECORD exists,  I don't immediately see what alternative
>> >   behaviour that user might expect.  As to a user who sets $HISTFILE
>> > and
>> >   expects HIST_RECORD to remain off, that's backwards compatibility.
>> >
>> > If that's nevertheless undersirable, then we could go the deprecation
>> > route: leave $HISTFILE as is; add an entirely new way to specify the
>> > history file's name and whether writing to it is enabled (perhaps a
>> > couple of zstyles); in 5.10 recommend that people transition to the new
>> > way; starting 5.11 issue a warning if the old way is used, saying it's
>> > deprecated and will be removed no sooner than ${date or version
>> > number}.
>> >
>> > Any other alternatives?
>> >
>> > [The option's proposed name was chosen for consistency with other
>> > options and for avoidance of ambiguity with $SAVEHIST.]
>>
>> My vote is to do nothing.
>
> That is not an argument. Do you care to explain why?

Not really, I haven't had great experiences arguing with you before.
You gave these examples earlier:

  sect(Why is my history not being saved?)
  label(321)

    In zsh you need to specifically enable history:
    verb(
      setopt SAVE_HISTORY
    )

vs

  sect(Why is my history not being saved?)
  label(321)

    In zsh, you need to set three variables to make sure your history is
    written out when the shell exits.  For example,
    verb(
      HISTSIZE=200
      HISTFILE=~/.zsh_history
      SAVEHIST=200
    )

But realistically the former actually has to be

autoload is-at-least
if is-at-least 5.8; then
  setopt SAVE_HISTORY
else
  HISTSIZE=200
  HISTFILE=~/.zsh_history
  SAVEHIST=200
fi

which isn't really a win. Besides that, the whole thing is way too
disruptive just for you to save 2 lines in your .zshrc.

-- 
Mikael Magnusson


  reply	other threads:[~2022-08-27  0:23 UTC|newest]

Thread overview: 93+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-24  4:31 [RFC PATCH 0/3] Improve defaults Felipe Contreras
2022-08-24  4:31 ` [RFC PATCH 1/3] Make SAVEHIST default to HISTSIZE Felipe Contreras
2022-08-24  4:31 ` [RFC PATCH 2/3] Increase default HISTSIZE to 1000 Felipe Contreras
2022-08-24  4:31 ` [RFC PATCH 3/3] FAQ: sync newuser-install Felipe Contreras
2022-08-24  9:06   ` Daniel Shahaf
2022-08-24 17:32     ` Felipe Contreras
2022-08-24 18:28       ` Eric Cook
2022-08-24 19:11         ` Felipe Contreras
2022-08-24 19:24           ` Matthew Martin
2022-08-24 19:25           ` Eric Cook
2022-08-24 19:40             ` Eric Cook
2022-08-24 20:03             ` Felipe Contreras
2022-08-24 20:11               ` Eric Cook
2022-08-24 20:27                 ` Felipe Contreras
2022-08-24 20:53                   ` Eric Cook
2022-08-25  8:04       ` Daniel Shahaf
2022-08-25 22:22         ` Bart Schaefer
2022-08-25 22:44           ` Felipe Contreras
2022-08-25 23:08             ` Bart Schaefer
2022-08-26  4:22               ` Felipe Contreras
2022-08-31 11:43                 ` Vincent Lefevre
2022-08-26  5:20               ` Daniel Shahaf
2022-08-26 13:57                 ` Mikael Magnusson
2022-08-26 14:04                   ` Roman Perepelitsa
2022-08-26 23:43                     ` Lawrence Velázquez
2022-08-27 15:17                       ` Daniel Shahaf
2022-08-27 15:34                         ` Roman Perepelitsa
2022-08-26 18:44                   ` Felipe Contreras
2022-08-27  0:23                     ` Mikael Magnusson [this message]
2022-08-27  0:31                       ` Bart Schaefer
2022-08-27  3:18                         ` Felipe Contreras
2022-08-27  3:52                           ` Lawrence Velázquez
2022-08-27 15:44                             ` Daniel Shahaf
2022-08-30 19:31                             ` Felipe Contreras
2022-08-31 12:28                               ` Vincent Lefevre
2022-08-31 19:36                                 ` Bart Schaefer
2022-09-01  0:23                                   ` Vincent Lefevre
2022-09-01  0:35                                     ` Bart Schaefer
2022-09-01  1:21                                       ` Vincent Lefevre
2022-09-01  2:42                                         ` [PATCH] initialization of main keymap Bart Schaefer
2022-09-01 21:58                                           ` Felipe Contreras
2022-09-01 22:34                                             ` Bart Schaefer
2022-09-01 22:54                                               ` Felipe Contreras
2022-09-02  8:51                                             ` Daniel Shahaf
2022-09-02 13:23                                               ` Vincent Lefevre
2022-09-02 13:42                                                 ` Felipe Contreras
2022-09-04  9:39                                                   ` Daniel Shahaf
2022-09-05  8:55                                                     ` Vincent Lefevre
2022-09-02 13:32                                               ` Felipe Contreras
2022-09-02 16:48                                               ` Bart Schaefer
2022-09-04  9:35                                                 ` Daniel Shahaf
2022-09-02  0:04                                           ` Vincent Lefevre
2022-09-02  5:06                                             ` Bart Schaefer
2022-09-02 13:15                                               ` Vincent Lefevre
2022-09-04  9:42                                                 ` ${EDITOR} with spaces (was: Re: [PATCH] initialization of main keymap) Daniel Shahaf
2022-09-04 10:48                                                   ` Mikael Magnusson
2022-09-05  9:15                                                     ` Vincent Lefevre
2022-09-05 21:17                                                       ` Lawrence Velázquez
2022-09-02  9:20                                 ` [RFC PATCH 3/3] FAQ: sync newuser-install Daniel Shahaf
2022-09-02 13:50                                   ` Vincent Lefevre
2022-08-31 21:57                               ` Mikael Magnusson
2022-08-31 22:28                                 ` Roman Perepelitsa
2022-09-01  0:29                                   ` Bart Schaefer
2022-09-01 22:45                                   ` Felipe Contreras
2022-09-02  3:46                                     ` Mikael Magnusson
2022-09-02  5:57                                       ` Felipe Contreras
2022-09-02 23:14                                         ` Mikael Magnusson
2022-09-02 23:56                                           ` Felipe Contreras
2022-09-02  9:18                                       ` Daniel Shahaf
2022-09-02 12:50                                         ` Vincent Lefevre
2022-09-02 13:28                                           ` Felipe Contreras
2022-09-02 13:47                                             ` Vincent Lefevre
2022-09-02 13:54                                               ` Felipe Contreras
2022-09-03 13:38                                       ` Roman Perepelitsa
2022-09-03 19:07                                         ` Felipe Contreras
2022-09-03 19:27                                           ` Roman Perepelitsa
2022-09-03 20:08                                             ` Felipe Contreras
2022-09-03 20:23                                               ` Roman Perepelitsa
2022-09-03 20:49                                                 ` Felipe Contreras
2022-09-03 23:12                                                   ` Roman Perepelitsa
2022-09-03 18:59                                                     ` Felipe Contreras
2022-09-04  0:08                                                       ` Roman Perepelitsa
2022-09-03 19:24                                                         ` Felipe Contreras
2022-08-27  0:35                       ` Felipe Contreras
2022-08-27  2:24                 ` Bart Schaefer
2022-08-27 15:40                   ` Daniel Shahaf
2022-08-27 15:55                     ` Bart Schaefer
2022-08-27 17:53                       ` Daniel Shahaf
2022-08-24 20:58 ` [RFC PATCH 0/3] Improve defaults Bart Schaefer
2022-08-24 21:50   ` Felipe Contreras
2022-08-24 22:18     ` Bart Schaefer
2022-08-24 22:54       ` Felipe Contreras
2022-08-24 21:39 ` Mikael Magnusson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAHYJk3QMc73SjZq47C-pX=zRkt+GHkvr7Xyg3CcPzfH+3Jg0EA@mail.gmail.com' \
    --to=mikachu@gmail.com \
    --cc=d.s@daniel.shahaf.name \
    --cc=felipe.contreras@gmail.com \
    --cc=zsh-workers@zsh.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).