Nano

編譯的 GNU/Nano:如何添加到系統編輯器列表

  • December 16, 2019

我自己編譯了 GNU/Nano 編輯器,我希望將它添加到系統編輯器列表中。

which nano

告訴我以下位置:

/usr/local/bin/nano

所以它應該是這樣的:

sudo update-alternatives --install /usr/bin/editor editor /usr/local/bin/nano 1

但我需要把碎片拼湊起來。你能幫我理解手冊嗎?

命令

--install link name path priority [--slave link name path]...

向系統添加一組備選方案。 link是主連結的通用名稱, name 是其符號連結在替代目錄中的名稱,並且path是為主連結引入的替代。後面的參數 --slave是通用名稱、替代目錄中的符號連結名稱和從屬連結的替代路徑。可以指定零個或多個--slave選項,每個選項後跟三個參數。請注意,主備用必須存在,否則呼叫將失敗。但是,如果不存在從屬替代項,則根本不會安裝相應的從屬替代項鍊接(仍會顯示警告)。如果在必須安裝替代連結的地方安裝了某些真實文件,則除非--force使用它,否則會保留它。

如果指定的替代名稱已存在於替代系統的記錄中,則提供的資訊將作為該組的一組新替代添加。否則,將使用此資訊添加一個設置為自動模式的新組。如果組處於自動模式,並且新添加的備選方案的優先級高於該組的任何其他已安裝備選方案,則符號連結將更新為指向新添加的備選方案。

查看軟體包在其中的作用postinst

update-alternatives --install /usr/bin/editor editor /bin/nano 40 \
 --slave /usr/share/man/man1/editor.1.gz editor.1.gz \
 /usr/share/man/man1/nano.1.gz

這將/bin/nano作為/usr/bin/editor(名為editor, so的替代項/etc/alternatives/editor)的替代項安裝,優先級為 40,並將nano聯機幫助頁作為聯機幫助頁的替代項進行關聯editor。這樣,選擇nano作為配置的替代項會自動設置聯機幫助頁以匹配。

當這個執行時,如果editor已經存在替代品,nano將被添加,如果替代品處於自動模式,則如果它具有最高優先級則被選中;如果沒有,替代品將在自動模式下創建,nano將被添加和選擇。

所以你可能想要類似的東西

update-alternatives --install /usr/bin/editor editor /usr/local/bin/nano 100

(假設您想自動選擇nano;我在 Debian 中看到的編輯器的最高優先級是 70,所以 100 將獲勝)。

引用自:https://unix.stackexchange.com/questions/356140