SCM scmSetBufferDirty(SCM bool_scm)
Mark the current buffer dirty/clean.
Definition plugins.c:651
SCM scmListBindings(void)
List all key bindings.
Definition plugins.c:620
void loadPlugins(void)
Load Scheme plugins from "$HOME/.ze/plugins" (all .scm files).
Definition plugins.c:102
SCM scmInsertNewline(void)
Insert a newline at the cursor position.
Definition plugins.c:366
SCM scmRefreshScreen(void)
Force a screen refresh.
Definition plugins.c:523
SCM scmCloneTemplate(void)
Clone a template into the current buffer (interactive selection).
Definition plugins.c:664
SCM scmScreenSize(void)
Get the editor screen size in rows and columns.
Definition plugins.c:440
SCM scmPrompt(SCM msg_scm)
Prompt the user and return their input.
Definition plugins.c:507
SCM scmInsertChar(SCM ch_scm)
Insert a single character at the cursor.
Definition plugins.c:348
SCM scmDeleteLine(SCM idx_scm)
Delete a line by index.
Definition plugins.c:317
SCM scmGetFilename(void)
Get the current filename, if any.
Definition plugins.c:477
SCM scmSaveFile(void)
Save the current buffer to disk.
Definition plugins.c:466
SCM scmBufferDirty(void)
Check whether the current buffer has unsaved changes.
Definition plugins.c:640
SCM scmInsertText(SCM str_scm)
Insert text at the cursor position, interpreting newlines.
Definition plugins.c:331
SCM pluginsGetHook(const char *name)
Fetch a registered hook by name.
Definition plugins.c:45
SCM scmGetCursor(void)
Get current cursor position.
Definition plugins.c:390
SCM scmDeleteChar(void)
Delete the character to the left of the cursor (backspace).
Definition plugins.c:377
SCM scmSelectSyntaxForFilename(SCM path_scm)
Select syntax based on a filename, without opening the file.
Definition plugins.c:570
SCM scmInsertLine(SCM idx_scm, SCM str_scm)
Insert a new line at index.
Definition plugins.c:286
void editorExec(void)
Prompt for and evaluate a single Scheme expression (mini-REPL).
Definition plugins.c:188
SCM scmGetLine(SCM idx_scm)
Get the contents of a line by index.
Definition plugins.c:254
SCM scmSetLine(SCM idx_scm, SCM str_scm)
Replace the contents of a line.
Definition plugins.c:269
SCM scmUnbindKey(SCM keySpec)
Remove a key binding.
Definition plugins.c:601
SCM scmGetFiletype(void)
Get the current filetype name from syntax highlighting.
Definition plugins.c:587
SCM scmSetCursor(SCM x_scm, SCM y_scm)
Set cursor position, clamped to the current buffer.
Definition plugins.c:404
SCM scmBufferLineCount(void)
Get the number of lines in the current buffer.
Definition plugins.c:243
SCM scmSearchForward(SCM query_scm)
Search forward for a substring and jump to the next match.
Definition plugins.c:537
SCM scmAppendLine(SCM str_scm)
Append a new line at the end of the buffer.
Definition plugins.c:303
SCM scmSetFilename(SCM path_scm)
Set the current filename and reselect syntax highlighting.
Definition plugins.c:489
SCM scmOpenFile(SCM path_scm)
Open a file into the editor.
Definition plugins.c:453
SCM scmMoveCursor(SCM dir_scm)
Move the cursor in a direction.
Definition plugins.c:424
SCM scmBufferToString(void)
Return the entire buffer as a Scheme string.
Definition plugins.c:228
SCM scmBindKey(SCM keySpec, SCM proc)
Bind a key specification to a Scheme procedure.
Definition plugins.c:137
void initKeyBindings(void)
Initialize the in-memory key binding table.
Definition plugins.c:91
int pluginsHandleKey(unsigned char code)
If a Scheme binding exists for the key, invoke it.
Definition plugins.c:78
Core editor types, macros, and global state.