Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Atom editor 是否有一种方法可以将多个主题应用于Atom编辑器会话(例如每个窗格、每个文件等)?_Atom Editor - Fatal编程技术网

Atom editor 是否有一种方法可以将多个主题应用于Atom编辑器会话(例如每个窗格、每个文件等)?

Atom editor 是否有一种方法可以将多个主题应用于Atom编辑器会话(例如每个窗格、每个文件等)?,atom-editor,Atom Editor,我想将多个主题应用于atom会话 以下是使用theme-Humanic语法的左侧面板和使用theme-seti语法的右侧面板的屏幕打印: (关于我是如何做到这一点的,请参见下面的注释2) 我希望看到一些用例:我可能希望一个窗口有人性化的语法主题,另一个窗口有seti。或者,我可能希望左分割是一个浅主题,右分割是一个暗主题。更好的做法是为每个文件分配一个主题,例如,文件a一个主题,文件b另一个主题,并让他们在弹出的任何位置保留该主题(例如,在另一个窗口中,在拆分的另一侧等) 当您有很多打开的文件

我想将多个主题应用于atom会话

以下是使用theme-Humanic语法的左侧面板和使用theme-seti语法的右侧面板的屏幕打印:

(关于我是如何做到这一点的,请参见下面的注释2)

我希望看到一些用例:我可能希望一个窗口有人性化的语法主题,另一个窗口有seti。或者,我可能希望左分割是一个浅主题,右分割是一个暗主题。更好的做法是为每个文件分配一个主题,例如,文件a一个主题,文件b另一个主题,并让他们在弹出的任何位置保留该主题(例如,在另一个窗口中,在拆分的另一侧等)

当您有很多打开的文件时,这对于区分文件非常有用

Emacs通过软件包进行了很长一段时间。原子中有类似的东西吗

从更技术的角度来看,有没有一种方法可以通过开发人员工具将.css文件手动应用于选项卡?毕竟,Atom基本上是一个经过修改的Chromium web浏览器,Chromium下的每个选项卡都可以有不同的css,所以在Atom中也可以这样做(?)

注1:大约一年前有人——如何按文件类型设置主题,答案是不能。我担心我更一般的问题的答案仍然是否定的,我将不得不研究编写我自己的包(对不起,我只是在打开我的问题后才找到这个链接)

注2:我在Atom中看到这个错误工作。Atom中似乎存在一个缺陷,即当您从一个主题切换到下一个主题时,偶尔会出现一些选项卡无法正确切换的情况,并且存在混合主题。在缓冲区之间切换时,似乎根本没有性能损失。这是我希望能够做到的,但要有控制

非常感谢

原子1.7.2

Linux Mint 17.3

我恐怕简短的回答仍然是否定的,但是从理论上讲,a可以通过使用更具体的CSS选择器为具有不同语法的文件提供非常不同的调色板

由于CSS选择器是基于最特定的选择器优先于不太特定的选择器应用的,因此不同语法中的两个符号可以分别设置样式:

.constant.numeric { color: red; }
将应用于任何语法中的所有数值常量,但是:

.constant.numeric.coffee { color: blue; }
仅适用于coffescript中的数值常量,即
coffee
语法,进一步:

.constant.numeric.coffee.my-extension { color: hotpink; }
只适用于(大概)扩展了CoffeeScript的自定义语法


据我所知,没有任何语法主题支持您在屏幕截图中显示的全部样式。当然,您的屏幕截图中有一些区域是UI主题的范围,而不是语法主题。

我真的错过了这个功能,所以我(原始海报)反向设计了(意外)混合主题时发生的事情,并编写了一个包以可控方式复制它。它被调用,允许您在文本编辑器级别自定义主题。展望未来,我希望能够通过允许更高级别的粒度(如按文件、按文件类型和按窗口)来扩展这一基本功能

我已经用了大约一个星期了,看起来效果不错。它基本上删除了附加到相关文本编辑器的全局样式节点,加载新主题的.less文件,编译它以生成css,并将具有上述css的新样式节点附加到活动文本编辑器。它并不适用于所有主题,但我认为它适用于其中95%的主题

我确实调查过试图通过更新atom源代码本身来解决这个问题。不幸的是,我对代码库还不够熟悉,无法从这个角度解决这个问题。也许这个包可以作为一个中间形式,直到有人能够“正式”添加该功能为止。但根据我的经验,大多数人对单一主题都很满意——emacs包允许多个主题,颜色主题缓冲区本地,似乎使用起来很轻松。因此,可能没有足够的需求使其成为官方功能

无论如何,如果有人对该软件包感兴趣,请尝试一下,如果发现任何问题,请通过通知我。

请参阅。披露:我是这个软件包的开发者(见答案2)