unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
@ 2023-01-18 10:58 Ihor Radchenko
  2023-01-18 14:06 ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Ihor Radchenko @ 2023-01-18 10:58 UTC (permalink / raw)
  To: 60930

Hi,

The 24.3 Choosing File Modes section of Emacs manual explains how the
`auto-mode-alist' works, but fail to address an important point about
backup files being open in the major mode used for files with a name
stripped from the backup suffix:

       Fifth—if Emacs still hasn’t found a suitable major mode—it looks at
    the file’s name.  The correspondence between file names and major modes
    is controlled by the variable ‘auto-mode-alist’.  Its value is a list in
    which each element has this form,

    <formal programmatic description of `auto-mode-alist' follows...>

I think that it is worth mentioning the backup file handling entry in
`auto-mode-alist' in the manual itself:

-----------
By default, `auto-mode-alist' contains:

 ("\\.~?[0-9]+\\.[0-9][-.0-9]*~?\\'" nil t)
 ("\\.\\(?:orig\\|in\\|[bB][aA][kK]\\)\\'" nil t)

meaning that backup files (for example, foo.txt~, foo.txt~12,
foo.txt.orig, foo.txt.in, foo.txt.bak) will use major mode as for
foo.txt - the file with backup suffix stripped.
-----

WDYT?

In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, cairo version
 1.17.6) of 2023-01-16 built on localhost
Repository revision: bb679244152dddd9949ca065aa6617457f7a7144
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12101006
System Description: Gentoo Linux

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
  2023-01-18 10:58 bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files Ihor Radchenko
@ 2023-01-18 14:06 ` Eli Zaretskii
  2023-01-19 11:36   ` Ihor Radchenko
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2023-01-18 14:06 UTC (permalink / raw)
  To: Ihor Radchenko; +Cc: 60930-done

> From: Ihor Radchenko <yantar92@posteo.net>
> Date: Wed, 18 Jan 2023 10:58:20 +0000
> 
> Hi,
> 
> The 24.3 Choosing File Modes section of Emacs manual explains how the
> `auto-mode-alist' works, but fail to address an important point about
> backup files being open in the major mode used for files with a name
> stripped from the backup suffix:
> 
>        Fifth—if Emacs still hasn’t found a suitable major mode—it looks at
>     the file’s name.  The correspondence between file names and major modes
>     is controlled by the variable ‘auto-mode-alist’.  Its value is a list in
>     which each element has this form,
> 
>     <formal programmatic description of `auto-mode-alist' follows...>
> 
> I think that it is worth mentioning the backup file handling entry in
> `auto-mode-alist' in the manual itself:
> 
> -----------
> By default, `auto-mode-alist' contains:
> 
>  ("\\.~?[0-9]+\\.[0-9][-.0-9]*~?\\'" nil t)
>  ("\\.\\(?:orig\\|in\\|[bB][aA][kK]\\)\\'" nil t)
> 
> meaning that backup files (for example, foo.txt~, foo.txt~12,
> foo.txt.orig, foo.txt.in, foo.txt.bak) will use major mode as for
> foo.txt - the file with backup suffix stripped.
> -----
> 
> WDYT?

The feature of "recursive extension stripping" was already documented
there.  I added a few words about two examples of its usage (backup
files aren't the only one, and I see no reason to treat them specially
in this regard, let alone have the actual regexp in the manual).
However, I sincerely doubt that having this described in that place
will be discoverable enough.  I also am not sure why you thought it
was so important to mention: it's an obscure implementation detail
intended to make Emacs DTRT, and as long it does TRT, why should users
worry?

But anyway, this is now in the manual for those who read the fine
print.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
  2023-01-18 14:06 ` Eli Zaretskii
@ 2023-01-19 11:36   ` Ihor Radchenko
  2023-01-19 13:28     ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Ihor Radchenko @ 2023-01-19 11:36 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 60930-done

Eli Zaretskii <eliz@gnu.org> writes:

> The feature of "recursive extension stripping" was already documented
> there.  I added a few words about two examples of its usage (backup
> files aren't the only one, and I see no reason to treat them specially
> in this regard, let alone have the actual regexp in the manual).
> However, I sincerely doubt that having this described in that place
> will be discoverable enough.  I also am not sure why you thought it
> was so important to mention: it's an obscure implementation detail
> intended to make Emacs DTRT, and as long it does TRT, why should users
> worry?

I thought that it is important to mention because we got a bug report
claiming that opening backups of Org files in org-mode is not expected:
https://list.orgmode.org/25543.50706.554658.6937@gargle.gargle.HOWL/

As for discoverability, an index entry might do.

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
  2023-01-19 11:36   ` Ihor Radchenko
@ 2023-01-19 13:28     ` Eli Zaretskii
  2023-01-19 13:35       ` Ihor Radchenko
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2023-01-19 13:28 UTC (permalink / raw)
  To: Ihor Radchenko; +Cc: 60930

> From: Ihor Radchenko <yantar92@posteo.net>
> Cc: 60930-done@debbugs.gnu.org
> Date: Thu, 19 Jan 2023 11:36:09 +0000
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > The feature of "recursive extension stripping" was already documented
> > there.  I added a few words about two examples of its usage (backup
> > files aren't the only one, and I see no reason to treat them specially
> > in this regard, let alone have the actual regexp in the manual).
> > However, I sincerely doubt that having this described in that place
> > will be discoverable enough.  I also am not sure why you thought it
> > was so important to mention: it's an obscure implementation detail
> > intended to make Emacs DTRT, and as long it does TRT, why should users
> > worry?
> 
> I thought that it is important to mention because we got a bug report
> claiming that opening backups of Org files in org-mode is not expected:
> https://list.orgmode.org/25543.50706.554658.6937@gargle.gargle.HOWL/

It isn't clear from that complaint what mistakes could happen.

Anyway, all that was requested there was to mention this in the
manual, so that others won't be surprised (if they read the manual).

> As for discoverability, an index entry might do.

Please suggest a useful index entry.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
  2023-01-19 13:28     ` Eli Zaretskii
@ 2023-01-19 13:35       ` Ihor Radchenko
  2023-01-19 14:17         ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Ihor Radchenko @ 2023-01-19 13:35 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 60930

Eli Zaretskii <eliz@gnu.org> writes:

> Anyway, all that was requested there was to mention this in the
> manual, so that others won't be surprised (if they read the manual).

Sure.

>> As for discoverability, an index entry might do.
>
> Please suggest a useful index entry.

choosing a major mode, in backup files
choosing a major mode, in encrypted files

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
  2023-01-19 13:35       ` Ihor Radchenko
@ 2023-01-19 14:17         ` Eli Zaretskii
  2023-01-20 13:29           ` Ihor Radchenko
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2023-01-19 14:17 UTC (permalink / raw)
  To: Ihor Radchenko; +Cc: 60930

> From: Ihor Radchenko <yantar92@posteo.net>
> Cc: 60930@debbugs.gnu.org
> Date: Thu, 19 Jan 2023 13:35:08 +0000
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >> As for discoverability, an index entry might do.
> >
> > Please suggest a useful index entry.
> 
> choosing a major mode, in backup files
> choosing a major mode, in encrypted files

Thanks, I added

  @cindex backup files, choosing a major mode
  @cindex encrypted files, choosing a major mode

because it is not useful to add several index entries that begin with
the same text and point to the same place.  If you think how index
entries are used, you will understand why.

P.S.  I'm not sure index entries will help discoverability (you need
to know what you are looking for to type an index entry), but adding
indexing can never do any harm.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
  2023-01-19 14:17         ` Eli Zaretskii
@ 2023-01-20 13:29           ` Ihor Radchenko
  2023-01-20 13:50             ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Ihor Radchenko @ 2023-01-20 13:29 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 60930

Eli Zaretskii <eliz@gnu.org> writes:

> P.S.  I'm not sure index entries will help discoverability (you need
> to know what you are looking for to type an index entry), but adding
> indexing can never do any harm.

I just need keywords. Most often, I invoke helm-info and search by index
(`Info-index-nodes'). Word ordering in the index does not matter for me
because of how helm matches candidates.

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
  2023-01-20 13:29           ` Ihor Radchenko
@ 2023-01-20 13:50             ` Eli Zaretskii
  2023-01-21  9:39               ` Ihor Radchenko
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2023-01-20 13:50 UTC (permalink / raw)
  To: Ihor Radchenko; +Cc: 60930

> From: Ihor Radchenko <yantar92@posteo.net>
> Cc: 60930@debbugs.gnu.org
> Date: Fri, 20 Jan 2023 13:29:20 +0000
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > P.S.  I'm not sure index entries will help discoverability (you need
> > to know what you are looking for to type an index entry), but adding
> > indexing can never do any harm.
> 
> I just need keywords. Most often, I invoke helm-info and search by index
> (`Info-index-nodes'). Word ordering in the index does not matter for me
> because of how helm matches candidates.

We cannot possibly write index entries on the assumption that they
will only be used through helm.  The main client of index entries is
info.el.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
  2023-01-20 13:50             ` Eli Zaretskii
@ 2023-01-21  9:39               ` Ihor Radchenko
  2023-01-21  9:55                 ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Ihor Radchenko @ 2023-01-21  9:39 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 60930

Eli Zaretskii <eliz@gnu.org> writes:

>> I just need keywords. Most often, I invoke helm-info and search by index
>> (`Info-index-nodes'). Word ordering in the index does not matter for me
>> because of how helm matches candidates.
>
> We cannot possibly write index entries on the assumption that they
> will only be used through helm.  The main client of index entries is
> info.el.

Sure. But wouldn't it be nice to have an ability to do orederless-style
search across index keywords right from info.el?

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
  2023-01-21  9:39               ` Ihor Radchenko
@ 2023-01-21  9:55                 ` Eli Zaretskii
  2023-01-21 10:08                   ` Ihor Radchenko
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2023-01-21  9:55 UTC (permalink / raw)
  To: Ihor Radchenko; +Cc: 60930

> From: Ihor Radchenko <yantar92@posteo.net>
> Cc: 60930@debbugs.gnu.org
> Date: Sat, 21 Jan 2023 09:39:14 +0000
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >> I just need keywords. Most often, I invoke helm-info and search by index
> >> (`Info-index-nodes'). Word ordering in the index does not matter for me
> >> because of how helm matches candidates.
> >
> > We cannot possibly write index entries on the assumption that they
> > will only be used through helm.  The main client of index entries is
> > info.el.
> 
> Sure. But wouldn't it be nice to have an ability to do orederless-style
> search across index keywords right from info.el?

I don't think I understand what you mean by "orederless-style search"
in this context.  Please elaborate.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
  2023-01-21  9:55                 ` Eli Zaretskii
@ 2023-01-21 10:08                   ` Ihor Radchenko
  2023-01-21 11:36                     ` Eli Zaretskii
  0 siblings, 1 reply; 13+ messages in thread
From: Ihor Radchenko @ 2023-01-21 10:08 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 60930

Eli Zaretskii <eliz@gnu.org> writes:

>> Sure. But wouldn't it be nice to have an ability to do orederless-style
>> search across index keywords right from info.el?
>
> I don't think I understand what you mean by "orederless-style search"
> in this context.  Please elaborate.

getting matches for arbitrary keyword order in the completion buffer:

   @cindex backup files, choosing a major mode

could be matched by typing, say, "file<SPC>major<SPC>back"

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
  2023-01-21 10:08                   ` Ihor Radchenko
@ 2023-01-21 11:36                     ` Eli Zaretskii
  2023-01-21 13:34                       ` Ihor Radchenko
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2023-01-21 11:36 UTC (permalink / raw)
  To: Ihor Radchenko; +Cc: 60930

> From: Ihor Radchenko <yantar92@posteo.net>
> Cc: 60930@debbugs.gnu.org
> Date: Sat, 21 Jan 2023 10:08:31 +0000
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >> Sure. But wouldn't it be nice to have an ability to do orederless-style
> >> search across index keywords right from info.el?
> >
> > I don't think I understand what you mean by "orederless-style search"
> > in this context.  Please elaborate.
> 
> getting matches for arbitrary keyword order in the completion buffer:
> 
>    @cindex backup files, choosing a major mode
> 
> could be matched by typing, say, "file<SPC>major<SPC>back"

That's up to the completion style you are using, right?

In any case, "i backup file RET" says there are just 8 candidates, so
it isn't a problem going over them one by one.





^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files
  2023-01-21 11:36                     ` Eli Zaretskii
@ 2023-01-21 13:34                       ` Ihor Radchenko
  0 siblings, 0 replies; 13+ messages in thread
From: Ihor Radchenko @ 2023-01-21 13:34 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 60930

Eli Zaretskii <eliz@gnu.org> writes:

>> could be matched by typing, say, "file<SPC>major<SPC>back"
>
> That's up to the completion style you are using, right?
>
> In any case, "i backup file RET" says there are just 8 candidates, so
> it isn't a problem going over them one by one.

Hmm. You are right. I rarely use "i" command because it works only
inside a single info manual. But otherwise "i" should indeed be
sufficient to search keywords efficiently.

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>





^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2023-01-21 13:34 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-18 10:58 bug#60930: 30.0.50; 24.3 Choosing File Modes section of Emacs manual does not explain dealing with backup files Ihor Radchenko
2023-01-18 14:06 ` Eli Zaretskii
2023-01-19 11:36   ` Ihor Radchenko
2023-01-19 13:28     ` Eli Zaretskii
2023-01-19 13:35       ` Ihor Radchenko
2023-01-19 14:17         ` Eli Zaretskii
2023-01-20 13:29           ` Ihor Radchenko
2023-01-20 13:50             ` Eli Zaretskii
2023-01-21  9:39               ` Ihor Radchenko
2023-01-21  9:55                 ` Eli Zaretskii
2023-01-21 10:08                   ` Ihor Radchenko
2023-01-21 11:36                     ` Eli Zaretskii
2023-01-21 13:34                       ` Ihor Radchenko

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).