Về phía tôi, giải pháp là sử dụng silentthường xuyên hơn trong chuỗi lệnh .
Cụ thể trước đây, .vimrccó:
nnoremap M :silent make\|redraw!\|cc<CR>
Điều này đã được thay đổi thành:
nnoremap M :silent make\|silent redraw!\|silent cc<CR>
Trước đây, "Nhấn ENTER" không phải lúc nào cũng hiển thị, nhưng thường xuyên gây khó chịu. Các bổ sung silentđã sửa điều này. (Có vẻ như silentkhông cần bật redraw!vì :ccđã gây ra thông báo "Nhấn ENTER".)
Thay đổi này có nhược điểm là không hiển thị đầu ra nữa :cc, vì vậy bạn phải đoán lỗi là gì. Một chút chỉnh sửa sẽ khắc phục điều này:
nnoremap M :silent make\|redraw!\|cw\|silent cc<CR>
Điều này làm cho danh sách QuickFix lỗi (Đầu ra của make) tự động xuất hiện (và, bằng vim-magic, biến mất nếu không có lỗi).
FYI:
Động cơ của việc Mánh xạ này là chỉ cần nhấn Mở Chế độ bình thường để:
- lưu bản chỉnh sửa (khi sử dụng
makemọi thứ vẫn dưới sự gitkiểm soát)
- cầu khẩn
make
- và chuyển trực tiếp đến lỗi hoặc cảnh báo đầu tiên
Của tôi Makefilethường được xây dựng như vậy, điều này chỉ mất một phần của giây.
Với một chút tinh chỉnh, điều này cũng có thể được áp dụng cho các Ckhối lượng công việc không thuộc loại:
trong .vimrcadd
set efm+=#%t#%f#%l#%c#%m#
Điều này cho phép vimgiải thích các thông báo như sau cho :cc(lỗi hiển thị):
#E#file#line#column#message#
#W#file#line#column#message#
#I#file#line#column#message#
( Errors, Warnings, Info, dựa trên vimphép thuật)
Ví dụ về cách sử dụng điều này cho các tập lệnh Python . (Xin lỗi, không có bản sao ở đây, đó là một câu chuyện khác.)
set dir=$TEMPvào vimrc của bạn. Điều này cho vim biết sử dụng đúng thư mục tạm thời cho các tệp tạm thời của nó. Điều này lần lượt sửa chữa các lỗi và loại bỏ lời nhắc "nhấn enter".