VS Code エディタで選択した範囲のファイル絶対パス+行範囲を、Claude Code に貼り付けてそのまま解釈できる形式でクリップボードへコピーする拡張機能。
Git diff(コミット差分)画面で開いているファイルの場合はコミットIDも自動的に付加する。GitGraph などの既存拡張ではファイル名が取れなかった問題への対処が主目的。
ショートカット
| OS | キー |
|---|---|
| Windows / Linux | Ctrl+Alt+L |
| macOS | Cmd+Alt+L |
コマンドパレットからは Line Copy: Copy Path with Lines で実行可能。
出力フォーマット
| 場面 | 出力例 |
|---|---|
| 通常ファイル・単一行 | C:\repo\src\app.ts:42 |
| 通常ファイル・複数行 | C:\repo\src\app.ts:42:58 |
| Git diff・単一行 | C:\repo\src\app.ts:42 (commit abc1234) |
| Git diff・複数行 | C:\repo\src\app.ts:42:58 (commit abc1234) |
- 絶対パス + コロン区切り行範囲(Claude Code の
file_path:line_number慣例準拠) - コミットIDは Git 慣例に従い 7 文字に短縮
- 単一行のときは行番号のみ、複数行のときは
start:end
インストール(VSIX)
- Releases または配布先から
vscode-line-copy-x.x.x.vsixをダウンロード - VS Code で
Ctrl+Shift+P→ 拡張機能: VSIX からインストール を選択 - ダウンロードした
.vsixファイルを選択 → インストール完了
または CLI から:
code --install-extension vscode-line-copy-0.0.1.vsix
開発
npm install
npm run compile
F5 で Extension Development Host を起動してデバッグ。
パッケージ化
npm run package
vscode-line-copy-0.0.1.vsix が生成される。
仕組み
差分エディタの URI スキームを判定して以下のように処理する:
| スキーム | 元 | パース方法 |
|---|---|---|
file |
通常ファイル | uri.fsPath をそのまま使用 |
git |
VS Code 組み込み Git 拡張 | uri.query = JSON.stringify({path, ref}) |
git-graph |
Git Graph 拡張 | uri.query = base64(JSON.stringify({filePath, commit, repo})) |