Nachdem ich make&make install
von der Quelle aus vim gemacht habe, habe ich viele symbolische Links von vim gefunden /usr/local/bin
, wie evim, rvim, view ...
Die vim(1)
Manpage sagte, dass "rvim" gleichbedeutend ist mit "vim -Z" und so weiter.
Jetzt frage ich mich: Kann ich eine solche symbolische Verbindung mit ln(1)
mir selbst herstellen, und wenn ja, wie?
make && make install
? Nur eine&
würde im Hintergrund kompilieren und versuchen, im Vordergrund zu installieren.Antworten:
Sie können nicht ohne ein bisschen Code schreiben.
Diese Symlink-Verknüpfungen funktionieren, weil sie
vim
so geschrieben sind. Es zeigt an, wie (mit welchem Namen) es gestartet wurde und verhält sich, als ob es mit den entsprechenden Befehlszeilenoptionen aufgerufen worden wäre.Dieses Verhalten ist in der ausführbaren Datei fest codiert. Es ist kein Trick, den der symbolische Link ausführt.
Also , wenn Sie das selbst tun wollen, ist die einfachste einen kleinen Wrapper - Skript zu schreiben , dass
exec
svim
mit den gewünschten Optionen:Das
"$@"
am Ende übergibt einfach alle Befehlszeilenoptionen, die dem Skript gegeben wurden, an vim.quelle
Sie können dies auf Umwegen über Ihre Shell-Konfiguration tun. Etwas wie
würde in bash / zsh arbeiten. Damit können Sie Dinge anpassen, ohne sich mit sudo / root herumschlagen zu müssen.
quelle
bash
übrigens nicht ... Der Alias sollte stattdessen definiertalias big_vim='gvim -p -geom 126x512'
werden.Das kannst du nicht machen.
VIM prüft den Ausführungspfad beim Start, z. B. durch Verknüpfen der ursprünglichen Binärdatei mit rvim.
/path/to/rvim
In diesem Fall fügt VIM den-Z
Parameter automatisch hinzu, auch wenn Sie dies nicht angegeben haben.Wenn Sie VIM jedoch nur im Terminal ausführen, sollten Sie:
Fügen Sie für bash einen Alias zu ~ / .bashrc hinzu
alias vim='vim -Z'
Ändern Sie den Parameter entsprechend Ihren Anforderungen.
Entfernen Sie für csh / tcsh das
=
Symbol,z.B
alias vim vim -Z
quelle