По умолчанию, если буфер в vim содержит URL-адрес, например http://www.google.com
, gxв обычном режиме откроется браузер с этим URL-адресом. Это очень удобно. Однако если URL имеет параметры URL (например http://www.google.com/search?q=stuff
), то параметры URL пропускаются (то есть просто http://www.google.com/search
открывается).
Я использую MacVim 7.4 patch 183, с Chrome в качестве основного браузера (на OS X 10.9).
Есть ли простой способ, в идеале с минимальной настройкой, чтобы gxраспознать полный URL?
external-command
netrw
Эндрю Ферье
источник
источник
gx
(что не идеально, но лучше, чем копировать / вставить ).let
.gx
..vimrc
), с разными терминалами (urxvt
,sakura
) и разными браузерами (g:netrw_browsex_viewer
установлен на'uzbl-browser'
/'firefox'
/'google-chrome'
.Ответы:
Как отмечает @Carpetsmoker в своем комментарии,
g:netrw_gx
определяет, что будет считаться частью URI.По умолчанию установлено значение
"<cfile>"
. Из документов (:help <cfile>
):<cfile> is replaced with the path name under the cursor
Это ускользает от меня, почему части параметров (т. Е.
?
) URL игнорируются как части «имени пути», но я, наконец, решил установить следующее в качестве своего решения:Теперь это включает в себя все,
W
что выберет. (ПопробуйтеviW
строку в VIM.)Из документов:
<cWORD> is replaced with the WORD under the cursor
Подсказка: при использовании
gx
в визуальном режиме откроется визуально выбранная строка (независимо от указанной выше конфигурации).источник
/
, он сначала загружается (с помощьюcurl
), а затем открывается. Удаляя завершающий символ/
, URI открывается непосредственно в браузере.'isfname'
параметром, который?
по умолчанию не является допустимым символом имени файла. Изменение этого параметра требует осторожности, поскольку его нельзя установить локально для буфера. Если NetRW не меняет эту опцию, это объясняет, почему URL-адреса OP не работаютgx
. Возможно, есть разница в используемых версиях NetRW, что объясняет другое поведение, которое видит Carpetsmoker.