MO5QZNU5MCKNZSIAXL3KF5TLGA5NVSFBZU2IA3L5WUCPVAUYC5GQC LVGODUR4JTC7AT6B5QZK6QV35VW3L6RFSLCNKQSSA2FGTCYROUTQC LRDM35CEK3OHXOTB7TEFJRL7P6PQWO5ZG3F2BVA7DIDFHBPJQ7KAC PNBKVYZ4ANUAZNQN6KEWYNDF7552ROZPNAPRJE7Q6O7ZZJMJ3S3QC 2DVVKKVA6PJ7VKYLGPQ22AXUB6ZWFMPWB445PRDZJDNLURUFDNDQC FS2ITYYHBLFT66YUC3ENPFYI2HOYHOVEPQIN7NQR6KF5MEK4NKZAC 6PPPVJKRJ2GPFYUIGLNHJLOQKZGRZ27JMSBFWJ5GGQAQ7V7CQOHAC D4FEFHQCSILZFQ5VLWNXAIRZNUMCDNGJSM4UJ6T6FDMMIWYRYILQC R5QXEHUIZLELJGGCZAE7ATNS3CLRJ7JFRENMGH4XXH24C5WABZDQC Run this app from the terminal, [passing its directory to LÖVE](https://love2d.org/wiki/Getting_Started#Running_Games)with a file path to edit.
To run from the terminal, [pass this directory to LÖVE](https://love2d.org/wiki/Getting_Started#Running_Games),optionally with a file path to edit.```$ path/to/love path/to/broadsheet.love path/to/file```
initialize_editors = function(font_height, filename, screen_top)Editors = {}love.graphics.setFont(love.graphics.newFont(font_height))-- initialize multiple editor widgetslocal emwidth = App.newText(love.graphics.getFont(), 'm'):getWidth()local editor_width = 40*emwidthlocal width_remaining = App.screen.width - Margin_left - Margin_rightlocal left = Margin_leftrepeatlocal editor = edit.initialize_state(Margin_top, left, left + math.min(editor_width, width_remaining), font_height, math.floor(font_height*1.3))table.insert(Editors, editor)width_remaining = width_remaining - editor_width - Margin_leftleft = left + editor_width + Margin_leftuntil width_remaining < editor_width-- have them all operate on the file's linesif filename thenlove.window.setTitle('broadsheet.love - ' .. filename)Editors[1].filename = filenameload_from_disk(Editors[1])endText.redraw_all(Editors[1])for e=2,#Editors dolocal editor = Editors[e]editor.lines = Editors[1].linesText.redraw_all(editor) -- TODO: share fragments between editorsendEditors[1].screen_top1 = screen_topresync_editors()end
{"initialize_editors":110,"Filename":85,"on.draw":105,"Screen_top":87,"Editors":6,"on.text_input":69,"resync_editors":107,"on.resize":98,"fw_parent":109,"on.key_release":15,"fw_app":"broadsheet","Cursor_editor":16,"on.save_settings":88,"on.mouse_press":63,"Font_height":86,"on.mouse_release":59,"on.load_settings":95,"on":1,"on.initialize":109,"on.file_drop":108,"on.keychord_press":99}
on.initialize = function(arg)if #arg == 0 or arg[1] == Filename theninitialize_editors(Font_height, Filename, Screen_top)elseinitialize_editors(Font_height, arg[1], {line=1, pos=1})endend
{"initialize_editors":96,"Filename":85,"on.draw":105,"Screen_top":87,"Editors":6,"on.text_input":69,"resync_editors":107,"on.resize":98,"fw_parent":108,"on.key_release":15,"fw_app":"broadsheet","Cursor_editor":16,"on.save_settings":88,"on.mouse_press":63,"Font_height":86,"on.mouse_release":59,"on.load_settings":95,"on":1,"on.initialize":109,"on.file_drop":108,"on.keychord_press":99}