Opzione + clic in iTerm


16

In Terminale, Opzione + clic mi consente di posizionare il cursore in qualsiasi punto della riga corrente, ideale per la modifica di comandi molto lunghi.

Come posso farlo in iTerm2?

Aggiornamento: secondo questa pagina , la funzionalità è disponibile da 0.7.0 (2003). Ho anche notato che se tengo premuto Comando + Opzione, il cursore si trasforma nella croce familiare come in Terminale ... ma il clic continua a non riposizionare il cursore.


Ho dato un'occhiata al codice sorgente e sì, la funzionalità era disponibile in 0.7.0 di iTerm (non iTerm2). Ma è commentato (nel file PTYSession.m) nel trunk (e probabilmente anche nelle versioni precedenti). E iTerm2 la funzione è ancora lì ma vuota e quindi non fa nulla.
Boretom,

Risposte:


6

Mi chiedevo "How Hard Can It Be (c)" per implementarlo e ho provato oggi.

Terminal.app sembra emulare le sequenze ESC 'sposta cursore a sinistra / destra'. Sentirai il famoso 'beep' se provi a posizionare il cursore nel prompt della shell. E lo sentirai tante volte quante sono le mosse non valide.

La soluzione in iTerm2 funziona allo stesso modo invocando le sequenze ESC appropriate. Anche se emette un segnale acustico solo una volta se si tenta di posizionare il cursore in un'area non valida;)

Terminal.app sembra non essere in grado di gestire i prompt multilinea, ma solo il passaggio sull'ultima riga sembra funzionare. I prompt multilinea in questa implementazione devono essere gestiti correttamente.

I risultati possono essere trovati su github . È una forcella dell'originale con una richiesta pull in sospeso. Il ramo su cui lavoro è chiamato 'option-click-hardcoded'.

E ovviamente è altamente non testato. Ciò significa che ho testato solo da me sul mio MacBook Pro di fine 2007 con Mac OS X 10.7.3.

Se vuoi provarlo compilandolo tu stesso o scarica il binario precompilato per i386 / x86_64 / ppc iTerm_v1.0.0.git-085ec22c.zip ).


wow, grandi cose! il binario precompilato sembra funzionare bene fino alla fine, ma lo terrò d'occhio. Grazie mille!
Jeff

404 non trovato ...
aeroxy,

1
Ehi @aeroxy, quel cambiamento è stato unito molto tempo fa in iTerm a monte ( github.com/gnachman/iTerm2/pull/77 ). Qualche tempo fa ho rimosso il mio fork poiché era l'unico che esisteva.
Boretom,

@boretom allora sembra che il mio iterm2 3.1.5.beta.1 abbia ancora problemi simili. Sembra che quando faccio Opzioni-clic si passa all'ultimo comando (freccia su). apple.stackexchange.com/questions/305554/…
aeroxy,

@aeroxy, se funziona alla perfezione con 3.1.5.beta2 sul mio macOS 10.12.6 con "Opt-Click sposta il cursore" selezionato in Preferenze> Puntatore. Si tratta di posizionare il cursore sulla riga corrente. È quello che cerchi di raggiungere?
Boretom,

2

iTerm 2 non è una nuova versione di iTerm - sebbene basato sullo stesso codice sorgente, ci sono importanti cambiamenti sotto il cofano. Una delle cose che è stata rimossa o rotta (difficile parlare con l'intenzione dello sviluppatore) era il posizionamento del cursore.

Non sei il solo a notare questa omissione; è stato archiviato come bug da aprile 2011 e continua ad attirare l'attenzione. La tua migliore opzione per ottenere questa funzione (oltre a crearla su GitHub o passare a un'altra applicazione) è inviare un commento sul sito di Google Code sopra. Speriamo che con abbastanza interesse, questa funzione tornerà nel prodotto.




1

L'ultima versione di iterm2 (sto usando Build 2.9.20150812-nightly) ha questa funzione, ma per funzionare con più linee devi abilitare l'integrazione della shell come descritto su https://gitlab.com/gnachman/ iterm2 / issues / 3638 .

Per installare l'ultimo iTerm, uso brew ed eseguo quanto segue:

brew tap caskroom/versions && brew cask install iterm2-nightly


1

La mia risposta è stata testata nel 2019 con iTerm2.

Vai su Impostazioni> Profili, seleziona il profilo desiderato (può essere quello predefinito, dovrai ripeterlo per ognuno), seleziona la scheda "Chiavi" e cambia il comportamento dei tasti Opzione SINISTRA e DESTRA (alt) a Esc +

inserisci qui la descrizione dell'immagine

Questo è in realtà nelle loro FAQ:

D: Come posso fare in modo che l'opzione / il tasto alt si comporti come Meta o invii codici di escape? A: Vai su Preferenze> scheda Profili. Seleziona il tuo profilo a sinistra, quindi apri la scheda Tastiera. Nella parte inferiore è presente una serie di pulsanti che consente di selezionare il comportamento del tasto Opzione. Per la maggior parte degli utenti, Esc + sarà la scelta migliore.

BONUS

Se stai chiedendo di Opzione (Alt) + clic, suppongo che desideri che anche l'opzione (Alt) + Backspace funzioni.

Nella stessa UI (pannello Chiavi), fai clic sul pulsante "Carica preimpostazione" e scegli "Modifica del testo naturale". Ripeti l'operazione per ognuno dei tuoi preset.

Ora avrai sia Opzione + clic che Opzione + backspace funzionanti.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.