Ora che ho capito come impostare iTerm2 come gestore di ssh: // , vorrei iTerm2 per rispondere a un URL ssh aprendo una nuova finestra invece di aprire una nuova scheda in una finestra esistente. È possibile?
Ora che ho capito come impostare iTerm2 come gestore di ssh: // , vorrei iTerm2 per rispondere a un URL ssh aprendo una nuova finestra invece di aprire una nuova scheda in una finestra esistente. È possibile?
Ero curioso dello stesso problema. Dopo revisione del codice sorgente , ho trovato in iTerm2 v1.0.0.20111020 è hardcoded per aprire un nuova sessione come una scheda se esiste già una sessione, quando riceve quasi tutti i comandi "avvia questo URL con un gestore".
Le mie abilità Xcode e Objective-C sono ancora piuttosto deboli, ma se vuoi provarlo credo che il problema sia legato al file sorgente iTermController.m . Sulle righe da 789 a 870 il metodo launchBookmark:withURL
ha il seguente codice:
// Where do we execute this command?
BOOL toggle = NO;
if (theTerm == nil) {
[iTermController switchToSpaceInBookmark:aDict];
term = [[[PseudoTerminal alloc] initWithSmartLayout:YES
windowType:[aDict objectForKey:KEY_WINDOW_TYPE] ? [[aDict objectForKey:KEY_WINDOW_TYPE] intValue] : WINDOW_TYPE_NORMAL
screen:[aDict objectForKey:KEY_SCREEN] ? [[aDict objectForKey:KEY_SCREEN] intValue] : -1] autorelease];
[self addInTerminals: term];
toggle = [term windowType] == WINDOW_TYPE_FULL_SCREEN;
} else {
term = theTerm;
}
id result = [term addNewSession: aDict withURL: url];
Sospetto che quando theTerm == nil
, addNewSession
funzioni come previsto avviando una nuova finestra, poiché attualmente non è in esecuzione. Forse puoi modificare il codice per forzare l'esecuzione del primo blocco, indipendentemente dal contenuto di theTerm
.
Spero che questo aiuti !! .. Può valere la pena presentare una segnalazione di bug o contattazione dell'autore se hai ancora problemi.