Ouvrir l'URL sous le curseur dans Vim avec le navigateur
Je suis en utilisant Twitvim pour la première fois. Voir toutes les Url dans il m'a fait me demander, est-il possible d'ouvrir l'URL sous le curseur de votre navigateur préféré ou un autre?
- en vertu du curseur de texte ou le curseur de la souris?
- curseur de texte ... mais si vous connaissez un moyen de le faire sous le curseur de la souris qui serait cool aussi
- bouton central de la souris cliquez sur un lien dans vim a toujours travaillé pour moi, je ne sais pas comment, mais
- moyen-cliquez pour ouvrir est probablement une des fonctionnalités du terminal, pas de vim.
Vous devez vous connecter pour publier un commentaire.
Mise à jour: à partir de tpope du tweet aujourd'hui
Appuyez sur
gx
. Vous pouvez personnaliser le navigateur. Sur Gnome et Mac OS X, c'est déjà l'utilisationgnome-open
/open
. En général, vous pouvez définirg:netrw_browsex_viewer
pour tout ce que vous voulez.Réponse originale à cette question:
Ne me souviens pas où je reçois cette fonction. Il y a un bug avec le dièse (#) dans l'url, mais la fonction fonctionne assez bien que je ne vais pas la peine de le réparer.
Remarque: Si vous n'êtes pas sur le Mac, utilisez
gnome-open
/xdg-open
pour Linux, ou " chemin d'accès de votre navigateur pour Windowsgx
est si puissant, merci! Il ouvre aussi les fichiers avec les applications appropriées™.gx
?Si vous utilisez Vim 7.4 ou plus tard, en mode normal, placez votre curseur en dessous de l'URL, puis cliquez sur
gx
, l'URL sera ouvert dans le navigateur automatique:h netrw_gx
: * pour Windows 32 ou 64, l'url et FileProtocolHandler dll sont utilisés. * pour Gnome (avec gnome-open): gnome-open est utilisé. * pour KDE (avec kfmclient) : kfmclient est utilisé * pour Mac OS X : ouvrez est utilisé. * sinon, le netrwFileHandler plugin est utilisé.J'utilise ce script pour rechercher gooogle pour
keyword
sous le curseur:Vous devez utiliser
getline('.')
etmatchstr()
pour extraire l'url sous le curseur. Le reste est le même.Ok, donc en utilisant les réponses de @tungd et @kev et un peu de recherche, j'ai fini avec ce script, qui fonctionne exactement de la façon dont j'en ai besoin. Comme @tungd dit le # peut donner un problème si l'intérieur d'une url, mais je suis cool avec ça, si quelqu'un a une meilleure expression de l'url alors il sera bien accueilli.
Je suis assez tard pour cette partie, mais voici une autre façon de faire qui fonctionne particulièrement bien sur Windows 7.
Installer les deux vim-shell et vim-misc dans vim je recommande de faire cela via toujours génial Agent pathogène plugin et ensuite simplement
cd ~/vimfiles/bundle & git clone [email protected]:xolox/vim-misc.git & git clone [email protected]:xolox/vim-shell.git
de msysgit. (Ces deux plugins ouvrir les url dans votre navigateur par défaut sans créer de supplémentaires invites de commande ou d'autres non-sens ridicule généralement nécessaire dans windows. Vous pouvez ouvrir les url dans Vim comme ceci::Open http://duckduckgo.com
. Essayez-la. Vous l'aimerez.)Créer des vim mappages de sorte que vous pouvez obtenir rapidement de la ligne sous le curseur dans le navigateur. J'avais cette carte à u (pour moi, c'est
,u
du mode normal). Voici comment:nnoremap u :exec "Ouvrir ".getline(".")
À l'utilisation de cette cartographie, le type de votre Chef de file de la clé du mode normal + u. Il faut lire la ligne sous le curseur et l'ouvrir dans votre navigateur par défaut.
Ajoutez la ligne suivante à la .fichiers vimrc:
Donc en mode normal en appuyant sur \ il sélectionne le mot en cours et l'ouvrir comme adresse dans un navigateur web.
Leader par défaut est \ (mais je l'ai associé à , avec
let mapleader = ","
). De même, en utilisant imap vous pouvez mapper certains séquence de touches dans le mode insertion (mais alors, si c'est 2 séquence de touches, il en sera probablement de remplacer certains comportement par défaut).Vous devriez jeter un coup d'œil rapide à ce plugin vim
henrik/vim-ouvert-url
C'est essentiellement ce qui a été expliqué dans d'autres réponses, mais la configuration spécifique nécessaire si vous utilisez un gestionnaire de plugin 🙂
C'est une sorte de version améliorée du script proposé à l'origine par @tungd ici https://stackoverflow.com/a/9459366/7631731.
Garde vim contexte et gère correctement les URL contenant "#".