3

#(行末まで)コメントを使用する多数のMySQLファイルを読んでいますが、私のsql-modeはそれらをサポートしていません。/ ** /と--コメントを定義するsql.elのsyntax-table部分を見つけましたが、これによると Emacs構文テーブルは2つのコメントスタイルのみをサポートします。

sql.elに#コメントのサポートを簡単に追加する方法はありますか?

4

3 に答える 3

2

ロルフの答えは私にはうまくいかなかったようです。代替コメントスタイルの開始コメントの文字クラスであるAFAIKは、「b」ではなく「<b」である必要があります。これは私が使用するものです:

    (add-hook 'sql-mode-hook 'my-sql-mode-hook) 
    (defun my-sql-mode-hook ()   
      ;; Make # start a new line comment in SQL. This is MySQL-specific
      ;; syntax.
      (modify-syntax-entry ?# "< b" sql-mode-syntax-table))
于 2010-04-04T12:35:30.023 に答える
1

コメントスタイルbを開始するために?#を定義できます。これは、代替コメントスタイル(-または#)を開始する2つの方法があることを意味します。

(setqsql-mode-syntax-table
  (let((table(make-syntax-table)))
    ;; Cスタイルのコメント/**/(elispマニュアルの「構文フラグ」を参照))
    (modify-syntax-entry?/ ".14"テーブル)
    (modify-syntax-entry?* "。23"テーブル)
    ;; 二点鎖線でコメントを開始
    (modify-syntax-entry?-"。12b"テーブル)
    (modify-syntax-entry?# "b"テーブル)
    (modify-syntax-entry?\ f "> b"テーブル)
    ;; 一重引用符(')は文字列を区切ります
    (modify-syntax-entry?'"\ ""テーブル)
    ;; 二重引用符( ")は文字列を区切りません
    (modify-syntax-entry?\ ""。"テーブル)
    ;; バックスラッシュはエスケープ文字ではありません
    (modify-syntax-entry?\\ "。"テーブル)
    テーブル))

(これはsql.elからコピーされ、変更されました。つまり、これはGPLです)

于 2009-01-27T21:04:41.503 に答える