Comment coller du texte de l'éditeur Vim dans le navigateur?

9

J'ai besoin de copier du texte de vim vers un navigateur Web car je ne peux pas utiliser gedit car j'ouvre un fichier sql. Comment dois-je procéder?

Harshal Kshatriya
la source
Qu'entendez-vous par «copier du texte de vim vers un navigateur Web»? Voulez-vous dire copier du texte de vim vers l' éditeur html ?
J'ai besoin de copier le texte d'un fichier ouvert dans l'éditeur vim dans une zone de texte multiligne sur une page Web dans Firefox.
Harshal Kshatriya
1
J'ai écrit cela dans vim, puis copié dans cette zone de texte en procédant comme suit: sélectionnez le texte avec shift+v, puis appuyez sur "+ypour accéder au presse-papiers du système. Le paramètre du presse-papiers de Vim est actuellement le paramètre par défaut, ce qui pour moi l'est clipboard=autoselect,exclude:cons\|linux. Cela revient à xclip, donc xclip -osur la ligne de commande devrait montrer tout ce qui a été copié. Ensuite, simplement ctrl+vdans la zone de texte.
chris.ritsen

Réponses:

7

Soit

  1. Sélectionnez le texte sans appuyer sur une touche de raccourci et cliquez avec le bouton central de la fenêtre du navigateur, ou
  2. Sélectionnez le texte, appuyez sur shift-ctrl-c puis utilisez ctrl-v pour coller, ou
  3. Je ne suis pas tout à fait sûr de ce que vim a à voir avec les fichiers sql et de la nature de ces fichiers sql (sqlite?), Mais vous devez peut-être utiliser vim car la variable d'environnement EDITOR est définie sur vim; vous pourriez peut-être faire ce que vous faites en définissant

    export EDITOR=gedit
    

    avant de démarrer le programme que vous commencez à modifier les fichiers sql.

janvier
la source
Les fichiers SQL ne sont que des fichiers texte contenant des commandes SQL en ASCII ou UTF-8. Ils n'ont généralement pas de caractères spéciaux autres que des symboles mathématiques, des parenthèses ou des guillemets.
nanofarad
Oui. Sauf lorsqu'ils ne le sont pas, par exemple lorsqu'ils sont des fichiers sqlite3. Oui, certains programmes le font. En tout cas, cela n'explique pas pourquoi l'OP ne peut pas utiliser gedit pour eux.
Janvier
Les fichiers SQLite ne portent pas cette extension de fichier et ne sont pas appelés fichiers SQL.
nanofarad
@ObsessiveFOSS Vous devriez avoir écrit « fichiers SQLite ne doivent pas porter cette extension de fichier »
Janvier
La EDITORvariable d'environnement est souvent supposée contenir le nom d'un éditeur pouvant s'exécuter sans interface graphique. Pour un éditeur comme gedit, il est généralement préférable de définir la VISUALvariable d'environnement à la place. Lorsqu'un éditeur graphique peut être utilisé, il VISUALest généralement consulté avant EDITOR. Habituellement.
Eliah Kagan du
7

Utilisez "+ y pour extraire le texte sélectionné dans votre presse-papiers Ctrl-V (" * y serait le bouton central de la souris)

Plus d'informations sur les registres à Vim

Philippe
la source
1
Pour l'utiliser "+y, vous devez d'abord vérifier la prise en charge du presse-papiers X11. Ce post a expliqué comment en détail.
47dev47null
1

vous pouvez simplement utiliser la souris (right-click+copy) and (rightclick+Paste)


la source
L'idée derrière Vim est de ne pas quitter la ligne d'accueil du clavier lorsque vous tapez. Si vous utilisez toujours la souris, je ne vois pas quels avantages vous pouvez retirer de l'utilisation de VIM.
SY_13
J'utilise Vim pour éditer le code SSH-ed à distance. J'utilise pourtant VSCode pour développer mon application.
notalentgeek
1
  1. Sélectionnez le texte à l'aide de la souris
  2. Ctrl-Maj-C (Notez le décalage )
  3. Passez à la nouvelle fenêtre où vous souhaitez coller
  4. Ctrl-V
deshmukh
la source
1
  1. Sélectionnez le texte que vous souhaitez copier à l'aide du mode visuel dans l'éditeur Vim. vpasse en mode visuel et sélectionne le caractère à l'emplacement du curseur. Shift-vsélectionne toute la ligne.

  2. Dans Vim, la copie se fait en utilisant le you "yanking" . Pour copier le texte sélectionné dans le presse-papiers du système, tapez "+yen mode normal . Vous pouvez maintenant le coller n'importe où ailleurs en utilisant Ctrl-v.

  3. Pour copier du texte à partir d'applications externes dans l'éditeur Vim, copiez d'abord le texte à l'aide de la Ctrl-Ccommande habituelle, puis accédez à l'éditeur Vim et tapez "+pen mode normal .

  4. Je trouve les commandes ci-dessus très fastidieuses à taper chaque fois que je fais du copier-coller depuis l'extérieur de Vim, j'ai donc mappé le Ctrl-ycopier et le Ctrl-pcoller dans Vim. Maintenant, je n'ai plus à taper "+yet à "+pchaque fois.

Ajoutez-les à votre .vimrcfichier:

nnoremap <C-y > "+y vnoremap <C-y> "+y nnoremap <C-p> "+p vnoremap <C-p> "+p

Modifier: avant de suivre les étapes ci-dessus, vérifiez que vim --verison.Vim doit avoir une +xterm_clipboardfonctionnalité installée pour que la méthode ci-dessus fonctionne. Sinon, lancez-vous sudo apt-get install vim-gtkpour obtenir les packages nécessaires.

SY_13
la source
Remarque: Il s'agit d'une question non liée, mais quelqu'un sait-il ce que <Csignifie Markdown. J'ai essayé d'entrer le code ci-dessus dans une citation de bloc mais le <C-y>disparaissait toujours du bloc de code.
SY_13
0

J'ouvrirais le fichier dans le navigateur en utilisant une URL de fichier:

file:///home/dave/some-file

Pas super élégant mais ça marche.

Big McLargeÉnorme
la source