{"action":"closed","issue":{"url":"https://api.github.com/repos/Alexey-T/CudaText/issues/462","repository_url":"https://api.github.com/repos/Alexey-T/CudaText","labels_url":"https://api.github.com/repos/Alexey-T/CudaText/issues/462/labels{/name}","comments_url":"https://api.github.com/repos/Alexey-T/CudaText/issues/462/comments","events_url":"https://api.github.com/repos/Alexey-T/CudaText/issues/462/events","html_url":"https://github.com/Alexey-T/CudaText/issues/462","id":153431328,"number":462,"title":"(wish, API) [PROC_GET_COMMAND] without [PROC_GET_COMMAND_PLUGIN]","user":{"login":"kvichans","id":7419630,"avatar_url":"https://avatars.githubusercontent.com/u/7419630?v=3","gravatar_id":"","url":"https://api.github.com/users/kvichans","html_url":"https://github.com/kvichans","followers_url":"https://api.github.com/users/kvichans/followers","following_url":"https://api.github.com/users/kvichans/following{/other_user}","gists_url":"https://api.github.com/users/kvichans/gists{/gist_id}","starred_url":"https://api.github.com/users/kvichans/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kvichans/subscriptions","organizations_url":"https://api.github.com/users/kvichans/orgs","repos_url":"https://api.github.com/users/kvichans/repos","events_url":"https://api.github.com/users/kvichans/events{/privacy}","received_events_url":"https://api.github.com/users/kvichans/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Alexey-T/CudaText/labels/talk","name":"talk","color":"bfe5bf"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2016-05-06T11:22:03Z","updated_at":"2016-05-23T07:29:29Z","closed_at":"2016-05-23T07:29:29Z","body":"Есть два API-запроса для получения списков доступных команд\r\n`app_proc(PROC_GET_COMMAND, str(n))`\r\n`app_proc(PROC_GET_COMMAND_PLUGIN, str(n))`\r\nС их помощью можно сформировать два списка: команд ядра и команд из плагинов.\r\nСейчас команды плагинов **тоже** входят в список *команд ядра*, но имеют в нем отформатированные имена и недостаточные описания.\r\nПримеры из моего Куд\r\n1) Недостаточное описание:\r\n`app_proc(PROC_GET_COMMAND, '424')` дает \r\n`(6501, 'plugin: Tools: sw', 'F8', '')`\r\n`app_proc(PROC_GET_COMMAND_PLUGIN, '101')` дает \r\n`('Tools: sw', 'cuda_exttools', 'run', '333982', '')`\r\nБез '333982' информация о этой команде только мешает\r\n2) Измененное имя\r\n`app_proc(PROC_GET_COMMAND, '395')` дает \r\n`(6471, 'plugin: Find in Files: Find in files...', 'Ctrl+Alt+F', '')`\r\n`app_proc(PROC_GET_COMMAND_PLUGIN, '71')` дает \r\n`('&Find in Files\\\\&Find in files...', 'cuda_find_in_files', 'show_dlg', '', '')`\r\n\r\nМожно ли избавиться от плагин-комманд в ответах от `app_proc(PROC_GET_COMMAND)`?\r\n\r\nОптимальное решение: **использовать второй параметр** у app_proc, чтобы явно указать, что плагин-команды не нужны.\r\n\r\nИначе придется как-то разбираться по именам, чтобы отфильтровать. Например, надеяться, что все команды ядра, которые начинаются на `'plugin: '`, на самом деле не из ядра. Это слабое решение. Нужно согласовывать написание этой строковой константы между ядром и плагинами. Например, она может измениться при локализации."}}
{"actor":{"display_login":"kvichans"}}