EMACSでポインターを複数のライン上または下に移動するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/2657568

質問

矢印のキーでポインターを1行上下に移動することができます。そのため、CNとCPを再定義して、一度に5行に5行を上下に移動したいと思います。

私はちょうどemacsの使用方法を学び始めたばかりで、Elispは私にとって非常に異質です。を使用してみました GNU EMACS LISPリファレンス, 、しかし、キーストロークを複数のコマンドにバインドする方法が見つかりませんでした。

これが私がこれまでに持っているものです(移動上の定義に集中しています):

(global-set-key "\C-p"  '(loop for i in '(1 2 3 4 5) do ('previous-line))) 

しかし、これにより、CP「間違ったタイプの引数」にヒットすると、エラーメッセージが表示されます。

助言がありますか?

ありがとう!

役に立ちましたか?

解決

それらの機能(私は信じています next-lineprevious-line)CUでオプションの引数を受け入れるので、私はそう思う (next-line 5) あなたが望むことをするでしょう。

編集:だから私はちょうど試したが、それは

(global-set-key (kbd "C-n")
    (lambda () (interactive) (next-line 5)))

そして、CPと previous-line.

(fiew電話キーボードを使用してテキストレアにコードを書くのは簡単ではありません^^)

他のヒント

私のEmacs構成の警告とPeter Ajtaiからのコメントによると、私は使用するバージョンを提案します forward-line 私から init.el

(global-set-key (kbd "C-n")
    (lambda () (interactive) (forward-line  5)))
(global-set-key (kbd "C-p")
    (lambda () (interactive) (forward-line -5)))

もちろんもあります forward-char, 、同じように、別の方向に動作します。

欠けているのはaだけです complex-forward それは議論として複雑な数を取り、4方向のすべてでナビゲートするために使用できます:p

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top