# Automatische Code Formatierung

**URL:** <https://forum.espuino.de/t/automatische-code-formatierung/1908>\
**Category:** Software\
**Created:** [11. April 2023 um 14:57 UTC](https://forum.espuino.de/t/automatische-code-formatierung/1908 "2023-04-11T14:57:37Z")\
**Posts on this page:** 1\
**Showing post:** 65

<div class="post-metadata">

**Author:** ![biologist](https://forum.espuino.de/user_avatar/forum.espuino.de/biologist/32/66_2.png) [@biologist](https://forum.espuino.de/u/biologist)\
**Post date:** [5. November 2023 um 10:12 UTC](https://forum.espuino.de/t/automatische-code-formatierung/1908/65 "2023-11-05T10:12:52Z")

</div>

Also mir war’s ehrlich gesagt überhaupt nicht klar, dass da was nachinstalliert werden muss. Auf meinem Mac M1 (arm64) habe ich von [Release LLVM 17.0.4 · llvm/llvm-project · GitHub](https://github.com/llvm/llvm-project/releases/tag/llvmorg-17.0.4) jetzt das aktuelle llvm runtergeladen, da mir in Macports die Abhängigkeiten ehrlich gesagt zu groß waren und ich für sowas nicht extra brew installieren werde. Da im Laufe der Zeit natürlich neue Releases vorhanden sein werden, nutzt man als Einstiegspunkt wohl besser [Releases · llvm/llvm-project · GitHub](https://github.com/llvm/llvm-project/releases).

Das o.g. Release habe ich dann mit `tar -xvf <filename>` entpackt und anschließend mittels `sudo cp clang+llvm-17.0.4-arm64-apple-darwin22.0/bin/clang-format /usr/local/bin/` an eine „ordentliche Stelle“ kopiert. Den Rest des llvm-Pakets habe ich dann wieder gelöscht, da ich das nicht brauche und SSD-Speicher im Mac scheiss teuer ist 🤣.  
Im Anschluss bin ich dann in die Settings von VSC gegangen und habe nach „Clang“ gesucht. Dort habe ich es dann eingetragen:

 ![Pfad eintragen für clang-format](https://forum.espuino.de/uploads/default/original/2X/d/dbe5ffc18135e707f01f2642c2074ad96bf7d637.png)

Grundsätzlich haben wir leider so ein bisschen das Problem, dass sich die Tastenkombination zwischen Windows, Linux und Mac OS unterscheiden. Das kann man hier nachlesen:

 ![Plugin-Beschreibung](https://forum.espuino.de/uploads/default/original/2X/8/85f438426dc2335e59156ba747e695a55c549a19.png)

Da ich mir das eh nicht merken kann, habe ich `editor.formatOnSave` dann aktiviert:

 ![Format on save](https://forum.espuino.de/uploads/default/original/2X/4/4ba19d9fbac72364462abea8996925bca39dd1e8.png)

Das klappt auch tatsächlich. Ich habe RfidPN5180.cpp nur geöffnet und wieder gespeichert und dann kam das hier dabei raus:

 ![Unterschiede](https://forum.espuino.de/uploads/default/original/2X/6/6412109ce65a6dde92b66766c008e40ef605ec1c.png)

Soweit die Anleitung für Mac OS. Unter Linux (Debian/Ubuntu) wird’s wohl am einfachsten mit `sudo apt install clang-format` gehen. Wenn man allerdings nicht alles installieren will, dann nehme ich mal an, dass man clang-format aus dem passenden [Archiv](https://github.com/llvm/llvm-project/releases/download/llvmorg-17.0.4/clang+llvm-17.0.4-x86_64-linux-gnu-ubuntu-22.04.tar.xz) ebenfalls rauskopieren kann, wie ich das oben auch für den Mac beschrieben habe.  
Für Windows wird’s dann wohl den [Installer](https://github.com/llvm/llvm-project/releases/download/llvmorg-17.0.4/LLVM-17.0.4-win64.exe) brauchen.

Edit:  
Im [ersten Post](https://forum.espuino.de/t/automatische-code-formatierung/1908/1) von @laszloh habe ich eben (ganz frech) einen kurzen Spoiler eingefügt.

---

_[View the full topic](https://forum.espuino.de/t/automatische-code-formatierung/1908)._
