Bagaimana cara menyelaraskan komentar C ++ agar sesuai dengan gaya Google?


10

Adakah cara agar Vim memformat komentar saya agar sesuai dengan Google cpplint?

masukkan deskripsi gambar di sini

Bagian atas tidak sesuai, untuk memenuhi 5 perubahan diperlukan.

  1. simpan komentar ini di level yang sama
  2. Tambahkan spasi setelah //
  3. tambahkan minimal dua spasi antara kode dan komentar
  4. menyelaraskan komentar
  5. tambahkan spasi setelah //

(Catatan Saya juga mengajukan pertanyaan ini di sini, mungkin dapat dilakukan dengan Tabular https://github.com/godlygeek/tabular/issues/44 )

EDIT: Sesuai rekomendasi di bawah ini, ini berfungsi:

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

Konfigurasi .nvimrc atau .vimrc:

let g:clang_format#code_style='google'

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

3
dentang-format memiliki pengaturan googlestyle. Saya percaya ada plugin yang bisa Anda gunakan untuk menjalankannya dari vim.
FDinoff

@FDinoff, luar biasa berfungsi, jika Anda menjawab, saya akan memilihnya sebagai solusi ...
user1135541

Saya tidak mengerti (1) - mereka berdua memiliki empat ruang sebelum yang pertama /, bukan?
Kyle Strand

@KyleStrand: Saya percaya (1) ada hubungannya dengan tidak membuat indentasi baris yang cocok dengan dua komentar lainnya (yaitu OP menentukan kasus tepi yang tidak boleh berubah).
Kevin

@ Kevin Ah, saya pikir itu mengatakan itu harus pada tingkat indent yang sama dengan sesuatu di baris sebelumnya atau berikutnya, tapi itu masuk akal. Terima kasih.
Kyle Strand

Jawaban:


11

clang-format adalah alat baris perintah yang memformat kode c ++. Salah satu pemformat default adalah google.

clang-format -style=google

Ada plugin yang memungkinkan Anda untuk menjalankan format dentang di vim. Salah satu plugin tersebut adalah https://github.com/rhysd/vim-clang-format (saya belum menggunakannya, itu adalah yang pertama saya temukan)

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.