파일 저장시 Intellij 재 포맷


353

IntelliJ 또는 Eclipse에서 파일을 저장할 때마다 파일을 다시 포맷 (정리)하는 설정을 본 것을 기억합니다. 어떻게 찾습니까 (설정에서 찾지 못했습니까)

답변:


235

저장 조치 플러그인을 제안합니다 . 또한 수입 최적화 및 코드 재 배열을 지원합니다.

이클립스 포맷터 플러그인 과 함께 사용하면 효과적입니다 .

플러그인을 검색하고 활성화하십시오.

여기에 이미지 설명을 입력하십시오

그것을 구성하십시오 :

여기에 이미지 설명을 입력하십시오

편집 : 자동 Intellij 저장에 의해 저장 조치 플러그인이 트리거되는 최신 버전의 Intellij처럼 보입니다. 여전히 편집하는 동안 적중하면 상당히 성 가실 수 있습니다.

이 플러그인의 github 문제는 몇 가지 가능한 솔루션에 대한 힌트를 제공합니다.

https://github.com/dubreuia/intellij-plugin-save-actions/issues/63

실제로 Ctrl+에 형식 재 지정을 시도했지만 S제대로 작동했습니다. 이제 자동으로 저장됩니다.


이것을 사용했지만 Android Studio 1.5.1로 업데이트 한 후에는 더 이상 찾을 수 없습니다.
r1k0

1
플러그인은 (현재) 2016 년 10 월 2 일에 마지막으로 업데이트 되었으며 Compatibility This plugin works with Java 6+ and Intellij IDEA Community Edition after 131 (around version 13).IntelliJ Android Studio의 버전이 무엇인지 모르겠습니다. 이것을 확인할 수 있습니까?
Benjamin Peter

정상에 간다!
Nick Grealy

거의 나를 위해 일했다. 불행하게도, "재 포맷 코드"는 "코드> 재 포맷 코드"(적어도 스칼라 코드의 경우)가하는 것의 일부만을 수행 할 것이다. 왜 그런 겁니까?
Thilo

이것을 시도했지만 IntelliJ는 자주 절약합니다. 수입품 정리는 2 ~ 3 번의 키 입력으로 나타납니다.
Ashley

443

이 솔루션은 나를 위해 더 잘 작동했습니다.

  1. 매크로 만들기 (가져 오기 구성, 코드 포맷, 모두 저장 사용)
  2. 키 스트로크 할당 (I overrode Ctrl+ S)

참고 : 조직화 된 가져 오기의 경우 "이 메시지를 다시 표시하지 않음"확인란을 선택해야하지만 그 후에는 예상대로 작동합니다.

IntelliJ 10.0에 대한 단계별 :

  1. 코드-> "가져 오기 최적화 ..."대화 상자가 나타나면 "이 메시지를 다시 표시하지 마십시오"라는 상자를 선택한 다음 "실행"을 클릭하십시오.
  2. 도구-> "매크로 기록 시작"
  3. 코드-> "가져 오기 최적화 ..."
  4. 코드-> "코드 포맷 ..."
  5. 파일-> "모두 저장"
  6. 도구-> "매크로 기록 중지"
  7. 매크로 이름을 지정하십시오 ( "형식화 된 저장"과 같은 것)
  8. 파일-> 설정-> 키맵에서 "주 메뉴-> 도구->"포맷 된 저장 "에있는 매크로를 선택하십시오.
  9. "키보드 단축키 추가"를 클릭 한 다음 원하는 키 입력을 수행하십시오. 나와 같은 Ctrl+ 를 선택 S하면 이전 Ctrl+ 와 함께 무엇을할지 묻습니다.S 바로 가기로 . 제거하십시오. 원하는 경우 언제든지 나중에 다시 할당 할 수 있습니다.
  10. 즐겨!

IntelliJ 11의 경우 교체

2. 단계 : 편집-> 매크로-> "매크로 기록 시작"
6 단계 : 포함 : 편집-> 매크로-> "매크로 기록 중지"

다른 모든 것은 동일하게 유지됩니다.

IntelliJ 12

8. 기본 설정에는 키맵 설정이 포함되어 있습니다. 스크린 샷에 표시된대로 입력 필드를 사용하여 컨텐츠를 필터링하십시오.

Intellij / 환경 설정 / 키맵 / 매크로


4
IntelliJ 11 : 1 : 매크로 기록 시작 : 편집-> 매크로-> 매크로 기록 시작. 2 : 위의 지침을 따르십시오. 3 : 매크로 기록 중지 : 편집-> 매크로-> 매크로 기록 중지. 키맵에서 매크로는 주 메뉴-> 도구 폴더 대신 매크로 폴더에 저장됩니다.
Markus K

3
코드를 다시 포맷하는 방법에 만족 하면 프로젝트의 모든 코드 를 다시 포맷하고 모두 저장 하도록 선택하면이 방법이 훨씬 더 효과적 입니다. 그렇지 않으면 다중 파일 편집을 수행하면 수정 된 모든 파일이 저장되기 전에 활성 파일 만 다시 포맷됩니다.
Drew Noakes

86

아래는 Neil의 답변이 업데이트되었습니다.

IntelliJ 13 단계 :

  1. 코드-> 코드 재 포맷 여기에 이미지 설명을 입력하십시오
  2. 편집-> 매크로-> 매크로 기록 시작
  3. 코드-> 코드 재 포맷
  4. 파일-> 모두 저장
  5. 편집-> 매크로-> 매크로 기록 중지
  6. 매크로 이름을 지정하십시오 ( "형식화 된 저장"과 같은 것)
  7. 파일-> 설정-> 키맵
  8. 매크로를 마우스 오른쪽 버튼으로 클릭하십시오. 키보드 단축키를 추가하십시오. 키보드 단축키를 Control + S로 설정하십시오. 여기에 이미지 설명을 입력하십시오
  9. IntelliJ가 핫키 충돌을 알려줍니다. 다른 할당을 제거하려면 "제거"를 선택하십시오.

그러나 "저장"작업이 제거됩니다. 포스터에서 본 것은 Eclipse에서 파일을 저장할 때 코드를 형식화하고 가져 오기를 자동으로 구성하는 옵션이 있다는 것입니다. 이 옵션은 IntelliJ 아이디어에 없다고 가정합니다. 이 문제를 해결하려면 저장 키를 다시 포맷 키에 바인딩해야합니다.
Ganesh Krishnan

3
@GaneshKrishnan에 동의하지 않습니다. 이 해결 방법은 "저장 키"를 "재 포맷 키"에 바인딩하지 않습니다. 그것은 "재 포맷 하고 저장 하는"매크로에 바인드되는데 , 이것은 OP에 의해 요청 된 것과 Eclipse에서 구현 된 것이지만 확인란으로 트리거됩니다.
dbm

1
1 단계에서 "코드-> 파일 형식 변경 대화 상자 표시"를 의미하여 파일 형식 대화 상자의 기본값을 설정합니다 (3 단계-형식 코드에 대해 올바르게 설정 됨)?
studgeek

61

체크인시 자동으로 정리되도록 설정했는데, 이는 보통 나에게 충분합니다. 뭔가 너무 못생긴 경우, 그냥 바로 가기를 칠 것입니다 ( Ctrl- Alt- L, Return). 그리고 붙여 넣은 코드를 자동 서식 지정하는 옵션이 있지만 사용하지는 않았습니다.


12
Ctrl-Shift-F를 사용하여 형식을 지정할 수도 있습니다. Ctrl-Alt-L은 Ubuntu의 잠금 화면 명령이므로 나에게 더 효과적입니다.
Jason McVetta

22
Ctrl + Shift + F는 경로에서 찾기입니다 .
14시 39 분 스택 형

5
체크인시 어떤 일이 발생하도록 설정합니까?
rob

2
intelliJ를 사용하여 체크인하지 않으면 작동합니다. 예를 들어 명령 줄 도구를 사용하여 체크인하면 작동하지 않는다고 생각합니다.

그 질문에 어떻게 대답합니까?
Ben

19

Ctrl+ Alt+L 는 형식 파일입니다 (아래 2 개 포함).

Ctrl+ Alt+O 수입 최적화

Ctrl+ Alt+I 는 특정 줄에 들여 쓰기를 수정합니다

나는 일을하기 전에 보통 Ctrl+ Alt+ L를 몇 번 실행 합니다. 차라리 명령 대신 자동으로 정리 / 재 포맷하고 싶습니다.


Mac 용 Ctrl을 Cmd로 교체
Gerard

12
Ctrl + Alt + L일반적으로 세션 잠금 과 마찬가지로 Linux에서주의하십시오 . 함수 중 하나를 다시 매핑해야합니다.
불가분 한

18

InteliJ Idea Community 2018.2를 사용하는 경우 단계는 다음과 같습니다.

  1. 상단 메뉴에서 편집> 매크로> 매크로 기록 시작을 클릭합니다 (화면의 오른쪽 하단에 매크로가 기록되고 있음을 확인하는 창이 나타납니다)
  2. 상단 메뉴에서 코드> 코드 재 포맷을 클릭합니다 (오른쪽 하단에 옵션이 선택되어 있음)
  3. 상단 메뉴에서 코드> 가져 오기 최적화를 클릭합니다 (오른쪽 하단에 옵션이 선택되어 있음)
  4. 최상위 메뉴에서 파일> 모두 저장을 클릭하십시오.
  5. 최상위 메뉴에서 편집> 매크로> 매크로 기록 중지를 클릭하십시오.
  6. 매크로 이름을 "형식 코드, 가져 오기 구성, 저장"
  7. 상단 메뉴에서 시계 : 파일> 설정. 설정 창에서 키맵을 클릭하십시오
  8. 오른쪽의 검색 창에서 "저장"을 검색하십시오. 모두 저장 (Ctrl + S)을 찾을 수 있습니다. 마우스 오른쪽 버튼으로 클릭하고 "Ctrl + S 제거"를 선택하십시오.
  9. 상자에서 검색 텍스트를 제거하고 모두 접기 버튼 (왼쪽 상단에서 두 번째 버튼)을 누릅니다.
  10. 매크로로 이동하여 화살표를 눌러 매크로를 확장하고 저장된 매크로를 찾아 마우스 오른쪽 단추로 클릭하십시오. 키보드 단축키 추가를 선택하고 Ctrl + S를 누른 다음 확인을 누릅니다.

IDE를 다시 시작하고 시도하십시오.

나는 당신이 무슨 말을할지 알고 있습니다. 저 앞에있는 사람들도 같은 것을 썼습니다. 그러나이 게시물 위의 단계를 사용하여 혼란 스러웠으며 최신 버전의 IDE를 가진 사람들을 위해 바보 같은 버전을 작성하고 싶었습니다.


13

Flutter에서 개발하는 경우 2018 년 5 월 1 일부터 저장시 코드를 포맷 할 수있는 새로운 실험 옵션이 있습니다. 설정


9

에 대한 기본 바인딩을 대체하여 Reformat code...작업을 Ctrl- S로 다시 바인딩했습니다 Save All.

처음에는 미치게 들릴지 모르지만 IntelliJ는 편집기 탭을 닫을 때도 테스트 실행, 프로젝트 빌드 등 거의 모든 작업을 저장하지 않는 것 같습니다. 나는 때리는 습관이 있습니다 Ctrl- S종종, 이것은 실제로 저에게 아주 잘 작동합니다. 다시 포맷하기위한 기본 바인드보다 입력하기가 훨씬 쉽습니다.


5

IntellIJ 14 && 15 : Commit changes (변경 사항 커밋) 대화 상자에서 코드를 체크인 할 때 코드 다시 포맷 확인란을 선택하면 IntelliJ가 체크인하는 모든 코드를 다시 포맷합니다.

출처 : www.udemy.com/intellij-idea-secrets-double-your-coding-speed-in-2-hours


2
내가 여기서
Tushar

4
하나의 리소스에 대한 과도한 프로모션은 커뮤니티에서 스팸으로 해석 될 수 있습니다. 적절하고 적절한 답변을 게시해야하며,이 과정에 대해 한두 가지 언급하면 ​​괜찮습니다. 그러나 모든 답변에 게시 할 경우 플래그가 지정되고 삭제됩니다.
ArtOfCode

2

IntelliJ에 그런 것이 있다고 생각했지만 찾을 수 없습니다. 저장시 발생하는 유일한 정리는 줄 끝의 공백이 제거된다는 것입니다. 한 시점에서 해당 동작을 지정해야한다고 생각했지만이 시점에서 관련된 내용은 없습니다.


2

더 예쁘다면 File Watcher를 사용하십시오.

참조 => 도구 => 파일 감시자 => 새 감시자를 추가하려면 +를 클릭하십시오 => 더 예쁘다

https://prettier.io/docs/en/webstorm.html#running-prettier-on-save-using-file-watcher


2
더 예쁘지 만 웹 이외의 언어 / 형식에서는 작동하지 않습니다. 플러그인의 초기 시도를 제외하고는 js, ts, css, json 등의 형식을 지정하지만 C, C #, Java, Python 등에는 쓸모가 없습니다.
Mattia
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.