3

2 つの質問:

  1. getの結果はどこeval-bufferに保存されますか? どうすればアクセスできますか?
    例えば:

    (+ 2 2)
    
  2. のような機能(forward-word)は によって実行されeval-bufferますが、カーソルは移動しませんか? 何故ですか?

4

1 に答える 1

7
  1. eval-buffer通常、戻り値ではなく副作用に使用されます。たとえば、.emacs ファイルでは、eval-bufferすべての構成設定が再ロードされます。デフォルトでは、インタラクティブに使用すると、常に が返されnilます。バッファ内のコードの戻り値を取得したい場合、これは間違った方法です。eval-last-sexpにバインドされてC-x C-eいる は、そのための 1 つの方法です。プレフィックスを付けて呼び出すとC-u C-x C-e、戻り値が現在のバッファーに挿入されます。

  2. eval-bufferポイントの値を保持します。したがって、次のような関数forward-wordは目に見える効果はありません。

于 2012-12-05T20:17:57.800 に答える