我喜欢从 pluma/gedit 菜单中删除大多数语言(它们出现在那里)。
编辑器支持这么多语言真是太好了。但是大多数语言我都没用过。所以它们只是碍事而已,我没有足够的时间花一整天浏览我的条目。
它们出现在状态栏的语言类型选择中、插件对话框(针对哪种文档)、代码片段配置中,甚至可能还有更多空格中。是否可以编辑一些配置文件,以删除其中的大部分内容?
或者我必须获取源代码并修复那里的问题?90% 以上的时间,我只使用 3 或 4 种语言或纯文本。我猜其他用户也有类似的使用模式,当然是使用不同的语言。
答案1
Pluma 使用 GTKSourceView 来高亮显示语言。
其通用文件的软件包通常类似于 libgtksourceview-3.0-common,其中包含语言定义,这些定义通常以 XML 文件的形式存储在 /usr/share/gtksourceview-3.0/language-specs/ 中
我现在所做的只是解决这个问题而没有找到解决方案,就是在其中创建一个名为 All/ 的目录并将其中的所有文件移动到 /usr/share/gtksourceview-3.0/language-specs/All/ 并且我要将我使用的文件移回到 /usr/share/gtksourceview-3.0/language-specs/ 这样只有这些文件才会显示在菜单中。
但是这不仅适用于 Pluma,也适用于任何使用 GTKSourceView 的东西。
在我的系统上,此目录中有 135 个文件,您需要保留以下 4 个文件才能使突出显示正常工作:
def.lang、language2.rng、language.dtd 和 language.rng
我现在只剩下 24 个其他 .lang 文件,它们涵盖了所有我可以查看或编写的语言:
automake awk chdr c cmake cpphdr cpp css csv dosbatch html json julia lua makefile pascal perl php python3 python sh tcl xml yaml
现在这些就是 pluma 菜单中显示的所有内容。
注意:文件的名称不一定是菜单中显示的名称,例如 chdr.lang、cpp.lang、cpphdr.lang 文件分别显示为 C/ObjC Header、C++、C++ Header。
这不是一个理想的解决方案,因为它可能会被 gtksourceview-common 包的更新所覆盖,但除了修改 pluma 或 gtksourceview 的源代码并重新编译之外,这是我认为的唯一方法。