2009-05-06 27 views
19

Tôi muốn có thể làm nổi bật lề/chiều rộng của văn bản trong vim bằng cách thay đổi màu nền (hoặc có thể chỉ là một dòng?). Rất nhiều IDE có điều này. Tôi chế nhạo lên những gì tôi đang nói về:Thay đổi màu nền trong vim tại một cột nhất định

Bất cứ ai cũng biết nếu điều này có thể được thực hiện trong MacVim hoặc gvim?

Trả lời

21

Hãy thử điều này:

:match ErrorMsg '\%>80v.\+' 

Nó sẽ làm nổi bật văn bản vượt quá 80 ký tự, bạn có thể thay thế '80' với bất cứ quấn-width bạn có. Tuy nhiên, nó sẽ chỉ làm nổi bật các ký tự vượt quá chiều rộng, và sau đó chỉ trên các dòng thực sự dài hơn chiều rộng.

Kiểm tra http://vim.wikia.com/wiki/Highlight_long_lines để biết thêm thông tin, nhưng tất cả đều hoàn thành được điều tương tự.

+0

Có! Điều đó hoạt động tốt; Tôi đã không bao quanh đầu của tôi xung quanh thực tế rằng đây là một cách để "làm nổi bật đường dài" (mà liên kết của bạn là hit đầu tiên cho). – davetron5000

32

Kể từ khi Vim 7.3 nó có thể có cột nhấn mạnh như thế này:

Screenshot of MacVim with highlighted column

Để đặt nó vào hiện tại textwidth:

:set cc=+1 

Hoặc bạn có thể đặt nó vào giá trị được xác định trước:

:set cc=80 

Bạn có thể thay đổi màu sắc của nó như thế này:

:hi ColorColumn ctermbg=lightgrey guibg=lightgrey 

xem các trợ giúp để biết thêm chi tiết:

:help colorcolumn 
1
autocmd FileType * execute "setlocal colorcolumn=" . join(range(&textwidth,250), ',') 
highlight ColorColumn guibg=#303030 ctermbg=0 

Big Vấn đề ở đây là làm nổi bật colorcolumn có cao hơn ưu tiên sau đó hlsearch! Vì vậy, về cơ bản bạn sẽ không thể thấy các mục tìm kiếm được đánh dấu vượt ra ngoài lề đó ...

+0

Bạn rõ ràng sẽ phải chọn đúng màu bg cho colorscheme của bạn. – expelledboy

Các vấn đề liên quan