0

レジスタ「N」を挿入する関数を書いています。問題は、レジスターを挿入すると、挿入されたレジスターの前にポイントが置かれるのに対し、挿入したレジスターの後にポイントが置かれることです。

set-command-markC-SPC)を2回試し、レジスタを挿入し、マークを2回ポップする(C-u C-SPC* 2)ことでこれを達成しようとしました。私はこのマクロを無料でやりたかったのですが、問題は、それを助けるためにどの引数を与えるべきかわからないということset-command-markです。多分誰かがそれをそのように機能させる方法を知っているか、またはより良いアイデアを持っていますか?

ケースを説明するために必要な場合は、さらにコードを追加します。

(defun Navi-insert-register ()
 (interactive)
  (set-mark-command)
  (set-mark-command)
  (insert-register ?N)
 ...
)
4

1 に答える 1

3

挿入-登録ドキュメントから

通常、挿入されたテキストの前にポイントを置き、後にマークを付けます。オプションの2番目の引数がnil以外の場合、マークを前に置き、ポイントを後ろに置きます。

2番目のパラメータをとして渡すだけtです。

(defun Navi-insert-register ()
 (interactive)
 (insert-register ?N t)
)
于 2012-10-14T19:37:10.167 に答える