Subject: Re: bug#19946: 24.4; js-mode, indentation

From: Jostein Kjønigsen <[email-masked]>
Date: Sun, 20 Mar 2016 20:01:00 +0100

On Sun, Mar 20, 2016, at 02:27 AM, Dmitry Gutov wrote:
> On 03/20/2016 12:13 AM, Simen Heggestøyl wrote:
> I do not mind, but I'm not sure if we actually want to support this 
> usage. There are a lot regexps in lisp/progmodes that use $. There are 
> several in js-mode, aside from this one.
> 
> Some modes try to match [\r\n] (like CC Mode), but in general they seem 
> to be a minority, and even CC Mode doesn't do that consistently.

I really don't see how that argument makes sense.

By following the cardinal rule of good software, that is produce the
least amont of astonishment, cc-mode does what's right: it produces the
expected outcome, no matter what kind of file it's working with.

The result: A happy user.

In my point of view, this should be the aim for all *-modes found in
Emacs, no matter what its current state of affair or conventions is.

The solution to this is either a bunch of hacky patches replacing $ with
\r\n (as above) or actually addressing what's probably the root cause
(as observed by Andreas)

> I wonder why ?\r doesn't have whitespace syntax in the first place.

Make ?\r be interpreted as white-space, because once you put Emacs
outside a GNU/Linux system honestly nothing else makes sense. Is there
any specific reason for its current behaviour?

Or put the other way: Are there known pieces of code which depends on \r
semantically not being white-space to function correctly?

As someone authoring two major modes, every time $ does not work as
expected and I need to write hacks, it breaks my heart. As of now, I
can't really use $ if I want my modes to work and that's just silly (but
at least now I know why).

--
Jostein Kjønigsen