这个问题有两个部分,其中一个我已经有了答案。
- 如何从整个正在编辑的文件中自动删除尾随空格?->答案:使用AnyEdit插件,可以设置在任何保存到文件中时执行此操作。
- 如何仅从我更改的行中自动删除尾随空格?-> 我不知道这个,希望得到任何帮助。
这个问题有两个部分,其中一个我已经有了答案。
我假设你的问题是关于Java代码。如果是这样,你实际上不需要任何额外的插件来完成1)。你只需进入首选项-> Java->编辑器->保存操作,并将其配置为删除行尾空格。
听起来你还想将此设置为团队范围的设置,对吗?为了让生活更轻松,并避免每次有新工作区时都要记住设置它,你可以将保存操作设置为存储在 SCM 中与代码一起存储的项目特定首选项。
为此,请右键单击项目,然后转到属性-> Java编辑器->保存操作。从那里,您可以启用项目特定设置并将其配置为删除末尾空格(以及其他有用的内容)。
NB:此选项已在Eclipse Kepler(4.3)和以下版本中删除。
NB #2:该选项似乎已在Eclipse Luna-Luna服务发布1a(4.4.1)
中恢复。
首选项 -> Java -> 编辑器 -> 保存操作 -> 勾选 保存时执行所选操作 -> 勾选 其他操作 -> 点击 配置... -> 转到 代码组织 选项卡 -> 勾选 删除行尾空格 -> 选择 所有行。
首选项 -> Java -> 编辑器 -> 保存操作 -> 勾选 "保存时执行所选操作 -> 勾选 格式化源代码 -> 选择 格式化已编辑的行。
请注意,不必点击“在格式化程序页面上配置格式化程序设置”-所有代码样式都自动包括删除行尾空格。至少我在格式化程序配置中没有找到此设置,并且它适用于内置的Java约定、Eclipse、Eclipse 2.1 样式,以及 GoogleStyle 。
当使用这种设置时,您显然还需要 关闭 问题的第一部分的解决方案。
Eclipse version checked: 4.5.2, 4.11
PyDev可以通过设置代码格式选项来执行此操作,方式之一是使用Ctrl+Shift+F,或者在保存时执行:Eclipse -> Window -> Preferences -> PyDev -> Editor -> Code Style -> Code Formatter:
我至少使用这些选项:
请按照以下步骤:
偏好设置 -> Java -> 编辑器 -> 保存动作
您可以在Eclipse中将一个键映射到手动删除整个文件中的尾随空格,但仅在请求时而不是自动保存时执行。(首选项/键,然后将一组键映射到文件/删除尾随空格) 如果您想要清理所有新文件,但保持旧代码不变,则这可能很有用。
另一种策略是激活空格的可视化显示,这样至少您会知道何时添加了一些尾随空格。据我所知,没有办法仅显示尾随空格,但我很乐意被证明是错误的。
目前在Eclipse中以通用方式做到这一点是不可能的,但如果您具备基本的Java知识和一些空闲时间来添加基本支持,它是可以改变的。相关问题请参考:https://bugs.eclipse.org/bugs/show_bug.cgi?id=180349