[Emacs] elisp: ポイントを移動する
ポイントを移動する関数がいろいろ用意されているので、ちょっとメモ。
2段階で移動する
先頭から何行目か移動してから、行内でさらに移動する
(progn
(beginning-of-buffer)
(end-of-line 2))
次のように引数Nを指定すると、N/10の位置に移動する。 5を指定すると5/10なので、ちょうど真ん中、 10なら、末尾へ移動する。
(beginning-of-buffer N)
先頭から何文字目かに移動
(goto-char (+ (point) 10))
現在値を (point)
で取得し、その結果に文字数を加減することで、新しいポイントへ移動する。
任意の文字へ移動
(re-search-forward "word" nil t)
どのやりかたでも、まず
(beginning-of-buffer)
を実行して、カーソルを先頭へ移動したほうがいいかも。