zsh-workers
 help / color / mirror / code / Atom feed
From: "Daniel Shahaf" <d.s@daniel.shahaf.name>
To: zsh-workers@zsh.org
Subject: Re: [RFC PATCH 3/3] FAQ: sync newuser-install
Date: Fri, 26 Aug 2022 05:20:42 +0000	[thread overview]
Message-ID: <764a967b-86df-42bf-9242-22e9aeedfac6@www.fastmail.com> (raw)
In-Reply-To: <CAH+w=7ZsbA5tDmWmS=DLe=vfbSmk3V7om_6yReneErdp8sSa0g@mail.gmail.com>

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.]

Cheers,

Daniel


  parent reply	other threads:[~2022-08-26  5:26 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 [this message]
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
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=764a967b-86df-42bf-9242-22e9aeedfac6@www.fastmail.com \
    --to=d.s@daniel.shahaf.name \
    --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).