具体的语言开发环境(如 C++、Golang、Rust 等)不在此列出,此处仅列出通用的部分。

Note

推荐安装 chezmoi 来管理各种配置文件

# 同步远端配置库
chezmoi init https://github.com/sean2077/devenv.git
 
# 应用 .zshrc
chezmoi apply ~/.zshrc
 
# ...

1 终端

1.1 Windows Terminal

Windows 下最好用的终端模拟器,推荐安装。

1.2 item2

Mac 下最好用的终端模拟器,推荐安装。

Note

Linux 下使用默认的终端就行。

2 shell

2.1  Zsh

最好用的 shell,可惜在 Windows 下没有原生支持,只能通过套壳(如 Git Bash、WSL)实现,在 Linux 和 MacOS 下无脑选择作为默认 shell。

2.1.1 Git Bash 安装 Zsh

  1. 前往 the MSYS2 package repository 下载最新的 zsh 包,下载的文件名类似:zsh-5.9-4-x86_64.pkg.tar.zst
  2. 将解压的 etc 和 usr 拷贝至 Git 安装目录 C:\Program Files\Git
  3. 配置 zsh 为 Git Bash 的默认 shell
    • 目前没别的好方法,只能配置 Windows 终端配置时 Git Bash 的命令行为 "C:/Program Files/Git/bin/bash.exe" -li -c zsh
  4. 配置 .zshrc: 如果使用 chezmoi 管理配置文件,直接 chezmoi apply ~/.zshrc

2.1.2 Zsh & Zinit 的一些插件推荐

直接都配置在 ~/.zshrc 中了,初次运行 exec zsh 会自动拉取这些插件

2.2 nushell

跨平台支持的比较好,在 Windows 下也能有原生体验,推荐作为 Windows 下的默认 shell。

2.3 PowerShell

Windows 下需要兼容性的情况下使用,其他情况不推荐。

3 shell 提示与主题

3.1 starship

非 Zsh Shell 仅推荐 starship,主要原因是轻量而且效果还不错。

3.2 powerlevel10k

Zsh 推荐主题。

4 其他增强工具

工具功能推荐指数
zinit个人认为最好的 zsh 插件管理器⭐⭐⭐⭐⭐
zoxide更智能的 cd 命令,受 z 和 autojump 启发⭐⭐⭐⭐⭐
atuinshell 历史⭐⭐⭐⭐⭐
chezmoi管理个人配置文件的工具,可以帮助你轻松地在多台机器之间同步配置文件⭐⭐⭐⭐
carapace-bin支持多种 shell 的命令补全工具(正好补齐 nushell 这一块功能的短板)⭐⭐⭐⭐
broottree 上位替代⭐⭐⭐⭐
batcat 上位替代⭐⭐⭐⭐
ezals 上位替代
dustdu 上位替代
dufdf 上位替代
fzf模糊搜索
fdfind 的上位替代
miseasdf 的上位替代
tldr命令简短说明
gpingping 图形版

Note

上述工具除了功能方面更现代化,跨平台方面也做得很出色!

PS: 基本全是 Rust 写的,未来是 Rust 的~

更多可参考:

4.1 zinit

按 zinit 使用流程列出常用命令:

  1. 初始化与基础加载
# 轻量加载 GitHub 插件(常用)
zinit light zsh-users/zsh-autosuggestions
 
# 标准加载(完整跟踪,功能更全)
zinit load zsh-users/zsh-completions
 
# 加载片段(URL 或 Oh My Zsh 片段)
zinit snippet https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/plugins/git/git.plugin.zsh
zinit snippet OMZ::plugins/git/git.plugin.zsh
 
# 进入某个插件的目录
zinit cd zsh-users/zsh-autosuggestions
  1. 安装前参数(ice)与二进制安装
# 配置加载行为(ice)后跟 load/light 生效
zinit ice wait"1" lucid
zinit light zsh-users/zsh-autosuggestions
 
# 指定要 source 的文件(有些仓库不在根或文件名不是标准 pattern)
zinit ice pick"*.plugin.zsh"
zinit light someuser/someplugin
 
# 从 GitHub Releases 安装二进制到 PATH(as"program")
zinit ice from"gh-r" as"program" bpick"*linux*amd64*"
zinit load sharkdp/fd
  1. 查看、诊断与性能
# 列出加载插件
zinit plugins
 
# 加载报告与耗时统计
zinit report
zinit times
 
# 查看帮助与手册
zinit help
zinit man
  1. 卸载与清理
# 卸载(停止加载,但保留文件)
zinit unload zsh-users/zsh-autosuggestions
 
# 删除(移除克隆与缓存)
zinit delete zsh-users/zsh-autosuggestions
 
# 移除未使用的 zinit 插件
zinit delete -c
 
# 清除杂散和不正确的补全
zinit cclear

小贴士

  • 一般先用 zinit ice 设定行为,再用 load/light 安装。
  • OMZ/Prezto 生态的脚本可用 zinit snippet OMZ::…/ PZT::… 快速引入。
  • 新项目有时用命令名 zi(z-shell/zi),子命令与 zinit 基本一致。

4.2 chezmoi

按 chezmoi 使用流程列出常用命令:

  1. 初始化与同步
# 用现有 dotfiles 仓库初始化
chezmoi init https://github.com/sean2077/devenv.git
  1. 管理文件(纳入/移除/编辑)
# 把现有文件纳入管理
chezmoi add <path> [--autotemplate] [--encrypt]
 
# 重新分析并纳入(自动模板/机密识别)
chezmoi re-add <path>
 
# 编辑源文件(可保存后即应用)
chezmoi edit <target> [--apply]
 
# 停止管理该目标,但不删除目标文件
chezmoi forget <target>
 
# 在目标目录中删除文件(谨慎用)
chezmoi destroy <target>
 
# 对比并三方合并源与目标
chezmoi merge <target>
  1. 应用与预览
# 查看将要变更的差异
chezmoi diff [<targets>]
 
# 把变更应用到家目录
chezmoi apply [<targets>] [-n|--dry-run] [-v] [--exact]
  1. 更新与同步
# 同步远端配置并应用变更
chezmoi update

4.3 autin

atuin 暂不支持 pwsh,如需支持可参考 https://github.com/atuinsh/atuin/issues/84#issuecomment-2927274478

atuin 导入已有的命令历史:

atuin import zsh

5 更新工具

5.1 chezmoi

chezmoi upgrade

5.2 zinit

# 更新全部 zinit 插件
zinit update -a -q
 
# 更新 zinit 本体
zinit self-update

其他

NodeJS

curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt install nodejs

uv

curl -LsSf https://astral.sh/uv/install.sh | sh

字体

mkdir -p ~/.local/share/fonts/  # 创建目录(如果不存在)
cp /path/to/your/fonts/*.ttf ~/.local/share/fonts/  # 复制所有ttf文件