[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Emacs-diffs] scratch/widen-less a4ba846: Replace prog-widen with co
From: |
Alan Mackenzie |
Subject: |
Re: [Emacs-diffs] scratch/widen-less a4ba846: Replace prog-widen with consolidating widen calls |
Date: |
Thu, 30 Nov 2017 21:46:21 +0000 |
User-agent: |
Mutt/1.7.2 (2016-11-26) |
Hello, Dmitry.
On Thu, Nov 30, 2017 at 10:58:47 +0000, Dmitry Gutov wrote:
> On 11/30/17 8:59 AM, Dmitry Gutov wrote:
> > On 11/30/17 1:53 AM, Stefan Monnier wrote:
> >>> Replace prog-widen with consolidating widen calls
> >> So, IIUC the idea is that the multi-major-mode framework will *have* to
> >> use narrowing to indicate to the sub-modes the boundaries of the current
> >> chunk, right?
Using narrowing for marking the bounds of a sub-mode is a bad thing,
since it is likely to cause contention with other uses of narrowing.
There are better ways.
> > Yes. Just like it would *have* to bind prog-indentation-context to a
> > complex-ish value in the previous proposal.
> And while the difference isn't night and day, allow me to elaborate why
> I think this is a move in a good direction:
> - Major mode authors have been forgetting to widen in all the cases they
> actually have to. Or they would do that in indent-line-function, but
> forget in beginning-of-defun-function, etc. Now, they are *mandated* to
> obey the current narrowing
It's not clear what is meant here, but mandating maintainers of major
modes to use narrowing in a particular way is at best controversial, and
probably will render many major modes non-functional.
> (deleting code is easy, and some won't have delete anything at all).
> The indentation code might fail to work inside narrowing (like all of
> CC Mode, probably), but that's an orthogonal issue.
Narrowing belongs to users and major modes. I am lacking the context of
your post, which appears to start deep down in some mail thread which I
don't have, so I can't follow the details of your proposal. But I would
appreciate you confirming that these proposals won't place any
constraints whatsoever on how users and major modes can use narrowing.
You can also understand me being a bit concerned at the reference to CC
Mode. ;-)
> - Multi-mode packages have been using narrowing for this purpose for
> years, so they won't have to change much.
They have used narrowing because that is the only tool they have had.
> And, it's kind of funny, mhtml-indent-line which we've reviewed and
> added recently, uses narrow-to-region too. :-) While disregarding the
> second element of prog-indentation-context (which it set to the value
> "widen all you want"). Which works well enough because SMIE doesn't
> widen, and I've removed the `widen' call from js-mode indentation code
> 3.5 years ago.
> I'm adding Tom and Vitalie to Cc. Maybe they have something to add.
--
Alan Mackenzie (Nuremberg, Germany).
- Re: [Emacs-diffs] scratch/widen-less a4ba846: Replace prog-widen with consolidating widen calls,
Alan Mackenzie <=
- [SUSPECTED SPAM] Re: [Emacs-diffs] scratch/widen-less a4ba846: Replace prog-widen with consolidating widen calls, Stefan Monnier, 2017/12/01
- Re: [Emacs-diffs] scratch/widen-less a4ba846: Replace prog-widen with consolidating widen calls, Dmitry Gutov, 2017/12/01
- Re: [Emacs-diffs] scratch/widen-less a4ba846: Replace prog-widen with consolidating widen calls, Alan Mackenzie, 2017/12/01
- Re: [Emacs-diffs] scratch/widen-less a4ba846: Replace prog-widen with consolidating widen calls, Stefan Monnier, 2017/12/01
- Re: [Emacs-diffs] scratch/widen-less a4ba846: Replace prog-widen with consolidating widen calls, Alan Mackenzie, 2017/12/01
- Re: [Emacs-diffs] scratch/widen-less a4ba846: Replace prog-widen with consolidating widen calls, Dmitry Gutov, 2017/12/01
- Re: [Emacs-diffs] scratch/widen-less a4ba846: Replace prog-widen with consolidating widen calls, Stefan Monnier, 2017/12/01
- Re: [Emacs-diffs] scratch/widen-less a4ba846: Replace prog-widen with consolidating widen calls, Dmitry Gutov, 2017/12/01
- Re: [Emacs-diffs] scratch/widen-less a4ba846: Replace prog-widen with consolidating widen calls, Stefan Monnier, 2017/12/01