Tránh định dạng lại danh sách dấu đầu dòng với định dạng + = a


8

Tôi đang sử dụng Vim với formatoptions +=anhư được mô tả trong Vim: word quấn cho các tài liệu để định dạng các dòng tự động trong khi tôi viết tài liệu, đặc biệt là các tài liệu Markdown.

Vấn đề của tôi là Vim muốn định dạng lại danh sách dấu đầu dòng vì có một dòng trống giữa mỗi điểm đạn.

Điều hạnh phúc là định dạng vim

This is wath we will do:

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

vào

This is wath we will do:

* task 1,   task 2,   task 3.

(Tôi cũng không hiểu tại sao các dấu sao biến mất trong quá trình định dạng lại này.)

Làm cách nào tôi có thể khiến Vim dừng định dạng lại các danh sách này?


Các dấu hoa thị biến mất vì Vim nhầm họ với các nhà lãnh đạo bình luận.
gioele

Câu trả lời:


4

Thử cái này:

  • thêm nvào formatoptionsđể vim nhận ra danh sách ( :set fo+=n)
  • đặt formatlistpattùy chọn để nhận ra dấu hoa thị là dấu đầu dòng ( set flp+=\\\|^\\*\\s*) (lưu ý rằng số lượng dấu gạch chéo ngược phụ thuộc vào magicmức độ của bạn ).

Nó không hoàn hảo dựa trên thử nghiệm của tôi nhưng có vẻ như nó gần.


2

filetypetùy chọn được đặt thành markdownkhi bạn đang chỉnh sửa các tệp Markdown của mình? Bạn có thể sử dụng :verbose set filetype?để kiểm tra giá trị hiện tại.

Khi bạn đã chạy :filetype plugin on(ví dụ như từ của bạn .vimrc), và filetypeđược thiết lập để markdown, Vim sẽ nguồn $VIMRUNTIME/ftplugin/markdown.vimđó sẽ thiết lập một số tùy chọn ( comments, formatlistpatformatoptions) mà nên giúp với định dạng danh sách các mục Markdown.

Lưu ý: Mẫu tên tệp Markdown phổ biến *.mdthực sự được ánh xạ tới kiểu modula2tệp theo $VIMRUNTIME/filetype.vim. Bạn có thể muốn ghi đè cài đặt này nếu bạn thường sử dụng mẫu tên tệp này cho các tệp Markdown của mình. Bạn có thể làm điều đó bằng cách đặt cái này vào .vimrctập tin của bạn :

autocmd! filetypedetect BufNewFile,BufRead *.md setfiletype markdown

Ngoài ra, bạn có thể thêm một modeline vào mỗi tệp:

<!-- vim: set filetype=markdown : -->

Các tệp cú pháp của tpope (tệp tôi đang sử dụng) đặt formatlistpath trong github.com/tpope/vim-markdown/blob/master/ftplugin/markdown.vim . Vì một số lý do, có vẻ như ftplugin không được tải ...
gioele

1
Đó vim-markdownPlugin sẽ là đủ, nhưng bạn cần phải kích hoạt chức năng của nó (và các plugin filetype khác) với :filetype plugin on. Xem :help :filetype-plugin-on.
Chris Johnsen
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.