[sublime text] IMGUI auto complete

Vespan

Чешский луашер
Автор темы
Проверенный
2,119
1,720
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 · Просмотры: 53

ARMOR

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

Vespan

Чешский луашер
Автор темы
Проверенный
2,119
1,720
Вау! Круто! Молодец!
А теперь перепиши под мимгуи.
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

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

Vespan

Чешский луашер
Автор темы
Проверенный
2,119
1,720
сделал еще под SAMP.lua

1680879305776.png

result:
1680879321984.png
 

Вложения

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

chapo

чопа сребдс // @moujeek
Модератор
8,868
11,576