È possibile mappare per salvare in Vim in un terminale standard? So come impostarlo nel mio vimrc ma non sono sicuro che sia possibile passarlo dal terminale a vim invece di tentare di salvare il terminale.
Sì, dovresti essere in grado di impostare una mappatura dei tasti nel tuo file .vimrc in modo che quando premi il comando - S si mappi a: w Anche qui c'è qualcos'altro da aggiungere che puoi modificare anche Mappa Ctrl-S per salvare file correnti o nuovi
Ad esempio, dovrai aggiungere una nuova scorciatoia dell'applicazione per l'app Terminale, quindi mappare il titolo del menu "Esporta testo come ..." con un altro comando da tastiera che non usi, ad es. controllo - s o ecc dovrebbe andare bene.
Quindi, interrompi il terminale mac provando a interpretare Cmd-s con ... (ancora lavorando a questo ho fatto una domanda a parte per una soluzione Permetti a Terminal.app di passare la sequenza di tasti basata sui tasti di comando ai programmi terminali )
Imposta la mappatura nel file .vimrc per mappare il comando o le chiavi meta e s alla funzione: write.
Qualcosa come questo sotto * che puoi aggiungere a .vimrc:
:map <M-s> :w<kEnter> "Works in normal mode, must press Esc first"
:imap <M-s> <Esc>:w<kEnter>i "Works in insert mode, saves and puts back in insert mode"
* È stato verificato il funzionamento sul terminale X11 su OS X Lion.
Per le persone che continuano a imbattersi in questo, ho scritto un'inversione della soluzione MrDaniel (ovvero, mappando qualsiasi MacVim / sequenza system a livello di sistema alla riga di comando vim
) e lo ha pubblicato nella sua altra domanda . È più complesso della sua soluzione, ma consente quindi (con qualche sforzo) di rimappare qualsiasi sequenza-into in qualsiasi programma da riga di comando.
Funziona bene per me, e spero che possa aiutarti anche tu. < 3
Leggi altre domande sui tag terminal