2011-08-28 21 views
13

enter image description herevim trạng thái vim sử dụng ký hiệu carret cho dấu cách. Làm thế nào để chuyển sang không gian?

Tôi đang sử dụng statusline sau:

set statusline=%<%f\ %h%m%r%{fugitive#statusline()}%=%-14.(%l,%c%V%)\ %P 
+0

Bạn có vấn đề này trong Vim, GVim hoặc cả hai? Vấn đề có xuất hiện nếu Vim được chạy dưới dạng 'vim -u NONE' không? –

+0

Chỉ cần thực sự là mvim. Vim hoạt động tốt trong cả mac và Ubuntu. –

Trả lời

21

Có cùng vấn đề và cuối cùng nhận ra rằng tôi chỉ nhìn thấy nó khi sử dụng các tông màu nhất định. Tiết lộ thêm một chút cho thấy rằng các màu sắc này đã đặt các nhóm làm nổi bật là StatusLineStatusLineNC làm nổi bật các giá trị giống hệt nhau.

:help StatusLineNC lưu ý rằng nếu StatusLineStatusLineNC có giá trị bằng nhau, thì Vim sẽ sử dụng ^^^ trong dòng trạng thái của cửa sổ hiện tại.

Khắc phục là nhận xét các dòng đã thay đổi các giá trị này trong các bảng màu có vấn đề.

+1

câu trả lời tuyệt vời! Câu trả lời này nên được chấp nhận vì nó cho thấy lý do thực tế của hành vi ít được biết đến (bằng cách này, chào mừng bạn đến StackOverflow, và theo kịp công việc tốt!) –

+0

Tuyệt vời! Tôi đã sử dụng 'railscasts.vim' và các giá trị bằng nhau cho' StatusLine' và 'StatuslineNC'. Tôi đã thay đổi chúng và bây giờ nó trông sạch hơn nhiều.cảm ơn! –

+0

cảm ơn bạn rất nhiều vì điều này! tôi đã được rối tung xung quanh w/fillchar trong một giờ và đó là màu sắc của tôi: S – xero

1

chuẩn statusline là :set statusline=%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P vì vậy tôi đoán đó là kẻ chạy trốn phần đó gây ra này. Nó làm gì? và ở định dạng nào nó hiển thị dữ liệu?

từ :help 'statusline':

{ NF Evaluate expression between '%{' and '}' and substitute result. 
      Note that there is no '%' before the closing '}'. 

Bạn đang statusline trông chính xác để có một cái nhìn ở phần fugitive ...


CẬP NHẬT

Đã làm một git clone http://github.com/tpope/vim-fugitive và cố gắng dòng trạng thái phía trên có thể tìm thấy trong số documentation for fugitive và trạng thái chính xác là được hiển thị cho tôi. Sử dụng xbuntu 11.04. Vì vậy, cập nhật mới nhất và thử lại là lời khuyên của tôi. và sử dụng set ruler

+0

Nó hoạt động tốt cho tôi trong Ubuntu cũng như vim trong hệ điều hành, macvim của nó đó là đưa ra những rắc rối. –

2

Tùy chọn fillchars chỉ định các ký tự để lấp đầy các dòng trạng thái và dấu tách dọc. Các mục stl:stlnc: của tùy chọn tương ứng với trạng thái của cửa sổ hiện tại và trạng thái của các cửa sổ khác, tương ứng. Xem tình trạng hiện thời của các tùy chọn fillchars (bởi :set fcs?), và cố gắng thiết lập các ký tự điền cho statusline một cách rõ ràng:

:set fillchars+=stl:\ ,stlnc:\ " 

(Dưới đây là biểu tượng quote cuối cùng bắt đầu bình luận và không ảnh hưởng đến các thiết lập giá trị , nó đã được thêm vào để tạo không gian trước đáng chú ý.)

+0

Chạy 'set fcs?' Tạo 'fillchars = vert: |, fold: -, stl:, stlnc:', tuy nhiên ': set fillchars + = stl: \, stlnc: \" 'không có hiệu lực. Tôi đã chơi với thay đổi lệnh, nhưng nó không có vẻ làm việc.Cảm ơn câu trả lời của bạn! –

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