Como criar um link simbólico para / usr / bin / vim, mas com os parâmetros de inicialização?


13

Depois que make&make installvim da fonte, encontrei muitos links simbólicos do vim /usr/local/bin, como evim, rvim, view ...

A vim(1)página de manual dizia que "rvim" é equivalente a "vim -Z" e assim por diante.

Agora me pergunto: posso estabelecer um vínculo tão simbólico ln(1)comigo mesmo e, se sim, como?


1
Você quer dizer make && make install? Apenas um &seria compilado em segundo plano e tentaria instalar em primeiro plano.
Kevin

@ Kevin É uma questão de hábito, eu acho.
Bigeast

Respostas:


25

Você não pode sem escrever um pouco de código.

Esses atalhos de link simbólico funcionam porque vimsão escritos dessa maneira. Ele analisa como (com qual nome) foi iniciado e age como se tivesse sido chamado com as opções de linha de comando apropriadas.
Esse comportamento é codificado no executável, não é um truque feito pelo link simbólico.

Então, se você quer fazer isso mesmo, o mais fácil é escrever um pequeno script que execs vimcom as opções que você deseja:

#!/bin/sh
exec vim <options you want> "$@"

O "$@"final simplesmente passa as opções de linha de comando fornecidas ao script para o vim.


5

Você pode fazer isso de maneira indireta através da configuração do shell. Algo como

alias big_vim='gvim -p -geom 126x512'

funcionaria no bash / zsh. Ele permite que você personalize as coisas sem mexer no sudo / root.


1
bashA propósito, isso não funcionará ... O alias deve ser definido alias big_vim='gvim -p -geom 126x512'.

2

Você não pode fazer isso.

O VIM verifica seu caminho de execução no início, por exemplo, vinculando o binário original ao rvim, o caminho de execução se torna /path/to/rvim, nesse caso, o VIM adicionará o -Zparâmetro automaticamente, mesmo que você não tenha especificado isso.

Mas se você estiver executando apenas o VIM no terminal, deverá:

Para o bash, adicione um alias ao ~ / .bashrc

alias vim='vim -Z'

Mude o parâmetro para atender às suas necessidades.

Para csh / tcsh, remova o =símbolo,

por exemplo alias vim vim -Z

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.