どうすれば(emacs lispから)括弧を見つけることができますか?
ポイントを囲む括弧のタイプ(つまり、 '('、 '['、または '{')を見つける方法はありますか?例(|ポイントを表すために使用) { abc, | df } '{'を返す必要があります。 { abc[ | ], 123 } '['を返す必要があります。理想的には、引用符も処理したいと思います。 誰かが好奇心が強い場合や詳細が必要な場合:私の目的は:、Pythonでelectric-spacing(smart-operatorとも呼ばれます)を使用してスマートな自動間隔を設定することです。問題は、通常(Pythonの場合):はスライス演算子またはfor / if / ...ステートメントの開始であり、スペースで囲まないでください。ただし、ディクショナリ内では代入演算子のようなものなので、スペースで囲む必要があります。私ので、ポイントはdictの(すなわち内部の内側にあるかどうかを確認する方法の必要性{})ではなく、(すなわちない内部その辞書内のスライス操作や文字列の内部[]または"")。 編集: 以下は、abo-aboの回答に基づいて私が作成したヘルパー関数です。 (defun enclosing-paren () "Return the closing parenthesis of the enclosing parens, or nil if not inside any parens." (ignore-errors (save-excursion (up-list) (char-before)))) 次に、最後の述語は次のとおりです。 (and (not (in-string-p)) …