Hindari memformat ulang daftar poin dengan pilihan format + = a

9

Saya menggunakan Vim dengan formatoptions +=aseperti yang dijelaskan dalam Vim: bungkus kata untuk dokumen untuk memformat baris secara otomatis saat saya menulis dokumen, terutama dokumen penurunan harga.

Masalah saya adalah bahwa Vim ingin memformat ulang juga daftar peluru karena ada garis kosong antara setiap titik peluru.

Apa yang bahagia adalah bahwa vim memformat ulang

This is wath we will do:

* task 1,
* task 2,
* task 3.

ke

This is wath we will do:

* task 1,   task 2,   task 3.

(Saya juga tidak mengerti mengapa tanda bintang menghilang dalam proses format ulang ini.)

Bagaimana saya bisa membuat Vim berhenti memformat ulang daftar ini?

gioele
sumber
Tanda bintang menghilang karena Vim mengira mereka sebagai pemimpin komentar.
gioele

Jawaban:

5

Coba ini:

  • tambahkan nke formatoptionssehingga vim mengenali daftar ( :set fo+=n)
  • atur formatlistpatopsi untuk mengenali tanda bintang sebagai bullet ( set flp+=\\\|^\\*\\s*) (perhatikan bahwa jumlah garis miring terbalik tergantung pada magiclevel Anda).

Itu tidak sempurna berdasarkan pengujian saya tetapi tampaknya dekat.

jw013
sumber
3

Apakah filetypeopsi disetel ke markdownsaat Anda mengedit file penurunan harga Anda? Anda dapat menggunakan :verbose set filetype?untuk memeriksa nilai saat ini.

Bila Anda telah menjalankan :filetype plugin on(misalnya dari Anda .vimrc), dan filetypediatur untuk markdown, Vim akan sumber $VIMRUNTIME/ftplugin/markdown.vimyang akan mengatur beberapa opsi ( comments, formatlistpat, dan formatoptions) yang seharusnya membantu dengan format penurunan harga daftar item.

Catatan: Pola nama file penurunan harga umum *.mdsebenarnya dipetakan ke modula2tipe file oleh $VIMRUNTIME/filetype.vim. Anda mungkin ingin mengganti pengaturan ini jika Anda biasanya menggunakan pola nama file ini untuk file penurunan harga Anda. Anda bisa melakukannya dengan meletakkan ini di .vimrcfile Anda :

autocmd! filetypedetect BufNewFile,BufRead *.md setfiletype markdown

Atau, Anda dapat menambahkan modeline ke setiap file:

<!-- vim: set filetype=markdown : -->
Chris Johnsen
sumber
File sintaks tpope (yang saya gunakan) mengatur formatlistpath di github.com/tpope/vim-markdown/blob/master/ftplugin/markdown.vim . Untuk beberapa alasan kelihatannya ftplugin tidak dimuat ...
gioele
1
Itu vim-markdownPlugin harus cukup, tetapi Anda perlu mengaktifkan fungsi (dan yang plugin filetype lainnya) dengan :filetype plugin on. Lihat :help :filetype-plugin-on.
Chris Johnsen