崇高的文本2:修剪尾随需求空白(Sublime Text 2: Trim trailing whit

2019-07-31 10:04发布

我知道,崇高的文本2可根据保存的文件删除尾随空白。

在一个团队中工作,commiting更改一个文件时,它往往会产生巨大的差异列表,这使得同行代码审查较为繁琐。 出于这个原因,我宁愿只做空白清洁时,我commiting的巨大变化到一个文件反正留下的空白,因为它是对小的改动。

我想知道是否有执行上的文件需求空白的微调任何命令,比其他"Activate trimming on save > Save file > Deactivate trimming"

在文档和计算器上没有显示任何有关搜索,所有的环节似乎谈论自动裁剪上的保存。

Answer 1:

请注意:使用此插件使崇高文本显著慢

我用TrailingSpaces插件此。

突出尾部的空格,并在一瞬间删除它们。

ST2提供了一种方法在文件保存到自动删除尾随空格。 根据您的设置,可能会更得心应手,只是强调他们和/或手工将其删除。 这个插件提供了这一点!

用法:点击“编辑/后间隔/删除”。

要添加一键绑定,打开“首选项/按键绑定 - 用户”,并添加:

{ "keys": ["ctrl+alt+t"], "command": "delete_trailing_spaces" }


Answer 2:

我用这些步骤崇高文本文档中快速的按需解决方案:

  1. 查找>替换...
  2. 查找内容: [ \t]+\n
  3. 替换为: \n
  4. 全部替换

您也可以通过为一大组文件的做到这一点

  1. 查找>查找文件...
  2. 找到: [ \t]+\n
  3. 哪里:
  4. 替换: \n
  5. 更换


Answer 3:

你可以简单地使用正则表达式来删除尾随空格:

  1. 查找>替换...
  2. 查找内容: [^\S\r\n]+$
  3. 替换为:留空。
  4. 点击“全部替换”

[^\S\r\n]+$正则表达式为“至少一个空白字符(因此空格和制表符,但不换行,使用双否定),接着行的末尾”

必须正则表达式启用:



Answer 4:

下面是一个使用在大多数情况下没有任何插件或设置和工作一个超级简单的方法。

  1. 多选择和移动光标到每一行的末尾
  2. 按住CTRL-Shift键,按下左,右
  3. 在线路末端的空格和制表符,现在应该选择的。 按Delete或Backspace

    -特殊字符,例如(和+也可以在该行的在这一点上结束,而不仅仅是空间的选择。

如何多选择所有行:

一种方法是使用鼠标中键垂直选择然后按下结束键,如果它是一小部分。

随着热键:

  1. CTRL-A(全选)
  2. CTRL-SHIFT-L(地方光标上选取的所有行)
  3. END(转到结束线)

您还可以使用查找功能找到的东西,会在每一行,如空格字符:

  1. \ S(使用正则表达式)
  2. 单击查找所有
  3. 按“结束”键在每行的末尾来获得多个游标

示范文本:

text and number     44  more text and a space  
text and number 44  more text and 2 tabs        
text and number 44  more text and no space or tab

text and number 44  more text after a line feed


Answer 5:

我发现了一个soulution这里: http://www.sublimetext.com/forum/viewtopic.php?f=4&t=4958

您可以修改包

trim_trailing_white_space.py

位于默认包目录,像这样:

import sublime, sublime_plugin

def trim_trailing_white_space(view):
    trailing_white_space = view.find_all("[\t ]+$")
    trailing_white_space.reverse()
    edit = view.begin_edit()
    for r in trailing_white_space:
        view.erase(edit, r)
    view.end_edit(edit)

class TrimTrailingWhiteSpaceCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        trim_trailing_white_space(self.view)

class TrimTrailingWhiteSpace(sublime_plugin.EventListener):
    def on_pre_save(self, view):
        if view.settings().get("trim_trailing_white_space_on_save") == True:
            trim_trailing_white_space(view)

class EnsureNewlineAtEof(sublime_plugin.EventListener):
    def on_pre_save(self, view):
        if view.settings().get("ensure_newline_at_eof_on_save") == True:
            if view.size() > 0 and view.substr(view.size() - 1) != '\n':
                edit = view.begin_edit()
                view.insert(edit, view.size(), "\n")
                view.end_edit(edit)

现在,您可以将命令添加到您的键盘映射配置:

{ "keys": ["your_shortcut"], "command": "trim_trailing_white_space" }


文章来源: Sublime Text 2: Trim trailing white space on demand