このプロジェクトは、Zsh、Tmux、Neovimを中心とした開発環境の設定ファイル群(dotfiles)です。Nixを使用した環境構築をサポートしており、ポータビリティとカスタマイズ性を両立しています。
- 環境管理: Nix, Home-Manager, およびカスタムシェルスクリプト (
installer.sh)。 - シェル: Zsh (viキーバインド、カスタムプロンプト、
vcs_infoによるGitステータス表示)。 - エディタ: Neovim/Vim。
dpp.vimをプラグインマネージャーとして使用し、denops.vim(Deno) ベースのプラグイン(ddc, ddu, skkeleton等)を多用しています。 - マルチプレクサ: Tmux (プレフィックスキー:
C-t、viライクなペイン操作)。
home/:$HOME直下に配置される設定ファイル群 (.zshrc,.tmux.conf,.vimrc等)。vim/: Neovim/Vimの詳細設定。rc/:dpp.vimの設定 (dpp_config.ts) やLSP、プラグインの定義。lua/: Neovim固有のLua設定。denops/: Denopsプラグインの自作コード。
nix/: Home-Manager 用の Nix 設定ファイル。config/:XDG_CONFIG_HOMEに相当する設定ファイル(Neovimのinit.vim等)。shell/: 補助的なシェルスクリプト。
Nixがインストールされている環境では、以下のコマンドでセットアップを行います。
git clone https://github.com/virusbb001/dotfiles.git dotfiles
cd dotfiles
git submodule init
git submodule update
nix develop --command ./installer.shhome/内のファイルを$HOMEにコピー/インストールします。.bashrcにXDG_CONFIG_DIRSを追加します。gitconfigをグローバル設定にインクルードします。- Nixが利用可能な場合、Home-Manager の設定ファイルをテンプレートから生成します。
- Neovim設定:
- 設定の大部分は TypeScript (
vim/rc/*.ts) で記述され、Deno によって実行されます。 - プラグインの追加は
vim/rc/dpp/内の各ファイル (lazy.ts,lsp_plugins.ts等) で行います。 dpp.vimのキャッシュ更新が必要な場合は、Vim内でdpp#make_state()を実行します。
- 設定の大部分は TypeScript (
- シェル設定:
zshrcはzsh/ディレクトリ内のスクリプトを読み込みます。
- 依存関係:
flake.nixで開発シェルに必要なツール(lua-language-server等)が定義されています。