Tôi vừa mới cài đặt Vim mới và với dịp này tôi đã thêm một số plugin mới vào cấu hình VIM của mình. Vấn đề là bây giờ, khi tôi thực hiện thay đổi đầu tiên trong tập tin, các khối VIM và một trong các CPU của tôi đạt 100% tải. Ngoài ra, điều này đang xảy ra mọi lúc và sau đó trong khi tôi đang chỉnh sửa tệp. Điều này không bao giờ xảy ra trong cấu hình trước đó. Làm cách nào để tìm plugin nào đang giết CPU của tôi?Làm thế nào tôi có thể tìm thấy plugin VIM nào có lỗi vì quá tải CPU của tôi
Trả lời
Để thay thế cho romainl 's (đẹp và đơn giản) trial-and-error approach:
Tôi đã làm như vậy một lần sử dụng vim tích hợp trong hồ sơ: :he profile
.
Bạn có thể cần phải tự biên dịch vim để kích hoạt (lược tả không được bật trong phân phối vim mặc định).
Sau đó
:profile start filename
để kích hoạt hồ sơ và ghi dữ liệu cá nhân của bạn để filename
, chỉnh sửa tập tin của bạn (mà đẩy CPU lên 100%), một khi thực hiện
:profdel
ngừng profiling. Thoát khỏi vim và bạn sẽ tìm thấy thông tin lược tả được viết trong filename
.
Trong debian squeeze, vim có profiling được kích hoạt theo mặc định. Cảm ơn eckes! – sica07
Để lập cấu hình mọi thứ, hãy chạy ': tên tệp bắt đầu hồ sơ', sau đó là': hồ sơ func * ' Sau đó thực hiện điều chậm và đóng vim. ': profdel' là không cần thiết - nó không ngừng lược tả, thay vào đó nó đánh dấu một phần mã để đưa vào lược tả. – glebtv
- 1. Làm thế nào tôi có thể thấy những khóa vim nghĩ tôi đang đánh?
- 2. Làm thế nào tôi có thể sửa Lỗi tải MySQL
- 3. Làm thế nào tôi có thể chia sẻ các nếp gấp của tôi trong VIM?
- 4. Làm thế nào tôi có thể thấy những gì có trong heap của tôi trong Java?
- 5. Làm thế nào tôi có thể mô phỏng tìm kiếm * của Vim trong GNU Emacs?
- 6. Làm thế nào tôi có thể tìm thấy giao điểm của hai truy vấn Django?
- 7. Làm thế nào tôi có thể tìm thấy trung tâm của đối tượng?
- 8. Làm thế nào tôi có thể tìm thấy sự kết hợp của hai truy vấn Django?
- 9. Làm thế nào tôi có thể tìm thấy điểm giao nhau của ba mặt phẳng?
- 10. Làm thế nào tôi có thể tìm thấy OWNER của một đối tượng trong Oracle?
- 11. Làm thế nào tôi có thể tìm thấy màu chủ đạo của một hình ảnh?
- 12. Django: Làm thế nào tôi có thể tìm thấy mô hình nào của tôi đề cập đến một mô hình
- 13. Làm thế nào tôi có thể tìm thấy bao nhiêu năng lượng máy tính của tôi đang sử dụng?
- 14. làm thế nào tôi có thể tìm thấy css không sử dụng trong ứng dụng ajax?
- 15. Làm thế nào tôi có thể tìm thấy liệu CouchDB có đang hoạt động không?
- 16. C# - Làm thế nào tôi có thể "quá tải" một đại biểu?
- 17. Trong mercurial làm thế nào tôi có thể tìm thấy changesets có chứa một chuỗi?
- 18. Làm thế nào tôi có thể tìm thấy Endian-ness của PC của tôi bằng lập trình bằng C?
- 19. Làm thế nào tôi có thể nhận được CPU và Memory useage
- 20. Làm thế nào tôi có thể nhận được trực quan có thể nhìn thấy của UITableView?
- 21. PHP: Làm thế nào để làm của riêng trang 404 không tìm thấy lỗi của tôi
- 22. Vim: Khi sử dụng Vundle làm thế nào tôi cũng có thể bao gồm một plugin mà tôi đang viết?
- 23. Ngày Javascript, đây có phải là lỗi của tôi hoặc tôi đã tìm thấy lỗi không?
- 24. Làm thế nào tôi có thể tìm thấy tất cả các đơn vị trong ứng dụng Delphi của tôi?
- 25. Làm thế nào tôi có thể nhấn mạnh CPU của điện thoại theo cách lập trình?
- 26. Làm thế nào tôi có thể làm vim nhận dạng mã hóa của tệp?
- 27. Tôi có thể tìm thấy plugin plugin thả bóng jQuery tốt ở đâu?
- 28. Làm thế nào tôi có thể làm cho trận đấu của tôi không tham lam trong vim?
- 29. Làm cách nào tôi có thể tìm ra 500 lỗi nào tôi nhận được ở Django?
- 30. Làm thế nào tôi có thể tìm thấy thư mục gốc của một bản sao làm việc phụ đã cho
Bằng cách xóa từng plugin và thêm lại từng plugin. – romainl
Đây là phương pháp tôi đang cố gắng tránh, nhưng nếu không có cách nào khác ... – sica07
Vâng, bạn có thể sử dụng một hồ sơ. Bạn cũng có thể nghĩ một vài giây về các plugin của bạn: một số hoàn toàn thụ động cho đến khi bạn gọi chúng và có thể không liên quan đến vấn đề của bạn, những người khác có thể khởi chạy các tiến trình nền ở mỗi lần nhấn phím… Thanh trạng thái có thể tự cập nhật thường xuyên để hiển thị VCS trạng thái hoặc bất cứ điều gì. – romainl