Для подсветки кода лучше всего подходит синтаксис EmmyDoc, плагин с которым есть для Visual Studio Code и IntelliJ IDEA.
Visual Studio Code
- Устанавливаем Visual Studio Code
- Устанавливаем Java SE Development Kit 8u211
- Перезагружаемся "Win+R -> shutdown -r -t 0"
- Утанавливаем EmmyLua
- Открываем %username%\.vscode\extensions\tangzx.emmylua-0.2.6\res\std в проводнике
- Копируем туда файлы разметки
- Перезапускаем редактор
- Сохраняем файл с разрешением .lua и наслаждаемся
Так же можете воспользоваться способом пользователя prog, описанным в этом комментарии.
IntelliJ IDEA
- Устанавливаем IntelliJ IDEA
- Открываем дополнения и устанавливаем EmmyLua
- Если хотите отключить всё лишнее, то снимите галку со всех плагинов кроме следующих:
- Создаём новый lua проэкт
- Нажимаем Ctrl+Alt+Shift+S
- Указываем путь к файлам разметки
- Создаём файл с разрешением .lua и наслаждаемся
Ред. prog
Ну и что-то вроде warcraft-vscode или один из его аналогов, чтобы напрямую с картой работать, раз уж статья в разделе варкрафта, а не чистого Lua.
Ред. prog
Ред. nazarpunk
И даже больше - там явно внутри есть даже своя либа под jass нативки, как оказалось, осталось понять как её подключить, выяснить насколько она актуальная и при необходимости выдать парсером данные в нужном формате и скормить туда.
Ред. prog
И после этого в воркспейсе или глобально подровнять конфиг "Lua.workspace.preloadFileSize" поставить вместо стандартных 300 достаточно большое число чтобы хватило на наши файлы, я поставил 600. Все, после этого не нужно даже руками открывать эти файлы чтобы их подхватило. Единственный минус - если проектов несколько, то для каждого нативки отдельно обновлять придется при обновах вара.
Ред. nazarpunk
Ред. prog
Ред. prog
Ред. nazarpunk
Ред. prog
Ред. prog
Обновлены файлы разметки
Ред. prog
SuicidePlayer
SuicidePlayerUnits
CaptainInCombat
GetUnitCountEx
TownCountEx
BasicExpansion
StartUnit
SingleMeleeAttack
code - нигде не обьявлен
null в 12288 строке
integer - дублирование класса
code - нигде не обьявлен
В папке с рефоржем их нет.