[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#12785: [octave-mod] Changed behaviour of octave-mark-block?
From: |
Mark Hepburn |
Subject: |
bug#12785: [octave-mod] Changed behaviour of octave-mark-block? |
Date: |
Wed, 5 Dec 2012 23:04:56 +1100 |
Thanks.
On 5 December 2012 16:30, Stefan Monnier <monnier@iro.umontreal.ca> wrote:
>> Regarding the "end|" case, the old mode wouldn't mark the block, and I feel
>> that's correct behaviour. In the "|for" case as I mentioned, the old mode
>> _did_ mark the block (not the enclosing one), but I agree that marking the
>> enclosing block is probably preferable and more consistent.
>
> Indeed, the code tried to reproduce this "mark the block after point
> instead of the enclosing one" but had a bug in it.
> I've fixed the "starting within a token" problem as well as the above
> check (so the inner `for' will be marked if you're right in front of it).
>
>
> Stefan
>
>
> === modified file 'lisp/progmodes/octave-mod.el'
> --- lisp/progmodes/octave-mod.el 2012-09-17 05:41:04 +0000
> +++ lisp/progmodes/octave-mod.el 2012-12-05 05:21:07 +0000
> @@ -794,11 +794,14 @@
> "Put point at the beginning of this Octave block, mark at the end.
> The block marked is the one that contains point or follows point."
> (interactive)
> + (if (and (looking-at "\\sw\\|\\s_")
> + (looking-back "\\sw\\|\\s_" (1- (point))))
> + (skip-syntax-forward "w_"))
> (unless (or (looking-at "\\s(")
> (save-excursion
> (let* ((token (funcall smie-forward-token-function))
> (level (assoc token smie-grammar)))
> - (and level (null (cadr level))))))
> + (and level (not (numberp (cadr level)))))))
> (backward-up-list 1))
> (mark-sexp))
>
>
--
Where the hell is Mark:
http://blog.everythingtastesbetterwithchilli.com/