| 1 | # Command Melody (c:) — каталог корней ADR 0109: [[melody_root]] + опционально [[tail_wire_class]]. |
| 2 | # Оверлей: IntentMelody/intent-melody-aliases.toml рядом с exe (как Hotkeys/hotkeys.toml). |
| 3 | # Норматив: docs/intent-melody-language-v1.md, ADR 0060 (аккорд), ADR 0109. |
| 4 | |
| 5 | melody_catalog_schema_version = 1 |
| 6 | |
| 7 | # ------------------------------------------------------------------------------ |
| 8 | # Провода хвоста (tail wire): как резать остаток после slug. |
| 9 | # ------------------------------------------------------------------------------ |
| 10 | |
| 11 | [[tail_wire_class]] |
| 12 | id = "url_remainder" |
| 13 | kind = "single_remainder" |
| 14 | |
| 15 | [[tail_wire_class]] |
| 16 | id = "int_chain_colon_space" |
| 17 | kind = "delimited_slots" |
| 18 | # Разделители между слотами: ":" или ";" (в аккорде без TextBox «;» без Shift надёжнее) или пробел. |
| 19 | between_slots_any_of = [":", ";", " "] |
| 20 | |
| 21 | # ------------------------------------------------------------------------------ |
| 22 | # Parametric — хвост после slug (URL, диапазоны строк, …). |
| 23 | # ------------------------------------------------------------------------------ |
| 24 | |
| 25 | [[melody_root]] |
| 26 | # c:wai[:url] — веб-портал AI |
| 27 | slug = "wai" |
| 28 | command_id = "show_web_ai_portal_page" |
| 29 | shape = "parametric" |
| 30 | palette_hint_slug = "wai-url" |
| 31 | palette_usage_hint = "c:wai:<адрес> - веб-портал AI; адрес можно без схемы (или c:wai: для страницы по умолчанию)" |
| 32 | palette_usage_category = "Web AI Portal" |
| 33 | show_usage_hint_if_bare_slug = false |
| 34 | tail_signature = "<url:url>" |
| 35 | wire_class = "url_remainder" |
| 36 | chord_commit = "enter" |
| 37 | |
| 38 | [[melody_root]] |
| 39 | # c:els:<start>:<end> — выделить строки |
| 40 | slug = "els" |
| 41 | command_id = "select" |
| 42 | shape = "parametric" |
| 43 | palette_usage_hint = "c:els:<start>:<end> или одна строка c:els:<line> (в аккорде c:els;<start>;<end> / c:els;<line> — «;» без Shift) — выделить строки" |
| 44 | palette_usage_category = "Editor -> Line -> Select" |
| 45 | tail_signature = "<start:ln>:<end:ln>" |
| 46 | wire_class = "int_chain_colon_space" |
| 47 | chord_commit = "enter" |
| 48 | |
| 49 | [[melody_root]] |
| 50 | # c:eld:<start>:<end> — удалить строки |
| 51 | slug = "eld" |
| 52 | command_id = "apply_edit" |
| 53 | shape = "parametric" |
| 54 | palette_usage_hint = "c:eld:<start>:<end> или одна строка c:eld:<line> (в аккорде c:eld;<start>;<end> / c:eld;<line> — «;» без Shift) — удалить строки" |
| 55 | palette_usage_category = "Editor -> Line -> Delete" |
| 56 | tail_signature = "<start:ln>:<end:ln>" |
| 57 | wire_class = "int_chain_colon_space" |
| 58 | chord_commit = "enter" |
| 59 | |
| 60 | # ------------------------------------------------------------------------------ |
| 61 | # Simple — один slug = одна команда (без хвоста). |
| 62 | # ------------------------------------------------------------------------------ |
| 63 | |
| 64 | # --- Git --- |
| 65 | |
| 66 | [[melody_root]] |
| 67 | slug = "gs" |
| 68 | command_id = "git_status" |
| 69 | shape = "simple" |
| 70 | |
| 71 | [[melody_root]] |
| 72 | slug = "gc" |
| 73 | command_id = "git_commit" |
| 74 | shape = "simple" |
| 75 | |
| 76 | [[melody_root]] |
| 77 | slug = "gp" |
| 78 | command_id = "git_push" |
| 79 | shape = "simple" |
| 80 | |
| 81 | [[melody_root]] |
| 82 | slug = "gsu" |
| 83 | command_id = "git_submodule" |
| 84 | shape = "simple" |
| 85 | |
| 86 | # --- Сборка и тесты --- |
| 87 | |
| 88 | [[melody_root]] |
| 89 | slug = "br" |
| 90 | command_id = "build_solution_ui" |
| 91 | shape = "simple" |
| 92 | |
| 93 | [[melody_root]] |
| 94 | slug = "bs" |
| 95 | command_id = "build_structured" |
| 96 | shape = "simple" |
| 97 | |
| 98 | [[melody_root]] |
| 99 | slug = "bt" |
| 100 | command_id = "run_tests" |
| 101 | shape = "simple" |
| 102 | |
| 103 | # --- Отладка --- |
| 104 | |
| 105 | [[melody_root]] |
| 106 | slug = "da" |
| 107 | command_id = "debug_attach" |
| 108 | shape = "simple" |
| 109 | |
| 110 | [[melody_root]] |
| 111 | slug = "dl" |
| 112 | command_id = "debug_launch" |
| 113 | shape = "simple" |
| 114 | |
| 115 | [[melody_root]] |
| 116 | slug = "dc" |
| 117 | command_id = "debug_continue" |
| 118 | shape = "simple" |
| 119 | |
| 120 | [[melody_root]] |
| 121 | slug = "dn" |
| 122 | command_id = "debug_step_over" |
| 123 | shape = "simple" |
| 124 | |
| 125 | [[melody_root]] |
| 126 | slug = "di" |
| 127 | command_id = "debug_step_into" |
| 128 | shape = "simple" |
| 129 | |
| 130 | [[melody_root]] |
| 131 | slug = "df" |
| 132 | command_id = "debug_step_out" |
| 133 | shape = "simple" |
| 134 | |
| 135 | [[melody_root]] |
| 136 | slug = "dx" |
| 137 | command_id = "debug_stop" |
| 138 | shape = "simple" |
| 139 | |
| 140 | # --- Решение и раскладка --- |
| 141 | |
| 142 | [[melody_root]] |
| 143 | slug = "so" |
| 144 | command_id = "open_solution_dialog" |
| 145 | shape = "simple" |
| 146 | |
| 147 | [[melody_root]] |
| 148 | slug = "tol" |
| 149 | command_id = "toggle_workspace_splitters_lock" |
| 150 | shape = "simple" |
| 151 | |
| 152 | # --- Чат: страница, сообщения, экспорт --- |
| 153 | |
| 154 | [[melody_root]] |
| 155 | slug = "cps" |
| 156 | command_id = "show_chat_page" |
| 157 | shape = "simple" |
| 158 | |
| 159 | [[melody_root]] |
| 160 | slug = "cs" |
| 161 | command_id = "send_chat" |
| 162 | shape = "simple" |
| 163 | |
| 164 | [[melody_root]] |
| 165 | slug = "cex" |
| 166 | command_id = "chat_export_readable" |
| 167 | shape = "simple" |
| 168 | |
| 169 | [[melody_root]] |
| 170 | slug = "ctf" |
| 171 | command_id = "fork_chat_thread" |
| 172 | shape = "simple" |
| 173 | |
| 174 | [[melody_root]] |
| 175 | slug = "amp" |
| 176 | command_id = "chat_select_prev_message" |
| 177 | shape = "simple" |
| 178 | |
| 179 | [[melody_root]] |
| 180 | slug = "amn" |
| 181 | command_id = "chat_select_next_message" |
| 182 | shape = "simple" |
| 183 | |
| 184 | [[melody_root]] |
| 185 | slug = "amt" |
| 186 | command_id = "chat_toggle_selected_thinking" |
| 187 | shape = "simple" |
| 188 | |
| 189 | [[melody_root]] |
| 190 | slug = "amh" |
| 191 | command_id = "chat_toggle_show_thinking_in_history" |
| 192 | shape = "simple" |
| 193 | |
| 194 | # --- Чат: треды --- |
| 195 | |
| 196 | [[melody_root]] |
| 197 | slug = "atp" |
| 198 | command_id = "chat_select_prev_thread" |
| 199 | shape = "simple" |
| 200 | |
| 201 | [[melody_root]] |
| 202 | slug = "atn" |
| 203 | command_id = "chat_select_next_thread" |
| 204 | shape = "simple" |
| 205 | |
| 206 | [[melody_root]] |
| 207 | slug = "ato" |
| 208 | command_id = "chat_open_selected_thread" |
| 209 | shape = "simple" |
| 210 | |
| 211 | [[melody_root]] |
| 212 | slug = "atb" |
| 213 | command_id = "chat_show_thread_overview" |
| 214 | shape = "simple" |
| 215 | |
| 216 | # --- Страницы и панели --- |
| 217 | |
| 218 | [[melody_root]] |
| 219 | slug = "ers" |
| 220 | command_id = "show_environment_readiness_page" |
| 221 | shape = "simple" |
| 222 | |
| 223 | [[melody_root]] |
| 224 | slug = "his" |
| 225 | command_id = "show_hybrid_index_page" |
| 226 | shape = "simple" |
| 227 | |
| 228 | [[melody_root]] |
| 229 | slug = "ts" |
| 230 | command_id = "show_terminal_panel" |
| 231 | shape = "simple" |
| 232 | |