atom-editor – 有没有办法将多个主题应用于Atom编辑器会话,例如每个窗格,每个文件等?

我想将多个主题应用于原子会话.

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

《atom-editor – 有没有办法将多个主题应用于Atom编辑器会话,例如每个窗格,每个文件等?》

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

我希望看到的一些用例:我可能希望一个窗口具有人性化的语法主题,而另一个窗口则具有seti.或者我可能希望将左侧分割为浅色主题,右侧分割为黑暗主题.更好的是为每个文件分配一个主题,例如file-一个主题,file-b另一个主题,并让它们在弹出的任何地方都保留这个主题(例如在另一个窗口中,在分割的另一侧等)

当您有大量打开的文件时,这对于区分文件非常有用.

Emacs has had this capability很长一段时间通过包color-theme-buffer-local.在Atom中有类似的东西吗?

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

注1:大约一年前的某人asked a similar question – 如何按文件类型主题和答案是你不能.我担心我的更一般性问题的答案仍然是否定的,我将不得不调查我自己编写的程序包(对不起,我在打开问题后才发现这个链接).

注2:我在Atom中看到过这种错误. Atom中似乎存在一个错误,当您从一个主题切换到另一个主题时,偶尔会有一些选项卡无法正确切换,并且您有混合主题.在缓冲区之间切换时,似乎没有任何性能损失.这是我希望能够以受控方式做到的.

非常感谢.

原子1.7.2
Linux Mint 17.3

最佳答案 我担心简短的答案仍然没有,但理论上,
syntax theme可以通过使用更具体的CSS选择器为具有不同语法的文件提供非常不同的调色板.

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

.constant.numeric { color: red; }

适用于任何语法中的所有数字常量,但是:

.constant.numeric.coffee { color: blue; }

仅适用于coffescript中的数字常量,即咖啡语法,更进一步:

.constant.numeric.coffee.my-extension { color: hotpink; }

仅适用于(可能)扩展CoffeeScript的自定义语法.

据我所知,没有语法主题可以支持您在屏幕截图中显示的样式的全部内容.当然,您的屏幕截图的某些区域是UI主题的省,而不是语法主题.

点赞