ความแตกต่างระหว่างตัวจัดการปลั๊กอิน vim คืออะไร?


197

ฉันได้ดูผู้จัดการแพคเกจที่แตกต่างกันสำหรับเสียงเรียกเข้าและคนที่ฉันตัดสินใจใช้vim-plugแต่ฉันได้เห็นคนอื่น ๆ เช่นเชื้อโรคและvundleและฉันก็ไม่รู้เหมือนกันว่าอะไรคือความแตกต่าง

ใครสามารถให้ภาพรวมสั้น ๆ เกี่ยวกับความแตกต่างเพื่อที่ฉันจะได้ตัดสินใจว่าอะไรดีที่สุดสำหรับฉัน


คำตอบ:


142

vim-plugเป็นทางเลือกที่ดีสำหรับ Vundle มันต่างจากมุมมองทางเทคนิคเล็กน้อยซึ่งควรทำให้เร็วขึ้น ( ดูสิ่งนี้ ) มันมีคุณสมบัติส่วนใหญ่ (หรือทั้งหมด) ของ Vundle

  • ขั้นตอนการอัพเดตแบบขนานสำหรับกลุ่มใด ๆ+ruby, +pythonหรือ Neovim กลับไปสู่โหมดต่อเนื่องโดยใช้ Vimscript หากไม่มีให้บริการ
  • การโหลดที่ขี้เกียจเพื่อการเริ่มต้นที่รวดเร็วขึ้น ( ดูนี้ )
  • ติดตั้งปลั๊กอิน
  • อัปเดตปลั๊กอิน
  • ตรวจสอบ / ปรับปรุงย้อนกลับ
  • รองรับระบบ OSX, Linux & UNIX และ MS Windows
  • hooks หลังการอัพเดทเช่นทำการคอมไพล์ YCM ใหม่โดยอัตโนมัติ

วิธีเริ่มใช้งาน:

curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

และใน vimrc ของคุณ:

call plug#begin()
Plug 'tpope/vim-sensible'

" On-demand loading
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
call plug#end()

จากนั้นให้คำสั่ง

:PlugInstall

เพื่อติดตั้งปลั๊กอินที่ระบุไว้


1
ขอบคุณสำหรับคำแนะนำ; ฉันเคยต่อต้านรถตักก่อนหน้านี้เพราะฉันชอบโหลดของฉันมีกำลังใจ สิ่งหนึ่งที่ไม่ชัดเจนที่ฉันต้องทำการวิจัยคือ:PlugInstallปลั๊กอินใหม่ แม้แต่เอกสารอย่างเป็นทางการยังคลุมเครือเล็กน้อย
msw

7
ในขณะที่ฉันชอบ vim-plug โปรดระวังว่ามันจะเปลี่ยนค่าเริ่มต้นบางส่วนซึ่งคุณอาจพบว่าน่าแปลกใจ / สับสนgithub.com/junegunn/vim-plug/issues/379
laktak

สำหรับ Windows, vim มีหมายเลขเวอร์ชันของโฟลเดอร์เช่น vim81 สำหรับ vim 8.1 ในขั้นตอนแรกเมื่อใช้ขดให้แน่ใจว่าโฟลเดอร์นั้นถูกและไม่ได้..\vim81\autoload\.. ..\.vim\autoload\..
สตีเฟ่นจาค็อบ

56

เชื้อโรคนั้นง่าย เป็นหลักมันเพิ่งจะ:

  • ปลั๊กอิน autoload จากโฟลเดอร์
  • สร้างแท็กช่วยเหลือสำหรับปลั๊กอินเหล่านี้

ข้อดี:

  • ที่เรียบง่าย

จุดด้อย:

  • ทุกอย่างอื่นทำด้วยตนเอง (ติดตั้งอัปเดตลบ ฯลฯ )
  • ไม่มีการโหลดขี้เกียจ

ที่จะติดตั้งดาวน์โหลดpathogen.vimไป~/.vim/autoload:

mkdir -p ~/.vim/autoload ~/.vim/bundle && \
curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim

และเพิ่มไปยัง.vimrc:

call pathogen#infect()
call pathogen#helptags() "If you like to get crazy :)

หากคุณไม่ชอบที่จะคลั่งไคล้เพียงโทร:Helptagsเมื่อคุณต้องการ

~/vim/bundleปลั๊กอินที่มีการเพิ่มแล้ว


20
เพียงเพื่อให้ชัดเจนเชื้อโรคไม่ได้เป็นผู้จัดการปลั๊กอิน สิ่งที่มันทำคือจัดการ runtimepath แค่นั้นแหละ. ปลั๊กอินใด ๆ ที่คุณเพิ่มใน ~ / .vim / bundle (เช่นตำแหน่งเริ่มต้นคุณสามารถเปลี่ยนแปลงได้) มันเพิ่มไฟล์ปลั๊กอินลงใน runtimepath ของ vim เพื่อให้สามารถเข้าถึงได้ การติดตั้งอัปเดตและลบด้วยตนเองนั้นไม่ได้เป็นปัญหาหากคุณไม่มีปลั๊กอินจำนวนมากติดตั้งอยู่ นอกจากนี้เมื่ออัปเดตปลั๊กอินคุณสามารถเลือกดึงเฉพาะเซ็ตย่อยของการเปลี่ยนแปลงและไม่อัปเดตเป็นปลั๊กอินเวอร์ชันล่าสุดซึ่งให้การควบคุมมากมายแก่คุณ
akshay

1
@AkshayHegde ใช่เมื่อฉันเริ่มเขียนคำตอบ Vundle ฉันต้องกลับไปแก้ไข "ตัวจัดการปลั๊กอิน" จากคำตอบนี้ เรื่องที่สองเกี่ยวกับการต่อต้านนั่นเป็นเหตุผลที่ฉันยังคงใช้มันต่อไปแทนที่จะทำอย่างอื่น
muru

1
vim-pandemicเป็นส่วนเสริมที่ดีของ Pathogen มันจัดการที่เก็บระยะไกลที่อยู่เบื้องหลังปลั๊กอินออกจากเชื้อโรคเพื่อจัดการ runtimepath นี่หมายความว่าเราต้องการเครื่องมือสองอย่าง แต่สำหรับงานที่แตกต่างกันซึ่ง "ควร" ได้รับการจัดการแยกกัน ข้อดีของ Pathogen + Pandemic ที่ฉันพบว่าน่าเชื่อถือมากที่สุด: ไม่จำเป็นต้องจัดการกับโมดูลย่อย git สำหรับการรวมกลุ่ม
jalanb

2
ฉันใช้เชื้อโรคเป็นตัวโหลดปลั๊กอิน แต่ฉันใช้ submodules git เพื่อควบคุมเวอร์ชันของปลั๊กอินแต่ละตัว ดังนั้นวิธีการที่เรียบง่ายมันทำงานได้ดีสำหรับกรณีการใช้ของฉัน ผู้จัดการรายอื่นจัดการการอัปเดตเวอร์ชันและปลั๊กอินอย่างไร
Martin York

2
@JaDogg โอ้มาจากREADME : "โดยปกติ Vim คาดหวังให้คุณเรียกใช้: helptags ในแต่ละไดเรกทอรีพร้อมเอกสารประกอบ (เช่น: helptags ~ / .vim / doc) ให้กับ pathogen.vim คือ: คำสั่ง Helptags ที่ทำสิ่งนี้ ในทุก ๆ ไดเรกทอรีใน 'runtimepath' ของคุณถ้าคุณอยากบ้าคุณสามารถเรียก Helptags ใน vimrc ของคุณได้ฉันไม่ชอบที่จะคลั่งไคล้ " ฉันจะบอกว่าถ้าคุณมีปลั๊กอินจำนวนมากนี่อาจทำให้การเริ่มต้นช้าลงเล็กน้อย และคุณไม่จำเป็นต้องเรียกใช้ทุกครั้งที่เริ่มต้นครั้งเดียวสำหรับการติดตั้ง / อัปเกรดปลั๊กอินแต่ละครั้งควรจะเพียงพอ
muru

43

Vundleมีความซับซ้อนมากขึ้น มันเป็นผู้จัดการแพคเกจà la aptหรือyumสำหรับปลั๊กอิน มันสามารถ:

  • ค้นหาดัชนีปลั๊กอิน
  • อัปเดตปลั๊กอิน
  • สร้าง helptags โดยอัตโนมัติ
  • เก็บไว้ แต่ไม่ได้ใช้ปลั๊กอินในโฟลเดอร์ autoload
  • ทำความสะอาดปลั๊กอินที่ไม่ได้ใช้
  • ทำงานบน Linux, OSX และ MS Windows

ติดตั้ง:

git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim

แล้วเพิ่มใน.vimrc:

set nocompatible              " be iMproved, required
filetype off                  " required

" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()

" let Vundle manage Vundle, required
Plugin 'gmarik/Vundle.vim'

" more Plugin commands
" ...
call vundle#end()            " required
filetype plugin indent on    " required

ในการติดตั้งปลั๊กอินให้ใช้Pluginคำสั่งใน.vimrc(ตัวอย่างเพิ่มเติมเกี่ยวกับ Github README):

" plugin on Github
Plugin 'tpope/vim-fugitive'
" plugin from http://vim-scripts.org/vim/scripts.html
Plugin 'L9'

จากนั้นโทร:PluginInstallจาก.vim(หรือvim +PluginInstall +qall)


README NeoBundle ที่คุณเชื่อมโยงเพื่อบอกว่าโครงการนี้เลิกใช้แล้วในความโปรดปรานของgithub.com/Shougo/dein.vim
Jonathan Hartley

@ JonathanHartley "มืด" ขับเคลื่อนได้หรือไม่ ฉันคิดว่าฉันควรจะเห็นว่ามา
muru

13

dein.vim : จากการติดตามของคำถามนี้ฉันจะเพิ่มตัวจัดการปลั๊กอินที่สร้างโดย Shougo ที่รู้จักกันดีที่นี่

ตาม README ปลั๊กอินมีการขึ้นต่อกันดังต่อไปนี้:

  • Vim >7.4 or neovim: ในขณะที่การรักษา Vim ให้ทันสมัยเป็นสิ่งที่ดีอาจเป็นปัญหาสำหรับผู้ใช้บางรายที่ไม่รองรับรุ่นก่อนหน้า
  • git: ซึ่งค่อนข้างธรรมดาสำหรับผู้จัดการแพ็คเกจ
  • rsync: ซึ่งไม่ธรรมดาเหมือนคอมไพล์

ผู้เขียนอ้างว่ามันเร็วกว่า NeoBundle ถือเป็นเกณฑ์มาตรฐานที่สามารถพบได้ในหน้า readme ของโครงการ

หนึ่งในแนวคิดเดิมของผู้จัดการปลั๊กอินนี้ก็คือว่ามันไม่ได้ให้คำสั่งใด ๆ แต่ฟังก์ชั่นเท่านั้น: ตัวอย่างเช่นการอัปเดตปลั๊กอินของคุณคุณไม่สามารถใช้สิ่งที่ชอบคุณจะต้องโทร::PlugUpdate :call dein#update()บอกตามตรงฉันไม่พบคำอธิบายของตัวเลือกการออกแบบนี้

นอกจากนี้บางคนสร้างปลั๊กอินที่ให้คำสั่ง "หายไป" เหล่านี้ ฉันไม่รู้ว่านี่เป็นความคิดที่ดีหรือไม่ตรงกับแนวคิดหลักของตัวจัดการปลั๊กอิน แต่ผู้เขียนกล่าวถึงในคำถามที่พบบ่อยของไฟล์ doc

Dein.vim รองรับการรับปลั๊กอินจาก Github (ด้วยการอำนวยความสะดวกในการเข้าถึงปลั๊กอินจาก vimscript.org) และจากไดเรกทอรีท้องถิ่น

ตัวจัดการปลั๊กอินมีคุณสมบัติแบบคลาสสิกบางอย่างเช่นการอัปเดตและปิดใช้งานปลั๊กอิน นอกจากนี้ยังช่วยให้การดำเนินการของ hooks ในเวลาติดตั้ง

โปรดทราบว่าตามคำถามที่พบบ่อยดูเหมือนว่าคุณจะต้องสร้าง helptagsของปลั๊กอินที่ติดตั้งด้วยตนเอง

ประเด็นที่น่าสนใจคือผู้เขียนต้องการให้ dein.vim ง่ายต่อการทดสอบและบำรุงรักษาดังนั้นที่เก็บจึงมีสคริปต์ทดสอบบางส่วน

ในที่สุดฉันจะบอกว่าตัวจัดการปลั๊กอินนี้ดูเหมือนว่าจะออกแบบให้มีน้ำหนักเบาและรวดเร็วซึ่งน่าสนใจ แต่ฉันคิดว่ามันใช้งานง่ายกว่าvim-plugหรือVundleเป็นต้น


โอ้ด้วยเช่นกัน Shougo อธิบาย dein.vim เป็น"ตัวจัดการปลั๊กอินของ Vim / Neovim ที่มืดมิด"ถ้าใครรู้ว่ามันหมายถึงอะไรรู้สึกอิสระที่จะแก้ไขคำตอบนี้: ฉันอยากรู้ ;-)


1
"Dark powered" เป็นวลีที่คุณจะพบในปลั๊กอิน vim ของ Shougo ที่มีการสนับสนุน / หรือสำหรับ NeoVim เท่านั้น
Yonsy Solis

8
ฉันคิดว่าวลี "Dark powered" มาจาก "ผู้ใช้ Light Vim" - ผู้ที่ใช้เฉพาะคุณสมบัติเริ่มต้นและ "ผู้ใช้ Dark Vim" - ผู้ที่พยายามใช้เป็น IDE หรืออย่างน้อยใช้ปลั๊กอินจำนวนมากและมีจำนวนมาก ของบรรทัดที่เพิ่มลงในไฟล์ vimrc ของพวกเขา (เพิ่มเติมเกี่ยวกับที่นี่ในการนำเสนอของShougo - slideshare.net/Shougo/lets-talk-about-neovim - สไลด์ 6)
lewiatan

1
@lewiatan: ขอบคุณฉันคิดว่าคุณได้รับคำตอบที่ถูกต้อง (การนำเสนอที่น่าสนใจของ
Shougo

1
@statox Shougo กล่าวว่า : "Dein.vim ยังใช้การคำสั่งในการใช้งานฟังก์ชันซึ่งอาจช่วยให้เกิดการทำงานได้ด้วย (ฉันไม่แน่ใจ)
Alexej Magura

1
@statox, Lulz ไม่มีคำพูดเหล่านั้นอาจไม่ใช่คำพูดของ Shougo ดังนั้นฉันจึงไม่ได้ตระหนักว่ามันไม่ใช่บล็อกของเขา
Alexej Magura

13

ทั้ง Vim 8.0 และ Neovim มีตัวจัดการแพ็คเกจในตัวเอง ใน Vim 8.0 ให้สร้างไดเร็กตอรี่ต่อไปนี้: .vim/pack/*/start, *ชื่อใดที่คุณต้องการใช้; .vim/pack/jimmy/startเช่น

โคลนปลั๊กอินของคุณลงในไดเรกทอรีเริ่มต้นเช่นเดียวกับที่คุณทำถ้าคุณใช้เชื้อโรค

ด้วย Neovim ไดเรกทอรีจะมีความยาวน้อยกว่า:

.local/share/nvim/site/pack/*/start. จากนั้นทำเช่นเดียวกันสำหรับเป็นกลุ่ม

ไม่จำเป็นสำหรับปลั๊กอินตัวจัดการอื่น ๆ เลย

ใน Vim หรือ Neovim ให้เรียกใช้:h packagesรายละเอียดเพิ่มเติมเล็กน้อย อ่านส่วนเกี่ยวกับสีเพราะมันแตกต่างกัน แต่ไม่มาก คุณไม่จำเป็นต้องมีคำแนะนำเพิ่มเติมในไฟล์.vimrcของคุณnvim/init.vim

หวังว่าจะช่วย


8

ฉันชอบVAMโดยเฉพาะอย่างยิ่งสำหรับการปรับใช้งานด้วยตนเอง: สิ่งที่คุณต้องการคือของคุณ.vimrcและจากนั้นเริ่มเป็นกลุ่ม

ดังนั้นคุณไม่จำเป็นต้องมีTo Installบรรทัดที่ใช้โดยตัวจัดการปลั๊กอินอื่น ๆ ส่วนใหญ่ (ขั้นตอนแรกของการติดตั้งตัวจัดการปลั๊กอินเอง)


6

เท่าที่ฉันกังวลฉันต้องการผู้จัดการปลั๊กอินที่ฉันใช้เพื่อสนับสนุนการอ้างอิง

เหตุผลก็คือฉันยังคงมีปลั๊กอินหลายตัวและฉันมีการพึ่งพาระหว่างกันมากมาย: มีการใช้ไลบรารี่ทั่วไป, เอ็นจิ้น template / snippet ถูกใช้โดยชุด C ++, ปลั๊กอิน refactoring ยังใช้ ctags library-plugin และอื่น ๆ การขอให้ผู้ใช้ปลายทางดำเนินการถึง 10 บรรทัดเพื่อติดตั้งปลั๊กอินที่พวกเขาสนใจไม่ปรากฏว่าเป็นทางออกที่ดีสำหรับฉัน

จนถึงตอนนี้ผมเพียง แต่รู้ของทั้งสองปลั๊กอินดังกล่าวเป็นกลุ่ม-addon ผู้จัดการและNeoBundle VAM ได้แยกรหัสฐานข้อมูลเป็น vim-piหลังจากการแลกเปลี่ยนหลายครั้งในรายชื่อผู้รับจดหมายอย่างเป็นทางการของ vim แนวคิดก็คือ NeoBundle (และปลั๊กอินอื่น ๆ ที่สนใจในการจัดการการพึ่งพา) สามารถใช้ประโยชน์จาก vim-pi ได้ในที่สุด

เมื่อเร็ว ๆ นี้ฉันได้พบกับรสชาติที่เป็นกลุ่มที่จัดการการพึ่งพา ในเรื่องมันตรวจสอบรุ่นปลั๊กอินเพื่อติดตั้งที่ถูกต้อง

หมายเหตุ: ตั้งแต่คำตอบเริ่มต้นของฉัน

  • การพัฒนา NeoBundle หยุดลง;
  • และในขณะที่ vim-pi อัพเดทฐานข้อมูลเป็นประจำจากปลั๊กอินบน vim.org และ VAM นั้นยังสามารถใช้เพื่อแสดงการพึ่งพาได้ดูเหมือนว่าจะไม่สามารถเพิ่มนามแฝงในฐานข้อมูล vim-pi ได้อีกต่อไป: MR / PR จะไม่ถูกรวมอีกต่อไป

AFAIK ไม่มีปลั๊กอินโคลนเหล่านี้ / ติดตั้ง / อัปเดตปลั๊กอินในพื้นหลัง / ขนาน เนื่องจากฉันไม่ได้ติดตั้งสภาพแวดล้อมที่เป็นกลุ่มใหม่หรืออัปเดตปลั๊กอินที่ฉันติดตั้งเดือนละครั้งฉันไม่สนใจเลย พวกเขาปรับปรุงหลักสูตร'helptags'ดูแล'rtp'และอื่น ๆ


vim-plugของ README มีตัวอย่างที่พูดว่า "การพึ่งพากลุ่ม" คุณลองมาแล้วหรือมันแตกต่างจากวิธีของ VAM / NeoBundle หรือไม่?
muru

ฉันพลาดการอ้างอิงกลุ่มในเอกสาร vim-plug ฉันเห็นว่าพวกเขาได้ลบความพยายามในการสนับสนุนการอ้างอิงจากฐานรหัสอย่างไรก็ตาม เกี่ยวกับการพึ่งพากลุ่มฉันไม่เห็นว่ามันจะช่วยได้อย่างไร ไม่ควรประกาศการขึ้นต่อกันของผู้ใช้ ควรจะประกาศโดยผู้เขียนปลั๊กอิน หากคุณดูที่ปลั๊กอิน lh-cpp และดูอย่างใกล้ชิดคุณจะเห็นว่าการพึ่งพาไม่ใช่สิ่งที่เป็นเส้นตรง มันเป็นกราฟเชิงที่ต้องเป็นแบบวนรอบเพื่อหลีกเลี่ยงปัญหา
Luc Hermitte

จนถึงตอนนี้ฉันใช้ VAM มานานกว่าทศวรรษแล้วและฉันก็มีความสุขกับมัน กระนั้นฉันก็ใช้รสชาติที่ดูง่ายขึ้นเพราะมันง่ายกว่ามากที่จะรวมจากเทรวิส - เพื่อทดสอบปลั๊กอินของฉัน และน่าเสียดายที่ทั้งคู่ใช้ไวยากรณ์ที่แตกต่างเพื่อประกาศการขึ้นต่อกัน
Luc Hermitte

1
FYI: การพัฒนา NeoBundle หยุดลง (ตั้งแต่ 23 กุมภาพันธ์ 2016) มันแนะนำผู้สืบทอดDein.vim (โดยผู้เขียนคนเดียวกัน) แทน
Peter V. Mørch

3

ผู้จัดการปลั๊กอินเหล่านี้ส่วนใหญ่ทำงานได้อย่างยอดเยี่ยมในการจัดการปลั๊กอิน แต่ไม่ต้องปวดหัวในการจัดการvimrcกับคุณ หากคุณมีหลายเครื่องและต้องการกำหนดค่าแบบเดียวกันVireทำให้เป็นเรื่องง่ายสุด ๆ คุณไม่จำเป็นต้องมีคอมไพล์หรือคิดออก submodules หรือความพยายามพิเศษในการติดตั้งหรือย้ายข้อมูล

  • ติดตั้ง Python ซึ่งเป็นปลั๊กอิน Vim ที่ทันสมัยที่สุดที่เขียนและจำเป็นต้องใช้ต่อไป
  • pip install vire
  • โพสต์ที่มีอยู่ของคุณvimrcลงบน Github เป็นส่วนสำคัญและรักษาไว้ที่นั่น
  • หากบน Windows vire -iเพื่อติดตั้ง Vim ล่าสุดหรือ (Neovim with -i -n)
  • ลบการเรียกฟังก์ชั่นปลั๊กอินที่มีอยู่และกำหนดความเห็นการโทรออกเพื่อติดตั้งปลั๊กอินใด ๆ " Plug 'tpope/vim-unimpaired'
  • vire gistID

จากนั้นเรียกใช้vireเมื่อใดก็ตามที่คุณต้องการvimrcให้อัปเดตหรือปลั๊กอินหรือ-iเพื่ออัปเดตแอปเช่นกัน

Vire ใช้ประโยชน์จากpackคุณสมบัติของ Vim / Neovim ในการโหลดปลั๊กอิน คุณยังสามารถใช้ตัวจัดการปลั๊กอินที่มีอยู่ของคุณต่อไป แต่ใช้ Vire เพื่อติดตั้งเฉพาะ Vim, the vimrcและตัวจัดการปลั๊กอินเองหากต้องการ


1

สำหรับผู้ที่ต้องการตัวจัดการปลั๊กอินแบบเต็มโดยใช้ Pathogen ก็มี apt-vim ด้วย คุณสามารถติดตั้งได้ด้วยcurl -sL https://raw.githubusercontent.com/egalpin/apt-vim/master/install.sh | sh (ดังที่อธิบายไว้ที่นี่: https://www.linuxsecrets.com/1715-vi-editor-tips-trick-and-secrets-into-the-vi-vim-editor-part-ii ) เมื่อติดตั้งแล้วคุณสามารถพิมพ์apt-vim installตามด้วยชื่อของที่เก็บแพคเกจคล้ายกับ Ubuntu apt package manager


1
นี่เป็นคำตอบสำหรับลิงก์เท่านั้น หากคุณสามารถเข้าไปดูรายละเอียดเพิ่มเติมเกี่ยวกับวิธีการติดตั้งและใช้ apt-vim ได้จะเป็นที่ยอมรับ
Tumbler41

ฉันอัปเดตแล้ว จริง ๆ แล้วฉันคิดว่ามันควรจะเป็นความคิดเห็นในโพสต์เกี่ยวกับ Pathogen แต่ฉันไม่มีคะแนนมากพอที่จะแสดงความคิดเห็น
Melanie Day

1
ลิงก์หายไปกับปลั๊กอิน curl URL |shนอกจากนี้ยังมีอีกปลั๊กอินที่แสดงให้เห็น ฉันจะไม่แนะนำให้ใครใช้รหัสสุ่มจากอินเทอร์เน็ต นั่นคือความปลอดภัยที่ไม่ดี
Christian Brabandt

0

ฉันกำลังมองหาวิธีใช้pathogenแต่อัปเดตอย่างง่ายดายและทำให้พกพาได้ดังนั้นบางทีbashสคริปต์อาจมีประโยชน์ (โดยใช้vim-plugฟังก์ชันการทำงาน) -

#!/bin/sh

# inspired by https://github.com/thoughtbot/dotfiles/blob/master/hooks/post-up

if [ ! -e "$HOME"/.vim/autoload/pathogen.vim ]; then
  curl -fLo "$HOME"/.vim/autoload/pathogen.vim --create-dirs \
      https://raw.githubusercontent.com/tpope/vim-pathogen/master/autoload/pathogen.vim
fi

if [ -e "$HOME"/.vim/autoload/plug.vim ]; then
  vim -E -s +PlugUpgrade +qa
else
  curl -fLo "$HOME"/.vim/autoload/plug.vim --create-dirs \
      https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
fi
vim -u "$HOME"/.vimrc.bundles +PlugUpdate +PlugClean! +qa

และจากนั้นเป็นตัวอย่าง.vimrc.bundle-

"installed via the Githubs
call plug#begin('~/.vim/bundle')
Plug 'bling/vim-airline'
Plug 'scrooloose/syntastic'
Plug 'scrooloose/nerdtree'
Plug 'tpope/vim-fireplace'
Plug 'vim-scripts/paredit.vim'
" etc

call plug#end()

"disable vim-plug sugar-- actual config should be set via .vimrc
filetype plugin indent off 
syntax on

1
คุณสามารถเพิ่มรายละเอียดลงในสิ่งนี้ได้ไหม? คำถามหลัก OP poses คือ "ใครสามารถให้ภาพรวมโดยย่อของความแตกต่าง [ในผู้จัดการแพคเกจ] เพื่อให้ฉันสามารถตัดสินใจที่ดีที่สุดสำหรับฉัน"? การส่งของคุณช่วยตอบได้อย่างไร สิ่งที่คุณเพิ่มไปยังเชื้อโรคโดยเฉพาะที่มันไม่ได้มี? สิ่งนั้น
B Layer
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.