2

ELisp Syntax-Table-Comments を使用して Haskell スタイルのコメントを設定しようとしていますが、うまく取得できません。

Haskell には、2 つの基本的なタイプのコメントがあります。

--で終わる単一行のコメントを示します\n

{-で終わる複数行のコメントを示し-}ます。これらはネストできることに注意してください。

複数行のコメントは、次の方法で行うことができます。

(defvar my-syntax-table
  (let ((st (make-syntax-table)))
    (modify-syntax-entry ?{ ". 1n" st)
    (modify-syntax-entry ?- ". 23n" st)
    (modify-syntax-entry ?} ". 4n" st)
   st))

単一行のコメントは、次の方法で行うことができます。

(defvar my-syntax-table
  (let ((st (make-syntax-table)))
    (modify-syntax-entry ?- ". 12" st)
    (modify-syntax-entry ?\n ">" st)
   st))

ドキュメントに基づいて、を使用して代替手段を設定できbます。ただし、b両方の場合であるシーケンスの 2 番目の文字に適用されます-。そのため、代替を使用してこれらを結合しようとすると、複数行および単一行のコメントを行うことができなくなります。

私はこれが行われたのを見たので、それが可能であることを知っています。しかし、私はそれを行う方法がわかりません。どんな助けでも大歓迎です。

4

1 に答える 1

2

Haskell モードの使用

       (modify-syntax-entry ?\{  "(}1nb" table)
       (modify-syntax-entry ?\}  "){4nb" table)
       (modify-syntax-entry ?-  "_ 123" table)))
       (modify-syntax-entry ?\n ">" table)
于 2013-12-30T18:42:23.033 に答える