Sök…


Anmärkningar

En plugin är ett skript eller uppsättning skript som ändrar Vims standardbeteende, antingen genom att lägga till icke-befintliga funktioner eller genom att utöka befintliga funktioner.

Ofta tillagda "icke-befintliga funktioner" inkluderar:

  • kommentera,
  • indragningsdetektering,
  • automatisk komplettering,
  • fuzzy-matchning,
  • stöd för ett specifikt språk,
  • etc.

Ofta utökade "befintliga funktioner" inkluderar:

  • omni-fullbordan,
  • textobjekt & rörelser,
  • yanking & putting,
  • statusrad,
  • sök & ersätt,
  • buffert / fönster / tabbsida växling,
  • hopfällbar,
  • etc.

Hur plugins fungerar

En plugin kan presentera sig som en enda fil som innehåller 30 rader med vimscript eller som 20 MB vimscript / python / ruby / vad som delas upp i många filer över ett dussin kataloger som beror på ett antal externa verktyg.

Den förstnämnda är uppenbarligen lätt att installera och hantera men den senare kan pausa en ganska utmaning.

Principen

'runtimepath' säger Vim var man ska leta efter runtime-skript. Standardvärdet gör att Vim letar efter skript till följande kataloger i ordning :

  • på UNIX-liknande system

    • $HOME/.vim/
    • $VIM/vimfiles/
    • $VIMRUNTIME/
    • $VIM/vimfiles/after/
    • $HOME/.vim/after/
  • på Windows

    • $HOME/vimfiles/
    • $VIM/vimfiles/
    • $VIMRUNTIME/
    • $VIM/vimfiles/after/
    • $HOME/vimfiles/after/

Av katalogerna ovan installerar du bara plugins i de med fetstil. De andra kommer att orsaka instabilitet utan goda skäl. Att installera ett plugin kommer att lägga till var och en av dess komponenter i rätt katalog under $HOME/.vim/ eller $HOME/vimfiles/ .

Den manuella metoden

Plugin för en fil

Sätt filen under $HOME/.vim/plugin eller $HOME/vimfiles/plugin

Detta skulle komma från plugin vid start av Vim. Nu kan användaren använda allt definierat i det. Om plugin dock behöver aktiveras, måste användaren antingen köra kommandot själv när de vill använda det, eller lägga till kommandot till .vimrc

Bunt

Ett paket är en katalogstruktur som pluginprogrammet använder. Det består av alla filerna i plugin under de lämpliga underkatalogerna.

För att installera ett sådant plugin bör underkatalogerna slås samman med motsvarigheterna i $HOME/.vim/plugin . Detta tillvägagångssätt leder emellertid till blandning av filer från olika plugins i samma kataloger och kan eventuellt leda till namnutrymme.

En annan metod är att kopiera hela katalogen till $HOME/.vim/bundle .

När du använder denna metod bör det finnas minst en .vim fil under .vim $HOME/.vim/bundle/autoload . Dessa filer kommer från vim vid uppstart.

Obs: Beroende på användarens operativsystem kan prefixet för alla sökvägar vara $HOME/vimfiles . Mer information finns i Hur plugins fungerar

VAM

https://github.com/MarcWeber/vim-addon-manager

Vundle

Vundle är en plugin manager för Vim.

Installera Vundle

(Fullständig installationsinformation finns i Vundle Quick Start )

  1. Installera Git och klona Vundle i ~/.vim/bundle/Vundle.vim .

  2. Konfigurera plugins genom att lägga till följande till toppen av din .vimrc , lägga till eller ta bort plugins vid behov (plugins i listan är bara för illustrationssyften)

     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()
     " alternatively, pass a path where Vundle should install plugins
     "call vundle#begin('~/some/path/here')
    
     " let Vundle manage Vundle, required
     Plugin 'VundleVim/Vundle.vim'
    
     " All of your Plugins must be added before the following line
     call vundle#end()            " required
     filetype plugin indent on    " required
     " To ignore plugin indent changes, instead use:
     "filetype plugin on
    
     "place non-Plugin stuff after this line
    
  3. Installera plugins: genom att starta Vim och köra :PluginInstall .

Stödda pluginformat

Följande är exempel på olika format som stöds. Håll plugin-kommandon mellan vundle#begin och vundle#end .

Plugin Location Användande
plugin på GitHub Plugin 'tpope/vim-fugitive'
plugin från http://vim-scripts.org/vim/scripts.html Plugin 'L9'
Git-plugin är inte värd på GitHub Plugin 'git://git.wincent.com/command-t.git'
git repos på din lokala maskin (dvs. när du arbetar med din egen plugin) Plugin 'file:///home/gmarik/path/to/plugin'
Spim-up-vim-skriptet finns i en underkatalog av denna repo som kallas vim. Passera vägen för att ställa in runtimepathen korrekt. Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
Installera L9 och undvik en Namnkonflikt om du redan har installerat en annan version någon annanstans. Plugin 'ascenator/L9', {'name': 'newL9'}

Om du arbetar på ett delat konto, till exempel på klusterhuvudnod, kan det uppstå problem från .vim med .vim katalogen. Det finns ett par paket som tar betydande mängd diskutrymme, till exempel YCM . Så välj din Vundle plugin-katalog klokt, och det är väldigt enkelt att göra det genom att ställa in rtp . Och om du planerar att installera någon vim-plugin, gör inte direkt git clone i bundle . Använd Vundle-sättet.

Framtiden: paket

Se :help packages .

pathogen

vim-pathogen är en runtimepath manager skapad av Tim Pope för att göra det enkelt att installera plugins och runtime-filer i sina egna privata kataloger.

Installera Pathogen

  1. Lägg patogen i ~/.vim/bundle (här med Git, men det är inte obligatoriskt):

    git clone https://github.com/tpope/vim-pathogen.git
    
  2. Lägg till följande rader på toppen av din .vimrc :

     " enable vim-pathogen
     runtime bundle/vim-pathogen/autoload/pathogen.vim
     execute pathogen#infect()
    
  • direktivet om runtime specificerar sökvägen till autoload-skriptet av vim-pathogen ;
  • execute pathogen#infect() initierar det.

När den har initierats startar Pathogen automatiskt ett svep genom mapparna i ~/.vim/bundle och laddar plugin från var och en av dem.

Använda Pathogen

  1. Sätt den översta katalogen för din plugin i ~/.vim/bundle/ att göra den tillgänglig nästa gång du startar Vim.
  2. Kör :Helptags att indexera :Helptags för din nya plugin.

fördelar

  • Varje plugin finns i sin egen katalog under ~/.vim/bundle/ .
  • Din .vimrc förblir ren från den konfiguration som behövs för att ladda plugins.

Insatsen som krävs för att "hantera" ett plugin reduceras alltså till:

  • lägga sin toppnivåskatalog under ~/.vim/bundle/ att installera den,
  • byt ut sin högsta katalog för att uppdatera den,
  • ta bort dess toppkatalog för att avinstallera den.

Hur du utför dessa tre åtgärder (manuellt, via ett automatiseringsverktyg, med Git / Svn / Hg / vad som helst ...) är helt upp till dig.



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow