Recompile o VIM com opções

14

Eu tenho o VIM instalado, mas preciso compilá-lo com opções específicas:

In addition to the most commonly used features, the plugin
       requires: +python or +python3, +clientserver and +conceal.

Quais são as etapas para desinstalar e recompilar essas opções sem interromper nada?

bdeonovic
fonte

Respostas:

14

Primeiro, você precisa obter o código fonte, mais fácil através do repositório Mercurial do Vim ; veja vim.org para detalhes.

Então, você precisa de um ambiente de construção e das bibliotecas dev , especialmente para o Python desejado. Isso depende muito da plataforma. No Ubuntu / Debian, é um simples

$ sudo apt-get build-dep vim-gnome

Uma pesquisa na Internet lhe dirá mais.

Para compilar com os recursos, você os passa para

$ ./configure --enable-pythoninterp --enable-python3interp

Observe atentamente sua saída de detecção.

Por fim, você pode compilar e instalar:

$ make
$ sudo make install

Isso (no Linux) instalará o Vim /usr/local/bin/vim, para que não interfira no padrão /usr/bin/vime você não precise desinstalar nada; apenas certifique-se de que o primeiro seja o primeiro no seu PATH.

Ingo Karkat
fonte
Isso instalará as opções + clientserver e + ocultar também? É um pouco frustrante não saber quais sinalizadores --enable instalam as opções que eu quero.
Bdonovic
Outra coisa que você pode fazer é salvar a configuração de compilação que você tem agora com este comando vim --version > vim-version.orige compará-la com a saída de vim --versiondepois de re-compilar o vim. Isso informará se há algum recurso que você costumava ter que não foi incluído na versão recompilada.
precisa saber é
@garyjohn é uma boa dica! O problema para mim foi não saber que bandeiras do configure iria instalar os recursos apropriados
bdeonovic
1
Por padrão, "a maioria" dos recursos está ativada (se as bibliotecas dev estiverem lá). Para ter certeza, você pode passar --with-features=hugepara ter tudo lá.
Ingo Karkat
2
Os pacotes vim-gnomee vim-gtkinstalam o Vim com tudo o que você precisa.
Romainl
16

Quando você compila o vim, pode passar a opção / flag --with-features, por exemplo:

--with-features=huge

Isso determinará quais recursos estão incluídos na instalação. Uma lista de todos os recursos pode ser encontrada aqui ( http://vimdoc.sourceforge.net/htmldoc/various.html ) com uma letra indicando em qual versão o recurso está incluído:

Here is an overview of the features.
            The first column shows the smallest version in which
            they are included:
               T    tiny
               S    small
               N    normal
               B    big
               H    huge
               m    manually enabled or depends on other features
             (none) system dependent
            Thus if a feature is marked with "N", it is included
            in the normal, big and huge versions of Vim.

Por exemplo, se você quisesse o recurso de idioma árabe, teria que ter --with-features=big

                            *+feature-list*

   *+ARP*       Amiga only: ARP support included

B  *+arabic*        |Arabic| language support

N  *+autocmd*       |:autocmd|, automatic commands

... etc
bdeonovic
fonte
Isto diz "Quando você compila o vim, pode passar a opção: ...". Em seguida, ele mostra a enorme opção de obter todos / a maioria dos recursos ou algo parecido. Para que exatamente eu passo essa opção? Posso ver um exemplo?
still_dreaming_1
1
A maneira padrão de instalar pacotes de origem no linux se aplica aqui. Faça o download do código-fonte, execute ./configure, execute sudo make install. É durante a ./configureetapa que você pode adicionar opções como `--with-features``. Veja a etapa 3 no github.com/Valloric/YouCompleteMe/wiki/Building-Vim-from-source
bdeonovic
0

Configurar, compilar e instalar o Vim

Instale as bibliotecas necessárias

sudo apt-get build-dep vim

Faça o download da versão mais recente do VIM no github, por exemplo

mkdir -p ./git/vim; cd ./git/vim
git clone https://github.com/vim/vim

A maneira mais prática de fazer a configuração é definir as opções de configuração diretamente no Makefile . Primeiro faça uma cópia do Makefile

cp ./src/Makefile ./src/Makefile.backup

Depois, abra as linhas ./src/Makefilee, em seguida, remova o comentário (exclua o # ) que você deseja compilar e instalar.

vi ./src/Makefile

Para adaptar recursos, você precisa editar o src/feature.harquivo

vi ./src/feature.h

É recomendável que o unix faça a escolha básica, adicionando-o ao configurecomando.

As opções básicas são:

  • minúsculo - quase nenhum recurso ativado, nem mesmo várias janelas
  • pequeno - poucos recursos ativados, o mais básico possível
  • normal - uma seleção padrão de recursos ativados
  • grande - muitos recursos ativados, o mais rico possível
  • enorme - todos os recursos possíveis ativados

Em seguida, configure o vim para aplicar suas configurações

./configure --with-features=huge

Depois basta compilar

make -j `nproc` # compile with max. number of processors

e instale-o com

sudo make install
abu_bua
fonte