Visual Studio Code에서 C++ 소스를 자신의 취향으로 포맷하고 싶습니다.
2913 단어 C++VisualStudioCodeclang-format
그러나 좀처럼 지식 제로로부터 구축하는 곳까지 써 주는 곳을 찾을 수 없어, 실제로 포맷 할 수 있게 되기까지 많은 시간이 걸렸으므로 정보를 정리해 메모해 둡니다.
clang-format 명령을 사용하는 방법이 이식성 높고 좋아했기 때문에 그 방법을 소개합니다. (툴의 성질상, C++ 이외에서도 사용할 수 있습니다. 검색적인 이유로부터 C++로 하고 있습니다.)
VScode에 clang-format 설치
확장 기능에서 넣으면됩니다.
clang-format 넣기
확장 기능을 넣었을 뿐이라고 clang-format 본체가 들어가지 않으면 에러가 나왔습니다. 그래서 명령을 사용할 수 있도록 합니다.
Mac이라면 homebrew에 있으므로 설치합니다. (Windows에서는 실천하고 있지 않기 때문에 여기에는 쓰지 않습니다. 시도하지 않는 것을 도야 얼굴로 쓰는 것은 좋지 않으므로, 죄송합니다만 설치 방법은 자력으로 조사해 보세요. )
% brew install clang-format
clang-format 설정 파일 만들기
clang-format 관련 설정은 VScode 내에서 설정할 수 없습니까? (할 수 있다는 생각은 들지만, 여러가지 만져도 몰랐다)
설정 파일의 처리도 생각하면 자력으로 설정하는 것이 빠르다고 생각합니다.
clang-format에는 LLVM, Google, Chromium, Mozzila 등의 템플릿이 있으며 거기에서 선택할 수 있습니다. 당연히 사용자 정의하고 싶습니까?
clang-format은 ".clang-format"파일이 놓여 있으면 그 설정에 따라 포맷을 걸어줍니다. 현재 디렉토리뿐만 아니라 위 디렉토리에 설치해두면 서브 디렉토리에도 적용해줍니다.
그러나 방대한 양의 설정을 조사하는 것만으로도 어렵습니다. 그렇다면 먼저이 명령을 치자.
clang-format -dump-config -style=Google > .clang-format
참조 : h tp : // 신리야. 는 bぉ. jp / 엔트리 / 2015/05/11/. c ぁg ぉr 마 t % 에 3 % 81 % 네 % 에 4 % BD % 9C % 에 3 % 82 % 8 아 % 에 6 % 96 % B9
이것으로 존재하는 설정 항목을 전부 파일에 토출해 주기 때문에, ".clang-format"파일을 그대로 소스가 있는 장소, 또는 그 부모 디렉토리에 배치하는 것만으로 템플리 설정으로의 포맷을 할 수 있게 됩니다. C++에 적용하려면 Language:Cpp로 설정해야 하므로, 배치했는데 에러가 나오거나, 이상한 경우는 안을 확인해 보세요.
명령을 설치하고 구성 파일을 배치하면 VScode에서도 반영하여 포맷됩니다. VSCode의 설정으로부터 파일 보존시의 자동 포맷을 유효하게 해 두면, 매우 인권이 있는 개발을 할 수 있네요.
설정을 괴롭히자.
-style=Google의 'Google'을 다른 템플릿 이름으로 바꾸면 당연히 다른 템플리가 토출됩니다. 원하는 파일에 가까운 파일을 찾은 다음 설정을 하나씩 사용자 정의하는 것이 좋습니다.
그러나 설정을 소개하고 있으면 딱이 없기 때문에 개별적으로 다루지는 않습니다.
일본어로 읽을 수 있는 기사를 소개하고 끝납니다.
↓이쪽은 옵션까지 명기되어 알기 쉬웠습니다
h tp // // 13. 네 t/c㎁g/cぁんgーふぉr마 tstyぇー푸치온 s. HTML
clang-format과 VSCode로 좋은 코딩 라이프를!
요약
그렇게 몇 시간이나 넷의 바다를 방황하고 손에 넣은 정보인데, 기사에 정리하면 스카스카가 되어 버렸다… 결국 「clang-format이라는 포맷 툴이 있어, VSCode와 조합될 수 있어!」가 알고 싶었던 정보였습니다. 이 점만으로도 도움이되면 다행입니다.
Reference
이 문제에 관하여(Visual Studio Code에서 C++ 소스를 자신의 취향으로 포맷하고 싶습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/para7/items/b4a90dd7338320655357텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)