1.4.0

@zyedidia zyedidia released this Jan 26, 2018 · 76 commits to master since this release

Release v1.4.0

  • Terminal emulator within micro
    • Use the term command to open a shell
    • Use term ... to start the emulator with a custom process
    • Only supported on MacOS, Linux, OpenBSD, FreeBSD, Dragonfly
    • Lua system for interfacing with the emulator as well
  • Brace highlighting
    • Use the matchbrace option (off by default)
  • New JumpToMatchingBrace action
  • New raw command
    • Using this command will show all escape sequences micro is using
    • Useful for debugging
  • New showkey command
    • See what action a key is bound to
  • ReplaceMode (bound to insert key by default)
  • Bind keys to actions
    • Use command:... as an action to bind a command
    • Use command-edit:... as an action to bind a command prompt
  • Optimization for saving large files
  • New basename option for the path shown in the status bar
  • New railscast colorscheme
  • New SelectLine action
  • Support line:col syntax in JumpLine
  • Prompt to create parent folders if they don't exist when saving
  • Syntax highlighting improvements
    • Javascript
    • Git-commit
    • Julia
    • Lua
    • Makefile
  • Bug fixes

1.3.4

@zyedidia zyedidia released this Nov 24, 2017 · 168 commits to master since this release

Micro version 1.3.4.

See the readme for installation instructions.

This release fixes some bugs and makes a number of small improvements.

  • New scrollbar option (off by default)
    • Does not have mouse support
  • New savehistory option (on by default)
    • Micro will remember your command bar history between
      sessions (after closing and re-opening the editor)
  • Nano-like menu for showing the keybindings
    • Use Alt-g to enable
    • Displayed in the statusline
  • Paragraph movement
    • Use Alt-{ and Alt-}
  • Support for binding raw escape sequences
    • Some key events are not sent by terminals by default
      but they can be configured to send custom escape sequences.
      This feature lets you configure micro to receive custom
      escape sequences and bind them to an action.
  • retab command will convert tabs to spaces or vice versa depending on
    your tabstospaces setting
  • replace command now accepts the -l flag for 'literal'
    • It will treat the search term literally instead of as a regex
  • Command bar improvements
    • Environment variables are supported in the command bar
    • Shell commands will also be expanded in the command bar using backticks
    • Better keybindings
      • CtrlA, CtrlLeft: start of line
      • CtrlE, CtrlRight: end of line
      • CtrlF, AltRight: next word
      • CtrlB, AltLeft: previous word
      • CtrlW, AltBackspace: delete previous word
      • CtrlV: Paste
      • Arrow keys as usual
  • Some settings have been renamed for consistency
    • splitRight -> splitright
    • splitBottom -> splitbottom
  • sucmd option for customizing "save with sudo" (some systems use a different command from sudo).
  • Colorschemes and syntax improvements
    • New twilight colorscheme
    • Matlab/Octave syntax support
    • Lua, Javascript, Scala, Fish etc... syntax improvements
  • Minor change to the behavior of search
    • Should match the behavior from Vim/Emacs better

1.3.3

@zyedidia zyedidia released this Sep 28, 2017 · 268 commits to master since this release

Micro version 1.3.3

This release fixes some bugs and makes small improvements.

  • Autocompletion for colorschemes and all options more generally
  • Only register double/triple clicks if the mouse is in the same location
  • Added an option for accurate but inefficient checking if the buffer is modified
    • Set fastdirty option to off (on by default)
  • Fixed some home directory replacements
  • Fixed some command line flags
  • Fixed behavior for large pastes

1.3.2

@zyedidia zyedidia released this Sep 15, 2017 · 279 commits to master since this release

Micro version 1.3.2.

This release contains mostly bug fixes. The only interesting new features are support for crlf/lf (unix vs dos) line endings and access to the Go standard library for Lua plugins.

  • Add support for crlf and lf
  • Lua now has access to most of the Go standard library
    • Simply import go packages: local fmt = import("fmt")
  • Syntax highlighting
    • Julia support
    • Improved yaml highlighting
  • Bug fixes for multiple cursors
  • Bug fixes for undo/redo
  • Add a new --config-dir option to set a custom location for the configuration directory

1.3.1

@zyedidia zyedidia released this Aug 8, 2017 · 323 commits to master since this release

This is a small release to fix some of the issues from 1.3.0.

Changelog:

  • Add support for the Suspend action for OSX and BSDs (still supported on Linux as well)
  • Multiple cursors merge if you spawn multiple with the mouse in the same place
  • Fixes to tcell and pasting
  • Micro won't write your settings if there was an error when loading settings.json.

1.3.0

@zyedidia zyedidia released this Jul 29, 2017 · 344 commits to master since this release

Micro version 1.3.0

The largest change in this version is the new multiple cursor support.

Changelog:

  • Dependencies distributed as submodules
  • Multiple cursors
    • New actions that can be bound:
      • SpawnMultiCursor default binding: Alt-n
      • RemoveMultiCursor default binding: Alt-p
      • RemoveAllMultiCursors default binding: Alt-c
      • SkipMultiCursor default binding: Alt-x
      • MouseMultiCursor default binding (can only be bound to mouse buttons): Ctrl-MouseLeft
  • Expanded keybinding support
    • Mouse buttons can be bound
      • MouseLeft
      • MouseRight
      • MouseMiddle
      • MouseWheelUp
      • MouseWheelDown
      • MouseWheelLeft
      • MouseWheelRight
    • Characters can be bound
    • Support for CtrlPgUp and CtrlPgDown
  • Various syntax highlighting improvements
    • Vala improvements
    • C improvements
    • New Twig syntax
    • New Darcula colorscheme
  • Improved search and replace
    • Default now will ask for each replacement
    • Use -a flag to replace all
  • No more 1/10th second delay when quitting and using alt keys
  • Bug fixes

A lot changed under the hood with this version so there may be more bugs I'm not aware of. Please report them if you find any!

1.2.0

@zyedidia zyedidia released this May 27, 2017 · 430 commits to master since this release

Micro version 1.2.0.

There have been a ton of commits since the last release.

The biggest change in this version is the new syntax highlighting engine (see below).

Hopefully everything goes well! Please report any bugs you might find.

  • Complete refactor and overhaul of the syntax highlighting engine
    • Syntax files now use the yaml format
      • The old format is no longer supported but you can convert
        old syntax files to the new format by using the syntax_converter.go
        program in the runtime/syntax folder
    • New support for syntax "regions"
    • Support for embedding languages in each other
    • Highlighting should be much more accurate (especially for large files)
    • All syntax files (the obscure languages) now support colorschemes
    • Many new languages/improvements to old syntax files
      • Kotlin
      • C++
      • R
      • Go
      • Nim
      • Swift
      • and more...
  • Tab scrolling
  • termtitle option: when enabled, micro will set the terminal's title
  • SaveAll action to save all buffers at once
  • Suspend action (Linux only) which can be bound to CtrlZ
  • Various bugs with resizing, search, prompts and more have been fixed
  • Unicode support for autoclose plugin
  • tabswitch command to change tabs without using the mouse
  • Snap installation
  • More default bindings
  • More efficient search and replace
  • View refactor
    • Under the hood improvements
  • Support for Literate

1.1.4

@zyedidia zyedidia released this Feb 10, 2017 · 627 commits to master since this release

Micro version 1.1.4

Changelog:

  • New rmtrailingws option (off by default)
  • New keepautoindent option (off by default)
  • New linters
    • Nim
    • Objective-C
  • Improved syntax files
    • toml
    • Go
    • Nim
    • Solidity
    • Pony
    • Pascal
    • PHP
    • Mail
    • Micro
  • Plugin API
    • JobStart uses shell to parse
    • JobSpawn should be used for direct executable invocation
  • Improved key unbinding
  • Bug fixes
    • Opening a directory doesn't crash
    • Minor mouse clicking bug
    • and more

1.1.3

@zyedidia zyedidia released this Dec 6, 2016 · 705 commits to master since this release

Micro version 1.1.3

Changelog:

  • Plugin API
    • plugin available command to show which plugins can be installed
    • ByteOffset and ToCharPos functions added
    • JobSpawn: like JobStart but takes arguments separately
    • tab.CurView is now public
  • New default ftoptions plugin to automatically set options for some filetypes (e.g. tabstospaces off for makefiles)
  • It is possible to resize splits via lua scripting
  • cd and pwd commands to manage the working directory
  • open command added and bound to CtrlO
  • Splits can be created either way with splitRight and splitBottom commands
  • Syntax files
    • Crystal language
    • TeX updated to use colorschemes
    • Pony language
    • VHDL
    • Objective C
    • Python 3 (separate from Python 2)
  • File reading optimization

And many bug fixes as well