Windows 10、Emacs 25.1
結果はエコー領域にありますが、バッファ内のカーソル位置に結果を置きたいです。このようなもの:
どうすればよいですか?
*scratch*バッファにいる場合はC-j、カーソルの前の式を評価し、式の値をバッファに配置します。
Windows 10、Emacs 25.1
結果はエコー領域にありますが、バッファ内のカーソル位置に結果を置きたいです。このようなもの:
どうすればよいですか?
*scratch*バッファにいる場合はC-j、カーソルの前の式を評価し、式の値をバッファに配置します。
回答:
C-x C-e式を評価する代わりに、式に前置引数を与えます。 C-u C-x C-e出力をバッファに出力します。
Emacsがこれらのことをどのように行っているかを調べるには、マニュアルを調べるか 、Emacs自体に質問してください。
特定のキーバインドの機能を確認するには、C-h k
(describe-key)を使用できます。あなたはで式を評価しておりC-x
C-e、そのキーバインディングがで呼び出すものを理解できますC-h
k C-x C-e。コマンドのドキュメント文字列が表示されます。最初の部分は次のとおりです。
C-x C-eコマンドを実行しますeval-last-sexp(global-mapにあります)。これは、対話式にコンパイルされたLisp関数ですelisp-mode.el。にバインドされてい
C-x C-eます。
(eval-last-sexp EVAL-LAST-SEXP-ARG-INTERNAL)ポイントの前にsexpを評価します。エコー領域に値を出力します。 対話式で、
-前置引数なしで、出力を現在のバッファーに出力します。...
キーフレーズを強調表示しました。プレフィックス引数(C-u)を指定すると、エコー領域ではなくバッファに出力が出力されます。
C-u C-x C-e、結果は(* 60 3)180になります。しかし、必要なのは(スクリーンショットのように)180だけです。
私が行うことを好む(複雑な)EmacsのCALCで計算C-x * *して、私のカーソルがしていたバッファにその結果をコピーしy、qCALCバッファを閉じて、私はこの場所に戻ってきました。