Skip to content

Commit 4d01e61

Browse files
claudesinelaw
authored andcommitted
refactor(macros): drop Macro: Load from buffer
Remove the load-from-buffer command and its hand-rolled ActionSpec[] parser. init.ts is already a robust, JS-parsed text edit surface for a macro; the load command was a parallel mechanism that re-implemented parsing by hand (and whose array extraction broke on the ShowMacro header comment). Every other path receives an already-deserialized Vec<ActionSpec> across the IPC boundary, so this drops the lone hand-parse and its bug class. Removes the Action/PromptType variants, the palette command, the orchestrator + parser + their tests, the e2e test, and the now-unused i18n keys across all locales. ShowMacro stays as a read-only ActionSpec[] view and now points at "Macro: Save to init.ts" for persistence. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01145bZm5yDoyFzbRpP3fLDD
1 parent 429e04c commit 4d01e61

23 files changed

Lines changed: 30 additions & 269 deletions

crates/fresh-editor/locales/cs.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1568,15 +1568,9 @@
15681568
"cmd.save_macro_to_init_desc": "Uložit zaznamenané makro do init.ts jako upravitelný blok defineMacro()",
15691569
"cmd.promote_macro": "Makro: Povýšit na příkaz",
15701570
"cmd.promote_macro_desc": "Převést zaznamenané makro na upravitelný příkaz init.ts, který lze rozšířit libovolným kódem",
1571-
"cmd.load_macro_from_buffer": "Makro: Načíst z bufferu",
1572-
"cmd.load_macro_from_buffer_desc": "Analyzovat aktivní buffer jako ActionSpec[] a uložit jej do registru maker",
15731571
"action.prompt_save_macro_to_init": "Uložit makro do init.ts (vyžádá si registr)",
15741572
"action.prompt_promote_macro": "Povýšit makro na příkaz init.ts (vyžádá si registr)",
1575-
"action.prompt_load_macro_from_buffer": "Načíst makro z bufferu (vyžádá si registr)",
1576-
"macro.buffer_unreadable": "Nepodařilo se přečíst aktivní buffer",
15771573
"macro.init_write_failed": "Nepodařilo se zapsat init.ts: %{error}",
1578-
"macro.load_parse_failed": "Nepodařilo se analyzovat makro z bufferu: %{error}",
1579-
"macro.loaded_from_buffer": "Makro načteno do registru '%{key}' (%{count} akcí)",
15801574
"macro.promoted_to_init": "Makro '%{key}' povýšeno na upravitelný příkaz v init.ts (znovu načteno)",
15811575
"macro.saved_to_init": "Makro '%{key}' uloženo do init.ts (znovu načteno)"
15821576
}

crates/fresh-editor/locales/de.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1568,15 +1568,9 @@
15681568
"cmd.save_macro_to_init_desc": "Ein aufgezeichnetes Makro als bearbeitbaren defineMacro()-Block in init.ts ablegen",
15691569
"cmd.promote_macro": "Makro: Zu Befehl hochstufen",
15701570
"cmd.promote_macro_desc": "Ein aufgezeichnetes Makro in einen bearbeitbaren init.ts-Befehl umwandeln, den du mit beliebigem Code erweitern kannst",
1571-
"cmd.load_macro_from_buffer": "Makro: Aus Puffer laden",
1572-
"cmd.load_macro_from_buffer_desc": "Den aktiven Puffer als ActionSpec[] parsen und in einem Makroregister speichern",
15731571
"action.prompt_save_macro_to_init": "Makro in init.ts speichern (fragt nach Register)",
15741572
"action.prompt_promote_macro": "Makro zu init.ts-Befehl hochstufen (fragt nach Register)",
1575-
"action.prompt_load_macro_from_buffer": "Makro aus Puffer laden (fragt nach Register)",
1576-
"macro.buffer_unreadable": "Aktiver Puffer konnte nicht gelesen werden",
15771573
"macro.init_write_failed": "init.ts konnte nicht geschrieben werden: %{error}",
1578-
"macro.load_parse_failed": "Makro konnte nicht aus dem Puffer gelesen werden: %{error}",
1579-
"macro.loaded_from_buffer": "Makro in Register '%{key}' geladen (%{count} Aktionen)",
15801574
"macro.promoted_to_init": "Makro '%{key}' zu einem bearbeitbaren Befehl in init.ts hochgestuft (neu geladen)",
15811575
"macro.saved_to_init": "Makro '%{key}' in init.ts gespeichert (neu geladen)"
15821576
}

crates/fresh-editor/locales/en.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -236,7 +236,6 @@
236236
"action.prompt_record_macro": "Record macro (prompts for register)",
237237
"action.prompt_save_macro_to_init": "Save macro to init.ts (prompts for register)",
238238
"action.prompt_promote_macro": "Promote macro to an init.ts command (prompts for register)",
239-
"action.prompt_load_macro_from_buffer": "Load macro from buffer (prompts for register)",
240239
"action.prompt_select_all": "Prompt select all",
241240
"action.prompt_select_next": "Prompt select next",
242241
"action.prompt_select_prev": "Prompt select previous",
@@ -661,8 +660,6 @@
661660
"cmd.save_macro_to_init_desc": "Persist a recorded macro to init.ts as an editable defineMacro() block",
662661
"cmd.promote_macro": "Macro: Promote to command",
663662
"cmd.promote_macro_desc": "Turn a recorded macro into an editable init.ts command you can extend with arbitrary code",
664-
"cmd.load_macro_from_buffer": "Macro: Load from buffer",
665-
"cmd.load_macro_from_buffer_desc": "Parse the active buffer as ActionSpec[] and store it into a macro register",
666663
"cmd.play_macro": "Play Macro",
667664
"cmd.play_macro_desc": "Play macro from a register (0-9)",
668665
"cmd.previous_buffer": "Previous Buffer",
@@ -1178,10 +1175,7 @@
11781175
"lsp.status": "LSP: %{status}",
11791176
"lsp.stop_server_prompt": "Stop LSP server: ",
11801177
"macro.empty": "Macro '%{key}' is empty",
1181-
"macro.buffer_unreadable": "Could not read the active buffer",
11821178
"macro.init_write_failed": "Failed to write init.ts: %{error}",
1183-
"macro.load_parse_failed": "Could not parse macro from buffer: %{error}",
1184-
"macro.loaded_from_buffer": "Loaded macro into register '%{key}' (%{count} actions)",
11851179
"macro.promoted_to_init": "Macro '%{key}' promoted to an editable command in init.ts (reloaded)",
11861180
"macro.saved_to_init": "Macro '%{key}' saved to init.ts (reloaded)",
11871181
"macro.no_recorded": "No macro recorded for '%{key}'",

crates/fresh-editor/locales/es.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1568,15 +1568,9 @@
15681568
"cmd.save_macro_to_init_desc": "Conservar una macro grabada en init.ts como un bloque defineMacro() editable",
15691569
"cmd.promote_macro": "Macro: Promover a comando",
15701570
"cmd.promote_macro_desc": "Convertir una macro grabada en un comando de init.ts editable que puedes ampliar con código arbitrario",
1571-
"cmd.load_macro_from_buffer": "Macro: Cargar desde el búfer",
1572-
"cmd.load_macro_from_buffer_desc": "Analizar el búfer activo como ActionSpec[] y guardarlo en un registro de macro",
15731571
"action.prompt_save_macro_to_init": "Guardar macro en init.ts (solicita el registro)",
15741572
"action.prompt_promote_macro": "Promover macro a comando de init.ts (solicita el registro)",
1575-
"action.prompt_load_macro_from_buffer": "Cargar macro desde el búfer (solicita el registro)",
1576-
"macro.buffer_unreadable": "No se pudo leer el búfer activo",
15771573
"macro.init_write_failed": "No se pudo escribir init.ts: %{error}",
1578-
"macro.load_parse_failed": "No se pudo analizar la macro del búfer: %{error}",
1579-
"macro.loaded_from_buffer": "Macro cargada en el registro '%{key}' (%{count} acciones)",
15801574
"macro.promoted_to_init": "Macro '%{key}' promovida a un comando editable en init.ts (recargado)",
15811575
"macro.saved_to_init": "Macro '%{key}' guardada en init.ts (recargado)"
15821576
}

crates/fresh-editor/locales/fr.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1568,15 +1568,9 @@
15681568
"cmd.save_macro_to_init_desc": "Conserver une macro enregistrée dans init.ts sous forme de bloc defineMacro() modifiable",
15691569
"cmd.promote_macro": "Macro : Promouvoir en commande",
15701570
"cmd.promote_macro_desc": "Transformer une macro enregistrée en une commande init.ts modifiable, extensible avec du code arbitraire",
1571-
"cmd.load_macro_from_buffer": "Macro : Charger depuis le tampon",
1572-
"cmd.load_macro_from_buffer_desc": "Analyser le tampon actif en tant qu'ActionSpec[] et l'enregistrer dans un registre de macro",
15731571
"action.prompt_save_macro_to_init": "Enregistrer la macro dans init.ts (demande le registre)",
15741572
"action.prompt_promote_macro": "Promouvoir la macro en commande init.ts (demande le registre)",
1575-
"action.prompt_load_macro_from_buffer": "Charger la macro depuis le tampon (demande le registre)",
1576-
"macro.buffer_unreadable": "Impossible de lire le tampon actif",
15771573
"macro.init_write_failed": "Échec de l'écriture de init.ts : %{error}",
1578-
"macro.load_parse_failed": "Impossible d'analyser la macro depuis le tampon : %{error}",
1579-
"macro.loaded_from_buffer": "Macro chargée dans le registre '%{key}' (%{count} actions)",
15801574
"macro.promoted_to_init": "Macro '%{key}' promue en commande modifiable dans init.ts (rechargée)",
15811575
"macro.saved_to_init": "Macro '%{key}' enregistrée dans init.ts (rechargée)"
15821576
}

crates/fresh-editor/locales/it.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1568,15 +1568,9 @@
15681568
"cmd.save_macro_to_init_desc": "Salva una macro registrata in init.ts come blocco defineMacro() modificabile",
15691569
"cmd.promote_macro": "Macro: Promuovi a comando",
15701570
"cmd.promote_macro_desc": "Trasforma una macro registrata in un comando di init.ts modificabile, estendibile con codice arbitrario",
1571-
"cmd.load_macro_from_buffer": "Macro: Carica dal buffer",
1572-
"cmd.load_macro_from_buffer_desc": "Analizza il buffer attivo come ActionSpec[] e salvalo in un registro di macro",
15731571
"action.prompt_save_macro_to_init": "Salva la macro in init.ts (richiede il registro)",
15741572
"action.prompt_promote_macro": "Promuovi la macro a comando di init.ts (richiede il registro)",
1575-
"action.prompt_load_macro_from_buffer": "Carica la macro dal buffer (richiede il registro)",
1576-
"macro.buffer_unreadable": "Impossibile leggere il buffer attivo",
15771573
"macro.init_write_failed": "Impossibile scrivere init.ts: %{error}",
1578-
"macro.load_parse_failed": "Impossibile analizzare la macro dal buffer: %{error}",
1579-
"macro.loaded_from_buffer": "Macro caricata nel registro '%{key}' (%{count} azioni)",
15801574
"macro.promoted_to_init": "Macro '%{key}' promossa a comando modificabile in init.ts (ricaricato)",
15811575
"macro.saved_to_init": "Macro '%{key}' salvata in init.ts (ricaricato)"
15821576
}

crates/fresh-editor/locales/ja.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1568,15 +1568,9 @@
15681568
"cmd.save_macro_to_init_desc": "記録したマクロを編集可能な defineMacro() ブロックとして init.ts に保存します",
15691569
"cmd.promote_macro": "マクロ: コマンドに昇格",
15701570
"cmd.promote_macro_desc": "記録したマクロを、任意のコードで拡張できる編集可能な init.ts コマンドに変換します",
1571-
"cmd.load_macro_from_buffer": "マクロ: バッファから読み込み",
1572-
"cmd.load_macro_from_buffer_desc": "アクティブなバッファを ActionSpec[] として解析し、マクロレジスタに保存します",
15731571
"action.prompt_save_macro_to_init": "マクロを init.ts に保存(レジスタを入力)",
15741572
"action.prompt_promote_macro": "マクロを init.ts コマンドに昇格(レジスタを入力)",
1575-
"action.prompt_load_macro_from_buffer": "バッファからマクロを読み込み(レジスタを入力)",
1576-
"macro.buffer_unreadable": "アクティブなバッファを読み取れませんでした",
15771573
"macro.init_write_failed": "init.ts の書き込みに失敗しました: %{error}",
1578-
"macro.load_parse_failed": "バッファからマクロを解析できませんでした: %{error}",
1579-
"macro.loaded_from_buffer": "マクロをレジスタ '%{key}' に読み込みました(%{count} アクション)",
15801574
"macro.promoted_to_init": "マクロ '%{key}' を init.ts の編集可能なコマンドに昇格しました(再読み込み)",
15811575
"macro.saved_to_init": "マクロ '%{key}' を init.ts に保存しました(再読み込み)"
15821576
}

crates/fresh-editor/locales/ko.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1568,15 +1568,9 @@
15681568
"cmd.save_macro_to_init_desc": "녹화한 매크로를 편집 가능한 defineMacro() 블록으로 init.ts에 저장합니다",
15691569
"cmd.promote_macro": "매크로: 명령으로 승격",
15701570
"cmd.promote_macro_desc": "녹화한 매크로를 임의의 코드로 확장할 수 있는 편집 가능한 init.ts 명령으로 변환합니다",
1571-
"cmd.load_macro_from_buffer": "매크로: 버퍼에서 불러오기",
1572-
"cmd.load_macro_from_buffer_desc": "활성 버퍼를 ActionSpec[]로 파싱하여 매크로 레지스터에 저장합니다",
15731571
"action.prompt_save_macro_to_init": "매크로를 init.ts에 저장 (레지스터 입력)",
15741572
"action.prompt_promote_macro": "매크로를 init.ts 명령으로 승격 (레지스터 입력)",
1575-
"action.prompt_load_macro_from_buffer": "버퍼에서 매크로 불러오기 (레지스터 입력)",
1576-
"macro.buffer_unreadable": "활성 버퍼를 읽을 수 없습니다",
15771573
"macro.init_write_failed": "init.ts 쓰기에 실패했습니다: %{error}",
1578-
"macro.load_parse_failed": "버퍼에서 매크로를 파싱할 수 없습니다: %{error}",
1579-
"macro.loaded_from_buffer": "매크로를 레지스터 '%{key}'에 불러왔습니다 (%{count}개 동작)",
15801574
"macro.promoted_to_init": "매크로 '%{key}'을(를) init.ts의 편집 가능한 명령으로 승격했습니다 (다시 불러옴)",
15811575
"macro.saved_to_init": "매크로 '%{key}'을(를) init.ts에 저장했습니다 (다시 불러옴)"
15821576
}

crates/fresh-editor/locales/pt-BR.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1568,15 +1568,9 @@
15681568
"cmd.save_macro_to_init_desc": "Persistir uma macro gravada no init.ts como um bloco defineMacro() editável",
15691569
"cmd.promote_macro": "Macro: Promover a comando",
15701570
"cmd.promote_macro_desc": "Transformar uma macro gravada em um comando do init.ts editável que você pode estender com código arbitrário",
1571-
"cmd.load_macro_from_buffer": "Macro: Carregar do buffer",
1572-
"cmd.load_macro_from_buffer_desc": "Analisar o buffer ativo como ActionSpec[] e armazená-lo em um registrador de macro",
15731571
"action.prompt_save_macro_to_init": "Salvar macro no init.ts (solicita o registrador)",
15741572
"action.prompt_promote_macro": "Promover macro a comando do init.ts (solicita o registrador)",
1575-
"action.prompt_load_macro_from_buffer": "Carregar macro do buffer (solicita o registrador)",
1576-
"macro.buffer_unreadable": "Não foi possível ler o buffer ativo",
15771573
"macro.init_write_failed": "Falha ao gravar o init.ts: %{error}",
1578-
"macro.load_parse_failed": "Não foi possível analisar a macro do buffer: %{error}",
1579-
"macro.loaded_from_buffer": "Macro carregada no registrador '%{key}' (%{count} ações)",
15801574
"macro.promoted_to_init": "Macro '%{key}' promovida a um comando editável no init.ts (recarregado)",
15811575
"macro.saved_to_init": "Macro '%{key}' salva no init.ts (recarregado)"
15821576
}

crates/fresh-editor/locales/ru.json

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1568,15 +1568,9 @@
15681568
"cmd.save_macro_to_init_desc": "Сохранить записанный макрос в init.ts как редактируемый блок defineMacro()",
15691569
"cmd.promote_macro": "Макрос: Преобразовать в команду",
15701570
"cmd.promote_macro_desc": "Превратить записанный макрос в редактируемую команду init.ts, которую можно расширить произвольным кодом",
1571-
"cmd.load_macro_from_buffer": "Макрос: Загрузить из буфера",
1572-
"cmd.load_macro_from_buffer_desc": "Разобрать активный буфер как ActionSpec[] и сохранить его в регистр макросов",
15731571
"action.prompt_save_macro_to_init": "Сохранить макрос в init.ts (запрашивает регистр)",
15741572
"action.prompt_promote_macro": "Преобразовать макрос в команду init.ts (запрашивает регистр)",
1575-
"action.prompt_load_macro_from_buffer": "Загрузить макрос из буфера (запрашивает регистр)",
1576-
"macro.buffer_unreadable": "Не удалось прочитать активный буфер",
15771573
"macro.init_write_failed": "Не удалось записать init.ts: %{error}",
1578-
"macro.load_parse_failed": "Не удалось разобрать макрос из буфера: %{error}",
1579-
"macro.loaded_from_buffer": "Макрос загружен в регистр '%{key}' (%{count} действий)",
15801574
"macro.promoted_to_init": "Макрос '%{key}' преобразован в редактируемую команду в init.ts (перезагружено)",
15811575
"macro.saved_to_init": "Макрос '%{key}' сохранён в init.ts (перезагружено)"
15821576
}

0 commit comments

Comments
 (0)