Initial commit
This commit is contained in:
95
references/shift.md
Normal file
95
references/shift.md
Normal file
@@ -0,0 +1,95 @@
|
||||
# 程式碼移動 (shift)
|
||||
|
||||
> **執行方式**:以下 `agent-ide` 指 `node ${PLUGIN_ROOT}/bin/agent-ide.js`
|
||||
> (PLUGIN_ROOT = 此 skill 所在 repo 根目錄,往上三層)
|
||||
|
||||
在檔案內或跨檔案移動程式碼行。
|
||||
|
||||
## 用法
|
||||
|
||||
```bash
|
||||
# 同檔案內移動
|
||||
agent-ide shift src/file.ts --from 2 --to 5 --position 10 --dry-run
|
||||
|
||||
# 移到新檔案
|
||||
agent-ide shift src/old.ts --from 1 --to 3 --target src/new.ts --position 1
|
||||
```
|
||||
|
||||
## 參數
|
||||
|
||||
| 參數 | 說明 |
|
||||
|------|------|
|
||||
| `<file>` | 來源檔案路徑 |
|
||||
| `--from` | 起始行號 |
|
||||
| `--to` | 結束行號 |
|
||||
| `--position` | 目標位置行號 |
|
||||
| `--target` | 目標檔案(跨檔案移動) |
|
||||
| `--dry-run` | 預覽模式,不實際執行 |
|
||||
| `--format` | 輸出格式:`json`、`summary`、`diff` |
|
||||
|
||||
## 輸出格式
|
||||
|
||||
### diff(預設)
|
||||
|
||||
```diff
|
||||
--- a/src/utils/string-utils.ts
|
||||
+++ b/src/utils/string-utils.ts
|
||||
@@ -2,10 +2,12 @@
|
||||
* String Utils
|
||||
*/
|
||||
|
||||
-export function capitalize(str: string): string {
|
||||
- if (!str) {
|
||||
- return str;
|
||||
- }
|
||||
+export function capitalize(str: string): string {
|
||||
+ if (!str) {
|
||||
+ return str;
|
||||
+ }
|
||||
+ return str.charAt(0).toUpperCase() + str.slice(1).toLowerCase();
|
||||
+}
|
||||
|
||||
Summary: 1 file, 10 changes, (+6 -4)
|
||||
```
|
||||
|
||||
### summary
|
||||
|
||||
```
|
||||
Moved 6 lines within file (5-10 → 15)
|
||||
|
||||
Files: 1
|
||||
Changes: 10 (+6 -4)
|
||||
|
||||
Files:
|
||||
src/utils/string-utils.ts: lines moved (+6 -4)
|
||||
```
|
||||
|
||||
### json
|
||||
|
||||
```json
|
||||
{
|
||||
"command": "shift",
|
||||
"success": true,
|
||||
"files": [
|
||||
{
|
||||
"filePath": "src/file.ts",
|
||||
"hunks": [
|
||||
{
|
||||
"header": "@@ -2,10 +2,10 @@",
|
||||
"lines": [
|
||||
{ "type": "delete", "lineNumber": 2, "content": " function oldPosition() {" },
|
||||
{ "type": "add", "lineNumber": 10, "content": " function oldPosition() {" }
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"summary": { "totalFiles": 1, "totalChanges": 2 }
|
||||
}
|
||||
```
|
||||
|
||||
## 使用場景
|
||||
|
||||
- 重新排列函數順序
|
||||
- 將程式碼片段移到新檔案
|
||||
- 整理程式碼結構
|
||||
Reference in New Issue
Block a user