GitHub Linguist 的 languages.yml 是否允许在扩展中使用通配符?
Does GitHub Linguist's languages.yml allow wildcards in extensions?
假设我们有一种编程语言,它使用具有各种扩展名的文件,所有这些文件共享一些指示语言的字符,但继续使用指示内容类型的其他字符。以当前 languages.yml:
为例
Xojo:
type: programming
extensions:
- ".xojo_code"
- ".xojo_menu"
- ".xojo_report"
- ".xojo_script"
- ".xojo_toolbar"
- ".xojo_window"
tm_scope: source.vbnet
ace_mode: text
language_id: 405
为了通用化并避免在添加新内容类型时必须更新 languages.yml,使用通配符是很自然的:
Xojo:
type: programming
extensions:
- ".xojo_*"
tm_scope: source.vbnet
ace_mode: text
language_id: 405
这是另一个例子:
VHDL:
type: programming
color: "#adb2cb"
extensions:
- ".vhdl"
- ".vhd"
- ".vhf"
- ".vhi"
- ".vho"
- ".vhs"
- ".vht"
- ".vhw"
ace_mode: vhdl
codemirror_mode: vhdl
codemirror_mime_type: text/x-vhdl
language_id: 385
这可能是:
VHDL:
type: programming
color: "#adb2cb"
extensions:
- ".vhdl"
- ".vh?"
ace_mode: vhdl
codemirror_mode: vhdl
codemirror_mime_type: text/x-vhdl
language_id: 385
Linguist 是否允许使用此类通配符?
不,不是。
我们(我是 github-linguist 的共同维护者)没有收到那么多的添加新扩展的请求,我们认为现在需要添加它。
假设我们有一种编程语言,它使用具有各种扩展名的文件,所有这些文件共享一些指示语言的字符,但继续使用指示内容类型的其他字符。以当前 languages.yml:
为例Xojo: type: programming extensions: - ".xojo_code" - ".xojo_menu" - ".xojo_report" - ".xojo_script" - ".xojo_toolbar" - ".xojo_window" tm_scope: source.vbnet ace_mode: text language_id: 405
为了通用化并避免在添加新内容类型时必须更新 languages.yml,使用通配符是很自然的:
Xojo: type: programming extensions: - ".xojo_*" tm_scope: source.vbnet ace_mode: text language_id: 405
这是另一个例子:
VHDL: type: programming color: "#adb2cb" extensions: - ".vhdl" - ".vhd" - ".vhf" - ".vhi" - ".vho" - ".vhs" - ".vht" - ".vhw" ace_mode: vhdl codemirror_mode: vhdl codemirror_mime_type: text/x-vhdl language_id: 385
这可能是:
VHDL: type: programming color: "#adb2cb" extensions: - ".vhdl" - ".vh?" ace_mode: vhdl codemirror_mode: vhdl codemirror_mime_type: text/x-vhdl language_id: 385
Linguist 是否允许使用此类通配符?
不,不是。
我们(我是 github-linguist 的共同维护者)没有收到那么多的添加新扩展的请求,我们认为现在需要添加它。