[sublime text] IMGUI auto complete

Vespan

loneliness
Автор темы
Проверенный
2,102
1,631
imgui auto complete

1680786674998.png

result:
1680786691448.png


1680786754860.png

result:
1680786763614.png



установка:
1680786955690.png
1680787038078.png
(создать папку и там кинуть файл из темы) = working
 

Вложения

  • imgui.sublime-completions.7z
    10.4 KB · Просмотры: 48

ARMOR

kjor32 is legend
Модератор
4,843
6,061
Вау! Круто! Молодец!
А теперь перепиши под мимгуи.
 
  • Нравится
Реакции: Sadow

Vespan

loneliness
Автор темы
Проверенный
2,102
1,631
Вау! Круто! Молодец!
А теперь перепиши под мимгуи.
Lua:
    local code = ''
    local file = io.open('moonloader/lib/imgui.lua','r')
    code = (file:read('*a') )
    file:close()
    code = code:match('namespace ImGui%s*\n%s*{%s*\n(.+)\n%s+// Channels\n')
    local text = '{scope = "source.lua",completions = {'
    for n in code:gmatch('[^\n]+') do
        if n:find('IMGUI_API %S+') then
            local annotation = n:match('IMGUI_API (%S+)')
            n = n:gsub('    IMGUI_API %S+%s+',''):gsub('%s+//.+$',''):gsub('%s+%S+%(%d+%)',''):gsub(';',''):gsub('^%s+',''):gsub('%s+//','')
            -- text = text .. ('{"%s","%s"},\n'):format(text,'123')
            text = text .. '{trigger="imgui.'..n:gsub('%(.+%)',''):gsub('%"',"'") ..'",content="'..n:gsub('%"',"'") ..'",annotation="'..annotation..'"},\n'
        end
    end
    text = text .. '}}'
    local f,err = load('return '..text)
    print(err)
    local t = f()
    for k,v in pairs(imgui) do
        if type(v) == 'table' then
            for kk,vv in pairs(imgui[k]) do
                if type(vv) == 'string' or type(vv) == 'number' then
                    print(k,kk,vv)
                    table.insert(t.completions,{
                        trigget = 'imgui.'..k,
                        content = 'imgui.'..k..'.'..kk,
                        annotation = k..'-'..kk..'('..vv..')',
                    })
                end
            end
        end
    end
    local t = encodeJson(f())

    local f = io.open('moonloader/1.txt','w')
    f:write(text):close()
выглядит как залупа, но лучше чем вручную переписывал бы)

умеешь меня напугать..
 

Vespan

loneliness
Автор темы
Проверенный
2,102
1,631
Ура, сниппеты для саблайма!!1
кому как, но мне всегда был удобен SB, вот вчера пробывал VSC/VS Codium и нихуя не пошло, срака полная
без плагинов - да, SB залупа, а так надристал всяких нужных плагинов и нормально
1680793987817.png
 
  • Эм
  • Влюблен
Реакции: chapo и genius.company

Vespan

loneliness
Автор темы
Проверенный
2,102
1,631
сделал еще под SAMP.lua

1680879305776.png

result:
1680879321984.png
 

Вложения

  • moonloader-events-lua.7z
    5.2 KB · Просмотры: 36
Последнее редактирование:
  • Вау
Реакции: genius.company

chapo

🫡 В армии с 17.10.2023. В ЛС НЕ ОТВЕЧАЮ
Друг
8,763
11,199