あなたはに機能の下にバインドできM-f
、バインド元forward-word
へM-F
。この関数は単純にを受け取り、関数にarg
渡しforward-word
ます。そのため、普遍的な引数は元の関数と同じように機能します。
(defun modi/forward-word-begin (arg)
"Move forward a word and end up with the point being at the beginning of the
next word. Move point forward ARG words (backward if ARG is negative).
If ARG is omitted or nil, move point forward one word."
(interactive "p")
(forward-word arg)
(forward-word 1)
(backward-word 1))
ただし、上記の関数が常に正しいことを行うとは限らないことに注意してください。ポイントが既に単語の先頭にあるかどうかに大きく依存します。
次に、上記を実装する別の方法を示します。ここで、単語の境界は構文表にあるのではなく、厳密に空白の区切りに基づいています。
(defun modi/forward-word-begin (arg)
"Move forward ARG (defaults to 1) number of words.
Here 'words' are defined as characters separated by whitespace."
(interactive "p")
(dotimes (_ arg)
(forward-whitespace 1)))
クレジットに行く@glucasこのアイデアについて。