-- globals from micro: https://github.com/zyedidia/micro/blob/master/runtime/help/plugins.md

read_globals = {
    "import",
}

globals = {
    "VERSION",
    "init",
    "preinit",
    "postinit",
    "onSetActive",
    "onBufferOpen",
    "onBufPaneOpen",
    "onRune",
    "preRune",

    "onCursorUp",
    "onCursorDown",
    "onCursorPageUp",
    "onCursorPageDown",
    "onCursorLeft",
    "onCursorRight",
    "onCursorStart",
    "onCursorEnd",
    "onSelectToStart",
    "onSelectToEnd",
    "onSelectUp",
    "onSelectDown",
    "onSelectLeft",
    "onSelectRight",
    "onSelectToStartOfText",
    "onSelectToStartOfTextToggle",
    "onWordRight",
    "onWordLeft",
    "onSelectWordRight",
    "onSelectWordLeft",
    "onMoveLinesUp",
    "onMoveLinesDown",
    "onDeleteWordRight",
    "onDeleteWordLeft",
    "onSelectLine",
    "onSelectToStartOfLine",
    "onSelectToEndOfLine",
    "onInsertNewline",
    "onInsertSpace",
    "onBackspace",
    "onDelete",
    "onCenter",
    "onInsertTab",
    "onSave",
    "onSaveAll",
    "onSaveAs",
    "onFind",
    "onFindLiteral",
    "onFindNext",
    "onFindPrevious",
    "onDiffPrevious",
    "onDiffNext",
    "onUndo",
    "onRedo",
    "onCopy",
    "onCopyLine",
    "onCut",
    "onCutLine",
    "onDuplicateLine",
    "onDeleteLine",
    "onIndentSelection",
    "onOutdentSelection",
    "onOutdentLine",
    "onIndentLine",
    "onPaste",
    "onSelectAll",
    "onOpenFile",
    "onStart",
    "onEnd",
    "onPageUp",
    "onPageDown",
    "onSelectPageUp",
    "onSelectPageDown",
    "onHalfPageUp",
    "onHalfPageDown",
    "onStartOfLine",
    "onEndOfLine",
    "onStartOfText",
    "onStartOfTextToggle",
    "onParagraphPrevious",
    "onParagraphNext",
    "onToggleHelp",
    "onToggleDiffGutter",
    "onToggleRuler",
    "onJumpLine",
    "onClearStatus",
    "onShellMode",
    "onCommandMode",
    "onQuit",
    "onQuitAll",
    "onAddTab",
    "onPreviousTab",
    "onNextTab",
    "onNextSplit",
    "onUnsplit",
    "onVSplit",
    "onHSplit",
    "onPreviousSplit",
    "onToggleMacro",
    "onPlayMacro",
    "onSuspend",
    "onScrollUp",
    "onScrollDown",
    "onSpawnMultiCursor",
    "onSpawnMultiCursorUp",
    "onSpawnMultiCursorDown",
    "onSpawnMultiCursorSelect",
    "onRemoveMultiCursor",
    "onRemoveAllMultiCursors",
    "onSkipMultiCursor",
    "onJumpToMatchingBrace",
    "onAutocomplete",

    "preCursorUp",
    "preCursorDown",
    "preCursorPageUp",
    "preCursorPageDown",
    "preCursorLeft",
    "preCursorRight",
    "preCursorStart",
    "preCursorEnd",
    "preSelectToStart",
    "preSelectToEnd",
    "preSelectUp",
    "preSelectDown",
    "preSelectLeft",
    "preSelectRight",
    "preSelectToStartOfText",
    "preSelectToStartOfTextToggle",
    "preWordRight",
    "preWordLeft",
    "preSelectWordRight",
    "preSelectWordLeft",
    "preMoveLinesUp",
    "preMoveLinesDown",
    "preDeleteWordRight",
    "preDeleteWordLeft",
    "preSelectLine",
    "preSelectToStartOfLine",
    "preSelectToEndOfLine",
    "preInsertNewline",
    "preInsertSpace",
    "preBackspace",
    "preDelete",
    "preCenter",
    "preInsertTab",
    "preSave",
    "preSaveAll",
    "preSaveAs",
    "preFind",
    "preFindLiteral",
    "preFindNext",
    "preFindPrevious",
    "preDiffPrevious",
    "preDiffNext",
    "preUndo",
    "preRedo",
    "preCopy",
    "preCopyLine",
    "preCut",
    "preCutLine",
    "preDuplicateLine",
    "preDeleteLine",
    "preIndentSelection",
    "preOutdentSelection",
    "preOutdentLine",
    "preIndentLine",
    "prePaste",
    "preSelectAll",
    "preOpenFile",
    "preStart",
    "preEnd",
    "prePageUp",
    "prePageDown",
    "preSelectPageUp",
    "preSelectPageDown",
    "preHalfPageUp",
    "preHalfPageDown",
    "preStartOfLine",
    "preEndOfLine",
    "preStartOfText",
    "preStartOfTextToggle",
    "preParagraphPrevious",
    "preParagraphNext",
    "preToggleHelp",
    "preToggleDiffGutter",
    "preToggleRuler",
    "preJumpLine",
    "preClearStatus",
    "preShellMode",
    "preCommandMode",
    "preQuit",
    "preQuitAll",
    "preAddTab",
    "prePreviousTab",
    "preNextTab",
    "preNextSplit",
    "preUnsplit",
    "preVSplit",
    "preHSplit",
    "prePreviousSplit",
    "preToggleMacro",
    "prePlayMacro",
    "preSuspend",
    "preScrollUp",
    "preScrollDown",
    "preSpawnMultiCursor",
    "preSpawnMultiCursorUp",
    "preSpawnMultiCursorDown",
    "preSpawnMultiCursorSelect",
    "preRemoveMultiCursor",
    "preRemoveAllMultiCursors",
    "preSkipMultiCursor",
    "preJumpToMatchingBrace",
    "preAutocomplete",
}
