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?
:!sed -n 5,10p %
:!cat %
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?
:!sed -n 5,10p %
:!cat %
Risposte:
È necessario avere Vim con l' clipboard
e xtermclipboard
caratteristiche 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)
^C
e 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 "+y
e ShiftInsertper incollare.
Una soluzione abbastanza interessante viene da questa domanda. Installa xclip, quindi invia l'output di un comando a xclip ( cat file | xclip -selection clipboard
ad esempio), quindi incollalo ovunque (se è nel terminale, usa Ctrl ShiftV
). Ora, a xclip -sel clip
quanto pare, puoi effettivamente accorciare quel comando , il che non è esattamente evidente dalla lettura della pagina man o degli esempi lì.
/dev
, ma il testo è ancora contenuto da qualche parte, giusto?
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.
sed -n5,10p
per stampare le linee 5-10 in modo da poter copiare e incollare più facilmente senza che vim reagisca al mouse.