代码之家  ›  专栏  ›  技术社区  ›  pojo

在用于python的textmate中突出显示尾随空格?

  •  11
  • pojo  · 技术社区  · 15 年前

    我想做点什么 this textmate提示,这样当我用python编写代码时,尾部的空白总是以某种方式突出显示-这使得立即更正它更容易,而其他编辑器(如emacs)也可以做到。

    不幸的是,在那篇文章之后的讨论似乎表明这很难做到。对我来说 invalid.trailing-whitespace 在遵循此提示之后,范围选择器甚至在首选项中都不可见。有没有其他人在这方面取得了成功?

    2 回复  |  直到 15 年前
        1
  •  5
  •   Aaron Friel    13 年前

    此代码有效(但不含注释):

    {   scopeName = 'source.whitespace';
        patterns = (
            {  name = 'source.invalid.trailing-whitespace';
                match = '(\s+)$';
                captures = { 1 = { name = 'invalid.trailing-whitespace'; }; };
             },
        );
    }
    

    我把“source”改成“source.whitespace”

    对于python语法中的注释更改:

    {  name = 'comment.line.number-sign.python';
       match = '(#).*$\n?';
       captures = { 1 = { name = 'punctuation.definition.comment.python'; }; };
    },
    

    在:

    {  name = 'comment.line.number-sign.python';
       match = '(#).*?(\s*)$\n?';
       captures = { 
         1 = { name = 'punctuation.definition.comment.python'; }; 
         2 = { name = 'invalid.trailing-whitespace';  }; 
       };
    },
    

    您需要在Python语言定义中添加“include”,其中:

    :
    patterns = (
     {    name = 'comment.line.number-sign.python';
    :
    

    转向:

    :
    patterns = (
     {  include = 'source.whitespace'; },
     {    name = 'comment.line.number-sign.python';
    :
    
        2
  •  5
  •   jimiyash    15 年前

    我不知道如何突出显示尾随空格,但您可以通过转到

    捆绑包->文本->转换/剥离->删除文档中的尾随空格

    另外,因为textmate有emacs绑定,所以您可以像在emacs中那样进行绑定。