Sangat sering, saya menulis penurunan harga di VIM, dan akan ada paragraf di penurunan harga itu. Untuk membantu pengeditan saya, saya mengatur Vim saya untuk membungkus garis pada 80 karakter. Ini berfungsi baik jika saya terus mengetik, tetapi masalahnya adalah jika saya perlu melakukan beberapa koreksi, itu menjadi sangat menjengkelkan.
demo (diambil dari logika urutan pertama wikipedia):
The adjective "first-order" distinguishes first-order logic from higher-order logic
in which there are predicates having predicates or functions as arguments. In first-order
theories, predicates are often associated with sets. In interpreted higher-order
theories, predicates may be interpreted as sets of sets.
Sejauh ini bagus. Tetapi ketika saya merevisi artikel itu, saya mungkin memutuskan untuk menambahkan sesuatu di tengah, katakan:
The adjective "first-order" distinguishes first-order logic from higher-order logic
in which there are predicates having predicates or functions as arguments,
or in which one or both of predicate quantifiers or function quantifiers are permitted.
In first-order theories, predicates are often associated with sets. In interpreted higher-order
theories, predicates may be interpreted as sets of sets.
perhatikan baris 3 adalah yang ingin saya bungkus. Jika saya melakukannya di VIM, saya harus secara manual bergabung dengan garis dan menulis ulang seluruh paragraf.
Adakah yang tahu cara membuat VIM melakukannya secara otomatis?
sumber
Saya akan melihat
:help 'textwidth'
. Secara otomatis akan memecah garis saat Anda mengetik. Namun ini tidak berfungsi jika Anda mengedit tengah baris.Saya pribadi lebih suka
textwidth
berhenti jadi saya membuat fungsi yang akan otomatis bergabung dan membagi paragraf. (Pada dasarnya format otomatis menjadi 80 karakter) Sepertinya ini:Saya kemudian memiliki pemetaan untuk menyebutnya kapan pun saya membutuhkannya:
Fungsi ini berfungsi dengan baik
formatoptions+=jr
untuk memformat komentar dalam kode juga! Cukup letakkan kursor Anda di baris pertama yang lebih panjang dari 80 karakter dan panggil fungsi tersebut.(Catatan: Saya belum membuat fungsi ini umum untuk melakukan selain dari 80, tapi saya pikir Anda hanya perlu mengubah 80 dan 81 jika Anda ingin membuatnya menjadi sesuatu yang lain)
Lihat
:help 'textwidth'
dan:help 'formatoptions'
untuk info lebih lanjut.sumber
textwidth
akan secara otomatis memformat saat Anda mengetik. Fungsi saya tidak akan. Saya lebih suka mengontrol ketika vim membungkus sesuatu, jadi itu berfungsi untuk saya. Tetapi jika Anda secara khusus mencari formatter as-you-type, ya; itu tidak sesuai dengan alur kerja Anda.Demi kelengkapan, saya ingin menyebutkan opsi berbasis plugin.
Jika Anda menggunakan sesuatu seperti ALE yang mendukung menjalankan buffer Anda melalui beautifier di save, Anda bisa membiarkan Prettier menangani penulisan ulang kode Anda.
Saya mencapai itu dengan memasukkan ini ke dalam
~/.vim/ftplugin/markdown.vim
:... dan memasukkan ini ke dalam
~/.vimrc
:sumber