ฉันจะทำให้ gx รู้จัก URL แบบเต็มเป็นกลุ่มได้อย่างไร


19

โดยค่าเริ่มต้นถ้าบัฟเฟอร์ในกลุ่มมี 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 เต็มหรือไม่?


ฉันไม่สามารถทำซ้ำได้ด้วย vim 7.4 บน linux พารามิเตอร์ถูกส่งไปยัง firefox อย่างถูกต้องเมื่อใช้ 'let g: netrw_browsex_viewer =' firefox 'สำหรับฉัน
PhilippFrank

@PhilippFrank ตัวอย่าง URL ใช้งานไม่ได้สำหรับฉัน (Vim 7.4, Linux) ... ไม่ว่าในกรณีใดโซลูชันของฉันคือการเลือก URL ในโหมดภาพแล้วใช้gx(ซึ่งไม่เหมาะ แต่ดีกว่าการคัดลอก / วาง )
Martin Tournoij

1
letมันเป็นตัวแปรไม่ได้ตัวดังนั้นคุณจำเป็นต้องใช้
Martin Tournoij

1
ฉันไม่สามารถทำซ้ำได้ด้วย GVim 7.4 บน Windows และ Chrome URL gxทั้งหมดที่คุณกล่าวถึงว่าจะเปิดโดย
Gonçalo Ribeiro

1
ยืนยันข้อผิดพลาดของ OP พยายามกับ VIM 7.4.473 และ 7.4.663 พยายามจากบัญชีผู้ใช้แบบพิเศษ (ไม่มี.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จะเลือก (ลองใช้viWสตริงใน VIM)

จากเอกสาร: <cWORD> is replaced with the WORD under the cursor


คำแนะนำ: การใช้งานgxในโหมดภาพมันจะเปิดสตริงที่เลือกด้วยภาพ (ไม่ว่าจะมีการกำหนดค่าข้างต้น)


พฤติกรรมที่แปลกประหลาดอื่น: เมื่อ URI ลงท้ายด้วย a /จะเป็นการดาวน์โหลดครั้งแรก (พร้อมcurl) แล้วเปิดขึ้น การลบส่วนท้าย/URI จะถูกเปิดในเบราว์เซอร์โดยตรง
user569825

2
"ชื่อพา ธ " ถูกกำหนดโดย'isfname'ตัวเลือกซึ่งไม่รวม?เป็นอักขระชื่อไฟล์ที่ถูกต้องตามค่าเริ่มต้น การเปลี่ยนตัวเลือกนี้ต้องใช้ความระมัดระวังเนื่องจากไม่สามารถตั้งค่าโลคัลเป็นบัฟเฟอร์ได้ เว้นแต่ NetRW มีการเปลี่ยนแปลงตัวเลือกนี้แล้วที่อธิบายว่าทำไม URL gxที่ตรวจการณ์จะไม่ได้ทำงานกับ อาจมีความแตกต่างในเวอร์ชัน NetRW ที่ใช้ซึ่งจะอธิบายพฤติกรรมที่แตกต่างของ Carpetsmoker ที่เห็น
jamessan
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.