我可以将 Twig 文件类型添加到 Linux 吗?

我可以将 Twig 文件类型添加到 Linux 吗?

我通常给 Twig 文件一个“twig”扩展名。据我了解,这些 Twig 文件通常被 Linux 使用某种扫描算法识别为类似 HTML 的文件。例如,Nemo 使用 Web 图标表示这些文件,单击属性将文件类型显示为“文本 (text/html)”。然而,有时当文件顶部附近没有实际的 HTML 时,Linux 会将文件识别为纯文本。在此类文件中,我尝试添加 HTML 注释作为第一行:

<!-- Twig file -->

这适用于 Twig 宏文件,但不适用于常规模板,因为它会导致错误:

Fatal error: Uncaught exception 'Twig_Error_Syntax' with message 'A 
template that extends another one cannot have a body in "std.twig" at line 
1.' in /var/www/html/vendor/twig/twig/lib/Twig/Parser.php:379 Stack trace:
...

我知道可以在“twig”扩展名后面添加“html”扩展名,因此完整文件名例如:

foo.twig.html

但这很麻烦。

所以我想知道是否可以为 Linux(在我的例子中为 Mint)提供一种新的文件类型,并且在 Nemo 中可能有一个与文本或 HTML 图标不同的图标?

答案1

通过text/x-twig新的源 xml 文件

~/.local/share/mime/packages/text-x-twig.xml

包含以下内容:

<?xml version="1.0"?>
 <mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
  <mime-type type="text/x-twig">
    <comment>twig files</comment>
    <glob pattern="*.twig"/>
    <icon name="text-x-twig"/>
  </mime-type>
 </mime-info>

然后更新你的 mime 数据库

update-mime-database ~/.local/share/mime

1:请记住,“图标名称”必须与实际图标名称(不带图标主题的扩展名)相匹配; mime 类型图标的默认位置是/path/to/your/icon/theme/${SIZE}/mimetypes(其中尺寸为例如 等16x1624x24因此对于每种尺寸,您应该有一个相应的图标,除非您选择svg对所有尺寸使用图标)

相关内容