Subject: bug#74287: [PATCH] Rework history Isearch for Eshell

From: Pengji Zhang <[email-masked]>
Date: Wed, 11 Dec 2024 08:45:01 +0800

Juri Linkov <[email-masked]> writes:

>>> I agree this would be the right thing, because even in Isearch we
>>> have variables that duplicate the user options such as e.g. the
>>> option 'search-invisible' and the internal variable
>>> 'isearch-invisible'.
>>
>> Thanks!
>
> Please also see the commit 98f8c5fb07dcb4e20b8ba6648bdabf5c0d3b5145
> that fixed this in dired by using a buffer-local variable. Do you
> agree it's a good fix? Otherwise using a separate variable is also
> fine.

My concern with using a local variable is that users may also set the
user option locally. That is perhaps not a problem for eshell or dired,
but for comint, e.g., I may set 'comint-history-isearch' to 'dwim' only
in 'M-x shell' via the mode hook.

IMO, changing an internal variable feels a bit cleaner and safer than
manipulating a user option. So I would prefer using a separate variable.