簡體   English   中英

在 Ubuntu 下使用 snap 時如何將 nvim 添加到 update-alternatives

[英]How do I add nvim to update-alternatives when using snap under Ubuntu

我想將 nvim(一個快照)添加到update-alternatives 問題是 snap 在確定運行哪個程序時似乎以神秘的方式工作:

$ sudo update-alternatives --install /usr/bin/vim vim /snap/bin/nvim 60

$ vim # works

$ vim hello.txt
error: unknown command "hello.txt", see 'snap help'.

如果我查看/snap/bin/nvim它是指向/usr/bin/snap的鏈接:

$ ls -lah /snap/bin/nvim
lrwxrwxrwx 1 root root 13 Jan 25 15:02 /snap/bin/nvim -> /usr/bin/snap

但是 snap 可執行文件如何確定它需要運行 nvim

為了像這樣使用它,您必須創建一個啟動 nvim 的腳本,如下所示:

#!/usr/bin/env bash
/usr/bin/snap run nvim ${@}

假設您將其稱為 nvim_start.sh。 現在您可以在 update-alternatives 命令中使用此腳本(請記住啟用執行標志):

CUSTOM_NVIM_PATH=/usr/bin/nvim_start.sh
sudo chmod +x "${CUSTOM_NVIM_PATH}"
set -u
sudo update-alternatives --install /usr/bin/ex ex "${CUSTOM_NVIM_PATH}" 110
sudo update-alternatives --install /usr/bin/vi vi "${CUSTOM_NVIM_PATH}" 110
sudo update-alternatives --install /usr/bin/view view "${CUSTOM_NVIM_PATH}" 110
sudo update-alternatives --install /usr/bin/vim vim "${CUSTOM_NVIM_PATH}" 110
sudo update-alternatives --install /usr/bin/vimdiff vimdiff "${CUSTOM_NVIM_PATH}" 110
sudo update-alternatives --set ex "${CUSTOM_NVIM_PATH}"
sudo update-alternatives --set vi "${CUSTOM_NVIM_PATH}"
sudo update-alternatives --set view "${CUSTOM_NVIM_PATH}"
sudo update-alternatives --set vim "${CUSTOM_NVIM_PATH}"
sudo update-alternatives --set vimdiff "${CUSTOM_NVIM_PATH}"

我不確定為什么使用 /snap/bin/nvim 不起作用,即使從腳本內部調用也是如此。 至少解決方法可以正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM