Vim và chuột với ssh từ Mac sang Linux


9

Tôi chắc chắn biết rằng có thể làm cho chuột hoạt động trong Vim trên một phiên từ xa đến máy Linux từ máy Mac của tôi, nhưng tôi không biết làm thế nào.

Ví dụ, vim hàng ngày đưa ra một mẹo để làm cho nó hoạt động nhưng nếu tôi cố gắng đặt 'mac-ansi', chẳng hạn, tôi gặp lỗi khi nói rằng tôi chỉ có thể chỉ định các giá trị bắt đầu bằng hàm dựng sẵn (riscos, beos-ansi, v.v.). Tôi đã thử sử dụng ssh -X, kết hợp với set mouse=aset term=builtin_ansoví dụ, nhưng không thành công với hoặc không kết hợp chúng.

Tôi đang sử dụng Snow Leopard và đang cố sử dụng chuột trên máy Debian với vim 7.1.314. Tôi đã xem tài liệu nhưng không thể làm cho nó hoạt động được. Bất cứ lời khuyên?


Lời khuyên về bài đăng vim hàng ngày đó là sai lầm khi nói đến 'term'tùy chọn. Có rất ít trường hợp người ta phải thay đổi tùy chọn đó trong Vim thay vì đặt thiết bị đầu cuối đặt giá trị chính xác cho $ TERM. Nhận xét của Spectral là đúng.
jamessan

Câu trả lời:


15

Tôi không nghĩ rằng Terminal.app hỗ trợ báo cáo chuột xterm cần thiết để làm cho chuột hoạt động. Có một vài lựa chọn để có được một thiết bị đầu cuối có chức năng báo cáo chuột.

  • iTerm là một chương trình thiết bị đầu cuối thay thế hỗ trợ báo cáo chuột
  • MouseTerm là một bản hack để thêm báo cáo chuột vào Terminal.app nhưng tôi chưa thử và không biết nó hoạt động tốt như thế nào
  • Bạn cũng có thể cài đặt X11 và sử dụng xterm thật

Khi bạn đã có một trong những điều đó, :set mouse=a(bạn cũng có thể cần :set term=xterm) và bạn nên kinh doanh.


1
MouseTerm đã giải quyết vấn đề. Họ hiện đang hỗ trợ nhấp chuột và các sự kiện cuộn. Tôi vừa cài đặt SIMBL + MouseTerm và chạy set mouse = a trong Vim trên máy từ xa của tôi và nó đã hoạt động.
Jonatan Littke

1
+1 cho: đặt chuột = a trong vim. Với Putty chạy trên Windows, không cần cấu hình nào khác. Tôi không thể tin rằng tôi chỉ sử dụng bàn phím quá lâu.
Cheesington

6

Để sử dụng Terminal.app bằng chuột, bạn cần sử dụng Alt-click thay vì nhấp.
Ví dụ: trong vim set mouse = a, sau đó sử dụng Alt-click để định vị con trỏ.

Điều này hoạt động thông qua ssh, mặc dù nó không cho phép thay đổi kích thước của các cửa sổ (vim). Bạn cũng mất khả năng cắt từ các cửa sổ khác và dán vào cửa sổ đầu cuối.


1

Tôi không có câu trả lời, nhưng tôi có thể chia sẻ những gì tôi đã học được trong những tháng dài tìm kiếm câu trả lời. Tôi là người dùng nặng màn hình vim và GNU trên ssh. Trớ trêu thay, tôi thề với những chương trình đó bởi vì tôi có thể sử dụng chúng từ xa mà không cần chuột, nhưng tôi gần như đã bỏ rơi OS X vì nó không cung cấp cách dễ dàng cho tôi sử dụng chúng từ xa bằng chuột.

Dù sao, đây là những gì tôi đã bật lên:

  • xterm chạy dưới X11.app có thể được thực hiện để báo cáo các sự kiện chuột và hoạt động như mong muốn. Thật không may, xterm thiếu nhiều tính năng của iTerm và Terminal.app. Làm một cái gì đó đơn giản là thay đổi phông chữ trong xterm đòi hỏi một chút ma thuật đen.
  • iTerm có thể được cho là phù hợp với chức năng mong muốn, nhưng tôi chưa bao giờ làm cho nó hoạt động. iTerm cũng bị các vấn đề hiệu suất lớn khi tôi nhảy lên Terminal.app vài tháng trước. Cập nhật màn hình xảy ra chậm, và nó sẽ chiếm 25% CPU chỉ ngồi đó không làm gì.
  • Tôi thực sự đã thử sử dụng một máy ảo Ubuntu rút xuống chạy dưới VMWare làm ứng dụng đầu cuối của mình. Tôi thiết lập nó để khởi động vào Gnome-Terminal toàn màn hình với fluxbox làm trình quản lý cửa sổ. Tôi đã từ bỏ giải pháp đó vì nó không chơi tốt với Spaces và chi phí hoạt động của VMWare.

Bây giờ tôi chỉ không bao giờ đi xa khỏi một hộp Linux thực sự thỉnh thoảng sử dụng vim thông qua Terminal.app để giữ cho tôi trung thực - nếu tôi không thể nhớ các tổ hợp phím điều hướng, tôi cũng có thể sử dụng Visual Studio.


0

Trên câu trả lời của Geoff, đây là một giải pháp khả thi khác:

MacVim + NetRW cho vim .

MacVim đã tích hợp hỗ trợ chuột và NetRW là mô-đun vim cho phép chỉnh sửa từ xa bằng cách sử dụng vim scp://host/path/to/file. Vì vậy, chỉ cần khởi động MacVim và kết nối với tệp, chỉnh sửa và lưu nó từ xa.

Bạn cũng có thể quan tâm đến việc điều chỉnh GUI một chút, xem câu hỏi liên quan của tôi về SO.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.