-
Notifications
You must be signed in to change notification settings - Fork 303
300 New Komodo API
Nathan Rijksen edited this page Aug 13, 2015
·
6 revisions
Define a better core editor API. Make it easily accessible, easy to use and ensure it's properly documented.
Examples (conceptual):
- ko.views.manager.currentView (really? ain't that a little verbose?), how about ko.editor, or ko.currentEditor?
- make a lightweight wrapper around Scintilla, to provide common operations like: next word, nextStylingPosition, isIdentifier, isKeyword...
- ensure there are events dispatched for common editor operations - text modified, paste, keypress, scrolling, resize
Concept
Planned API's
-
menu, toolbar
- add(label, fn, icon)
-
keybindings (bug 95463)
- add(sequence, fn|command)
- remove(sequence)
-
editor (more in bug 96416)
- text
- position
- anchor
- linenumber
- nextStyle(pos) -> returns pos, stylename where style next changes
-
runcommands
- run(cmd) > returns output retval/stdout/stderr values
-
run output
- Syntax Highlight
- replaceText
- append
-
Commands
- Register Commands
- Get Commands
JetPack API's to Reuse if possible
- clipboard
- get()
- put()
- events
- on(name)
- off(name)
- io/file
- open(path, mode) > returns a stream object
- io/stream
- read()
- write(data)