vim e appunti di sistema


9

Posso catalogare un file, copiare e incollare il testo con il pulsante centrale o MAIUSC-insert.

Come posso copiare il testo in VIM e incollarlo dagli Appunti di sistema?


a volte lo uso sed -n5,10pper stampare le linee 5-10 in modo da poter copiare e incollare più facilmente senza che vim reagisca al mouse.
grantbow,

in realtà dall'interno di :!sed -n 5,10p %
VIM

Grazie per tutti i commenti e le risposte. xclip è utile a volte, grazie @ sergiy-kolodyazhnyy. Quando lavoro su macchine diverse a volte non ho il controllo su quale vim è installato ma avere le istruzioni per controllare la risposta di @muru è utile, grazie @ ashutosh-tripathy. Ho bisogno di usare i comandi del registro vim più spesso per ricordarli quando ne ho bisogno. Come ho già detto nella domanda precedente, se voglio farlo rapidamente e il file è piccolo, il comando all'interno di :!cat %
VIM

Risposte:


12

È necessario avere Vim con l' clipboarde xtermclipboardcaratteristiche compilato. In Ubuntu, questi sono disponibili solo con i pacchetti vim (GUI vim-gnome, vim-gtk, vim-athena, ecc).

Una volta installato uno di questi, è possibile copiare (e incollare) i registri degli appunti ( *e +). Da questo post molto informativo su Vi e Vim :

Per i sistemi basati su X11 (es. Linux e la maggior parte degli altri sistemi simili a UNIX ) ci sono 2 appunti, che sono indipendenti l'uno dall'altro:

  • PRIMARY: copia su selezione e può essere incollato con il pulsante centrale del mouse.
  • CLIPBOARD - Questo viene copiato (di solito) ^Ce incollato con ^V(È come MS Windows).

Vim ha 2 registri speciali corrispondenti a questi appunti:

  • *usa PRIMARY; mnemonico: s tar is s elect (per copy-on- s elect)
  • +usa CLIPBOARD; mnemonico: CTRL + C (per il keybind comune)

Per copiare in un registro, si precede il comando copia ( y) con "e il nome del registro ( *, ad esempio). "*y, quindi fai clic con il pulsante centrale per incollare oppure "+ye ShiftInsertper incollare.


3

Una soluzione abbastanza interessante viene da questa domanda. Installa xclip, quindi invia l'output di un comando a xclip ( cat file | xclip -selection clipboardad esempio), quindi incollalo ovunque (se è nel terminale, usa Ctrl ShiftV ). Ora, a xclip -sel clipquanto pare, puoi effettivamente accorciare quel comando , il che non è esattamente evidente dalla lettura della pagina man o degli esempi lì.


2
Un'altra soluzione è se usi screen o tmux, insieme a questo plugin . In ogni caso, è necessario installare qualcosa.
muru,

Quali sono gli appunti effettivi utilizzati in x server? Non ho trovato nulla /dev, ma il testo è ancora contenuto da qualche parte, giusto?
Sergiy Kolodyazhnyy,

Ho sempre pensato che sarebbe stato nella memoria. Sembra una bella domanda per Unix e Linux .
muru,

3

Ho avuto un problema perché il mio vim non supportava gli appunti :

vim --version | grep clip
-clipboard       +insert_expand   +path_extra      +user_commands
+emacs_tags      -mouseshape      +startuptime     -xterm_clipboard

Ho installato vim-gnome (che supporta gli appunti) e poi ho controllato di nuovo:

vim --version | grep clipboard
+clipboard       +insert_expand   +path_extra      +user_commands
+emacs_tags      +mouseshape      +startuptime     +xterm_clipboard

Ora sono in grado di copiare e incollare usando rispettivamente "+ y e" + p.

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.