成都IT培训学校

Atom键位绑定的那些事儿

2016-09-07 15:44 作者:hengrjgc 来源:简书 浏览: 我要评论(条) 字号:

摘要:最近主要都在看Atom的相关话题,还有偷懒,对前端的技术的关注稍微有些懈怠了。少了输入,自然就没有了输出了,造成了写不出技术博客的窘境。 而Atom这个大杀器,文档已经十分通俗易懂了,如果我通过翻译的方式来写技术博客,则免不有些许赘余。即便如此,我

  最近主要都在看Atom的相关话题,还有偷懒,对前端的技术的关注稍微有些懈怠了。少了输入,自然就没有了输出了,造成了写不出技术博客的窘境。
 
  而Atom这个大杀器,文档已经十分通俗易懂了,如果我通过翻译的方式来写技术博客,则免不有些许赘余。即便如此,我觉得还是可以尝试写一写。
 
  今天主要是想讲述Atom键位绑定的一些话题。
 
  优先级概述
 
  Atom键位绑定优先级主要有两个规则,根css的选择器优先级规则十分相似。(好吧,几乎一样,毕竟这是个基于前端技术的桌面应用,样式都是用css来配置的。)。
 
  1. 像css选择器那样,越特殊,优先级越高。
 
  比如:
 
  div.bg {
 
  background: red;
 
  }
 
  .bg {
 
  background: black;
 
  }
 
  第一个更特殊,它的优先级也更高。
 
  2. 根据导入的先后顺序。如果特殊级别相同,则根据加载的先后顺序来决定,越迟加载的配置优先级越高
 
  稍微提一下,如果在单个配置文件里面有对同一个快捷键绑定了两个不同操作事件的配置。如:
 
  'atom-text-editor':
 
  'alt-ctrl-a': 'custom:cut-line'
 
  'atom-text-editor':
 
  'alt-ctrl-a': 'application:about'
 
  这里用的是CSON(CoffeeScript-Object-Notation)格式的配置文件,跟JSON差不多。可以看成是长的不一样的JSON。而由于JSON并不会保护配置文件原来的顺序不受破坏(JSON的无序性),有可能得不到我们所期望的结果。也就是说单个文件里面这个配置,有可能是前面那个配置比后面的配置更晚加载,导致它优先级更高。
 
  官网文档建议把这两个配置切分到两个文件中去。迟加载的配置文件,所包含的配置优先级会更高。
 
  不过同一个文件里面对同一个快捷键绑定两个不同的操作事件,这种做法又是何苦呢?一般都不会这样干吧。
 
  配置加载越迟优先级越高
 
  f2 很多人应该都很熟悉这个操作,默认是用来查询下一个书签的操作。当我们在~/.atom/keymap.cson里面设置该快捷键的所对应的操作事件时,它就会覆盖掉默认的操作。
 
  'atom-text-editor':
 
  'f2': 'application:about'
 
  这个是用户自定义键位绑定的文件,正常来说都是最后一个加载的。结果如图:
 
 

  后加载的个人配置已经覆盖掉原来的默认配置了。
 
  让你的配置更加特殊
 
  通过让配置更加特殊,来提高键位绑定的优先级。
 
  'atom-text-editor':
 
  'f2': 'application:about'
 
  'atom-text-editor':
 
  'f2': 'application:open-dev'
 
  虽然文档讲的JSON文件可能不会保护单个文件里面配置的顺序,不过,在我的电脑上还是比较正常的,后出现的优先级更高,结果如图:
 
  

  后加载的个人配置已经覆盖掉原来的默认配置了。
 
  让你的配置更加特殊
 
  通过让配置更加特殊,来提高键位绑定的优先级。
 
  'atom-text-editor':
 
  'f2': 'application:about'
 
  'atom-text-editor':
 
  'f2': 'application:open-dev'
 
  虽然文档讲的JSON文件可能不会保护单个文件里面配置的顺序,不过,在我的电脑上还是比较正常的,后出现的优先级更高,结果如图:
 
  

  可见,局势已经改变了。由于多了一个类似CSS里面的标签选择器,所以about操作更加特殊了,它的优先级更高。现在按下f2就会显示atom产品的相关信息了。



  取消绑定
 
  只需要在指定命名空间下的快捷键的值设置为unset!便可取消这个快捷键的所有绑定。
 
  'atom-text-editor':
 
  'f2': 'unset!'
 
  如图:



  现在f2这个快捷键将不再起任何作用了。本质上,其实只要给f2绑定一个没有用的操作事件就好了。
 
  Happy Coding & Writing!! ^_^

顶一下
(0)
0%
踩一下
(0)
0%
标签:
版权所有: 非特殊声明均为本站原创文章,转载请注明出处: 成都学前端开发网-web.ixueyun.com
订阅更新: 您可以通过RSS订阅我们的内容更新

当前栏目分类