1. ホーム
  2. emacs

[解決済み] Emacsで行を丸ごと複製するには?

2022-04-23 09:01:03

質問

私は見た これと同じ質問をVIMにも というのは、私自身がEmacsでどうすればいいのか知りたかったことだからです。ReSharperではCTRL-Dでやっています。Emacsでこれを実行するのに一番少ないコマンドは何でしょうか?

どのように解決するのですか?

私は

C-a C-SPACE C-n M-w C-y

であり、その内訳は

  • C-a カーソルを行頭に移動
  • C-SPACE : 選択を開始 ("set mark")
  • C-n カーソルを次の行へ移動
  • M-w 領域をコピーする
  • C-y : 貼り付け ("yank")

前述した

C-a C-k C-k C-y C-y

は同じものになる(TMTOWTDI)

  • C-a カーソルを行頭に移動
  • C-k 行を切断します。
  • C-k 改行をカット
  • C-y : 貼り付け ("yank") (振り出しに戻った)
  • C-y もう一度貼り付ける(これで2つの行がコピーされたことになります)。

これらは両方とも C-d をエディタで使うこともできますが、Emacsでは常にカスタマイズが可能です。 C-d がバインドされています。 delete-char はデフォルトでは、どうでしょうか? C-c C-d ? を追加するだけです。 .emacs :

(global-set-key "\C-c\C-d" "\C-a\C- \C-n\M-w\C-y")

(@Nathan の elisp バージョンの方が、キーバインディングが変更されても壊れないので、おそらく望ましいでしょう)。

注意: Emacs のモードによっては C-c C-d を使用して、他のことを行うことができます。