Commit Graph

44 Commits

Author SHA1 Message Date
Zachary Yedidia
ba33802525 Use my fork of clipboard 2016-07-24 10:51:08 -04:00
Zachary Yedidia
7ae0310863 Fix draw ordering 2016-07-11 19:10:29 -04:00
Zachary Yedidia
50e22dafc4 Add some lines back 2016-07-10 13:27:28 -04:00
Zachary Yedidia
8c0983a36c Add some more comments 2016-07-10 13:26:24 -04:00
Zachary Yedidia
4a15a1d3c8 Add the ability to close splits and change splits using the mouse
This commits adds split navigation with the mouse and the ability to
close splits. You can now also open a file directly with the hsplit
and vsplit commands.
2016-07-02 17:41:23 -04:00
Zachary Yedidia
7e0286b621 Fix redrawing for splits 2016-07-02 17:41:23 -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
d32d373bff Only copy messages if there is a mouse left click (not any mouse event) 2016-06-21 17:54:36 -04:00
Zachary Yedidia
c1dadbd0c7 Fix mouse controls
Fixes #173
2016-06-19 09:02:47 -04:00
Zachary Yedidia
8be0f9c529 Clicking on messages will copy them to the clipboard
Fixes #172
2016-06-17 11:24:54 -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
cdfea45a49 Fix cursor line in true color colorschemes
Ref #171
2016-06-09 16:00:43 -04:00
Zachary Yedidia
860bc248c4 Fix resizing of tabs opened with the command line 2016-06-08 19:43:05 -04:00
Zachary Yedidia
a79e964cb6 Make tabs respond to mouse events 2016-06-08 17:47:48 -04:00
Zachary Yedidia
40affa56c7 Create tab struct and reorganize tab bar 2016-06-08 13:26:50 -04:00
Zachary Yedidia
5f19f69681 Tab bar and support for opening multiple files 2016-06-08 12:19:36 -04:00
Zachary Yedidia
72f5808025 Replace rope with lineArray 2016-06-07 11:43:28 -04:00
Zachary Yedidia
74cac8291a Screen redraw optimization
We don't have to clear the screen every time, we only have to make sure
that we erase the rest of the line that used to be on the current line.
We can still optimize a bit more by finding the longest line and drawing
to that length, but using the full width is fine for now.
2016-05-31 17:23:08 -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
1fe18eecb7 Add history navigation with up and down arrows
Fixes #145
2016-05-28 18:41:53 -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
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
908bcb22ae Have go plugin create its own options 2016-05-05 12:53:27 -04:00
Zachary Yedidia
603cec9d81 Load plugins from ~/.config/micro/plugins 2016-05-05 12:53:07 -04:00
Zachary Yedidia
eba820a9c7 Rewrite gofmt and goimports as plugins 2016-05-05 12:53:07 -04:00
Zachary Yedidia
e05e993e25 Interface with plugin.lua file 2016-05-05 11:31:59 -04:00
Zachary Yedidia
48a17a508d Use hash for savedText instead of full string 2016-05-01 19:07:54 -04:00
Zachary Yedidia
e00e0cfa3f Starting to add more mappings for arrow keys
These mappings include Alt+arrows and Shift+arrows and Alt+Shift+arrows

This commit also switches the version of tcell that micro uses to my
fork which supports alt, shift, and ctrl + arrows.
2016-04-26 09:58:56 -04:00
Zachary Yedidia
1f62ff9d80 Improve help text and move to its own file 2016-04-24 08:31:42 -04:00
Zachary Yedidia
2adaf68bd4 Rework the bindings as keys bound to actions 2016-04-23 18:25:08 -04:00
Zachary Yedidia
4f6a6866d1 Set encoding fallback to ASCII
See #45
2016-04-20 07:23:16 -04:00
Zachary Yedidia
65745a6b43 Much improved terminal mode (Ctrl-b)
This commit splits "Boss mode" into to different actions. Executing
a command with Ctrl-b will now open an interactive terminal. If you
would simply like to execute a background job in the shell, press
Ctrl-e and then type `run shell-command`.
2016-04-19 21:25:13 -04:00
Zachary Yedidia
c767b3dc0c Add OpenBuffer() function to View
Fixes #43
2016-04-19 18:58:52 -04:00
Zachary Yedidia
4305c71f6a Use a buffer for help screen
Fixes #24
2016-04-19 13:58:02 -04:00
Zachary Yedidia
87108bfed8 Add -version option
Fixes #33
2016-04-19 13:40:30 -04:00
Zachary Yedidia
f0ad01d1ec Add option to save and quit
Fixes #40
2016-04-19 13:16:08 -04:00
aerth
a2ca47a496 Boss mode 2016-04-19 04:33:54 +00:00
Zachary Yedidia
aa129c1ddf Add support for other encodings 2016-04-18 17:10:47 -04:00
Zachary Yedidia
d10c401a97 Change the help binding to Ctrl-g from Ctrl-h
This is necessary because some terminals send Backspace and Ctrl-h as
the same key, so Ctrl-h must be reserved for deleting. See #8.
2016-04-18 16:28:53 -04:00
Zachary Yedidia
4428d893b5 More comments and a slight optimization for syntax file loading 2016-04-18 16:12:34 -04:00
Zachary Yedidia
cc222b67ec Automatically create ~/.config or if it does not exist 2016-04-18 10:36:41 -04:00
Zachary Yedidia
8dee0ad2d5 Use XDG_CONFIG_HOME for configuration directory
Fixes #18
2016-04-18 10:31:19 -04:00
aerth
337f162360 now is go gettable and updated make file 2016-04-18 10:59:41 +00:00