【问题标题】:What else can be moved to my .config director? [closed]还有什么可以移动到我的 .config 目录? [关闭]
【发布时间】:2019-07-19 11:29:16
【问题描述】:

我最近安装了 NeoVim,并且喜欢它的配置文件在 ~/.config/nvim/ 中的存放方式。然后在深入研究Git的时候,发现它的配置文件可以存放在~/.config/git/

我的主文件夹中几乎没有其他配置文件我想移到~/.config

  • .bash_history.bash_profile
  • .python_history.pythonstartup
  • .ssh/
  • .vim/.viminfo

我在谷歌上搜索过,但没有找到任何关于 Bash、Python 等是否支持移动这些配置文件的信息。有可能吗?我该怎么做?我希望保持主目录更清洁。

【问题讨论】:

    标签: python bash vim ssh config


    【解决方案1】:

    您可以使用符号链接将任何您想要的东西移到那里。例如,

    mv .bash_profile ~/.config/bash/profile
    ln -s ~/.config/bash/profile .bash_profile
    

    这也适用于目录

    ln -s ~/.config/vim .vim
    

    (尽管出于安全原因,我不确定ssh 是否会尊重~/.ssh 的符号链接;不过,您可以尝试。)

    .bash_history 之类的文件一开始是可配置的。添加

    HISTFILE=~/.config/bash/history
    

    使用默认~/.bash_history以外的文件。

    【讨论】:

    • 我很欣赏这个提示,但符号链接无法帮助我清理主文件夹。但现在我知道至少一个文件.bash_history,我可以从~ 中移出。 :)
    • 为什么你真的需要清理它?它们都以点开头是有原因的。常规工具(ls、glob 扩展等)将忽略它们,除非您非常具体地包含它们。
    • 这不是必需的,就像将所有配置文件合并到一个非主文件夹位置的想法一样。
    • 为了管理它们,它们将是。符号链接只是必需的,以便工具本身仍然可以访问它们。
    • 您应该将.bash_history 放在XDG_CACHE_HOME 中,默认为~/.cache
    【解决方案2】:

    ~/.config 中的内容没有通用答案

    XDG Base Directory Specification 定义了几个环境变量(每个都应该指向一个用于特定目的的目录),以及在未设置此类变量的情况下的一些后备。这些变量之一是XDG_CONFIG_HOME,它的后备是~/.config。所以如果一个程序被设计成符合规范,它应该从这个目录的子文件夹中读取你的配置文件。

    程序是否使用XDG_CONFIG_HOME 完全取决于它的开发人员,假设如果你将配置文件放入~/.config 的子文件夹中,它就会有任何效果。

    关于你提到的特定程序:

    • Bash 似乎不支持这一点。
    • Python:the tutorial 提到了PYTHONSTARTUP 环境变量,这表明该特定文件不会进入~/.config。当然,无论如何你都可以把它放在那里并将PYTHONSTARTUP指向它,它应该可以工作。
    • ssh:似乎也不符合规范。
    • nvim:如果您使用的是 Neovim,则无需使用 ~/.vim,您可以将文件从那里放入 ~/.config/nvim/(实际上,:help configuration 说您应该)。同样,您不必再使用~/.viminfo

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-11
      • 2013-03-08
      • 2011-10-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-13
      相关资源
      最近更新 更多