这个问题分为两个部分,其中一个我已经有了答案。

  1. 如何从正在编辑的整个文件中自动删除结尾的空格? ->答案:使用AnyEdit插件 ,可以将其设置为在保存到文件时执行此操作。
  2. 如何仅从我更改的行中自动删除结尾的空格? ->我不知道,将不胜感激。

#1楼

我也会说AnyEdit。 它不提供此特定功能。 但是,如果您和您的团队在每次保存操作时都使用AnyEdit功能,则在打开文件时,该文件不得包含任何尾随空格。

因此,如果您修改此文件并添加新的尾随空格,则在保存操作期间,AnyEdit将仅删除这些新空格,因为它们是此文件中仅有的尾随空格。

如果由于某种原因,你需要保持尾随空格上没有被修改过的线,那我也没有答案给你,我不知道这种功能在任何Eclipse插件存在...


#2楼

对于您问题的第二部分,我不知道有任何解决方案。 原因是不清楚如何定义我已更改 。 何时更改? 两次保存之间或两次提交之间...基本上-算了。

我假设您想遵循一些准则,但不要触摸其余的代码。 但该指南应整体使用,而不是一丁点。 因此,我的建议是-将所有代码更改为准则:这是一次性的操作,但请确保所有开发人员都具有相同的插件(AnyEdit),并且该项目具有相同的设置。


#3楼

我认为您的问题是关于Java代码的。 如果是这样,您实际上不需要任何额外的插件即可完成1)。 您可以转到“首选项”->“ Java”->“编辑器”->“保存操作”,然后对其进行配置以删除尾随空格

听起来,您还希望将其设置为团队范围的设置,对吗? 为了使生活更轻松,并且避免每次都拥有新工作区时都必须记住对其进行设置,可以将保存操作设置为项目特定的首选项,该首选项随代码一起存储到SCM中。

为此,右键单击您的项目,然后转到Properties-> Java Editor-> Save Actions 。 从那里,您可以启用项目特定的设置并将其配置为删除尾随空格(以及其他有用的东西)。

注意 :此选项已在Eclipse Kepler(4.3)和后续发行版中删除。

注意2:该选项似乎在Eclipse Luna中恢复Luna Service Release 1a (4.4.1)


#4楼

您可以在Eclipse中映射一个键,以手动删除整个文件中的尾部空格,但是只能在请求时才删除,而不是在保存时自动删除。 (“首选项/键”,然后将一组键映射到“文件/删除尾随空白”)如果要清理所有新文件,但保持原有代码不变,这将很有用。

另一种策略是激活空白的可视显示,所以至少在添加尾随空白时您会知道。 据我所知,虽然没有办法只显示尾随空格,但是我很高兴被证明是错误的。


#5楼

请执行以下操作:

首选项 -> Java- > 编辑器 -> 保存操作


#6楼

  1. 从要编辑的整个文件中删除空格:

首选项 -> Java- > 编辑器 -> 保存动作 ->检查在保存时执行选定的动作 ->检查其他动作 ->单击配置。- >转到代码组织选项卡->检查删除尾随空白 ->选择所有行 。

  1. 仅从我更改的行中删除空格:

首选项 -> Java- > 编辑器 -> 保存动作 ->选中“ 在保存时执行选定的动作 ->检查格式化源代码 ->选择格式化编辑的行 。

请注意,不必在“格式器”页面上单击“ 配置格式器设置” -所有代码样式都会自动包括删除结尾的空格。 至少我在Formatter配置中找不到此设置,并且它对于内置Java约定,Eclipse,Eclipse 2.1样式以及GoogleStyle都是开箱即用的 。

使用此设置时,显然您还需要关闭问题第1部分的解决方案。

Eclipse version checked: 4.5.2, 4.11

#7楼

目前尚无法在Eclipse中以通用方式完成此操作, 但是可以通过基本的Java知识和一些空闲时间来更改它 ,以添加对此https://bugs.eclipse.org/bugs/show_bug.cgi的基本支持? id = 180349

相关问题: https : //bugs.eclipse.org/bugs/show_bug.cgi?id = 311173


#8楼

对于php,还有一个选项:


#9楼

正如@Malvineous所说,使用“查找/替换”方法删除尾随空格(以下包括制表符U + 0009和空格U + 0020)不是一种专业方法,而是一种解决方法。
只需按Ctrl + F(或命令+ F)

  1. 查找 [\\t ][\\t ]*$
  2. 替换为空白字符串
  3. 使用正则表达式
  4. 全部替换

额外:
要删除前导空格,请找到^[\\t ][\\t ]*而不是[\\t ][\\t ]*$
要删除空白行,请找到^\\s*$\\r?\\n


#10楼

如果您设置了代码格式化程序选项,则可以通过Ctrl + Shift + F来执行PyDev,也可以在保存期间执行 :

Eclipse- > 窗口 -> 首选项 -> PyDev- > 编辑器 -> 代码样式 -> 代码格式化程序 :

我至少使用以下这些:

  • 保存前自动格式化
  • 修剪线合适吗?
  • 在文件末尾添加新行

#11楼

对于某些根本不支持删除尾随空格的编辑器(例如XML编辑器),您可以通过以下操作将其从所有行中删除:启用查找和替换,启用正则表达式,然后找到“ [\\ t] + $”,然后将其替换为“”(空白)。 可能有一个更好的正则表达式可以做到这一点,但是它对我有用,而无需安装AnyEdit。


#12楼

我将以下命令用于git: git config --global core.whitespace cr-at-eol

它删除尾随的^M字符。


#13楼

使用sed,一种Unix命令行工具,有一种非常简单的方法。 您可能可以在Eclipse中创建一个宏来运行此宏:

sed -i 's/[[:space:]]*$//' <filename>

#14楼

您不需要任何插件。 例如,如果您编写JAVA代码,则可以擦除尾随空白以配置保存操作:

Eclipse 3.6

首选项 -> Java- > 编辑器 -> 保存操作 ->检查在保存时执行选定的操作 ->检查其他操作 ->单击Configure ..按钮。

在“ 代码组织”选项卡中,选中“ 删除尾随空白”

如何在Eclipse中自动删除尾随空格?相关推荐

  1. matlab空格会消失了,如何在Matlab中自动删除保存的尾随空格?

    我有同样的需求,并写了一个小脚本来做一些接近的事情.将以下内容放在 MATLAB desktop shortcut中.每当您单击快捷方式按钮时,它将从编辑器中的活动文件中删除尾随空格.不如在保存时自动 ...

  2. HTML如何实现单元格自动编号,如何在Excel中自动为列编号?

    如何在Excel中自动为列编号? 您是否曾经想过在Excel中对列进行编号? 本教程将讨论一些对列进行编号的方法. 通过公式= ROW()自动编号​​一列 如果要根据行号对列进行编号,可以键入此公式 ...

  3. 如何在Eclipse中添加Servlet-api.jar的方法

    方法一: 点击窗口->首选项->java->构建路径->类路径变量->新建: 将你的tomcat目录下的common/lib/servlet.jar加进来. 如果你建立了 ...

  4. 如何在Excel中自动创建报告 Excel中自动创建报告的方法

    如何在Excel中自动创建报告 Excel中自动创建报告的方法,Excel工作表中存储的数据,可以使用宏来一键创建报告并导出为不同的文件类型.Excel自带步骤记录器,因此你不需要自己编写宏.小编在这 ...

  5. 连接maven_如何在Eclipse中使用Maven工程连接远程的Spark

    如何在Eclipse中使用Maven工程连接远程的Spark 本地Spark跑不会出现什么问题,但是切换到服务器上各种问题. 异常 java.lang.ClassCastException: cann ...

  6. eclipse 导入项目_JAVA编程实战:坦克大战系列2-坦克如何在eclipse中编写

    游戏中寻找学习JAVA的乐趣之 坦克大战系列2-坦克如何在Eclipse中编写 前言 本篇主要对Robocode在eclipse中如何配置并编写. Eclipse中的配置 通过本身自带的编辑器去写代码 ...

  7. Eclipse中自动提示的方法参数都是arg0,arg1的解决方法

    Eclipse中自动提示的方法参数都是arg0,arg1的解决方法 参考文章: (1)Eclipse中自动提示的方法参数都是arg0,arg1的解决方法 (2)https://www.cnblogs. ...

  8. Eclipse中自动提示的参数变成arg0,arg1...的解决方法

    发现Eclipse中自动提示的方法参数都是arg0,arg1,就不能根据参数名来推断参数的含义,非常不方便.解决方法:Preferences->Java->Installed JREs,发 ...

  9. mac mail 删除邮件服务器,这是在Mac上的Mail中自动删除垃圾电子邮件的方法

    有关于这是在Mac上的Mail中自动删除垃圾电子邮件的方法现在一些变化大家兴趣很大,既然要对这是在Mac上的Mail中自动删除垃圾电子邮件的方法了解清楚,小编特地给大家带来具体情况. 随着时间的推移, ...

最新文章

  1. iis vue history 配置_Vue实战——vueRouter路由的添加与配置
  2. 阿里云弹性高性能计算E-HPC强势来袭,全新打造一站式云超算
  3. 你发现了吗?数学还能这么美
  4. Git笔记(36) 打包
  5. MySQL DBA面试高频三十问
  6. [导入]完成可脚本调用的视频录制控件
  7. Facebook 推远程办公政策,但要“调整”薪资,你觉得 OK 吗?
  8. [转]小D课堂 - 零基础入门SpringBoot2.X到实战_汇总
  9. Spring AOP、拦截器、过滤器的区别
  10. 分布式数据库核心原理
  11. noip2017广东提高组复赛成绩
  12. pdf、markdown、docx文件预览
  13. 科研为什么需要甘特图
  14. BindingResult总结以及注意事项
  15. 【论文写作】——懒人怎么进行论文排版?文献引用怎么引?图表题注怎么加?怎么一键更新全文?如何添加目录、图录、表录?
  16. [JM] 如何结合标准看JM代码(JM86)
  17. Spring MVC controller控制器映射无法访问问题!!!
  18. IOS之YYModel字典转模型第三方框架的使用
  19. be yet to用法
  20. java多线程之Callable接口

热门文章

  1. Android之linux基础教学之六 异常
  2. Android源代码获得方法
  3. 【剑指offer-Java版】01为了准备面试也为了提升编程技巧开始刷宝典了
  4. 从前到后的CAN总线(一)
  5. Android10.0 Binder通信原理(八)-Framework层分析
  6. ConcurrentHashMap源码分析(1)——JDK1.7的实现
  7. python接口自动化参数化_Python读取txt文件数据的方法(用于接口自动化参数化数据)...
  8. (转)spring源码解析,spring工作原理
  9. vi使用技巧(转载)
  10. logback logback.xml常用配置详解(三) filter