Tôi đã cố thử nghiệm bằng cách sử dụng :make
gần đây nhưng tôi không thích vim đó phải chuyển sang hiển thị đầu ra shell trước và yêu cầu nhập bấm phím, sau đó nó cho tôi thấy những gì tôi nghĩ là một danh sách các lỗi thu thập được dựa trên 'errorformat'
mà tôi cũng cần phải xác nhận bằng cách nhấn Enter. Tôi muốn chỉ có một thông điệp "OK" ngắn mà không yêu cầu xác nhận bằng một phím bấm, hoặc vim đó sẽ mở :cwindow
nếu có bất kỳ lỗi nào.Có thể gọi: thực hiện trong vim trong linux mà không hiển thị shell
Trả lời
Hãy thử:
:silent make
Để tự động mở cửa sổ QuickFix sau khi bạn chạy make
, bạn có thể đặt này vào bạn .vimrc
: gcc
autocmd QuickFixCmdPost * :copen
Tôi đã thử: im lặng làm nhưng nó chỉ làm cho cửa sổ vim hoàn toàn đen (dòng lệnh vim và laststatus vẫn được hiển thị) vì vậy tôi phải gọi: thực hiện để có được bộ đệm được hiển thị trong cửa sổ một lần nữa. – Sam
Bạn có thể lập bản đồ ví dụ F9 để sử dụng cho nhỏ Đoạn mã C không yêu cầu thư viện, liên kết, v.v.:
map <F9> :!gcc -o %< % <enter><CR><C-w>
Điều này sẽ tạo cho tệp foo.c
mã nhị phân foo
. Tôi biết đó không chính xác những gì bạn muốn, nhưng điều này không hiển thị bất kỳ trình bao nào và hữu ích cho đoạn mã nhỏ.
Hãy thử
map <F9> :make<CR>
này có lẽ nên giải quyết vấn đề của bạn.
Không hiệu quả với tôi. Việc thực hiện chạy, nhưng nó không im lặng. :-( –
Tôi đang sử dụng dòng tiếp theo chỉ cho mục đích chính xác mà bạn đã viết:
nnoremap <leader>m :silent make\|redraw!\|cc<CR>
cc
cuối cùng cho thấy lỗi đầu tiên hoặc No errors
nhắn nếu đây là trường hợp.
Ý tưởng tuyệt vời! Tuy nhiên, tôi không muốn được tự động đưa đến vị trí của lỗi đầu tiên, nhưng chỉ được hiển thị cửa sổ quickfix trong trường hợp lỗi, vì vậy tôi đã thay đổi thành 'make! \ | Redraw! \ | Cw
- 1. Gọi pylab.savefig mà không hiển thị trong ipython
- 2. Tôi có thể vào lỗi sau khi thực hiện thực hiện trong VIM không?
- 3. cách thực hiện kiểm tra gui mà không hiển thị trong FEST-SWING
- 4. Muốn gọi lệnh shell linux từ Java
- 5. Makefile: hiển thị và thực hiện
- 6. Có thể hiển thị tiến trình sắp xếp trong linux không?
- 7. Viết một thể hiện Hiển thị cho Data.Functor.Compose mà không có FlexibleContexts
- 8. Mongo shell thực hiện truy vấn từ tệp và hiển thị kết quả
- 9. Trong vim, làm cách nào để xác định một hàm có thể được gọi mà không cần: gọi?
- 10. Ngăn chặn: thực hiện trong VIM từ cảnh báo
- 11. Tôi có thể thực hiện một memcpy copy-on-write trong Linux không?
- 12. QT4: Có thể thực hiện cuộn QListView mượt mà không?
- 13. Tôi có thể hiển thị GUID trong windbg không?
- 14. Bạn có thể thực hiện các macro tương tác hoặc bản ghi trong vim không?
- 15. Thực thi lệnh đơn trong kịch bản lệnh shell mà không có sudo
- 16. Cửa sổ không hiển thị trong trình thông dịch python trong GTK3 mà không có Gtk.main()
- 17. dquote> kết quả của một thực hiện một chương trình trong shell linux
- 18. Thiết lập biến môi trường trong kịch bản lệnh shell không làm cho nó hiển thị đối với shell
- 19. html2canvas có thể hiển thị svg trong một trang không?
- 20. Có thể hiển thị mã HTML trong Wordpress không?
- 21. Có cách nào để hiển thị các thực thể Hibernate như tài nguyên RESTful mà không có DTO không?
- 22. iPhone - có thể không hiển thị bàn phím nhưng vẫn hiển thị con trỏ trong UITextField?
- 23. Trong linux, cách đảm bảo chuỗi mã được thực hiện mà không bị gián đoạn
- 24. Gọi chức năng Lua mà không thực hiện kịch bản
- 25. Trong PHP, làm cách nào để thể hiện một chuỗi ký tự trên nhiều dòng mà không có dòng mới xuất hiện trong văn bản được hiển thị?
- 26. Có thể hiển thị tiến trình trong khi thực thi Visual Studio TestMethod không?
- 27. Tôi có thể ngăn chặn window.onbeforeunload không được gọi khi thực hiện cuộc gọi AJAX
- 28. Có thể hiển thị một WebImage mà không lưu nó vào một tệp trước không?
- 29. thực thi kịch bản lệnh shell mà không gọi sh ngầm rõ ràng
- 30. Không thực hiện trong C++ nhưng vẫn có thể gọi nó là
Câu hỏi của bạn trùng lặp với [Chạy: tạo từ gVim trong nền] (http://stackoverflow.com/questions/666453/running-make-from-gvim-in-background/666578#666578). –
Câu hỏi này dường như là chạy 'make' in ** foreground ** và nhảy trực tiếp đến lỗi đầu tiên được tìm thấy sau khi' make' kết thúc, không gặp rắc rối và nhắc nhở phát triển chậm không cần thiết. ('make' thường mất một phần nghìn giây để nhấn lỗi đầu tiên và dừng lại. Vậy tại sao chạy nó trong nền?) – Tino