[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: address@hidden: shell-script-mode case indenting]
From: |
Stefan Monnier |
Subject: |
Re: address@hidden: shell-script-mode case indenting] |
Date: |
Wed, 04 Oct 2006 00:09:25 -0400 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) |
>>>> In your new code, what is the purpose of the following line in the loop:
>>>> (unless (eobp) (forward-char 1))
>>> Don't move forward by a character if at the end of a (narrowed)
>>> buffer.
>>
>> Well, that's the result, not the purpose :-(
>>
>>> The need to move forward a character was experimentally
>>> determined, I am afraid.
>>
>> That's the part I'm interested in. Could you give us some idea of the
>> case(s)
>> you've encountered where it was found necessary?
> It actually took me a long time to figure out why. (I was at work
> when I answered you originally, and as such couldn't verify why at the
> time.)
> Before you restructured `sh-prev-thing' to not use narrowing, the
> (unless (bolp)
> (forward-char -1)))
> on line 2263-4 (in `sh-get-indent-info') would place the cursor before
> the last character of the previous token. When narrowed by the next
> call to `sh-prev-thing', the narrowing cut off that character, causing
> `sh-get-word' to fail to get the next word.
> Your change which removes narrowing in favor of explicit match limits
> is a much more elegant solution, and obviates the need for the
> questionable line.
Thanks for tracking it down.
Stefan