タグ付けされた質問 「boolean」

3
変数を切り替える簡単な方法
変数を切り替える簡単な方法があると便利です。これが私が心に留めていることです。 「var切り替え」関数を呼び出します。 completing-read単一の値(ないリストや連想リスト)を持つ変数のみをリストする必要があります。それができるかどうかわかりません。tまたはのいずれかの値を持つ変数のみを一覧表示する場合は、さらに良いでしょうnil。これは不可能だと確信しています。 次にt、現在の値がの場合、関数はvar値をに設定し、nil逆の場合も同様です。 問題は、これを行うelisp関数がすでにあるかどうかです。そうでない場合、およびカスタムソリューションでこの問題に対処したことがある場合は、その方法を確認したいと考えています。 更新: ボーナス機能はcompleting-read、トグルのためにポイント(存在する場合)の下にシンボルを提案することです。 したがって、「toggle var」fnがにバインドされているC-c ~場合、使用量はと同じくらい短くなりC-c ~ RETます。 varを切り替える現在の手順は次のとおりです。 C-h v VAR、現在の変数値を取得します。 M-: (setq VAR toggled-value)。 または M-: (setq VAR (not VAR))。 私はこのプロセスを高速化する方法を探しています(タイピングが少ない)。

2
elispイディオム(ブール値と引用符付きの引数)を理解していますか?
elispに関する基本的な質問があります。 私はしばしば次のようなものを見ます (search-forward "something" nil 'noerror) そして時々私は次のようなものを見ます (search-forward "something" nil :noerror) 違いは何ですか?他のフォームよりも1つのフォームを優先する必要がありますか? 私が理解している限り、空のリスト以外はブール値のコンテキストではtrueと評価されます。しかし、どうして次のようになります: 「何か」という検索'noerror用語がバッファに存在しない場合、の代わりにを使用すると、ポイントはバッファの最後にジャンプしtます。ときは、tそれがポイントの滞在を使用しています。 最初のケース: (search-forward "something" nil 'noerror);; 1.Evaluate this ;; end of buffer 2.point jumps here 2番目のケース: (search-forward "something" nil t);; 1.Evaluate this, 2. Point stays here ;; end of buffer
7 boolean 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.