@k2works/claude-code-booster 0.21.2 → 0.21.4
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.
- package/lib/assets/docs/reference/Vim/346/223/215/344/275/234/343/203/236/343/203/213/343/203/245/343/202/242/343/203/253.md +15 -0
- package/lib/assets/docs/reference//350/250/200/350/252/236/345/210/245/351/226/213/347/231/272/343/202/254/343/202/244/343/203/211.md +83 -22
- package/lib/assets/ops/nix/environments/scala/shell.nix +1 -1
- package/lib/assets/ops/nix/shells/.vimrc +5 -1
- package/package.json +1 -1
|
@@ -24,6 +24,16 @@
|
|
|
24
24
|
| `<C-n>` | 下に移動 | 挿入 |
|
|
25
25
|
| `<C-b>` | 左に移動 | 挿入 |
|
|
26
26
|
| `<C-f>` | 右に移動 | 挿入 |
|
|
27
|
+
| `gt` | 次のタブへ移動 | ノーマル |
|
|
28
|
+
| `gT` | 前のタブへ移動 | ノーマル |
|
|
29
|
+
|
|
30
|
+
## ファイル・バッファ操作
|
|
31
|
+
| コマンド | 動作 |
|
|
32
|
+
|---|---|
|
|
33
|
+
| `:tabnew` | 新しいタブを開く |
|
|
34
|
+
| `:tabe [ファイル名]` | 指定したファイルを新しいタブで開く |
|
|
35
|
+
| `:tabclose` | 現在のタブを閉じる |
|
|
36
|
+
| `:e!` | 現在のバッファを破棄してディスクから強制的に再読み込みする |
|
|
27
37
|
|
|
28
38
|
## 開発機能 (Plugins)
|
|
29
39
|
|
|
@@ -126,6 +136,11 @@
|
|
|
126
136
|
- **シンタックスハイライト**: `vim-scala` により Scala 構文がサポートされます。
|
|
127
137
|
- **LSP連携**: `nix develop .#scala` 環境下で、`Metals` を使用した高度な開発が可能です。
|
|
128
138
|
|
|
139
|
+
### [F# 開発](https://github.com/ionide/ionide-vim)
|
|
140
|
+
- **Ionide-vim**: F# 用の高度な開発支援プラグインです。
|
|
141
|
+
- **シンタックスハイライト**: `ionide/ionide-vim` により F# 構文がサポートされます。
|
|
142
|
+
- **LSP連携**: `nix develop .#dotnet` 環境下で、`ionide-vim` による高度な開発支援(補完、定義ジャンプ等)が利用可能です。
|
|
143
|
+
|
|
129
144
|
### [CtrlP](https://github.com/ctrlpvim/ctrlp.vim) (ファイル検索・セレクタ)
|
|
130
145
|
| キー | 動作 |
|
|
131
146
|
|---|---|
|
|
@@ -71,12 +71,11 @@
|
|
|
71
71
|
|
|
72
72
|
### 2. Python
|
|
73
73
|
- **起動コマンド**: `nix develop .#python`
|
|
74
|
-
- **主要ツール**: Python 3.12,
|
|
74
|
+
- **主要ツール**: Python 3.12, uv, pytest, ruff (Linter/Formatter)
|
|
75
75
|
- **初期化**:
|
|
76
76
|
```bash
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
pip install pytest ruff
|
|
77
|
+
uv init
|
|
78
|
+
uv add --dev pytest ruff
|
|
80
79
|
```
|
|
81
80
|
- **TDDチュートリアル**:
|
|
82
81
|
1. **Red**: `test_hello.py` を作成。
|
|
@@ -85,15 +84,15 @@
|
|
|
85
84
|
def test_hello():
|
|
86
85
|
assert hello() == "Hello, World!"
|
|
87
86
|
```
|
|
88
|
-
実行(失敗): `pytest`
|
|
87
|
+
実行(失敗): `uv run pytest`
|
|
89
88
|
2. **Green**: `hello.py` を実装。
|
|
90
89
|
```python
|
|
91
90
|
def hello():
|
|
92
91
|
return "Hello, World!"
|
|
93
92
|
```
|
|
94
|
-
3. **Refactor**: `ruff check .` や `ruff format .` で品質を整える。
|
|
93
|
+
3. **Refactor**: `uv run ruff check .` や `uv run ruff format .` で品質を整える。
|
|
95
94
|
- **自動化**:
|
|
96
|
-
- `pytest
|
|
95
|
+
- `uv run pytest` を使用。
|
|
97
96
|
|
|
98
97
|
### 3. Go
|
|
99
98
|
- **起動コマンド**: `nix develop .#go`
|
|
@@ -163,6 +162,7 @@
|
|
|
163
162
|
```java
|
|
164
163
|
@Test
|
|
165
164
|
void testGreeting() {
|
|
165
|
+
Library classUnderTest = new Library();
|
|
166
166
|
assertEquals("Hello, World!", classUnderTest.getGreeting());
|
|
167
167
|
}
|
|
168
168
|
```
|
|
@@ -181,21 +181,45 @@
|
|
|
181
181
|
- **主要ツール**: .NET SDK, OmniSharp
|
|
182
182
|
- **初期化**:
|
|
183
183
|
```bash
|
|
184
|
-
|
|
185
|
-
dotnet new
|
|
184
|
+
# ソリューションの作成
|
|
185
|
+
dotnet new sln --name Hello
|
|
186
|
+
# ライブラリプロジェクトの作成
|
|
187
|
+
dotnet new classlib -o Hello
|
|
188
|
+
# テストプロジェクトの作成
|
|
189
|
+
dotnet new xunit -o Hello.Tests
|
|
190
|
+
# プロジェクトをソリューションに追加
|
|
191
|
+
dotnet sln Hello.sln add Hello/Hello.csproj Hello.Tests/Hello.Tests.csproj
|
|
192
|
+
# テストプロジェクトからライブラリプロジェクトへの参照を追加
|
|
186
193
|
dotnet add Hello.Tests/Hello.Tests.csproj reference Hello/Hello.csproj
|
|
187
194
|
```
|
|
188
195
|
- **TDDチュートリアル**:
|
|
189
196
|
1. **Red**: `Hello.Tests/UnitTest1.cs` を修正。
|
|
190
197
|
```csharp
|
|
191
|
-
|
|
198
|
+
namespace Hello.Tests;
|
|
199
|
+
using Xunit;
|
|
200
|
+
|
|
201
|
+
public class UnitTest1
|
|
202
|
+
{
|
|
203
|
+
[Fact]
|
|
204
|
+
public void Test1()
|
|
205
|
+
{
|
|
206
|
+
Assert.Equal("Hello, World!", Hello.Lib.Greet());
|
|
207
|
+
}
|
|
208
|
+
}
|
|
192
209
|
```
|
|
193
210
|
実行(失敗): `dotnet test`
|
|
194
|
-
2. **Green**: `Hello/
|
|
211
|
+
2. **Green**: `Hello/Lib.cs` を実装。
|
|
195
212
|
```csharp
|
|
196
|
-
namespace Hello
|
|
213
|
+
namespace Hello;
|
|
214
|
+
|
|
215
|
+
public static class Lib
|
|
216
|
+
{
|
|
217
|
+
public static string Greet() => "Hello, World!";
|
|
218
|
+
}
|
|
197
219
|
```
|
|
198
220
|
3. **Refactor**: `dotnet format` でコードを整形。
|
|
221
|
+
- **自動化**:
|
|
222
|
+
- `dotnet watch test` で変更を監視し自動テスト実行。
|
|
199
223
|
|
|
200
224
|
### 7. Ruby
|
|
201
225
|
- **起動コマンド**: `nix develop .#ruby`
|
|
@@ -254,17 +278,17 @@
|
|
|
254
278
|
- **主要ツール**: GHC, Stack, Cabal, HLS, hlint, fourmolu
|
|
255
279
|
- **初期化**:
|
|
256
280
|
```bash
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
#
|
|
260
|
-
|
|
281
|
+
stack new hello
|
|
282
|
+
cd hello
|
|
283
|
+
# package.yaml の tests.hello-test.dependencies に hspec を追加
|
|
284
|
+
stack test
|
|
261
285
|
```
|
|
262
286
|
- **TDDチュートリアル**:
|
|
263
|
-
1. **Red**: `test/
|
|
287
|
+
1. **Red**: `test/Spec.hs` を編集.
|
|
264
288
|
```haskell
|
|
265
289
|
module Main (main) where
|
|
266
290
|
import Test.Hspec
|
|
267
|
-
import
|
|
291
|
+
import Lib (hello)
|
|
268
292
|
|
|
269
293
|
main :: IO ()
|
|
270
294
|
main = hspec $ do
|
|
@@ -272,10 +296,10 @@
|
|
|
272
296
|
it "returns greeting" $ do
|
|
273
297
|
hello `shouldBe` "Hello, World!"
|
|
274
298
|
```
|
|
275
|
-
実行(失敗): `
|
|
276
|
-
2. **Green**: `src/
|
|
299
|
+
実行(失敗): `stack test`
|
|
300
|
+
2. **Green**: `src/Lib.hs` を実装.
|
|
277
301
|
```haskell
|
|
278
|
-
module
|
|
302
|
+
module Lib (hello) where
|
|
279
303
|
hello :: String
|
|
280
304
|
hello = "Hello, World!"
|
|
281
305
|
```
|
|
@@ -283,7 +307,7 @@
|
|
|
283
307
|
- `hlint .` でコードの改善案をチェック.
|
|
284
308
|
- `fourmolu -i src/**/*.hs` でコードを整形.
|
|
285
309
|
- **自動化**:
|
|
286
|
-
- `
|
|
310
|
+
- `stack test --file-watch` で変更を監視し自動テスト実行.
|
|
287
311
|
|
|
288
312
|
### 10. Clojure
|
|
289
313
|
- **起動コマンド**: `nix develop .#clojure`
|
|
@@ -383,6 +407,43 @@
|
|
|
383
407
|
- **自動化**:
|
|
384
408
|
- `scala-cli test . --watch` で変更を監視し自動テスト実行.
|
|
385
409
|
|
|
410
|
+
### 13. F#
|
|
411
|
+
- **起動コマンド**: `nix develop .#dotnet`
|
|
412
|
+
- **主要ツール**: .NET SDK, Ionide (LSP), Fantomas (Formatter)
|
|
413
|
+
- **初期化**:
|
|
414
|
+
```bash
|
|
415
|
+
# ソリューションの作成
|
|
416
|
+
dotnet new sln --name Hello
|
|
417
|
+
# ライブラリプロジェクトの作成
|
|
418
|
+
dotnet new classlib -lang "F#" -o Hello
|
|
419
|
+
# テストプロジェクトの作成
|
|
420
|
+
dotnet new xunit -lang "F#" -o Hello.Tests
|
|
421
|
+
# プロジェクトをソリューションに追加
|
|
422
|
+
dotnet sln Hello.sln add Hello/Hello.fsproj Hello.Tests/Hello.Tests.fsproj
|
|
423
|
+
# テストプロジェクトからライブラリプロジェクトへの参照を追加
|
|
424
|
+
dotnet add Hello.Tests/Hello.Tests.fsproj reference Hello/Hello.fsproj
|
|
425
|
+
```
|
|
426
|
+
- **TDDチュートリアル**:
|
|
427
|
+
1. **Red**: `Hello.Tests/Tests.fs` を修正。
|
|
428
|
+
```fsharp
|
|
429
|
+
namespace Hello.Tests
|
|
430
|
+
open Xunit
|
|
431
|
+
module Tests =
|
|
432
|
+
[<Fact>]
|
|
433
|
+
let ``Hello returns greeting`` () =
|
|
434
|
+
Assert.Equal("Hello, World!", Hello.Lib.greet())
|
|
435
|
+
```
|
|
436
|
+
実行(失敗): `dotnet test`
|
|
437
|
+
2. **Green**: `Hello/Library.fs` を実装。
|
|
438
|
+
```fsharp
|
|
439
|
+
namespace Hello
|
|
440
|
+
module Lib =
|
|
441
|
+
let greet () = "Hello, World!"
|
|
442
|
+
```
|
|
443
|
+
3. **Refactor**: `dotnet fantomas .` (インストール済みの場合) でコードを整形。
|
|
444
|
+
- **自動化**:
|
|
445
|
+
- `dotnet watch test` で変更を監視し自動テスト実行。
|
|
446
|
+
|
|
386
447
|
---
|
|
387
448
|
|
|
388
449
|
## 環境の切り替え
|
|
@@ -201,11 +201,12 @@ if dein#load_state(s:dein_dir)
|
|
|
201
201
|
call dein#add('rust-lang/rust.vim')
|
|
202
202
|
call dein#add('OmniSharp/omnisharp-vim')
|
|
203
203
|
call dein#add('OrangeT/vim-csharp')
|
|
204
|
+
call dein#add('ionide/ionide-vim')
|
|
204
205
|
call dein#add('uiiaoo/java-syntax.vim')
|
|
205
206
|
call dein#add('neovimhaskell/haskell-vim')
|
|
206
207
|
call dein#add('vim-ruby/vim-ruby')
|
|
207
208
|
call dein#add('stanangeloff/php.vim')
|
|
208
|
-
call dein#add('phpactor/phpactor', {'
|
|
209
|
+
call dein#add('phpactor/phpactor', {'on_ft': 'php'})
|
|
209
210
|
call dein#add('Olical/conjure')
|
|
210
211
|
call dein#add('clojure-vim/clojure.vim')
|
|
211
212
|
call dein#add('tpope/vim-fireplace', {'on_ft': 'clojure'})
|
|
@@ -548,3 +549,6 @@ autocmd FileType elixir setlocal expandtab shiftwidth=2 tabstop=2
|
|
|
548
549
|
|
|
549
550
|
" Scala
|
|
550
551
|
autocmd FileType scala setlocal expandtab shiftwidth=2 tabstop=2
|
|
552
|
+
|
|
553
|
+
" F#
|
|
554
|
+
autocmd FileType fsharp setlocal expandtab shiftwidth=4 tabstop=4
|