Commit graph

20 commits

Author SHA1 Message Date
Zachary Yedidia
8a58506c72 Add much better autocompletion for commands 2016-08-17 13:49:37 -04:00
Zachary Yedidia
563484ffc9 Clean up go plugin 2016-08-16 13:52:42 -04:00
Zachary Yedidia
b42aba05a0 Fix recursive issue with go plugin 2016-08-16 13:46:33 -04:00
Zachary Yedidia
ed31d37e74 Change plugin callbacks to not only happen when a keybinding triggers the action 2016-08-16 11:43:36 -04:00
Zachary Yedidia
ddcebe4946 Fix issue with autoclose plugin 2016-07-24 16:19:41 -04:00
Zachary Yedidia
e6adc173f3 Fix issue with autoclose plugin 2016-06-22 21:03:40 -04:00
Zachary Yedidia
6665834cca Add autoclose plugin to handle autoclose for brackets, quotes etc...
The plugin adds an option `autoclose` to configure whether or not you
would like quotes, brackets etc... to be automatically closed. The
option is enabled by default.

Closes #176
2016-06-22 13:54:42 -04:00
Zachary Yedidia
77b6c2c486 Auto prefix for plugin functions
YOu no longer have to prefix all functions in a plugin with the plugin
name (linter_onSave). This will now be done automatically using lua's
setfenv. When passing a function as a callback to a editor function,
make sure to prefix the plugin name (linter.onExit, or go.goimports) so
that micro knows which plugin to call the function from.
2016-06-21 17:49:57 -04:00
Zachary Yedidia
d2277a376a Add support for job control
This commit adds support for job control (running processes
asynchronously from plugins) with the JobStart, JobSend, and JobStop
functions (copying neovim's job control).

This commit also makes the linter plugin work asynchronously, so the
editor won't be frozen while the linter checks your code for errors.
2016-06-15 11:19:00 -04:00
Zachary Yedidia
57f769c9a1 Don't display the tab bar if only one tab is open 2016-06-08 13:29:24 -04:00
Zachary Yedidia
7adcb13c08 Add support for user-created commands
Plugins can now create their own commands using the `MakeCommand`
function. Plugins can also now create their own keybindings with the
`BindKey` function. See the go plugin for an example of `MakeCommand`.
2016-05-30 13:38:50 -04:00
Zachary Yedidia
e8d8da1443 Refactor and clean up
This commit puts in place the ability for multiple views (splits).
This commit also removes the editor bindings so that all bindings can be
rebound by the user.
I also added some more comments

This fixes #109
2016-05-28 11:32:09 -04:00
Zachary Yedidia
e2efc963b7 Simplify IsDirty check 2016-05-14 12:04:13 -04:00
Zachary Yedidia
31567c9e15 Add linter option 2016-05-05 12:53:28 -04:00
Zachary Yedidia
3cbb23bfbe Add automatic linting for Go, Python, C, D, Java, Javascript, Lua 2016-05-05 12:53:27 -04:00
Zachary Yedidia
1668e91310 Add linter plugin to easily make linters 2016-05-05 12:53:27 -04:00
Zachary Yedidia
59e71a4a0c Improved error parsing and use warnings for golint instead of errors 2016-05-05 12:53:27 -04:00
Zachary Yedidia
908bcb22ae Have go plugin create its own options 2016-05-05 12:53:27 -04:00
Zachary Yedidia
30c7a9c4a5 Refine gutter messages and add go build checking to go plugin 2016-05-05 12:53:27 -04:00
Zachary Yedidia
a333f0ade2 Add default plugins, and install go plugin by default 2016-05-05 12:53:26 -04:00