SciTE (Scintilla based Text Editor) — кроссплатформенный, компактный текстовый редактор с реализованным сворачиванием кода (для многих языков, но для ассемблера я не смог настроить, поставьте в известность если у кого-то получится), подсветкой синтаксиса и другими полезными функциями. SciTe — переносимое приложение. Просто распакуйте 64-разрядную переносимую версию для Windows, что было нужно, я уже настроил.ИнтерфейсИнтерфейс SciTE однооконный, многодокументный, с использованием вкладок для переключения между открытыми файлами. Присутствуют меню, панель инструментов, панель вкладок и панель статуса. Существуют файлы локализации для нескольких десятков языков, в том числе русского. Новые файлы локализации создаются переводом файла «locale.properties».НастройкаSciTE настраивается редактированием файлов конфигурации через раздел меню «Настройки». Графический интерфейс настройки отсутствует, за исключением настроек отступа. Также возможности SciTE могут быть расширены с помощью скриптов на языке Lua, которые выполняются с помощью встроенного интерпретатора Lua 5.1.Работа с файламиSciTE позволяет открывать и сохранять файлы как в системной кодировке, так и в Unicode (UTF-8 и UTF-16). Возможен экспорт файлов в форматах HTML, RTF, PDF, LaTeX, XML с сохранением подсветки синтаксиса; Существует возможность сохранять и загружать сессию — набор открытых файлов. Это позволяет использовать SciTE для работы с различными проектами, состоящими из большого числа файлов. Существует ограничение на количество одновременно открытых файлов: максимальное значение задаётся в настройках и не может превышать 100.Редактирование текстаОсобенности реализации отображения текста в SciTE: возможность буферизации графики, чтобы избежать мерцания при прорисовке символов; одновременное использование различных, в том числе и пропорциональных, шрифтов; быстрое изменение размера шрифтов; отображение номеров строк; подсветка синтаксиса для большого количества языков программирования; фолдинг, то есть сворачивание и разворачивание структурных блоков текста (классов, функций, циклов и т. п.); Особенности реализации редактирования: автоматическая установка отступов; подсветка парных или непарных (незакрытых) скобок; автодополнение (автоматическое завершение) используемых в файле имён типов, функций, переменных; всплывающие подсказки о параметрах функций; установка закладок; быстрый поиск по файлу и фиксируемое цветовое выделение выражения под курсором, клавиатурная навигация по выделенным фрагментам; подсветка всех видимых копий слова под курсором; поиск и замена текста с использованием регулярных выражений во всех открытых файлах (вместе с 2 предыдущими пунктами — инструменты упрощения рефакторинга); Подключение внешних программОбработка сообщений компилятора в SciTESciTE позволяет вызывать внешние программы для обработки открытых файлов (например, компиляторы) с помощью команд из раздела меню «Сервис». Команды могут быть настроены пользователем и различаются в зависимости от типа обрабатываемого файла. Результаты работы отображаются в окне консоли, которое появляется в нижней (или правой) части окна SciTE. При этом сообщения об ошибках выделяются цветом. С помощью щелчка по сообщению можно перейти к соответствующей строке в редактируемом файле. Официальный сайт SciTE Русскоязычный форум поддержки Настраиваем меню на русский язык, для этого открываем SciTE, через меню «Options → Open Global Options File», открываем и редактируем файл «SciTEGlobal.properties»: найти строку #locale.properties=locale.de.properties после этой строки добавить locale.properties=locale.ru.1251.properties Содержимое asm.bat Код (Text): set masm64_path=диск:\папка1\подпапка2\...\masm64\ <-- путь к вашему masm64 set filename=%~n1 %masm64_path%bin\ml64 /Cp /c /I"%masm64_path%Include" %filename%.asm if errorlevel 1 exit if exist %1.rc ( %masm64_path%bin\RC /r /i"%masm64_path%Include" %filename%.rc ) if errorlevel 1 exit call :read_settings goto %kind_of_file% :CONSOLE if exist %1.res ( %masm64_path%bin\link /LIBPATH:"%masm64_path%Lib" /LARGEADDRESSAWARE:NO /BASE:0x400000 ^ /STUB:%masm64_path%bin\stubby.exe /entry:main /fixed /nocoffgrpinfo %filename%.obj ^ %filename%.res if exist %1.res del %1.res ) else ( %masm64_path%bin\link /SUBSYSTEM:CONSOLE /LIBPATH:"%masm64_path%Lib" ^ /entry:main %filename%.obj /LARGEADDRESSAWARE:NO /BASE:0x400000 ^ /STUB:%masm64_path%\bin\stubby.exe ) if errorlevel 1 exit goto exit1 :GUI if exist %1.res ( %masm64_path%bin\link /SUBSYSTEM:WINDOWS /LIBPATH:"%masm64_path%Lib" /LARGEADDRESSAWARE:NO ^ /BASE:0x400000 /STUB:%masm64_path%bin\stubby.exe /entry:WinMain /fixed /nocoffgrpinfo ^ %filename%.obj %filename%.res if exist %1.res del %1.res ) else ( %masm64_path%bin\link /SUBSYSTEM:WINDOWS /LIBPATH:"%masm64_path%Lib" /LARGEADDRESSAWARE:NO ^ /BASE:0x400000 /STUB:%masm64_path%bin\stubby.exe /entry:WinMain /fixed /nocoffgrpinfo ^ %filename%.obj ) if errorlevel 1 exit goto exit1 :DLL if exist %1.res ( %masm64_path%bin\link /SUBSYSTEM:WINDOWS /LIBPATH:%masm64_path%lib /ENTRY:DllMain /DLL ^ /section:.bss,S /section:.data,S /stub:%masm64_path%bin\stubby.exe %filename%.obj %filename%.res ^ /DEF:%filename%.def if exist %1.res del %1.res ) else ( %masm64_path%bin\link /SUBSYSTEM:WINDOWS /LIBPATH:%masm64_path%lib /ENTRY:DllMain /DLL ^ /section:.bss,S /section:.data,S /stub:%masm64_path%bin\stubby.exe %filename%.obj ^ /DEF:%filename%.def ) if errorlevel 1 exit del %filename%.exp :exit1 del %filename%.obj exit :read_settings for /f "eol=# tokens=2-3" %%A in (%filename%.asm) do ( set kind_of_file=%%A if %%B == # exit /b ) exit /b В файле asm.properties поправьте строку Код (Text): masm64=d:\masm39 на ваш путь к masm64 Структура папки masm64 на моем компьютере Кусок файла asm.properties отвечающий за компиляцию (Ctrl+F7), запуск на исполнение exe-файла (F5), запуск x64dbg и exe-файла (Ctrl+0), запуск ResHacker (Ctrl+1) Код (Text): command.compile.$(file.patterns.asm)=$(masm64)\bin\asm.bat $(FileName) command.go.$(file.patterns.asm)=cmd /c cd $(FileDir) && start $(FileName).exe command.name.0.$(file.patterns.asm)=x64dbg command.0.$(file.patterns.asm)=$(masm64)\x64\x64dbg $(FileDir)\$(FileName).exe command.name.1.$(file.patterns.asm)=Resource Hacker command.1.$(file.patterns.asm)=$(masm64)\ResourceHacker\ResHacker $(FileDir)\$(FileName).exe