如何使用 Notepad++ 自动修剪尾随空格?

Sri*_*nth 81 notepad++ tabs whitespace

我不想完全删除空行,但我想删除其中的尾随制表符和空格。当我们保存文件时,Eclipse通常会这样做(通过首选项设置)。

例如,保存前的文件($ = 行尾):

def shuffle(list):$
    import random $
    $
    random.shuffle(list)
    $
$
Run Code Online (Sandbox Code Playgroud)

...当我将其保存在编辑器中时,Eclipse 会执行以下操作:

def shuffle(list):$
    import random$
$
    random.shuffle(list)
$
$
Run Code Online (Sandbox Code Playgroud)

如何使用 Notepad++ 自动修剪尾随空格?

joh*_*nno 90

你应该能够做一个正则表达式查找/替换记事本+ +中使用类似的模式\s+$

菜单Edit -> Blank Operations下还有一些选项可能适合您的需要。

在“宏”菜单下,有一个“修剪尾随并保存”选项。如果您需要执行正则表达式,则可以创建一个宏,但我从未尝试过。

  • 我已使用“设置 -> 快捷方式映射器...”选项将 Ctrl+S 键绑定到“宏 -> 修剪尾随并保存”选项。这比必须记住一直运行宏要好得多。:) (24认同)
  • 是的,在我的 Notepad++ 版本中,有一个“编辑 -> 修剪尾随空间”,但是我可以在每次保存时自动触发吗? (11认同)
  • 宏菜单下有一个“修剪尾随并保存”选项 (6认同)
  • 搜索 `\s+$` 将匹配任何空行,无论空格如何。我建议使用 `[ \t]+$` 代替。(请参阅[如何使用正则表达式删除尾随空格?](/sf/answers/667267191/)) (3认同)

小智 74

Alt+ Shift+S你想要做什么。事实上,它还保存了文件。

更新

正如 10basetom 所指出的,您可以为这个宏指定一个不同的快捷方式。您可以在Settings > Shortcut Mapper > [Macros]下控制您的快捷方式

在此处输入图片说明

  • 要在保存时去除尾随空格:(1) 删除默认的保存快捷方式 (Ctrl+S),然后 (2) 将“修剪尾随并保存”宏分配给 Ctrl+S。 (10认同)
  • 要删除默认的“保存”快捷方式,请双击“快捷方式”字段,然后从组合框中选择“无”。 (2认同)
  • 我找到了这个页面,按照你的建议更新了我的快捷方式,并从此愉快地使用了它。然后最近我不得不设置一台新机器,完全忘记了我之前是怎么做的......再次搜索,再次找到了这个答案!像这样帮助我你应该得到+2! (2认同)

小智 6

插件 > 插件管理器 > 显示插件管理器
在可用选项卡下,选择 EditorConfig 并单击 [安装]

.editorconfig文件添加到文件夹(命名它.editorconfig.以避免 Windows 错误“您必须键入文件名”-最后一个点将被删除)

# trims trailing whitespace for all files; filter like [*.{json,xml}]
[*]
trim_trailing_whitespace = true
Run Code Online (Sandbox Code Playgroud)

EditorConfig还可以指定编码、缩进和换行符等。


小智 6

现有的答案看起来很旧。

尝试以下路径:

Notepad++ > Edit (menu) > Blank Operations > Trim Trailing Space
Run Code Online (Sandbox Code Playgroud)


Hal*_*yon 5

我更改了快捷方式以找到解决方案。我删除了保存快捷方式(快捷方式映射器 -> 主菜单 -> 保存)并将Ctrl+映射S到“修剪尾随并保存”宏(快捷方式映射器 -> 宏 -> 修剪尾随并保存)。这样宏就取代了保存功能,并且无需记住Alt+ Shift+S快捷方式。