如何识别配置文件的语法及其等效的 Markdown 语言标识符?



简介

在配置软件包时,您会遇到使用各种不同语法的各种配置文件。

除了.json.xml.yml.properties之外,以下是一些我找不到名称的常见语法示例。

空白分隔

# comment
value11 value12
value21 value22 value23 value24

你可以在"/etc/主机";并且还嵌入在Apache2配置标签(例如<VirtualHost>(下等等。似乎经常用于列出别名。

空白分隔和缩进嵌套

Key1 value1 value2 value3
Key2 value4 value5
Key3 value6
Key4 value7
Key5 value8

你可以在"~/"中找到这种语法。ssh/config";。嵌套将嵌套的值与父值联系起来。看起来像没有符号的yaml。

Apache2配置

您可以使用由空格分隔的值,也可以使用XML标记来分隔配置块。

# Ensure that Apache listens on port 80
Listen 80
<VirtualHost *:80>
DocumentRoot "/www/example1"
ServerName www.example.com
# Other directives here
</VirtualHost>

Dovecot配置

用特定的关键字和大括号开始一个块,然后像在.properties文件中一样使用=赋值。

protocol imap {
ssl_cert = </etc/ssl/certs/imap.pem
ssl_key = </etc/ssl/private/imap.pem
}
protocol pop3 {
ssl_cert = </etc/ssl/certs/pop3.pem
ssl_key = </etc/ssl/private/pop3.pem
}

问题

尽管许多软件包都有自己的配置语法,但这些语法通常有很多相似之处。在我看来,.config.conf.cf并没有真正说明所使用的语法。

我的问题是:上面的代码块语法有名称吗?如果有,哪些语言标识符可以用于标记代码块以应用正确的语法高亮显示

对于更复杂和自定义的配置语法,我只是在寻找一个基本语法语言标识符,它可以将大部分高亮显示应用于代码块。

```which-language-identifier-goes-here?
# comment
127.0.0.1 localhost example.com
```
```or-here?
# comment
Host remote-server
HostName example.com
User johndoe
```

此链接提供了一个有用的可用支持语言列表(请注意,您的markdown编辑器还需要支持每种语言,以便着色/语法(。

例如,您应该能够将apacheconf用于Apache conf(例如/.htaccess、Apache.conf'、apache2.conf(

例如:

```apacheconf
# Change the PHP version of this directory
<FilesMatch ".(php4|php5|php3|php2|php|phtml)$">
SetHandler application/x-httpd-alt-php74___lsphp
</FilesMatch>

我来这里是为了寻找关于我的.gitconfig文件的这个问题的答案。

我认为ini是一个很好的默认值。因此:

```ini
[git]
config = stuff
goes   = here
# ...
```

我认为CCD_ 14将适用于其它类型的";conf";文件,但除了在这种情况下有效之外,我没有其他参考来源。上面的链接中列出了它。

最新更新