Définissez iTerm2 comme gestionnaire ssh: // URL


44

Actuellement, Terminal est configuré pour gérer les URL SSH. Par exemple, si je le fais:

$ open ssh://machine.example.com

Ensuite, il va générer une nouvelle session SSH dans le terminal. J'aimerais plutôt que ceux-ci soient ouverts dans iTerm2. Comment dire à macOS d'utiliser iTerm2 pour gérer les URL ssh: // au lieu de Terminal?


iTerm peut le faire par défaut maintenant, mais si vous souhaitez prendre en charge des fonctionnalités plus avancées, montrez votre intérêt sur le ticket gitlab.com/gnachman/iterm2/issues/5813 .
sorin

Réponses:


54

iTerm2 peut se définir comme gestionnaire SSH par défaut. Dans ses préférences, allez dans «Profils». Créez un profil pour gérer les sessions SSH ou sélectionnez-en un existant. Dans la section «Général», en bas à droite, vous pouvez sélectionner le schéma d'URL que ce profil doit gérer:

Capture d'écran des préférences iTerm2, section Général du volet Profils

Sélectionnez SSH. iTerm2 vous demandera s'il doit se configurer en tant que gestionnaire SSH par défaut:

Capture d'écran de iTerm2 demandant la confirmation de se configurer comme gestionnaire SSH par défaut

Confirmez et vous avez terminé. Bonne remoting.


OK, maintenant je dois trouver un moyen de faire en sorte que iTerm ouvre une nouvelle fenêtre au lieu d'un nouvel onglet, mais c'est une question distincte ...
Lorin Hochstein

1
L'interface est toujours la même mais les changements ne semblent jamais prendre effet pour moi. Est-ce que cela devrait toujours être la bonne réponse ou est-ce qu'il y a un bogue dans la version actuelle (v2.1.4)?
Jeff

2
Semblable à @Jeff, je constate que le changement ne prend effet que pendant très peu de temps (voire pas du tout). Puis Terminal reprend à nouveau.
Stefanfoulis

1
Vous devez également définir Prefs> Profils> Général> Commande sur $$.
user2551

J'ai eu le même problème de @ stefanfoulis; ce correctif a fonctionné, ce qui revient essentiellement à réinitialiser la base de données LaunchServices:/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -all local,system,user
Tommaso

0

Assurez-vous que vous avez fait glisser l'application iTerm2 dans le dossier Applications. Si vous définissez iTerm2 comme gestionnaire de terminal SSH, il ne sera ni enregistré ni utilisé. Il semble que lorsque vous appelez le gestionnaire, celui-ci ne recherche que dans les applications. S'il ne le trouve pas, le gestionnaire de système sera utilisé par défaut. Je l'utilisais depuis Téléchargements et cela ne sauverait jamais le gestionnaire SSH. Lorsque je l'ai déplacé vers Applications, il ouvre iTerm2 pour le gestionnaire SSH à chaque fois.


Cela ne semble pas fonctionner sur El Capitan. J'ai iTerm sous / Applications / mais je dois cliquer deux fois ou plus sur le schéma d'URL pour obtenir l'invite de dialogue vous demandant de définir iTerm comme paramètre par défaut. Il fonctionne alors exactement une fois avant de revenir à l'ouverture dans Terminal.
iandouglas

@iandouglas je suis la question sam. Avez-vous trouvé une solution?
J Spen

@ j-spen Je ne l'avais pas essayé récemment, mais juste essayé $ open ssh://hostname.comici au travail et il est resté dans iTerm2. C'est peut-être un bug qu'ils ont corrigé? Je suis sur iTerm2 build 3.0.10 sur El Capitan et cela semble fonctionner correctement pour moi maintenant. J'ai même créé un lien href sur une page pour aller à "ssh: //nom_utilisateur@hostname.com" et Chrome m'a incité à ouvrir l'application associée. Il s'est ensuite dirigé vers iTerm 2.
iandouglas
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.