mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-16 17:24:23 +00:00
(mouse-skip-word): If point is at word constituent
characters, pay attention to word-separating-categories by using forward-word instead of skip-syntax-forward/backward.
This commit is contained in:
parent
8a8a9abe0c
commit
258e329529
1 changed files with 12 additions and 1 deletions
|
|
@ -639,7 +639,18 @@ remains active. Otherwise, it remains until the next input event."
|
|||
If DIR is positive skip forward; if negative, skip backward."
|
||||
(let* ((char (following-char))
|
||||
(syntax (char-to-string (char-syntax char))))
|
||||
(cond ((or (string= syntax "w") (string= syntax " "))
|
||||
(cond ((string= syntax "w")
|
||||
;; Here, we can't use skip-syntax-forward/backward because
|
||||
;; they don't pay attention to word-separating-categories,
|
||||
;; and thus they will skip over a true word boundary. So,
|
||||
;; we simularte the original behaviour by using
|
||||
;; forward-word.
|
||||
(if (< dir 0)
|
||||
(if (not (looking-at "\\<"))
|
||||
(forward-word -1))
|
||||
(if (or (looking-at "\\<") (not (looking-at "\\>")))
|
||||
(forward-word 1))))
|
||||
((string= syntax " ")
|
||||
(if (< dir 0)
|
||||
(skip-syntax-backward syntax)
|
||||
(skip-syntax-forward syntax)))
|
||||
|
|
|
|||
Loading…
Reference in a new issue