Ersetzen Sie das vi des Terminals durch vim im Fenster für Root

Ersetzen Sie das vi des Terminals durch vim im Fenster für Root

Ich verwende Mac OS X, aber ich vermute, dass dies bei anderen Unix-Versionen genauso ist.

Jedes Mal, wenn ich etwas viauf dem Terminal tippe, möchte ich die GUI-Version von Vim öffnen (unter Mac OS heißt sie mvim).

Für meinen Benutzer hat es funktioniert, indem ich einen Alias ​​zu meinem ~/.profile hinzugefügt habe:

alias vi='mvim'

Aber wenn ich muss sudo vi, öffnet es das vi des Terminals, weil der Alias ​​nicht festgelegt ist.

Ich habe versucht, den Alias ​​für den Root-Benutzer auf festzulegen, /etc/profileaber das hat nicht funktioniert. Ich habe auch versucht, /usr/bin/vieinen symbolischen Link auf zu erstellen mvim, aber das hat auch nicht funktioniert.

Wie kann ich es erreichen, dass jedes Mal, wenn ein Benutzer (einschließlich Root) etwas viauf dem Terminal eingibt, das Vim-Fenster geöffnet wird?

Antwort1

/etc/profilesudo ...wird meines Wissens beim Ausführen nicht ausgewertet und das Problem mit dem symbolischen Link ist das mvimSkript. Wenn Sie es sich ansehen, enthält es diese Zeilen:

# GUI mode, implies forking
case "$name" in m*|g*|rm*|rg*) gui=true ;; esac

Da Sie es mit sudo videm Namen gestartet haben, sind die Kriterien für den Start im GUI-Modus nicht erfüllt.

Sie könnten diese beiden Zeilen einfach durch ersetzen, um gui = trueden GUI-Modus zu „erzwingen“, aber ich bin nicht sicher, was dadurch sonst noch beschädigt werden könnte.

verwandte Informationen