我通常给 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
(其中尺寸为例如 等16x16
,24x24
因此对于每种尺寸,您应该有一个相应的图标,除非您选择svg
对所有尺寸使用图标)