2

私はEmacsLispでのプログラミング入門を読んでいて、次のように見えます。

このコードは機能します:

(message "The name of this buffer is: %s." (buffer-name))

これは失敗しますが:

(message "The name of this buffer is: %s." buffer-name)

ただし、このコードは機能します。

(message "The value of fill-column is %d." fill-column)

これは失敗しますが:

(message "The value of fill-column is %d." (fill-column))

私の質問はなぜですか?buffer-nameとの違いは何fill-columnですか?かっこをいつ使用するかはどうすればわかりますか?

4

1 に答える 1

5

簡単に言えば、-buffer-nameは関数(文字列を返す)でfill-columnあり、変数(整数に評価される)です。

すべてのLisp方言での関数呼び出しは、括弧で囲む必要があります。

Emacsの機能の詳細を表示するには、を押しC-h f function-name RETます。Emacsの変数の詳細を表示するには、を押しC-h v variable-name RETます。

于 2013-01-13T23:14:55.390 に答える