Bagaimana cara melompat ke lokasi menggunakan mouse di iTerm / terminal?


43

Saya bekerja di terminal sebagian besar waktu.

Apakah ada aplikasi / plugin lebih dari iTerm atau terminal lain seperti aplikasi yang menggunakan yang saya dapat mengontrol lokasi kursor terminal saya menggunakan mouse?


Apa yang ingin Anda lakukan pada kursor?
user151019

1
Saya ingin melompat ke kursor. Gunakan case, Jika saya memiliki garis panjang yang dibatasi oleh ruang, saya ingin melompat ke lokasi tertentu. menggunakan keyboard membutuhkan banyak penekanan tombol.
Sairam

Jika Anda sudah menggunakan Terminal, Anda mungkin menghargai keyboard. Pelajari pintasan keyboard untuk melompat ke garis depan / belakang, dan menavigasi dengan kata, dan itu akan menghemat banyak penekanan tombol dan mungkin lebih cepat daripada mouse.

1
Lihat juga apple.stackexchange.com/a/217167/24565 untuk info tentang opsi mouse untuk tmux
Michael Durrant

Jawaban:


52

Setidaknya di Terminal.app Anda dapat menahan optionsambil mengklik untuk melompat di dalam baris Anda saat ini (itu sebenarnya berarti hanya baris, jadi jika prompt Anda saat ini begitu lama sehingga membungkus ke input baris kedua Anda harus- optionklik ke awal baris "kedua" dan kemudian lompat dengan tombol panah ke baris "pertama" di mana Anda dapat optionmengklik-lagi.)


1
Klik opsi, menarik. Tidak pernah tahu itu sebelumnya. Pastikan untuk mengklik pada baris, sial. Saya bahkan tidak mengerti apa yang terjadi ketika saya mengklik di atas / di bawah garis saat ini. Saya menganggap itu menekan beberapa kali, tapi saya cukup yakin sejarah perintah tidak persis cocok.
Jason Salaz

Ya, itu hanya membaca jumlah kolom di mana saja Anda mengklik dan melompat ke posisi itu di baris (!) Saat ini; jadi jika Anda berada di akhir prompt yang terbungkus (katakanlah baris 2: kolom 45) dan Anda klik opsi pada sesuatu di baris pertama (katakanlah baris 1: kolom 4) Anda akan berakhir di kolom 4 (hebat) tetapi akan tetap di jalur 2 (salah!).
Asmus

2
Cara Opsi-Klik berfungsi adalah bahwa ia mengeluarkan setara dengan input tombol panah. Ini berfungsi dengan baik di editor seperti emacs, tetapi jika Anda berada di bash command prompt, ini mengartikan naik / turun sebagai "perintah sebelumnya / selanjutnya dalam sejarah". Jadi, jika Anda Option-Klik di mana saja kecuali baris yang sama yang berisi prompt, bash melewati histori perintah Anda alih-alih memindahkan kursor.
Chris Page

Bekerja di iTerm2.
Ahmet Alp Balkan

9

Sudah cukup lama sejak pertanyaan ini muncul dan saya sudah menyebutkan di bawah ini pada platform ini di Option-klik di iTerm dan pelacak masalah iTerm2 tapi mungkin itu membantu untuk satu atau yang lain:

Hai, hanya ingin memberi tahu Anda bahwa saya menerapkan fitur itu di iTerm2. Ini belum dalam repo resmi iTerm2 tetapi jika Anda ingin mencobanya, Anda dapat menemukannya di github .

Karena ini hanya diuji oleh saya anggap tidak stabil. Saya mengujinya dengan bash, vi dan emacs dan melakukan yang terbaik untuk menyerupai perilaku Terminal.app.

Ada biner yang sudah dikompilasi di github juga iTerm_v1.0.0.20120312.git-b919985b.zip (untuk i386 / x86_64 / ppc).

Tentu saja ada umpan balik.


Apakah pelaporan mouse rusak pada rilis terakhir? Ini tidak lagi berfungsi untuk saya, saya tidak melihat kursor "o" dan saya tidak tahu bagaimana mendapatkannya kembali.
Michael

Saya ambil itu kembali. Pelaporan mouse tidak hanya berfungsi dalam beberapa kasus - misalnya, jika Anda ssh ke komputer lain, maka lampirkan sesi tmux yang sudah menjalankan emacs. Ini digunakan untuk bekerja. Sekarang Anda kadang-kadang harus keluar dari emacs dan memulai kembali sebelum pelaporan mouse berfungsi ...
Michael

Tampaknya hanya pergi ke posisi mana saja di jalur saat ini. Apakah mungkin untuk mengklik opsi di mana saja pada perintah aktif?
Skeleton Bow

6

Keyboard sering kali merupakan teman terbaik Anda. Dalam konfigurasi default, shell Anda mengontrol banyak cara Anda menavigasi di sekitar command prompt.

Option+ bmengembalikan kata (kursor akan berakhir pada huruf pertama dari kata sebelumnya).

Option+ fmeneruskan kata (kursor akan berada pada karakter non-huruf SETELAH kata berikutnya).

Shift+ Fn+ Left Arrow (←)akan meletakkan kursor di awal baris. ( Ctrl+ ajuga akan melakukan ini.)

Shift+ Fn+ Right Arrow (→)akan meletakkan kursor di akhir baris. ( Ctrl+ ejuga akan melakukan ini.)

Jadi jika saya memiliki perintah yang panjang, misalnya:

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

Dan saya mulai memukul Option+ b, kursor akan berhenti di sebuah di daerah, yang o di output, d dalam penyebaran, dll

Jika saya pergi ke awal baris, dan mulai menekan Option+ f, kursor akan berhenti di spasi setelah rsync, ruang setelah avz, ruang setelah kemajuan, / setelah situs, dll.


Saya suka solusi sadar "masalah XY" Anda. Meskipun tidak menjawab pertanyaan awal, ini merupakan alternatif yang sangat layak. Apakah sengaja tetapi terkadang Anda mengatakan CMD + b dan opsi + b?
Cornelius Roemer

1
Tidak, itu kesalahan saya. Perintah seharusnya tidak pernah digunakan di sini karena yang mengontrol perilaku terminal Window, bukan perilaku shell / gerakan.
Jason Salaz

5

Di iTerm2 Anda menahan alt (kiri atau kanan) dan klik untuk memindahkan kursor ke posisi apa pun di baris mana pun.


3

Jika Anda secara khusus tertarik pada gerakan di Vim, maka Anda dapat menambahkan set mouse=ake ~/.vimrcfile Anda .

Itu berfungsi di iTerm untuk pergerakan. Ini juga memungkinkan Anda untuk menandai bagian seolah-olah Anda telah memasuki mode visual, sehingga Anda dapat menarik atau menghapusnya atau mengomentari kode tergantung pada plugin Anda.

Sangat nyaman juga memungkinkan Anda dengan cepat menggulir dokumen besar menggunakan slide dua jari atau roda mouse.

Satu-satunya kelemahan adalah sulitnya memilih teks yang ingin Anda salin untuk digunakan dalam aplikasi lain — meskipun yang harus Anda lakukan adalah menekan optionsaat Anda memilih.

Juga: perhatikan bahwa, jika Anda menambahkan sesuatu seperti vimpager (juga di macports), maka Anda juga dapat menggulir halaman manual begitu Anda menambahkan:

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

untuk Anda .profileatau .bashrc.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.