Tetapkan iTerm2 sebagai ssh: // URL handler

44

Saat ini, Terminal diatur untuk menangani url SSH. Misalnya, jika saya lakukan:

$ open ssh://machine.example.com

Kemudian akan muncul sesi SSH baru di terminal. Saya ingin ini dibuka di iTerm2 sebagai gantinya. Bagaimana saya memberi tahu macOS untuk menggunakan iTerm2 untuk menangani ssh: // URL bukan Terminal?

Lorin Hochstein
sumber
ITerm dapat melakukan ini secara default sekarang tetapi jika Anda ingin mendukung fungsionalitas yang lebih maju, tunjukkan minat Anda pada tiket gitlab.com/gnachman/iterm2/issues/5813 .
sorin

Jawaban:

54

iTerm2 dapat mengatur dirinya sebagai pengendali SSH default. Dalam preferensi, buka "Profil". Buat profil untuk menangani sesi SSH, atau pilih yang sudah ada. Di bagian "Umum", kanan bawah, Anda dapat memilih skema URL mana yang harus ditangani oleh profil ini:

Cuplikan layar preferensi iTerm2, bagian Umum panel Profil

Pilih SSH. iTerm2 akan menanyakan apakah ia ingin mengatur dirinya sendiri sebagai pengendali SSH default:

Cuplikan layar iTerm2 meminta konfirmasi untuk mengatur dirinya sebagai pengendali SSH default

Konfirmasikan dan Anda selesai. Selamat melakukan remoting.

kopischke
sumber
OK, sekarang saya harus mencari cara bagaimana membuat iTerm membuka jendela baru alih-alih tab baru, tapi itu pertanyaan terpisah ...
Lorin Hochstein
1
Antarmukanya masih sama tetapi perubahan sepertinya tidak pernah berpengaruh bagi saya. Apakah ini masih jawaban yang benar atau bug di versi saat ini (v2.1.4)?
Jeff
2
Mirip dengan @ Jeff, saya mengalami perubahan hanya berlaku untuk waktu yang sangat singkat (jika sama sekali). Kemudian Terminal mengambil alih lagi.
stefanfoulis
1
Anda juga perlu mengatur Prefs> Profil> Umum> Perintah ke $$.
user2551
Saya memiliki masalah yang sama dengan @stefanfoulis; perbaikan ini berhasil, yang pada dasarnya adalah untuk mereset LaunchServices db:/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -all local,system,user
Tommaso
0

Pastikan Anda menyeret aplikasi iTerm2 di folder Aplikasi. Jika Anda mengatur iTerm2 menjadi pengendali terminal SSH, ia tidak akan menyimpan atau menggunakannya. Tampaknya saat Anda memanggil pawang, ia hanya terlihat di Aplikasi. Jika tidak menemukannya di sana, itu akan default ke pengendali sistem. Saya menjalankannya dari Unduhan dan tidak akan pernah menyimpan pengendali SSH. Ketika saya memindahkannya ke Aplikasi, itu membuka iTerm2 untuk pengendali SSH setiap waktu.

Zampolit Boris Blokhayev
sumber
Ini sepertinya tidak berhasil pada El Capitan. Saya memiliki iTerm di bawah / Applications / tetapi saya harus mengklik Skema URL dua kali atau lebih untuk mendapatkan dialog prompt yang meminta untuk mengatur iTerm sebagai default, lalu berfungsi tepat sekali sebelum kembali membuka di Terminal.
iandouglas
@ iandouglas Saya mengalami masalah sam. Apakah Anda mengetahui cara memperbaikinya?
J Spen
@ j-spen Saya belum mencobanya baru-baru ini tetapi hanya mencoba $ open ssh://hostname.comdi sini di tempat kerja dan tetap di iTerm2. Mungkin itu bug yang mereka perbaiki? Saya menggunakan iTerm2 build 3.0.10 di El Capitan dan sepertinya berfungsi baik untuk saya sekarang. Saya bahkan membuat tautan href pada halaman untuk menuju ke "ssh: //[email protected]" dan Chrome meminta saya untuk membuka aplikasi terkait dan menuju ke iTerm 2.
iandouglas