burtonsamograd / med Goto Github PK
View Code? Open in Web Editor NEWmed - A fork of the emacs-like text editor for the Mezzano operating system
License: MIT License
med - A fork of the emacs-like text editor for the Mezzano operating system
License: MIT License
med - Mezzano EDitor ---------------------- med is a fork of the original editor that comes with Mezzano, a Common Lisp operating system. The original editor is not so good at handling large files, so initially this fork broke the one big file it was written in into smaller ones for easier development. Original Mezzano editor.lisp code written by Henry Harrington. TODO: - minibuffer completion - pass in completion function to read-from-minibuffer - takes a string - returns a list of strings that are completions of that string - file-completion - symbol-completion - buffer-completion - command-completion - telnet - irc client - multiple windows - might just put this in a window manager - need resizeable windows - grep-buffers - save all editor threads/frames - multiple editor frame support - get minibuffer to wrap - clear bottom messages after a while - optimize or cache (memoize?) buffer current package so we can put the current file package in the modeline properly - hang when yanking, sometimes... - isearch - When typing wrong characters in isearch they are appended to the *isearch-string*. They should be just discarded - replace-string, query-replace, replace-regexp - search for regex - show-paren-mode like paren matching by bolding the matching paren - added character attributes - make redisplay render with bold font if :BOLD is set in the character attributes - auto indentation (basic electric newline?) - undo - color highlighting (hard, might want to just use italic/bold for keywords at first) - file completion during C-x C-f - symbol completion during M-: - jump/pop to/from source M-./M-* (see compiler for adding line/file information) - 'hippy' symbol completion M-/ - fill - Encoding BUG: saving gui/compositor.c caused some sort of encoding problem with the pound symbol and another one. had to revert using git. also happens on copywrite symbol in the README. -- Burton Samograd <[email protected]> 2015
Instead of defining commands purely with defun
it might make sense to use a define-command
macro similar to CLIM. For example, instead of
(defun forward-char-command ()
(move-char (current-buffer *editor)))
(set-key #\C-F 'forward-char-command key-map)
one might write
(define-editor-command (forward-char-command :keystroke #\C-F)
(move-char (current-buffer *editor*)))
making it easier to add new commands to the editor.
It would also make a handy single place to modify when adding commands that can be invoked by human-equivalent name (rather than by Lisp function name) as in ZMACS
, and commands that can prompt for arguments when used interactively as well.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.