Shell

Aspell:如何在全球範圍內更改主目錄?

  • June 3, 2020

aspell在我家創建以下文件:

.aspell.en.prepl
.aspell.en.pws

如何在全球範圍內更改位置,即更改為$HOME/.cache/aspell

我需要$HOME/etc/aspell.conf. 我嘗試了以下方法,但似乎不起作用:

home-dir $HOME/.cache/

如何home-dir全域設置為每個使用者~/.cache目錄?

澄清

我不會aspell手動執行。諸如 Thunderbird 之類的應用程序會自行執行它。因此,使用 shell 別名並不是真正的解決方案。

其他應用程序確實在庫上使用 aspell,環境變數在這種情況下將不起作用,至少不會影響主應用程序(Thunderbird 或其他)。

我確實打了更新檔aspell來創建一個與這個問題相匹配的自定義版本,repo 在這裡,這裡是使用這個自定義版本的更新檔,你需要解除安裝系統的版本包(aspell,libaspell,aspell-

$$ en/fr/etc $$) 特別是libaspell,如果依賴項擴展到您不想刪除的其他包,您可能會強制刪除這些包。/use/local(如果您將環境變數設置為在 aspell 和 libaspell之前使用,則可以避免解除安裝系統的軟體包/usr……這可能會根據使用的發行版預設設置) 安裝:

git clone https://github.com/Intika-Linux-Apps/Aspell.git
cd Aspell
./autogen
./configure
make install

然後從這里安裝所需的字典,例如你會做的英語字典:

wget https://ftp.gnu.org/gnu/aspell/dict/en/aspell6-en-2019.10.06-0.tar.bz2
tar -xvf aspell6-en-2019.10.06-0.tar.bz2
cd aspell6-en-2019.10.06-0/
./configure
make install

筆記:

  • 這裡有一個關於這個的問題,這裡也有一個相關的討論。
  • 可以LD_PRELOAD通過注入自定義更新檔庫來實現此答案中的更新檔,該更新檔庫將更改正在執行的應用程序的目標變數值…(我需要實現該自定義庫…然後通過設置 env 來載入它. 用於 Thunderbird 或其他使用 aspell 的應用程序的變數LD_PRELOAD)… 任何方式,因為已經存在一個未解決的問題,這應該在以後成為主流。

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