Первое что приходит в голову - вставлять как комментарий...
для такого действия есть много АПИ в СДК, например
https://www.hex-rays.com/products/ida/support/idadoc/204.shtml
0)
многострочные обычные строчные комментарии (по вашей ссылке) мне известны, но ими я пользуюсь для других случаев, а для разделения разных процедур в коде они мне не подходят, т.к. располагаются правее дизассемблированной команды с операндами, хотя работают отлично и понятным образом (обычные простые по кнопке
<:> или из Питона
set_cmt(ea, comment, 0) и повторяемые по кнопке
<;> или из Питона
set_cmt(ea, comment, 1), которые можно из Питона считывать
get_cmt(ea, 0/1) и добавлять
append_cmt(ea, comment, 0/1), удалять путем задания пустой строки).
Для комментирования целой строки (с самого начала, как мне и нужно) вроде бы есть инструменты, но полноценно разобраться с ними пока не получается...
Варианты:
1)
многострочные дополнительные строки есть и работают они отлично и понятным образом только по кнопкам (подстрочные по кнопке
<Ins> и надстрочные по кнопке
<Shift+Ins>), а из Питона понятным образом только добавляются
add_extra_line(ea, 0/1, line), но непонятно как считывать и изменять/удалять (как-то же должно быть доступно, коль через меню с кнопок возможно) -- вопрос: как?
2)
многострочные дополнительные комментарии есть и работают они отлично и понятным образом только из Питона (подстрочные
add_extra_cmt(ea, 0, comment) и надстрочные
add_extra_cmt(ea, 1, comment)), а, вот, с остальным непонятки, например:
-- как можно добавить многострочные дополнительные комментарии через меню аналогично многострочным дополнительным строкам 1)? как можно добавить привязку к горячим кнопкам скрипты добавления аналогично 1)?
-- в СДК есть функция предположительно удаления
del_extra_cmt(ea, ?), непонятен второй параметр (методом подбора при экспериментах выяснить мне пока не удалось);
-- в СДК есть функция предположительно считывания
get_extra_cmt(ea, ?), непонятен второй параметр (методом подбора при экспериментах выяснить мне пока не удалось);
-- в СДК есть функция предположительно обновления
update_extra_cmt(ea, 0/1, comment), видимых изменений нет (методом подбора при экспериментах выяснить мне пока не удалось);
-- в СДК есть функция
get_first_free_extra_cmtidx(ea, ?), непонятен второй параметр и суть выполняемого действия (методом подбора при экспериментах выяснить мне пока не удалось);
-- в СДК есть функция
delete_extra_cmts(ea, ?), непонятен второй параметр и суть выполняемого действия (методом подбора при экспериментах выяснить мне пока не удалось)
Есть ли у кого-то информация по непонятным моментам и/или примеры использования?
P.S.
забыл добавить самое интересное: если функцией
add_extra_cmt(ea, 0/1, comment) добавить многострочные дополнительные комментарии, то через меню и кнопки
<Ins> и
<Shift+Ins> с ними можно проводить действия как с многострочными дополнительными строками 1)