Usuń końcowe spacje podczas zapisywania w IntelliJ IDEA 12


99

Czy możliwe jest automatyczne usuwanie końcowych białych znaków podczas zapisywania w IntelliJ IDEA? Wiem, że są pewne obejścia, na przykład użycie git do przycięcia białych znaków po zatwierdzeniu. Może to pytanie jest duplikatem tego , ale mam nadzieję, że można to zrobić bez konfigurowania skrótów klawiaturowych i makr.


1
Powinieneś zaakceptować odpowiedź, zakładając, że ustawienie jest również tam w IntelliJ 12. (A ponieważ jest w 11 i 13, zakładam, że jest w 12.)
Chris Arena,

Odpowiedzi:


160

Nie wiem o 12, ale w 13 jest następujące ustawienie:

Ustawienia → Edytor → Usuń końcowe spacje przy zapisywaniu

Od IntelliJ 2017.2 jest pod

Ustawienia → Edytor → Ogólne → Usuń końcowe spacje przy zapisywaniu

dialog konfiguracyjny


13
Wygląda na to, że w IDEA jest błąd (w tym przynajmniej wersja 13.1.4, której teraz używam), który pomimo tego, co wybierzesz w powyższych preferencjach, nadal będzie zapisywać końcowe spacje w linii, w której znajduje się kursor . Na przykład, jeśli klikniesz na końcu dowolnej linii i naciśniesz <tab>kilka razy, a następnie zapiszesz (lub przełączysz się do innej aplikacji z włączoną funkcją automatycznego zapisywania), ta linia zostanie zapisana z nienaruszonymi końcowymi spacjami. Gdy tylko przesuniesz kursor poza linię i ponownie zapiszesz, spacje znikną.
Scott Dudley

4
Jest rok 2016 i ten błąd nadal istnieje.
Cassio Pereira

2
A caption To nie jest błąd, to funkcja, która w rzeczywistości nie konwertuje błędu na funkcję. Daszek po końcu linii jest bardzo niewygodny, ale chcę również usunąć końcowe białe znaki z bieżącego wiersza (gdzie znajduje się kursor). Na przykład Sublime ma tę funkcję, a Sublime może usuwać końcowe spacje na żądanie , a nie tylko podczas zapisywania .
maxkoryukov

4
Nie jestem pewien, kiedy została zaimplementowana, ale od dzisiaj jest dostępna opcja preferencji, która pozwala zmienić to zachowanie: pole wyboru z etykietą „Zawsze zachowuj końcowe spacje w linii daszka”, które znajduje się tuż pod polem „Usuń końcowe spacje spacje na Zapisz ”.
MaxML

4
Zmieniłem ustawienia w Intellij i nadal nie działa.
Ian S

4

W wersji 2020.1 IntelliJ:

Plik -> Ustawienia -> Edytor -> Ogólne -> następnie przewiń w dół do „Zapisz pliki”

Usuń końcowe spacje w opcji Zapisz


1

Przejdź do ==> PREFERENCJE | OGÓLNE | INNE |

Tak jak pokazano na rysunku:

  1. Srip miejsca na szlaki w Save: ALL
  2. Odznacz Zawsze zachowaj ....

Usunie końcowe spacje podczas zapisywania, a nie wcześniej

wprowadź opis obrazu tutaj


0

Dodaj narzędzie zewnętrzne. Po przejściu programu /usr/bin/sed(może być inny na twoim pudełku, uruchom, which sedaby zlokalizować) i wstaw -i 's/[[:space:]]\+$//' $FilePath$parametr w Parametry. Ogólnie polecenie, które chcesz uruchomić IntelliJ, to:

/usr/bin/sed -i 's/[[:space:]]\+$//' <your current file>

Ten sed usunie końcowe białe znaki i ogólnie efekt będzie bardzo podobny do git. Następnie możesz dodać skrót klawiaturowy do nowego wpisu narzędzia zewnętrznego, ale nie jestem pewien, czy można cokolwiek uruchomić podczas zapisywania.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.