मैं जीआईसी को पूर्ण URL को विम में कैसे पहचान सकता हूं?


19

डिफ़ॉल्ट रूप से, यदि बफर में vim में URL होता है http://www.google.com, जैसे कि gxसामान्य मोड में उस URL के साथ एक ब्राउज़र खुलेगा। यह बहुत आसान है। हालाँकि, यदि URL में URL पैरामीटर (जैसे http://www.google.com/search?q=stuff) हैं, तो URL पैरामीटर छूट गए हैं (यानी अभी http://www.google.com/searchखोला गया है)।

मैं Mac के साथ MacVim 7.4 पैच 183 का उपयोग कर रहा हूं, प्राथमिक ब्राउज़र के रूप में (OS X 10.9 पर)।

क्या एक आसान तरीका है, आदर्श रूप से न्यूनतम अनुकूलन के साथ, gxपूर्ण URL को पहचानने के लिए ?


मैं Linux पर vim 7.4 के साथ पुन: पेश नहीं कर सकता। मेरे लिए 'let g: netrw_browsex_viewer =' फ़ायरफ़ॉक्स 'का उपयोग करते समय पैरामीटर को सही ढंग से फ़ायरफ़ॉक्स में पास किया जाता है।
फिलिपफ्रैंक

@PhilippFrank उदाहरण URL मेरे लिए भी काम नहीं करता है (विम 7.4, लिनक्स) ... किसी भी स्थिति में, मेरा समाधान दृश्य मोड में URL का चयन करना है, और फिर उपयोग gx(जो आदर्श नहीं है, लेकिन कॉपी / पेस्ट से बेहतर है) )।
मार्टिन टूरनोइज

1
यह एक चर है, एक विकल्प नहीं है, इसलिए आपको उपयोग करने की आवश्यकता है let
मार्टिन टूरनोइज

1
मैं विंडोज और क्रोम पर जीवीएम 7.4 के साथ पुन: पेश नहीं कर सकता। आपके द्वारा बताए गए सभी URL बिल्कुल द्वारा खोले गए हैं gx
गोंकेलो रिबेरो

1
ओपी की त्रुटि की पुष्टि। VIM 7.4.473 और 7.4.663 के साथ प्रयास किया। की कोशिश की prestine उपयोगकर्ता खाते से (बिना .vimrc), विभिन्न टर्मिनलों (साथ urxvt, sakura() और विभिन्न ब्राउज़रों g:netrw_browsex_viewerके लिए सेट 'uzbl-browser'/ 'firefox'/ 'google-chrome'
user569825

जवाबों:


13

जैसा कि @Carpetsmoker अपनी टिप्पणी में बताते हैं, g:netrw_gxयह निर्धारित करता है कि URI का हिस्सा क्या माना जाएगा।

डिफ़ॉल्ट रूप से इसे सेट किया जाता है "<cfile>"। डॉक्स से ( :help <cfile>):

<cfile> is replaced with the path name under the cursor

यह मुझसे बचता है, क्यों? URL के पैरामीटर भागों (जैसे ) को "पथ नाम" के कुछ हिस्सों के रूप में अवहेलना किया जा रहा है, लेकिन मैंने अंत में निम्नलिखित को अपने समाधान के रूप में चुना है:

" Use whole "words" when opening URLs.
" This avoids cutting off parameters (after '?') and anchors (after '#'). 
" See http://vi.stackexchange.com/q/2801/1631
let g:netrw_gx="<cWORD>"                                                                                                                   

अब इसमें वह शामिल है जो Wभी चुनेंगे। ( viWVIM में एक स्ट्रिंग पर प्रयास करें ।)

डॉक्स से: <cWORD> is replaced with the WORD under the cursor


संकेत: दृश्य मोडgx में उपयोग करते हुए , यह नेत्रहीन चयनित स्ट्रिंग (उपरोक्त कॉन्फ़िगरेशन की परवाह किए बिना) को खोलेगा।


एक और अजीब व्यवहार: जब यूआरआई समाप्त होता है /, तो इसे पहले डाउनलोड किया जाता है (साथ curl) और फिर खोला जाता है। अनुगामी को हटाकर /, URI को सीधे ब्राउज़र में खोला जाता है।
user569825

2
"पथ का नाम" 'isfname'विकल्प द्वारा परिभाषित किया गया है, जिसमें ?डिफ़ॉल्ट रूप से मान्य फ़ाइल नाम वर्ण शामिल नहीं है । इस विकल्प को बदलने के लिए देखभाल की आवश्यकता है क्योंकि यह बफर में स्थानीय सेट नहीं किया जा सकता है। जब तक नेटआरडब्ल्यू इस विकल्प को नहीं बदल रहा है, तब यह बताता है कि ओपी यूआरएल क्यों काम नहीं करता है gx। हो सकता है कि इस्तेमाल किए जा रहे NetRW संस्करणों में अंतर हो, जो कि कार्पेटस्मोकर के अलग-अलग व्यवहार को स्पष्ट करता है।
जामसेन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.