Làm thế nào để nhảy đến một vị trí bằng chuột trên iTerm / terminal?


43

Tôi làm việc trên một thiết bị đầu cuối hầu hết thời gian.

Có ứng dụng / plugin nào trên iTerm hoặc bất kỳ thiết bị đầu cuối nào khác như ứng dụng mà tôi có thể kiểm soát vị trí con trỏ của thiết bị đầu cuối của mình bằng chuột không?


Bạn muốn làm gì ở con trỏ?
dùng151019

1
Tôi muốn nhảy đến con trỏ. Trường hợp sử dụng là, Nếu tôi có một hàng dài được phân cách bằng dấu cách, tôi muốn chuyển đến một vị trí cụ thể. sử dụng bàn phím mất nhiều tổ hợp phím.
Sairam

Nếu bạn đã sử dụng Terminal, bạn có thể đánh giá cao bàn phím. Tìm hiểu các phím tắt để nhảy lên trước / sau của dòng và điều hướng bằng từ và nó sẽ giúp bạn tiết kiệm nhiều tổ hợp phím và có thể nhanh hơn chuột.

1
Xem thêm apple.stackexchange.com/a/217167/24565 để biết thông tin về các tùy chọn chuột cho tmux
Michael Durrant

Câu trả lời:


52

Ít nhất trong Terminal.app bạn có thể giữ phím optiontrong khi nhấn để nhảy trong dòng hiện tại của bạn (mà thực sự có nghĩa là chỉ đường, vì vậy nếu hiện tại dấu nhắc của bạn là rất lâu đến nỗi nó kết thúc tốt đẹp với một dòng thứ hai của đầu vào bạn sẽ phải option-Click đến đầu dòng "thứ hai" và sau đó nhảy bằng các phím mũi tên đến dòng "thứ nhất" nơi bạn có thể bấm optionlại lần nữa.)


1
Tùy chọn nhấp chuột, thú vị. Không bao giờ biết rằng một trước đây. Hãy chắc chắn nhấp vào dòng mặc dù, tào lao thần thánh. Tôi thậm chí không hiểu những gì đang xảy ra khi tôi nhấp vào bên trên / bên dưới dòng hiện tại. Tôi cho rằng nó đã nhấn lên nhiều lần, nhưng tôi khá chắc chắn rằng lịch sử lệnh không khớp chính xác.
Jason Salaz

Chà, nó chỉ đọc số lượng cột mà bạn nhấp và nhảy đến vị trí đó trong dòng hiện tại (!); vì vậy, nếu bạn ở cuối dấu nhắc được gói (nói dòng 2: cột 45) và bạn bấm tùy chọn vào thứ gì đó trong dòng đầu tiên (nói dòng 1: cột 4), bạn sẽ kết thúc ở cột 4 (tuyệt vời) nhưng sẽ ở dòng 2 (sai!).
Asmus

2
Cách thức hoạt động của Click-Click là nó phát hành tương đương với các đầu vào phím mũi tên. Điều này hoạt động tốt trong các trình soạn thảo như emacs, nhưng nếu bạn đang ở dấu nhắc lệnh bash, nó sẽ diễn giải lên / xuống là "lệnh trước đó / tiếp theo trong lịch sử". Vì vậy, nếu bạn Tùy chọn-Nhấp vào bất cứ nơi nào ngoại trừ cùng một hàng có chứa dấu nhắc, bash sẽ đi qua lịch sử lệnh của bạn thay vì di chuyển con trỏ.
Chris Trang

Hoạt động trong iTerm2.
Ahmet Alp Balkan

9

Đã khá lâu kể từ khi câu hỏi này xuất hiện và tôi đã đề cập đến vấn đề dưới đây trên nền tảng này trong Nhấp chuột tùy chọn trong iTerm và trình theo dõi vấn đề của iTerm2 nhưng có lẽ nó giúp ích cho người này hoặc người kia:

Xin chào, chỉ muốn cho bạn biết rằng tôi đã triển khai tính năng đó trong iTerm2. Nó chưa có trong repo iTerm2 chính thức nhưng nếu bạn muốn dùng thử, bạn có thể tìm thấy nó tại github .

Vì nó chỉ được thử nghiệm bởi tôi cho rằng nó không ổn định. Tôi đã thử nghiệm nó với bash, vi và emacs và làm hết sức mình để giống với hành vi của Terminal.app.

Có một nhị phân được biên dịch sẵn trên github quá iTerm_v1.0.0.20120312.git-b919985b.zip (cho i386 / x86_64 / ppc).

Tất nhiên bất kỳ thông tin phản hồi đều được chào đón.


Có phải chuột báo cáo đã phá vỡ trong bản phát hành cuối cùng? Nó không còn hoạt động với tôi nữa, tôi không thấy con trỏ "o" và tôi không thể tìm ra cách lấy lại nó.
Michael

Tôi lấy lại cái đó. Báo cáo chuột không chỉ hoạt động trong một số trường hợp - ví dụ: nếu bạn ssh sang máy khác, sau đó đính kèm vào phiên tmux đã chạy emacs. Điều này được sử dụng để làm việc. Bây giờ đôi khi bạn phải thoát ra khỏi emacs và khởi động lại nó trước khi báo cáo chuột hoạt động ...
Michael

Nó dường như chỉ đi đến một vị trí bất cứ nơi nào trên dòng hiện tại. Có thể bấm tùy chọn bất cứ nơi nào trên lệnh hoạt động?
Skeleton Bow

6

Bàn phím thường là người bạn tốt nhất của bạn. Trong cấu hình mặc định, trình bao của bạn kiểm soát phần lớn cách bạn điều hướng xung quanh dấu nhắc lệnh.

Option+ bquay lại một từ (con trỏ sẽ kết thúc ở chữ cái đầu tiên của từ trước đó).

Option+ fđi về phía trước một từ (con trỏ sẽ ở ký tự không phải chữ cái SAU từ tiếp theo).

Shift+ Fn+ Left Arrow (←)sẽ đặt con trỏ ở đầu dòng. ( Ctrl+ acũng sẽ làm điều này.)

Shift+ Fn+ Right Arrow (→)sẽ đặt con trỏ ở cuối dòng. ( Ctrl+ ecũng sẽ làm điều này.)

Vì vậy, nếu tôi có một lệnh dài, ví dụ:

$ rsync -avz --progress ~/Sites/Development/My/Project web@server:/deployment/output/area

Và tôi bắt đầu đánh Option+ b, con trỏ sẽ dừng lại trên một trong khu vực, các o ở đầu ra, các d trong triển khai vv

Nếu tôi đi đến đầu dòng và bắt đầu nhấn Option+ f, con trỏ sẽ dừng ở khoảng trắng sau rsync, khoảng trắng sau avz, khoảng trắng sau tiến trình, / sau Trang web, v.v.


Tôi thích giải pháp chánh niệm "vấn đề XY" của bạn. Trong khi không trả lời câu hỏi ban đầu, nó là một lựa chọn rất xứng đáng. Có phải mục đích mặc dù đôi khi bạn nói CMD + b và tùy chọn + b?
Cornelius RoTable

1
Không, đó là một sai lầm về phía tôi. Lệnh không bao giờ nên được sử dụng ở đây vì điều khiển hành vi của cửa sổ Terminal, không phải hành vi shell / chuyển động.
Jason Salaz

5

Trong iTerm2, bạn giữ phím alt (trái hoặc phải) và nhấp để di chuyển con trỏ đến bất kỳ vị trí nào trên bất kỳ dòng nào.


3

Nếu bạn đặc biệt quan tâm đến chuyển động trong Vim, thì bạn có thể thêm set mouse=avào ~/.vimrctệp của mình .

Nó không hoạt động trong iTerm cho phong trào. Nó cũng cho phép bạn đánh dấu các phần như thể bạn đã vào chế độ trực quan, để bạn có thể kéo hoặc xóa nó hoặc nhận xét mã tùy thuộc vào plugin của bạn.

Rất thuận tiện, nó cũng cho phép bạn nhanh chóng cuộn qua một tài liệu lớn bằng cách trượt hai ngón tay hoặc bánh xe chuột.

Hạn chế duy nhất là nó gây khó khăn cho việc chọn văn bản mà bạn muốn sao chép để sử dụng trong các ứng dụng khác, mặc dù tất cả những gì bạn phải làm là nhấn optiontrong khi bạn chọn.

Ngoài ra: lưu ý rằng, nếu bạn thêm một cái gì đó như vimpager (cũng trên macports), thì bạn cũng có thể cuộn qua các trang man sau khi bạn thêm:

export PAGER=/opt/local/bin/vimpager #or wherever vimpager is installed
alias less=$PAGER

để của bạn .profilehoặc .bashrc.

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.