[formatting] Visual Studio Code 프로젝트의 모든 파일을 어떻게 포맷합니까?

각각을 개별적으로 포맷하지 않고 프로젝트의 모든 파일을 포맷하는 방법이 있습니까?



답변

“Format Files”라는 확장자를 사용할 수 있습니다.

”사용 : 명령 팔레트 열기 (Ctrl + Shift + P) & “Format Files”입력 ‘editor.action.formatFiles’명령에 대한 키 바인딩 생성. 작업 공간 폴더를 마우스 오른쪽 버튼으로 클릭하고 ‘파일 포맷’을 선택하여 디렉토리의 모든 파일을 포맷합니다.”

출처 : https://marketplace.visualstudio.com/items?itemName=jbockle.jbockle-format-files


답변

이것은 나를 위해 작동합니다

더 예쁜 설치 :

npm init
npm i prettier

package.json에 다음 스크립트 를 추가하십시오 .

"pretty": "prettier --write \"./**/*.{js,jsx,json}\""

이 경우에만 .js .jsx 및 .json 파일을 포맷해야합니다.

스크립트 실행 :

npm run pretty


답변

나는 운이 좋지 않아 내가 예상했던 방식으로 이것을하는 확장 프로그램을 찾았으므로 하나를 만들었습니다. 방금 만든 확장 기능을 살펴 보시기 바랍니다.

https://marketplace.visualstudio.com/items?itemName=lacroixdavid1.vscode-format-context-menu#overview

여전히 몇 가지 문제가있을 수 있으므로 자유롭게보고하거나 기여할 수 있습니다.


답변

내가 찾은 가장 간단한 해결책은 다음과 같습니다.

  • vscode에 더 예쁘게 설치하십시오.
  • .prettierrc 파일을 만들고 원하는 방식으로 구성합니다.
  • vscode 콘솔에서 다음 명령을 실행하십시오.

npx prettier --write "**/*.ts" (필요에 따라 파일 형식 정규식 추가)


답변

@herrbischoff가 말했듯이 현재 프로젝트의 모든 파일을 포맷 할 수있는 방법은 없습니다.
그러나 그것은 유용한 기능이 될 것입니다.

할 수있는 일은 자동 저장 및 자동 포맷을 켜서 저장되지 않은 모든 파일을 포맷하는 것입니다.

그렇지 않으면이를 수행 할 수있는 쉘 스크립트 나 확장 또는 다른 extern 프로그램 (예 : 오류를 자동 수정할 수있는 tslint 검사기)이 필요합니다.

이것에 문제가 있었고 모든 파일을 손으로 여는 것이 짜증납니다.


답변

현재로서는 그렇게 할 수있는 방법이 없으며 특히 유용한 기능처럼 들리지 않습니다. 또는 다른 말로 하면, 완전히 신뢰할 수 있다면 유용한 기능 입니다.

사용 된 언어의 자동 서식 지정 논리에 많은 믿음을 두어야 오류가 발생할 수 있습니다. 어쨌든 수동으로 변경 사항을 검토해야하므로이 접근 방식은 측정 가능한 생산성 향상으로 이어지지 않아야합니다.

심각하게 수정 된 코드베이스로 작업하고 있고 가능한 문제에 대해 신경 쓰지 않는다면 각 언어의 CLI 포맷터로 간단한 쉘 명령을 실행하는 것이 좋습니다. clang-format을 사용하는 C ++ 코드의 예 :

find . -iname *.cpp -exec clang-format {} +

이 명령은 모든 cpp 파일을 재귀 적으로 찾고 기본 설정으로 포맷터를 통해 실행합니다.

프로세스는 기본적으로 모든 언어 (예 : JavaScript ( js-beautify 사용 ))에서 동일합니다.

find . -iname *.js -exec js-beautify {} +

나오는 것이 무엇이든 검토하십시오. 또한이 명령을 VScode에 스크립팅하거나 내장 터미널에서 실행하는 것이 가능할 수도 있습니다.


답변

나는 단순히 속임수를 쓴다.

  1. 이 확장을 다운로드하십시오 https://marketplace.visualstudio.com/items?itemName=ApceHHypocrite.OpenAllFiles
  2. 모든 파일 열기
  3. “editor.formatOnSave”설정 : true
  4. 모든 파일 저장

도움이되기를 바랍니다.