HZIFHN7TRXF36OU6MSKZAKIZMAF3JEVYNQRFUXXOOUPDKRH3Q2AQC 3YMWWBSWUXL3YZJ2HNJISCEQ2364J5VNTDXGDVTDKIJSC7OSTDOAC ZO2QM6I3LAT2MACGESCQS24MWGPHDPPIQHDHCRFB42E7WAQ4CTRAC YIDJVKHDBS5DUXDV5TLW7K7QWFVUBFQJBQG5FDWCJWK3QRT7GNOAC QUT27DGW2IWVLYF3COJP43A37OHKFIP7AEFW64AKLGZ2VZRUURGAC 5NW2BWIVOQORVCENEAFXFTOHB7GGHDLMJHEM5RPUA6UOL2YBOT3QC R5QXEHUIZLELJGGCZAE7ATNS3CLRJ7JFRENMGH4XXH24C5WABZDQC KKMFQDR43ZWVCDRHQLWWX3FCWCFA3ZSXYOBRJNPHUQZR2XPKWULAC GZ5WULJVEZJJQPQPSQZE7CEPIYPJ2BJDYUJBMZRA5HLOO7TE3DOQC SDEY7LFJ4LY735OZAJ6X5Y2SE3MFBT4X4TWLHVW3SS2JAK757E6QC OI4FPFINEROK6GNDEMOBTGSPYIULCLRGGT5W3H7VLM7VFH22GMWQC QZMNJNG23EUPL7MAAS3IMXP7PX6YXYNP3EUPPY7D6KKMK5F5V7VAC AOZX2G5FVANPHTV74V6YR7SNTMUD4F4IYN53OGKYHUWBCCWF5S4QC U2ERNHWYM73X2EJWQLDXZOR2PVOOBIJ2IMWZKAKXTC7BP4YW3YPAC JOPVPUSAMMU6RFVDQR4NJC4GNNUFB7GPKVH7OS5FKCYS5QZ53VLQC QEXZHD2VPCM4TAPP7PR2K2PIR4BVES5IZWC3T6ZRNJWKWOXFILNQC XTWZNKI5GRAG3QJ5O234S5ZHPM6LOX6QQTTHP3V6NOP3M3SJHXJAC VUPGHZX5E3EN7757QF36AWOODSBQC4HZACRPZEDGCEOL7LELB4SQC SVSD5NO3MQFKEFX4Y34OT5OO7SF5PK3PODCYZ4DUOM4OH5UTWWCAC ECUKZUSFVKW6Z4GOE3G4CEZRIOJR5XF5OWZSDNEHOJVYHTG24DLAC App.color(Line_number_color)love.graphics.print(line_index, State.left-Line_number_width*App.width('m')+10,y)-- render any highlights-- render link decorationslocal s,e,filename = unpack(link_offsets)local lo, hi = Text.clip_wikiword_with_screen_line(line, line_cache, i, s, e)if lo thenbutton(State, 'link', {x=State.left+lo, y=y, w=hi-lo, h=State.line_height, color={1,1,1},icon = icon.hyperlink_decoration,onpress1 = function()if file_exists(filename) thensource.switch_to_file(filename)endend,})for _,link_offsets in ipairs(line_cache.link_offsets) doinitialize_color()
Line_number_color = {r=0.6, g=0.6, b=0.6}button(State, 'draw', {x=4, y=y+4, w=12,h=12, color={1,1,0},icon = icon.insert_drawing,onpress1 = function()Drawing.before = snapshot(State, line_index-1, line_index)table.insert(State.lines, line_index, {mode='drawing', y=y, h=256/2, points={}, shapes={}, pending={}})table.insert(State.line_cache, line_index, {})if State.cursor1.line >= line_index thenState.cursor1.line = State.cursor1.line+1endschedule_save(State)record_undo_event(State, {before=Drawing.before, after=snapshot(State, line_index-1, line_index+1)})end,})Icon_color = {r=0.7, g=0.7, b=0.7} -- color of current mode icon in drawingsHelp_color = {r=0, g=0.5, b=0}Help_background_color = {r=0, g=0.5, b=0, a=0.1}
Line_number_width = 3 -- in emsEditor_state = edit.initialize_state(Margin_top, Margin_left + Line_number_width*App.width('m'), right, settings.font_height, math.floor(settings.font_height*1.3))Editor_state = edit.initialize_state(Margin_top, Margin_left + Line_number_width*App.width('m'), App.screen.width-Margin_right)Editor_state.filename = 'run.lua'Editor_state.filename = settings.filename-- called both in tests and real runfunction source.initialize_globals()-- tests currently mostly clear their own stateShow_log_browser_side = falseFocus = 'edit'Show_file_navigator = falseFile_navigation = {
Editor_state = edit.initialize_state(Margin_top, Margin_left, right, settings.font_height, math.floor(settings.font_height*1.3))
Editor_state = edit.initialize_state(Margin_top, Margin_left + Line_number_width*App.width('m'), right, settings.font_height, math.floor(settings.font_height*1.3))
Editor_state = edit.initialize_state(Margin_top, Margin_left, App.screen.width-Margin_right)
Editor_state = edit.initialize_state(Margin_top, Margin_left + Line_number_width*App.width('m'), App.screen.width-Margin_right)