질문에는 두 부분이 있는데 그중 하나는 이미 대답했습니다.
- 편집중인 전체 파일에서 후행 공백을 자동 제거하는 방법은 무엇입니까? -> 답변 : AnyEdit 플러그인을 사용 하십시오. 파일에 저장할 때 설정할 수 있습니다.
- 내가 변경 한 줄에서만 후행 공백을 자동 제거하는 방법은 무엇입니까? -> 이것은 모르겠으며 도움을 주셔서 감사합니다.
질문에는 두 부분이 있는데 그중 하나는 이미 대답했습니다.
답변:
Preferences-> Java-> Editors-> Save Actions-> 확인 Perform the selected actions on save-> 확인 Additional actions-> 클릭 Configure..-> Code organizing탭으로 이동 -> 확인 Remove trailing whitespace-> 선택 All lines.
Preferences-> Java-> Editor-> Save Actions-> 확인 " Perform the selected actions on save-> 확인 Format source code-> 선택하십시오 Format edited lines.
클릭 할 필요는 없습니다. Configure the formatter settings on the Formatter page모든 코드 스타일에는 후행 공백 제거가 자동으로 포함됩니다. 적어도 Formatter 구성 에서이 설정을 찾을 수 없었으며 기본 제공 Java Conventions, Eclipse, Eclipse 2.1 스타일 및 GoogleStyle 상자에서 즉시 작동했습니다 .
이 설정을 사용할 때는 분명히 질문의 1 부에 대한 솔루션을 해제 해야합니다 .
Eclipse version checked: 4.5.2, 4.11
귀하의 질문은 Java 코드와 관련이 있다고 가정합니다. 이 경우 실제로 1)을 달성하기 위해 추가 플러그인이 필요하지 않습니다. 환경 설정-> Java-> 편집기-> 조치 저장으로 이동하여 후행 공백 을 제거 하도록 구성하십시오 .
그것의 소리로 당신은 이것을 팀 전체의 설정으로 만들고 싶습니다. 새 작업 공간이있을 때마다보다 쉽게 작업하고 설정 작업을 기억하지 않으려면 저장 작업을 코드와 함께 SCM에 저장되는 프로젝트 별 기본 설정으로 설정할 수 있습니다.
이를 수행하려면 프로젝트를 마우스 오른쪽 단추로 클릭하고 특성-> Java 편집기-> 조치 저장으로 이동하십시오 . 거기에서 프로젝트 특정 설정을 활성화하고 후행 공백을 제거하도록 구성 할 수 있습니다 (다른 유용한 것들 중에서).
NB :이 옵션은 Eclipse Kepler (4.3) 및 다음 릴리스에서 제거되었습니다.
NB # 2 : 이클립스 루나에서 옵션이 돌아온 것 같습니다-Luna Service Release 1a (4.4.1)
플러그인이 필요하지 않습니다. 예를 들어, JAVA를 코딩하면 저장 조치를 구성하는 후행 공백을 지울 수 있습니다.
이클립스 3.6
Preferences-> Java-> Editors-> Save Actions-> 확인 Perform the selected actions on save-> 확인 Additional actions-> Configure..버튼을 클릭하십시오 .
에서 Code organizing탭 확인Remove trailing whitespace
PyDev의이 그것을 할 수 있습니다 Ctrl+ Shift+ F당신이, 또는으로 작업을 수행하는 코드 포맷 옵션 설정이있는 경우 during saving:
Eclipse-> Window-> Preferences-> PyDev-> Editor-> Code Style-> Code Formatter:
나는 적어도 이것들을 사용한다 :
Eclipse에서 키를 맵핑하여 전체 파일에서 후행 공백을 수동으로 제거 할 수 있지만 요청시 자동으로 저장하는 대신에만 공백을 제거 할 수 있습니다. (기본 설정 / 키를 누른 다음 일련의 키를 파일 / 후행 공백 제거에 매핑) 모든 새 파일을 삭제하고 레거시 코드는 그대로 유지하려는 경우에 유용합니다.
또 다른 전략은 공백의 시각적 표시를 활성화하는 것이므로 최소한 공백을 추가 할 때 알 수 있습니다. 내가 아는 한, 후행 공백 만 표시하는 방법은 없지만 잘못되었다는 것이 기쁠 것입니다.
핀치에서, 후행 공백 제거를 전혀 지원하지 않는 편집기 (예 : XML 편집기)의 경우 찾기 및 바꾸기를 수행하여 정규식을 활성화 한 다음 "[\ t]를 찾아 모든 행에서이를 제거 할 수 있습니다. + $ "로 바꾸고" "(공백)으로 바꿉니다. 아마 더 나은 정규 표현식이있을 수 있지만 AnyEdit을 설치할 필요없이 저에게 효과적입니다.
나는 AnyEdit도 말할 것입니다. 이 특정 기능을 제공하지는 않습니다. 그러나 사용자와 팀이 각 저장 작업에서 AnyEdit 기능을 사용하는 경우 파일을 열 때 뒤에 공백이 없어야합니다.
따라서이 파일을 수정하고 새 후행 공백을 추가하면 저장 작업 중에 AnyEdit는이 새 공백 만이 파일에서 후행 공백이므로 제거합니다.
어떤 이유로 인해 수정 되지 않은 줄에 후행 공백을 유지 해야하는 경우 답이 없으며 Eclipse 플러그인에 이러한 종류의 기능이 있는지 확실하지 않습니다 ...
지금은 일반적인 방식으로 Eclipse 에서이 작업을 수행하는 것은 불가능 하지만 기본 Java 지식 과이 https://bugs.eclipse.org/bugs/show_bug.cgi에 대한 기본 지원을 추가 할 수있는 여유 시간이 주어지면 변경할 수 있습니까? id = 180349
종속적 인 문제 : https://bugs.eclipse.org/bugs/show_bug.cgi?id=311173
@ Malvineous가 말했듯이 전문적이지는 않지만 찾기 / 바꾸기 방법을 사용하여 후행 공백을 제거하는 방법 (탭 U + 0009 및 공백 U + 0020 포함).
Ctrl + F (또는 command + F)를 누르십시오.
[\t ][\t ]*$
추가 :
선행 공간을
제거하려면 빈 줄을 제거하는 ^[\t ][\t ]*
대신 [\t ][\t ]*$
찾기를 찾으십시오.^\s*$\r?\n
[\t ]+$
대신 [\t ][\t ]*$
?
귀하의 질문의 두 번째 부분에 대한 해결책을 모릅니다. 그 이유는 내가 바뀐 정의 방법이 명확하지 않기 때문입니다 . 언제 바뀌 었습니까? 2 저장 사이 또는 커밋 사이 ... 기본적으로-잊어 버리십시오.
나는 당신이 어떤 지침을 고수하고 싶지만 나머지 코드를 만지지는 않는다고 가정합니다. 그러나 지침은 물기와 조각이 아닌 전체적으로 사용해야합니다. 그래서 내 제안은-모든 코드를 지침으로 변경하십시오 : 그것은 일회성 작업이지만 모든 개발자가 프로젝트에 대해 동일한 설정으로 동일한 플러그인 (AnyEdit)을 가지고 있는지 확인하십시오.
git 에이 명령을 사용했습니다. git config --global core.whitespace cr-at-eol
^M
후행 문자를 제거합니다 .