ปิดการใช้งานปลั๊กอินบางตัวชั่วคราวโดยใช้เชื้อโรคในกลุ่ม


96

ฉันคิดว่าฉันมีจุดบกพร่องในหนึ่งปลั๊กอิน ฉันต้องการโหลดเฉพาะปลั๊กอินนี้โดยไม่ต้องลบบันเดิลอื่น ๆ ทั้งหมดในโฟลเดอร์บันเดิลของเชื้อโรคเพื่อดีบัก

เป็นไปได้ไหม?

คำตอบ:


129

วิธีที่ง่ายที่สุดในการปิดใช้งานปลั๊กอินเมื่อคุณใช้เชื้อโรคคือการเพิ่มชื่อบันเดิลลงในตัวแปร g: pathogen_disabled ก่อนที่จะเริ่มก่อโรค

ดังนั้นตัวอย่างจาก vimrc ของฉันเอง

" To disable a plugin, add it's bundle name to the following list
let g:pathogen_disabled = []

" for some reason the csscolor plugin is very slow when run on the terminal
" but not in GVim, so disable it if no GUI is running
if !has('gui_running')
    call add(g:pathogen_disabled, 'csscolor')
endif

" Gundo requires at least vim 7.3
if v:version < '703' || !has('python')
    call add(g:pathogen_disabled, 'gundo')
endif

if v:version < '702'
    call add(g:pathogen_disabled, 'autocomplpop')
    call add(g:pathogen_disabled, 'fuzzyfinder')
    call add(g:pathogen_disabled, 'l9')
endif

call pathogen#infect()

อัปเดต : อีกวิธีหนึ่งที่ Pathogen รองรับคือเพียงแค่เปลี่ยนชื่อไดเร็กทอรีสำหรับบันเดิลที่คุณต้องการปิดใช้งานเพื่อให้ลงท้ายด้วยเครื่องหมายตัวหนอน (~) ดังนั้นการปิดการใช้กำเพียงแค่เปลี่ยนชื่อไปautocomplpopautocomplpop~


1
ดูเหมือนว่ากลยุทธ์ tilde จะใช้งานไม่ได้ในขณะนี้ (ในเวอร์ชัน 2.3)
echristopherson

6
@echristopherson ตอนนี้ควรจะกลับมาอยู่ในเชื้อโรคแล้วอย่างน้อยก็ในสาขา dev
FDinoff

8
ขณะที่2.4มันจะกลายเป็นg:pathogen_blacklistแทน
Yuri Ghensev

36

vim -u NONE -Nจะโหลดเป็นกลุ่มโดยไม่มีปลั๊กอินโดยไม่มีการตั้งค่าจาก. vimrc ของคุณ จากนั้นคุณสามารถ:source /path/to/plugin/you-want.vimเข้าไปในกลุ่มเพื่อโหลดปลั๊กอินที่คุณต้องการโหลด


+1. frabjous นี่เป็นคำแนะนำที่ดี แต่ฉันเชื่อว่าวิธีการของ @ Herbert นั้นเหมาะกับสถานการณ์ของฉันมากกว่าเนื่องจากฉันมี ftplugin มากมายและเช่นนั้น ขอบคุณสำหรับคำตอบวิธีแก้ปัญหาของคุณคือใช้ในกล่องที่ฉันไม่สามารถติดตั้งเชื้อโรคได้
ยังมีใครใช้ MS-DOS คุณใน

คุณยังสามารถเริ่มเป็นกลุ่มเป็นกลุ่มvim -u NONE -Nแล้วอีกครั้งในกลุ่มทำ:filetype plugin onเพื่อเปิดใช้งานปลั๊กอินประเภทไฟล์
frabjous

9

กลุ่ม --noplugin

ในกรณีนี้ vim จะไม่โหลดปลั๊กอินใด ๆ แต่จะใช้ vimrc ของคุณ

หลังจากที่คุณสามารถโหลดปลั๊กอินของคุณในกลุ่ม:

: แหล่งที่มา 'เส้นทางปลั๊กอินของคุณ'


3

ทำไมไม่เพียง:

  1. เปลี่ยนชื่อไดเร็กทอรีบันเดิลปัจจุบัน
  2. สร้างไดเร็กทอรีบันเดิลว่างใหม่
  3. ใส่ไฟล์ปลั๊กอินทดสอบของคุณลงใน Bundle dir ใหม่หรือไม่

เมื่อทำเสร็จแล้วให้ทุกอย่างกลับมาเหมือนเดิม (วิธีการที่แนะนำในการโหลด Vim โดยไม่ต้องใช้ปลั๊กอินและการจัดหาไฟล์ปลั๊กอินจะใช้งานได้หากเป็นปลั๊กอินไฟล์เดียวแบบธรรมดา แต่ถ้าคุณกำลังทำ ftplugin การย้ายไดร์ไปรอบ ๆ น่าจะเป็นวิธีที่ดีที่สุดและไม่ยากนัก)


+1. ง่ายและมีประสิทธิภาพเพียงแค่ย้ายโฟลเดอร์ทั้งหมดไปยังโฟลเดอร์ชั่วคราว
ยังมีใครใช้ MS-DOS คุณใน

2

คุณสามารถเปลี่ยนชื่อปลั๊กอินเฉพาะได้โดยใส่เครื่องหมายทิลเดอ ~หลังชื่อเดิม ทุกโฟลเดอร์ปลั๊กอินภายในกลุ่มที่มีเครื่องหมายทิลเดอ ~ที่ท้ายจะไม่ถูกโหลดโดยเชื้อโรค

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.