eclipse - 如何自動刪除Eclipse中的尾隨空白?




7 Answers

  1. 從正在編輯的整個文件中刪除空格:

首選項 - > Java - > 編輯 - > 保存動作 - >檢查在保存時執行所選操作 - >檢查其他操作 - >單擊配置..- >轉到代碼管理選項卡 - >檢查刪除末尾空白 - >選擇所有行

  1. 僅從我更改的行刪除空格:

首選項 - > Java - > 編輯器 - > 保存操作 - >選中“ 在保存時執行所選操作 - >檢查格式源代碼 - >選擇格式化編輯的行

請注意,沒有必要在Formatter頁面上單擊“ 配置格式化程序設置” - 所有代碼樣式都會自動包括刪除末尾的空白。 至少我在Formatter配置中找不到這樣的設置,並且它為內置Java約定,Eclipse,Eclipse 2.1樣式以及GoogleStyle

使用這種設置時,您顯然還需要關閉問題第1部分的解決方案。

Eclipse version checked: 4.5.2

這個問題有兩個部分,其中一個我已經有了答案。

  1. 如何從正在編輯的整個文件中自動刪除尾隨空格? - >答:使用AnyEdit插件 ,可以將其設置為在任何保存到文件時執行該操作。
  2. 如何僅從我更改的行自動刪除尾部空白? - >這我不知道,並會很感激任何幫助。



你不需要任何插件來做到這一點。 例如,如果您編寫JAVA代碼,則可以擦除配置保存操作的尾部空白:

Eclipse 3.6

首選項 - > Java - > 編輯器 - > 保存操作 - >檢查在保存時執行所選操作 - >檢查其他操作 - >單擊配置..按鈕。

代碼組織選項卡中,選中刪除結尾空白




請遵守

首選項 - > Java - > 編輯器 - > 保存操作




我也會說AnyEdit。 它不提供這些特定的功能。 但是,如果您和您的團隊在每次保存操作時都使用AnyEdit功能,那麼當您打開文件時,它不能有任何尾隨空格。

因此,如果您修改此文件,並且添加了新的尾部空格,則在保存操作期間,AnyEdit將僅刪除這些新空格,因為它們是該文件中唯一的尾部空格。

如果由於某些原因,你需要保留未修改過的行的尾部空格,那麼我對你沒有任何答案,並且我不確定任何Eclipse插件中都存在這種功能。




對於那些不支持刪除尾隨空白(例如XML編輯器)的編輯來說,您可以通過查找和替換來移除它,啟用正則表達式,然後找到“[\ t]”, + $“並將其替換為”“(空白)。 有可能是一個更好的正則表達式,但它適用於我而不需要安裝AnyEdit。




使用Unix命令行工具sed有一個非常簡單的方法。 你可以在Eclipse中創建一個宏來運行它:

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



我不知道你的問題的第二部分有任何解決方案。 原因是不清楚如何定義我改變了 。 什麼時候改變? 只需在2次保存或提交之間...基本上 - 忘記它。

我假設你想堅持一些指導原則,但不要觸及代碼的其餘部分。 但是指南應該全面使用,而不是用於叮咬和碎片。 所以我的建議是 - 將所有代碼更改為準則:它是一次性操作,但要確保所有開發人員具有相同的項目設置相同的插件(AnyEdit)。




Related

eclipse eclipse-plugin whitespace