Textmate 2选择实例变量

时间:2013-08-07 08:26:36

标签: ruby-on-rails textmate

在早期版本的Textmate中,当我双击Rails实例变量(例如@contract)时,选择省略了@符号 - 这很棒。粘贴板仅包含“合同”。

在Textmate版本2.0-alpha.9459中,双击实例变量会选择@sign以及字符。粘贴板现在包含“@contract”。

有没有办法配置Textmate 2.0,以便在select上省略实例变量的@?

2 个答案:

答案 0 :(得分:1)

根据https://github.com/textmate/textmate/wiki/FAQ

  

如果您不希望将标点符号视为其中的一部分   (完成)单位,然后:

     
      
  1. 选择菜单项:Bundles→Edit Bundles ...
  2.   
  3. 在列浏览器中选择:来源→设置→字符类:标点符号
  4.   
  5. 在抽屉中,将范围选择器从punctuation.separator更改为标点符号
  6.   
  7. 按⌘S(保存),然后关闭捆绑包编辑器
  8.   

答案 1 :(得分:-1)

您可以编辑Ruby包的语言语法来定义“单词”。有一个名为“variable.other.readwrite.instance.ruby”的部分,如下所示:

name = 'variable.other.readwrite.instance.ruby';
match = '(@)[a-zA-Z_]\w*';
captures = { 1 = { name = 'punctuation.definition.variable.ruby'; }; };

从正则表达式中删除@ -sign,它的行为与您描述的相同:

name = 'variable.other.readwrite.instance.ruby';
match = '[a-zA-Z_]\w*';
captures = { 1 = { name = 'punctuation.definition.variable.ruby'; }; };

请注意,现在语法突出显示也不会捕获@。