vim-jp / issues

有志で既知のバグや要望を検討・管理し、オフィシャルへの還元をしていきます。
https://vim-jp.org/
341 stars 11 forks source link

$MYVIMRC, $MYVIMDIRの値について #1435

Open iranoan opened 2 months ago

iranoan commented 2 months ago

質問の内容

dotfiles で管理する関係で、シンボリック・リンクを使っていて気がついたことがあり質問させてください

\~/.vim や ~/.config/vim が別のディレクトリのシンボリックだった場合、$MYVIMRC, $MYVIMDIR がそれぞれ

\~/dotfiles/.vim/vimrc, \~/dotfiles/.vim/ \~/dotfiles/.config/vim/vimrc, \~/dotfiles/.config/vim/

といった値になります

vimrc の中身を空にしても結果は変わらず、また後者については、環境変数に XDG_CONFIG_HOME は未定義です

ヘルプには

The $MYVIMDIR environment variable is set to the personal 'rtp' directory,

とあり、

  :echo split(&runtimepath, ',')[0]
  /home/xxx/.config/vim

となりシンボリック・リンクは展開されず、ヘルプの記載と齟齬がでる結果になってしまいます

$MYVIMRC, $MYVIMDIR も runtimepath と同じくリンクを展開しないほうが良いともうのですが、皆さんはどう思われるでしょうか?

それほど困ることはないのですが、元々は &runtimepath から $MYVIMDIR を用いてユーザー設定の分を除いてリスト・アップしようとして気が付きました

Vimのバージョン

$ vim --version
VIM - Vi IMproved 9.1 (2024 Jan 02, compiled Sep 14 2024 18:30:05)
適用済パッチ: 1-730

OSの種類/ディストリ/バージョン

$ cat /etc/os-release
PRETTY_NAME="Ubuntu 24.04.1 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04.1 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=noble
LOGO=ubuntu-logo
$ uname -a
Linux xxx 6.8.0-44-generic #44-Ubuntu SMP PREEMPT_DYNAMIC Tue Aug 13 13:35:26 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
h-east commented 2 months ago

こちらでも同じ現象になりました。 報告の内容を vim_dev にも報告してはどうでしょうか? ($MYVIMRC, $MYVIMDIR はシンボリックリンク展開するけど、'runtimepath' は展開しないということで、:h $MYVIMDIR に記載の以下の文章に齟齬があるということを報告)

The $MYVIMDIR environment variable is set to the personal 'rtp' directory,

おそらく、以前からある $MYVIMRC の値がシンボリックリンク展開しているので、$MYVIMDIR もそれに合わせたのだと思います。個人的には、今から $MYVIMRC'runtimepath' のシンボリックリンクの扱いを変えるのは厳しいのではないかと考えます。