Wie richte ich C ++ - Kommentare so aus, dass sie mit dem Google-Stil kompatibel sind?


10

Gibt es eine Möglichkeit, Vim dazu zu bringen, meine Kommentare so zu formatieren, dass sie Google cpplint entsprechen?

Geben Sie hier die Bildbeschreibung ein

Der obere Abschnitt ist nicht konform. Zur Einhaltung sind 5 Änderungen erforderlich.

  1. Halten Sie diesen Kommentar auf dem gleichen Niveau
  2. Fügen Sie nach ein Leerzeichen hinzu //
  3. Fügen Sie mindestens zwei Leerzeichen zwischen Code und Kommentar hinzu
  4. Kommentare ausrichten
  5. Platz hinzufügen nach //

(Hinweis: Ich stelle diese Frage auch hier. Möglicherweise ist dies mit Tabular https://github.com/godlygeek/tabular/issues/44 möglich. )

EDIT: Gemäß der folgenden Empfehlung funktioniert dies:

Plugin => https://github.com/rhysd/vim-clang-format

.nvimrc oder .vimrc Konfiguration:

let g:clang_format#code_style='google'

let g:clang_format#style_options = {
            \ "AccessModifierOffset" : -3,
            \ "Standard" : "C++03"}

3
Das Clang-Format hat eine Googlestyle-Einstellung. Ich glaube, es gibt ein Plugin, mit dem Sie es von vim aus ausführen können.
FDinoff

@ FDinoff, genial es funktioniert, wenn Sie antworten, werde ich es als Lösung auswählen ...
user1135541

Ich verstehe nicht (1) - beide haben vier Leerzeichen vor dem ersten /, oder?
Kyle Strand

@KyleStrand: Ich glaube, (1) hat damit zu tun , dass diese Zeile nicht eingerückt wird, um mit den beiden anderen Kommentaren übereinzustimmen (dh OP gibt einen Randfall an, der sich nicht ändern sollte).
Kevin

@ Kevin Ah, ich dachte, es würde sagen, dass es auf der gleichen Einrückungsstufe sein sollte wie etwas in der vorherigen oder nächsten Zeile, aber das macht Sinn. Vielen Dank.
Kyle Strand

Antworten:


11

Das Clang-Format ist ein Befehlszeilenprogramm, das C ++ - Code formatiert. Einer der Standardformatierer ist Google.

clang-format -style=google

Es gibt Plugins, mit denen Sie das Clang-Format in vim ausführen können. Ein solches Plugin ist https://github.com/rhysd/vim-clang-format (ich habe es nicht verwendet, es war das erste, das ich gefunden habe)

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.