@k2works/claude-code-booster 0.19.0 → 0.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,4 @@
1
+ *.nix text eol=lf
2
+ *.sh text eol=lf
3
+ Dockerfile text eol=lf
4
+ .vimrc text eol=lf
@@ -1,105 +1,113 @@
1
- # ベースイメージとして Ubuntu 22.04 を使用
2
- FROM ubuntu:22.04 AS base
3
-
4
- # 環境変数の設定
5
- ARG NODE_MAJOR=22
6
- ENV DEBIAN_FRONTEND=noninteractive \
7
- LANG=ja_JP.UTF-8 \
8
- LC_ALL=ja_JP.UTF-8 \
9
- LC_CTYPE=ja_JP.UTF-8 \
10
- NODE_VER=$NODE_MAJOR
11
-
12
- # ユーザーの設定
13
- ARG USERNAME=developer
14
- ARG USER_UID=1000
15
- ARG USER_GID=$USER_UID
16
-
17
- RUN groupadd --gid $USER_GID $USERNAME \
18
- && useradd --uid $USER_UID --gid $USER_GID -m $USERNAME \
19
- && apt-get update \
20
- && apt-get install -y sudo \
21
- && echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
22
- && chmod 0440 /etc/sudoers.d/$USERNAME
23
-
24
- # ロケールのセットアップ
25
- RUN apt-get update && apt-get install -y \
26
- language-pack-ja-base \
27
- language-pack-ja \
28
- && update-locale LANG=ja_JP.UTF-8 LANGUAGE=ja_JP:ja \
29
- && rm -rf /var/lib/apt/lists/*
30
-
31
- # 基本的なパッケージのインストール
32
- RUN apt-get update && \
33
- apt-get install -y \
34
- build-essential \
35
- zip \
36
- unzip \
37
- git \
38
- curl \
39
- wget \
40
- vim \
41
- tmux \
42
- xz-utils \
43
- && apt-get clean \
44
- && rm -rf /var/lib/apt/lists/*
45
-
46
- # Nixのインストール
47
- ENV NIX_INSTALL_DIR=/nix
48
- RUN mkdir -m 0755 $NIX_INSTALL_DIR && chown $USERNAME $NIX_INSTALL_DIR
49
- USER $USERNAME
50
- ENV USER=$USERNAME
51
- ENV HOME=/home/$USERNAME
52
- RUN curl -L https://nixos.org/nix/install | sh -s -- --no-daemon \
53
- && echo '. /home/'$USERNAME'/.nix-profile/etc/profile.d/nix.sh' >> /home/$USERNAME/.bashrc \
54
- && mkdir -p /home/$USERNAME/.config/nix \
55
- && echo "experimental-features = nix-command flakes" >> /home/$USERNAME/.config/nix/nix.conf
56
-
57
- # Nix環境変数の設定
58
- ENV PATH="/home/$USERNAME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:${PATH}" \
59
- NIX_PATH="/home/$USERNAME/.nix-profile/etc/profile.d/nix.sh:/nix/var/nix/profiles/default/etc/profile.d/nix.sh" \
60
- NIX_SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
61
-
62
- USER root
63
-
64
- # Node.jsのインストール
65
- RUN curl -fsSL https://deb.nodesource.com/setup_$NODE_VER.x | bash - \
66
- && apt-get install -y nodejs \
67
- && npm install -g yarn \
68
- && mkdir -p /home/$USERNAME/.nvm \
69
- && chown -R $USERNAME:$USERNAME /home/$USERNAME/.nvm \
70
- && echo '#!/bin/bash\n\
71
- curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash\n\
72
- . /home/'$USERNAME'/.nvm/nvm.sh\n\
73
- nvm install "'$NODE_VER'"\n\
74
- nvm use "'$NODE_VER'"' > /tmp/nvm_install.sh \
75
- && chmod +x /tmp/nvm_install.sh \
76
- && su - $USERNAME -c /tmp/nvm_install.sh \
77
- && rm /tmp/nvm_install.sh
78
-
79
- # Gemini CLIのインストール
80
- RUN npm install -g @google/gemini-cli
81
-
82
- # Claude Codeのインストール
83
- RUN npm install -g @anthropic-ai/claude-code
84
-
85
- # Copilot CLIのインストール
86
- RUN npm install -g @github/copilot
87
-
88
- # Codex CLIのインストール
89
- RUN npm install -g @openai/codex
90
-
91
- # すべてのインストールが完了した後、ユーザーのホームディレクトリの所有権を確保
92
- RUN chown -R $USERNAME:$USERNAME /home/$USERNAME
93
-
94
- # Git safe.directory 設定(マウントされたボリューム対応)
95
- RUN git config --global --add safe.directory /srv \
96
- && git config --global --add safe.directory '*'
97
-
98
- # 作業ディレクトリの設定
99
- WORKDIR /srv
100
-
101
- # ユーザーを設定したユーザーに切り替える
102
- USER $USERNAME
103
-
104
- # デフォルトのシェルを bash に設定
1
+ # ベースイメージとして Ubuntu 24.04 を使用
2
+ FROM ubuntu:24.04 AS base
3
+
4
+ # 環境変数の設定
5
+ ARG NODE_MAJOR=22
6
+ ENV DEBIAN_FRONTEND=noninteractive \
7
+ LANG=ja_JP.UTF-8 \
8
+ LC_ALL=ja_JP.UTF-8 \
9
+ LC_CTYPE=ja_JP.UTF-8 \
10
+ NODE_VER=$NODE_MAJOR
11
+
12
+ # ユーザーの設定
13
+ ARG USERNAME=ubuntu
14
+ ARG USER_UID=1000
15
+ ARG USER_GID=$USER_UID
16
+
17
+ # Ubuntu 24.04 では UID 1000 の ubuntu ユーザーが既に存在するため、必要に応じて $USERNAME にリネームして使用する
18
+ RUN if [ "$USERNAME" != "ubuntu" ]; then \
19
+ usermod -l $USERNAME -m -d /home/$USERNAME ubuntu && \
20
+ groupmod -n $USERNAME ubuntu; \
21
+ fi \
22
+ && apt-get update \
23
+ && apt-get install -y sudo \
24
+ && echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
25
+ && chmod 0440 /etc/sudoers.d/$USERNAME
26
+
27
+ # ロケールのセットアップ
28
+ RUN apt-get update && apt-get install -y \
29
+ language-pack-ja-base \
30
+ language-pack-ja \
31
+ && update-locale LANG=ja_JP.UTF-8 LANGUAGE=ja_JP:ja \
32
+ && rm -rf /var/lib/apt/lists/*
33
+
34
+ # 基本的なパッケージのインストール
35
+ RUN apt-get update && \
36
+ apt-get install -y \
37
+ build-essential \
38
+ zip \
39
+ unzip \
40
+ git \
41
+ curl \
42
+ wget \
43
+ vim-nox \
44
+ python3 \
45
+ python3-pip \
46
+ tmux \
47
+ xz-utils \
48
+ && apt-get clean \
49
+ && rm -rf /var/lib/apt/lists/*
50
+
51
+ # Nixのインストール
52
+ ENV NIX_INSTALL_DIR=/nix
53
+ RUN mkdir -m 0755 $NIX_INSTALL_DIR && chown $USERNAME:$USERNAME $NIX_INSTALL_DIR
54
+ USER $USERNAME
55
+ ENV USER=$USERNAME
56
+ ENV HOME=/home/$USERNAME
57
+ RUN curl -L https://nixos.org/nix/install | sh -s -- --no-daemon \
58
+ && echo '. /home/'$USERNAME'/.nix-profile/etc/profile.d/nix.sh' >> /home/$USERNAME/.bashrc \
59
+ && mkdir -p /home/$USERNAME/.config/nix \
60
+ && echo "experimental-features = nix-command flakes" >> /home/$USERNAME/.config/nix/nix.conf
61
+
62
+ # Nix環境変数の設定
63
+ ENV PATH="/home/$USERNAME/.nix-profile/bin:/nix/var/nix/profiles/default/bin:${PATH}" \
64
+ NIX_PATH="/home/$USERNAME/.nix-profile/etc/profile.d/nix.sh:/nix/var/nix/profiles/default/etc/profile.d/nix.sh" \
65
+ NIX_SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
66
+
67
+ USER root
68
+
69
+ # Node.jsのインストール
70
+ RUN apt-get update && apt-get install -y ca-certificates curl gnupg \
71
+ && mkdir -p /etc/apt/keyrings \
72
+ && curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg \
73
+ && echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_VER.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list \
74
+ && apt-get update && apt-get install -y nodejs \
75
+ && npm install -g yarn \
76
+ && mkdir -p /home/$USERNAME/.nvm \
77
+ && chown -R $USERNAME:$USERNAME /home/$USERNAME/.nvm \
78
+ && echo '#!/bin/bash\n\
79
+ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash\n\
80
+ . /home/'$USERNAME'/.nvm/nvm.sh\n\
81
+ nvm install "'$NODE_VER'"\n\
82
+ nvm use "'$NODE_VER'"' > /tmp/nvm_install.sh \
83
+ && chmod +x /tmp/nvm_install.sh \
84
+ && su - $USERNAME -c /tmp/nvm_install.sh \
85
+ && rm /tmp/nvm_install.sh
86
+
87
+ # Gemini CLIのインストール
88
+ RUN npm install -g @google/gemini-cli
89
+
90
+ # Claude Codeのインストール
91
+ RUN npm install -g @anthropic-ai/claude-code
92
+
93
+ # Copilot CLIのインストール
94
+ RUN npm install -g @github/copilot
95
+
96
+ # Codex CLIのインストール
97
+ RUN npm install -g @openai/codex
98
+
99
+ # すべてのインストールが完了した後、ユーザーのホームディレクトリの所有権を確保
100
+ RUN chown -R $USERNAME:$USERNAME /home/$USERNAME
101
+
102
+ # Git safe.directory 設定(マウントされたボリューム対応)
103
+ RUN git config --global --add safe.directory /srv \
104
+ && git config --global --add safe.directory '*'
105
+
106
+ # 作業ディレクトリの設定
107
+ WORKDIR /srv
108
+
109
+ # ユーザーを設定したユーザーに切り替える
110
+ USER $USERNAME
111
+
112
+ # デフォルトのシェルを bash に設定
105
113
  SHELL ["/bin/bash", "-c"]
@@ -9,6 +9,7 @@ Codex CLI を MCP(Model Context Protocol)サーバーとして動作させ
9
9
  - Node.js 18 以降がインストールされていること
10
10
  - npm が利用可能であること
11
11
  - Claude Code がインストールされていること
12
+ - **有効な OpenAI アカウント**があること
12
13
 
13
14
  ## 手順
14
15
 
@@ -26,7 +27,43 @@ npm install -g @openai/codex
26
27
  codex --version
27
28
  ```
28
29
 
29
- ### 2. Codex MCP サーバーの起動確認
30
+ ### 2. OpenAI 認証の設定
31
+
32
+ Codex CLI を使用するには OpenAI アカウントでの認証が必要です。
33
+
34
+ #### 方法 1: `codex login` コマンド(推奨)
35
+
36
+ ```bash
37
+ codex login
38
+ ```
39
+
40
+ ブラウザが開き、OpenAI アカウントでログインできます。認証情報は `~/.codex/auth.json` に保存されます。
41
+
42
+ #### 方法 2: 環境変数で設定
43
+
44
+ `.zshrc` または `.bashrc` に追加:
45
+
46
+ ```bash
47
+ export OPENAI_API_KEY="sk-your-api-key-here"
48
+ ```
49
+
50
+ 設定を反映:
51
+
52
+ ```bash
53
+ source ~/.zshrc # または source ~/.bashrc
54
+ ```
55
+
56
+ #### 認証状態の確認
57
+
58
+ ```bash
59
+ # 認証ファイルの存在確認
60
+ ls -la ~/.codex/auth.json
61
+
62
+ # 簡単な動作テスト
63
+ codex exec "Say hello"
64
+ ```
65
+
66
+ ### 3. Codex MCP サーバーの起動確認
30
67
 
31
68
  Codex CLI には MCP サーバーとして動作する機能が組み込まれています。以下のコマンドで動作確認します。
32
69
 
@@ -38,7 +75,7 @@ codex mcp-server
38
75
 
39
76
  **注意**: `codex mcp-server` は stdio transport で動作します。
40
77
 
41
- ### 3. Claude Code への MCP サーバー設定
78
+ ### 4. Claude Code への MCP サーバー設定
42
79
 
43
80
  Claude Code の MCP 設定ファイルに Codex MCP サーバーを登録します。
44
81
 
@@ -102,7 +139,7 @@ claude mcp add -s project codex -- npx @openai/codex mcp-server
102
139
  }
103
140
  ```
104
141
 
105
- ### 4. Claude Code からの利用
142
+ ### 5. Claude Code からの利用
106
143
 
107
144
  Claude Code を起動します。
108
145
 
@@ -142,11 +179,101 @@ claude
142
179
  3. Claude Code を再起動
143
180
  4. `/mcp` コマンドで MCP サーバーの状態を確認
144
181
 
182
+ ### 401 Unauthorized エラーが発生する場合
183
+
184
+ このエラーは OpenAI 認証に問題がある場合に発生します。
185
+
186
+ 1. **認証ファイルの確認**:
187
+
188
+ ```bash
189
+ ls -la ~/.codex/auth.json
190
+ ```
191
+
192
+ 2. **再認証の実行**:
193
+
194
+ ```bash
195
+ codex logout
196
+ codex login
197
+ ```
198
+
199
+ 3. **環境変数の確認**:
200
+
201
+ ```bash
202
+ echo $OPENAI_API_KEY
203
+ ```
204
+
205
+ 4. **直接テスト**(MCP 経由ではなく CLI で確認):
206
+
207
+ ```bash
208
+ codex exec "Say hello"
209
+ ```
210
+
211
+ ### アカウント無効化エラー(account_deactivated)
212
+
213
+ 以下のエラーが表示される場合:
214
+
215
+ ```
216
+ Your OpenAI account has been deactivated, please check your email for more information.
217
+ ```
218
+
219
+ **対処方法**:
220
+
221
+ 1. OpenAI からのメールを確認
222
+ 2. [help.openai.com](https://help.openai.com) でサポートに問い合わせ
223
+ 3. 別の有効な OpenAI アカウントで再認証:
224
+
225
+ ```bash
226
+ codex logout
227
+ codex login
228
+ ```
229
+
230
+ ### MCP 経由で認証情報が引き継がれない場合
231
+
232
+ MCP サーバーが認証情報を読み取れない場合は、MCP 設定に環境変数を追加:
233
+
234
+ ```json
235
+ {
236
+ "mcpServers": {
237
+ "codex": {
238
+ "command": "npx",
239
+ "args": ["@openai/codex", "mcp-server"],
240
+ "env": {
241
+ "OPENAI_API_KEY": "sk-your-api-key-here"
242
+ }
243
+ }
244
+ }
245
+ }
246
+ ```
247
+
248
+ **注意**: API キーを直接設定ファイルに記載する場合は、`.mcp.json` を `.gitignore` に追加してください。
249
+
250
+ ## 通信確認
251
+
252
+ セットアップ完了後、以下の方法で Codex MCP との通信を確認できます。
253
+
254
+ ### CLI での確認
255
+
256
+ ```bash
257
+ # 直接 Codex CLI で動作確認
258
+ codex exec "Say hello"
259
+ ```
260
+
261
+ ### Claude Code での確認
262
+
263
+ Claude Code 内で以下のように Codex MCP ツールを呼び出して確認:
264
+
265
+ ```
266
+ mcp__codex__codex ツールで "Say hello" を実行してください
267
+ ```
268
+
269
+ 正常に動作すれば、Codex からの応答が返ってきます。
270
+
145
271
  ## ベストプラクティス
146
272
 
147
273
  1. **プロジェクト固有の設定**: `.claude/settings.json` を使用してプロジェクトごとに設定
148
274
  2. **除外設定**: `.gitignore` で不要なファイルを除外(Codex は Git を参照)
149
275
  3. **OpenAI API キー**: `codex login` で認証を設定
276
+ 4. **セキュリティ**: API キーを含む設定ファイルは `.gitignore` に追加
150
277
 
151
278
  ## Codex MCP ツールの使用方法
152
279
 
@@ -0,0 +1,140 @@
1
+ # Vim操作マニュアル
2
+
3
+ このドキュメントは、本プロジェクトで設定されている `.vimrc` に基づく操作ガイドです。
4
+
5
+ ## 基本設定
6
+ - **文字コード**: UTF-8 (自動判別: UTF-8, EUC-JP, CP932)
7
+ - **改行コード**: UNIX (LF) 優先
8
+ - **インデント**: スペース2個 (タブをスペースに展開)
9
+ - **検索**: インクリメンタルサーチ、大文字小文字スマート区別、ハイライト表示
10
+ - **行番号**: 表示
11
+ - **マウス**: 有効
12
+
13
+ ## 基本キーマップ
14
+ | キー | 動作 | モード |
15
+ |---|---|---|
16
+ | `,` | リーダーキー (mapleader) | - |
17
+ | `\` | `,` (リーダー) として機能 | - |
18
+ | `<C-s>` | ファイル保存 | ノーマル / 挿入 |
19
+ | `ESC` `ESC` | 検索ハイライトをオフに切り替え | ノーマル |
20
+ | `j` / `k` | 表示行単位で移動 (折り返し対応) | ノーマル |
21
+ | `[b` / `]b` | 前 / 次のバッファへ移動 | ノーマル |
22
+ | `[B` / `]B` | 最初 / 最後のバッファへ移動 | ノーマル |
23
+ | `<C-p>` | 上に移動 | 挿入 |
24
+ | `<C-n>` | 下に移動 | 挿入 |
25
+ | `<C-b>` | 左に移動 | 挿入 |
26
+ | `<C-f>` | 右に移動 | 挿入 |
27
+
28
+ ## 開発機能 (Plugins)
29
+
30
+ ### [coc.nvim](https://github.com/neoclide/coc.nvim) (入力補完・LSP)
31
+ | キー | 動作 |
32
+ |---|---|
33
+ | `TAB` | 補完候補の選択 / 次へ |
34
+ | `S-TAB` | 補完候補の逆選択 |
35
+ | `ENTER` | 補完の確定 |
36
+ | `K` | カーソル下のドキュメント表示 |
37
+ | `gd` | 定義へジャンプ |
38
+ | `gy` | 型定義へジャンプ |
39
+ | `gi` | 実装へジャンプ |
40
+ | `gr` | 参照元を表示 |
41
+ | `[g` / `]g` | 前 / 次の診断メッセージへ移動 |
42
+ | `<leader>rn` | シンボルのリネーム |
43
+ | `<leader>f` | 選択範囲をフォーマット |
44
+ | `<leader>qf` | クイックフィックス実行 |
45
+ | `<leader>ac` | カーソル位置でコードアクション実行 |
46
+ | `<space>a` | 診断一覧を表示 |
47
+ | `<space>o` | アウトライン表示 |
48
+ | `<space>c` | コマンド一覧を表示 |
49
+
50
+ ### [vim-fugitive](https://github.com/tpope/vim-fugitive) (Git)
51
+ | キー | 動作 |
52
+ |---|---|
53
+ | `<leader>gs` | `git status` 表示 |
54
+ | `<leader>ga` | `git add %` (現在のファイルをアッド) |
55
+ | `<leader>gc` | `git commit` |
56
+ | `<leader>gp` | `git push` |
57
+ | `<leader>gd` | `git diff` |
58
+ | `<leader>gb` | `git blame` |
59
+
60
+ ### [vimspector](https://github.com/puremourning/vimspector) (デバッグ)
61
+ | キー | 動作 |
62
+ |---|---|
63
+ | `<leader>dd` | デバッグ開始 |
64
+ | `<leader>de` | デバッグ終了 (Reset) |
65
+ | `<leader>dc` | 続行 (Continue) |
66
+ | `<leader>dt` | ブレークポイント切り替え |
67
+ | `<leader>dT` | 全ブレークポイント解除 |
68
+ | `<leader>dj` | ステップオーバー |
69
+ | `<leader>dl` | ステップイン |
70
+ | `<leader>dh` | ステップアウト |
71
+ | `<leader>dk` | 再起動 |
72
+
73
+ ### [vim-test](https://github.com/vim-test/vim-test) (テスト実行)
74
+ | キー | 動作 |
75
+ |---|---|
76
+ | `<leader>t` | 最も近いテストを実行 |
77
+ | `<leader>T` | 現在のファイルのテストを実行 |
78
+ | `<leader>a` | 全テストを実行 (TestSuite) |
79
+ | `<leader>l` | 最後に実行したテストを再実行 |
80
+ | `<leader>g` | 最後に実行したテストファイルを開く |
81
+
82
+ ### [vim-go](https://github.com/fatih/vim-go) (Go開発)
83
+ | キー | 動作 |
84
+ |---|---|
85
+ | `<leader>b` | ビルド (テストファイルならテスト実行) |
86
+ | `<leader>r` | 実行 (go run) |
87
+ | `<leader>t` | テスト実行 |
88
+ | `<leader>c` | カバレッジ表示切り替え |
89
+ | `<C-n>` / `<C-m>` | クイックフィックスの次/前へ移動 |
90
+
91
+ ### [rust.vim](https://github.com/rust-lang/rust.vim) (Rust開発)
92
+ - **自動フォーマット**: 保存時に `rustfmt` が自動実行されます。
93
+
94
+ ### [.NET 開発](https://github.com/OmniSharp/omnisharp-vim)
95
+ - **OmniSharp**: .NET (C#) 用の開発支援プラグインが導入されています。
96
+ - **シンタックスハイライト**: `OrangeT/vim-csharp` により C# 構文がサポートされます。
97
+ - **LSP連携**: `nix develop .#dotnet` 環境下で、`coc.nvim` と組み合わせて利用可能です。
98
+
99
+ ### [Ruby 開発](https://github.com/vim-ruby/vim-ruby)
100
+ - **基本設定**: インデントがスペース2個に自動設定されます。
101
+ - **LSP連携**: `nix develop .#ruby` 環境下で、`solargraph` を使用した補完が利用可能です。
102
+
103
+ ### [PHP 開発](https://github.com/stanangeloff/php.vim)
104
+ - **シンタックスハイライト**: `php.vim` により最新の PHP 構文がサポートされます。
105
+ - **リファクタリング**: `phpactor` により、クラスの移動やインターフェースの実装などのリファクタリング支援が受けられます。
106
+ - **基本設定**: インデントがスペース4個に自動設定されます。
107
+
108
+ ### [Haskell 開発](https://github.com/neovimhaskell/haskell-vim)
109
+ - **シンタックスハイライト**: `neovimhaskell/haskell-vim` により Haskell 構文が高度にサポートされます。
110
+ - **LSP連携**: `nix develop .#haskell` 環境下で、`haskell-language-server` が利用可能です。`coc-haskell` 等の導入を推奨します。
111
+
112
+ ### [Java 開発](https://github.com/uiiaoo/java-syntax.vim)
113
+ - **シンタックスハイライト**: `uiiaoo/java-syntax.vim` により Java 構文のハイライトが強化されています。
114
+ - **LSP連携**: `nix develop .#java` 環境下で、`coc-java` などの CoC 拡張機能を導入することで高度な開発が可能です。
115
+
116
+ ### [Clojure 開発](https://github.com/Olical/conjure)
117
+ - **Conjure**: Clojure (および Lisp 系言語) 用の高度な対話型開発環境です。バッファ内のコードを即座に REPL で評価できます。
118
+ - **Fireplace**: REPL と連携した開発支援を提供します。
119
+ - **シンタックスハイライト**: `clojure.vim` により Clojure 構文がサポートされます。
120
+
121
+ ### [Elixir 開発](https://github.com/elixir-editors/vim-elixir)
122
+ - **シンタックスハイライト**: `vim-elixir` により Elixir 構文と `mix` フォーマッタとの連携がサポートされます。
123
+ - **LSP連携**: `nix develop .#elixir` 環境下で、`elixir-ls` を使用した高度な開発が可能です。
124
+
125
+ ### [Scala 開発](https://github.com/derekwyatt/vim-scala)
126
+ - **シンタックスハイライト**: `vim-scala` により Scala 構文がサポートされます。
127
+ - **LSP連携**: `nix develop .#scala` 環境下で、`Metals` を使用した高度な開発が可能です。
128
+
129
+ ### [CtrlP](https://github.com/ctrlpvim/ctrlp.vim) (ファイル検索・セレクタ)
130
+ | キー | 動作 |
131
+ |---|---|
132
+ | `<C-p>` | ファイル検索 (プロジェクト内) |
133
+ | `:CtrlPFunky` | 関数一覧から検索 |
134
+ | `:CtrlPCommandLine` | コマンド履歴から検索 |
135
+
136
+ ### その他
137
+ - **GitHub Copilot**: `github/copilot.vim` が有効化されています。
138
+ - **vim-airline**: ステータスライン、タブラインが表示されます。
139
+ - **indentLine**: インデントが可視化されます。
140
+ - **vim-trailing-whitespace**: 末尾の余分な空白をハイライトします。