在org-mode中突出显示语法.语言清单?

Ame*_*ina 5 emacs org-mode

当我尝试在org-mode中突出显示SQL代码时,突出显示失败:

#+BEGIN_SRC SQL
SELECT *
FROM Production.Product
ORDER BY Name ASC;
#+END_SRC SQL
Run Code Online (Sandbox Code Playgroud)

它适用于Python,shell等,但不适用于SQL.我想知道我是否使用了错误的关键字.

鉴于这种:

  • 如何突出显示SQL代码?
  • 我在哪里可以找到支持的语言列表?

leg*_*cia 9

SQL应该是小写的,sql并且您不需要END_SRC在行上重复语言名称:

#+BEGIN_SRC sql
  SELECT *
  FROM Production.Product
  ORDER BY Name ASC;
#+END_SRC
Run Code Online (Sandbox Code Playgroud)

org-mode只是附加-mode给定的语言名称,并尝试查找主要模式函数.Emacs Lisp函数名称区分大小写,因此sql-mode存在而不存在SQL-mode.

您可以通过键入来获取所有此类函数的列表C-h a -mode$,即搜索所有以该函数结尾的函数-mode,但结果列表包含许多不是编程语言主要模式的模式.