Saya bertanya-tanya apakah ada pemetaan kunci di Vim untuk memungkinkan saya untuk indentasi baris kode tertentu (apakah garis-garis tersebut telah dipilih dalam mode visual, atau n baris di atas / di bawah posisi kursor saat ini).
Jadi pada dasarnya sesuatu yang mengubah berikut
def my_fun(x, y):
return x + y
untuk
#def my_fun(x, y):
# return x + y
Saya baik-baik saja dengan menggunakan #
atau """
untuk mengomentari baris yang relevan. Idealnya, saya juga ingin penekanan tombol yang sama untuk menghapus komentar baris jika baris yang diberikan telah dikomentari.
Jawaban:
Langkah 1: Pergi ke kolom pertama dari baris pertama yang ingin Anda komentari.
Langkah 2: Tekan: Ctrl+ vdan pilih baris yang ingin Anda komentari:
Langkah 3: Shift -
I
#space(Masuk ke mode Insert-at-left, ketik karakter untuk disisipkan. Pilihan akan menghilang, tetapi semua baris di dalamnya akan dimodifikasi setelah Langkah 4.)Langkah 4: Esc
sumber
Shift-I # <ESC>
tidak bekerja (mungkin saya salah melakukannya).satu arah secara manual
sumber
:10,12s/^#//
Anda bisa menambahkan pemetaan berikut ke .vimrc Anda
Sorot blokir Anda dengan:
#
untuk mengomentari baris Anda dari kolom pertama.-#
untuk menghapus komentar dengan cara yang sama.sumber
Sorot blokir Anda dengan: ShiftV
Komentari blok yang dipilih dengan:
:norm i#
(huruf kecil i)Untuk membatalkan komentar, sorot blokir Anda lagi, dan batalkan komentar dengan:
:norm ^x
The
:norm
perintah melakukan tindakan untuk setiap baris yang dipilih. Mengomentari akan menyisipkan#
pada awal setiap baris, dan menghapus komentar akan menghapusnya#
.sumber
Shift+v
) dan kemudian:norm i#
hanya menggunakan mengubah baris yang dipilih pertama. Ini berfungsi bagi saya untuk mengomentari baris 389 hingga 391::389,391norm i #
Saya biasanya menyapu blok visual (
<C-V>
), lalu mencari dan mengganti karakter pertama dengan:(Memasuki mode perintah dengan blok visual yang dipilih secara otomatis menempatkan '<,'> pada baris perintah) Saya kemudian dapat menghapus komentar blok dengan menyapu blok visual yang sama dan:
sumber
Ada beberapa plugin yang bagus untuk membantu komentar / tanda komentar. Misalnya The NERD Commenter .
sumber
Saya memiliki baris berikut di
.vimrc
:Cara pintas mempertahankan posisi kursor dan komentar Anda selama mereka mulai dengan
#
(ada ruang setelah #). Sebagai contoh:Setelah berkomentar:
Setelah uncomennting:
sumber
s/^/#/
regexp sederhana . Saya lebih suka komentar char terjadi di awal baris ... tetapi jauh lebih penting, 'komentar komentar' sangat penting. Saya juga menjatuhkanau BufEnter *.py
, karena#
komentar cukup umum untuk perintah yang digunakan di semua buffer secara default.Terus terang saya menggunakan plugin tcomment untuk tautan itu . Ia dapat menangani hampir setiap sintaks. Ini mendefinisikan gerakan yang bagus, menggunakannya dengan beberapa pencocokan blok teks khusus untuk python membuatnya menjadi alat yang ampuh.
sumber
NERDcommenter adalah plugin yang sangat baik untuk berkomentar yang secara otomatis mendeteksi sejumlah tipe file dan karakter komentar terkaitnya. Sangat mudah untuk menginstal menggunakan Pathogen .
Komentar dengan
<leader>cc
. Batalkan komentar dengan<leader>cu
. Dan beralih komentar dengan<leader>c<space>
.(
<leader>
Kunci default dalam vim adalah\
)sumber
Ada banyak plugin komentar untuk vim - beberapa di antaranya multi-bahasa - bukan hanya python. Jika Anda menggunakan manajer plugin seperti Vundle maka Anda dapat mencarinya (setelah Anda menginstal Vundle) menggunakan misalnya:
Dan Anda akan mendapatkan jendela hasil. Atau Anda bisa mencari plugin komentar vim-scripts .
sumber
Tidak diperlukan plugin atau pemetaan. Coba perintah "norma" bawaan, yang secara harfiah mengeksekusi apa pun yang Anda inginkan pada setiap baris yang dipilih.
Tambahkan # Komentar
Hapus # Komentar
Atau jika komentar Anda indentasi dapat Anda lakukan
:norm ^x
Perhatikan bahwa ini hanyalah perintah vim biasa yang didahului oleh ": norma" untuk mengeksekusinya di setiap baris.
Jawaban yang lebih terperinci untuk menggunakan perintah "norma" di salah satu jawaban di sini
Apa cara cepat untuk mengomentari / menghapus komentar baris di Vim?
sumber
Plugin ringan yang sangat minim : vim-commentary.
gccmengomentari baris
gcgcke tanda komentar. lihat halaman plugin untuk lebih.
v+k/jsorot blok lalu gccberi komentar pada blok itu.
sumber
CtrlK untuk komentar (Mode Visual):
CtrlU untuk tanda komentar (Mode Visual):
sumber