Skip to content

Releases: zyedidia/micro

2.0.6

24 Jun 21:34
Compare
Choose a tag to compare

Micro v2.0.6

  • Improvements to the backup system.
    • permbackup option (default off).
    • backdupdir option (default directory is ~/.config/micro/backups).
  • Some new statusformat directives for the statusline:
    • status.lines, status.vcol, status.bytes, status.size.
  • Errors parsing settings.json will not cause settings to be overwritten.
  • Bug fixes.
    • Pasting CRLF text.
    • Plugin options not persisting properly.
    • Backspace on Windows.
    • Better test infrastructure.

2.0.5

18 Jun 21:31
Compare
Choose a tag to compare

Micro v2.0.5

Edit: Due to a significant bug on the Windows version, please use version 2.0.6-dev.3 (attached below as 2.0.5 to avoid causing errors for automated installers) instead of 2.0.5 (for Windows only). Sorry for any inconvenience.

Changelog:

  • Micro will ensure that settings.json only contains non-default settings.
    • Settings will have default values unless overridden in settings.json.
    • Any settings with default values in settings.json will be removed after
      modifying your settings or running micro -clean.
  • New relativeruler option (default off).
    • Makes line numbers relative to your current cursor position.
  • New parsecursor option for file:line:col syntax (default off).
    • Enable for previous behavior to open a file at a location.
  • More consistent key labels to reduce confusion about keybindings.
  • Autocompletion is more conservative and only triggers for alphanumerics.
  • Performance improvements.
  • More languages supported by the default comment plugin.
    • Use Alt-/ or Ctrl-/ (new) to comment/uncomment a block of code.
    • Note that micro sees Ctrl-/ as the CtrlUnderscore event from the terminal.
  • Bug fixes.
    • Mouse support in command bar.
    • Escape sequence handling.
    • Other minor issues and improvements.

2.0.4

23 May 19:01
c5b0c2d
Compare
Choose a tag to compare

Micro v2.0.4

  • Better clipboard handling for SSH sessions (use internal clipboard even if xclip/xsel is installed if no X-server is available).
  • New CopyLine action (default for CtrlC with no selection).
  • FindLiteral action for Find without regexes (unbound by default).
  • tabmove command for moving tabs.
  • Support for Unicode combining characters.
  • Better customization for dividers with new divchars and divreverse options.
  • Support for italics in colorschemes.
  • Bug fixes.
    • Dropped redraw events.
    • View relocating with a selection.
    • More minor fixes.

Note for package maintainers: build paths were changed in this version to conform with the go.mod specification for projects with a semantic version >=2.0.0 (see #1638). If you are building micro, it is highly recommended that you use the provided makefile, or update your build scripts to build with the new v2 path for build tags.

2.0.3

10 Apr 21:29
Compare
Choose a tag to compare

Micro 2.0.3

This is a relatively minor update. For the next large update (2.1.0) I hope to provide improvements to the keybinding system and a (light and optional) Vim keybinding plugin.

v2.0.3 changelog:

  • Micro will output to pipes if it is on the left side of a pipe
    • Running micro | cat will open micro and pipe the result (when the buffer is closed) to cat. Since micro can also read from pipes, this means you can make a pipe chain interactive by placing micro in it.
  • New +LINE:COL flag for opening a file at a location (file.txt:LINE:COL syntax still supported)
  • Minor bug fixes
  • Syntax file improvements
    • Csharp-script (new)
    • Sagemath (new)
    • Julia
    • Python 3
  • Linter improvements
    • Haskell
    • C++

2.0.2

26 Feb 02:09
Compare
Choose a tag to compare

Micro v2.0.2.

This release contains search and replace improvements, changes to some default options, and bug fixes regarding syntax highlighting and multiple cursors.

  • Search and replace improvements:
    • Regex capture groups are now supported in the replace command. Examples:
      > replace "(foo)" "$1-bar"
      > replace "(foo)" "${1}-bar"
      > replace "(?P<group>foo)" "$group-bar"
      > replace "(?P<group>foo)" "$group-bar"
      > replace "(?P<key>\w+):\s+(?P<value>\w+)$" "$key=$value"
      
    • Search and replace will only take effect in the current selection if one exists.
  • Option changes:
    • New xterm option (off by default) to force micro to believe the current terminal is xterm-256color. Please use with caution.
    • Make eofnewline on by default.
    • Make autosu off by default.
    • Make fastdirty off by default.
  • Correct version info for snap builds.
  • Bug fixes (and a new test suite for text transformation correctness).

2.0.1

12 Feb 19:36
Compare
Choose a tag to compare

Day one patch for micro 2.0! This update includes important bug fixes and minor improvements.

Click here for the micro 2.0 changelog.

Changelog:

  • Fixed bugs in core.
  • Updated documentation.
  • Expose OpenLogBuf to plugins (via bp:OpenLogBuf()).
  • Clicking the arrow in the tabbar now scrolls the tabs.
  • New IndentLine action (unbound by default).
  • New option autosu to automatically use sudo to save file if you don't have permission to save (on by default).
  • Pressing esc when prompted to reload a file will cancel the reload and all future reloads.
  • Update to Haskell syntax file.

Thanks to everyone who reported issues and contributed! Sorry for the quick update, I think things will settle down now.

2.0.0

11 Feb 22:03
Compare
Choose a tag to compare

The micro codebase has been refactored and is now better than ever! Micro 2.0 is an internal overhaul, with many new features as well.

This new version introduces breaking changes to the plugin API, though nearly all official plugins have been updated with 2.0 support. From now on, all plugins are placed in ~/.config/micro/plug to avoid loading/conflicting with old plugins. This is handled automatically by the plugin manager.

Please use the -clean flag when upgrading to micro 2.0 to clean out your configuration directory. This will remove unused options, remove the plugins directory if it exists, and remove any non-compliant file formats from ~/.config/micro/buffers, which stores buffer information for persistent undo and cursor history.

Below is the changelog for micro 2.0:

  • Overall performance and stability improvements
  • Simple autocompletion.
    • Autocompletion (tab by default) will do a simple "buffer completion" which will autocomplete according to words used elsewhere in the buffer. In the future plugin support could be added along with support for interfacing with language-specific autocompletion tools.
  • Automatic backups.
    • Backup files are stored in ~/.config/micro/backups for every open buffer and are saved roughly every 8 seconds if the buffer is being modified. Backups are removed when the buffer is closed, but if micro or the system crashes, any unsaved changes can be recovered by re-opening the file (micro will auto- recover) or by manually viewing the backup in the ~/.config/micro/backups directory.
  • Diff gutter
    • Shows your modifications in real-time in the gutter. Integrates with git automatically. Enable with the diffgutter option.
  • Configurable statusline (see the statusformatl and statusformatr options).
  • Configurable linter plugin (see the new linter docs).
  • Resizeable splits (click and drag on separators).
  • Buffer synchronization when the same file is opened
    multiple times.
  • Keybindings and mouse support in the command bar.
  • New options:
    • encoding: support for loading files in non-UTF8 encodings.
    • backup: performs automatic backups.
    • diffgutter: shows modifications in the gutter (integrates with Git).
    • statusformatl and statusformatr: options for customizing the look of the status line (left and right sides).
    • paste: tells micro a paste event is happening. Enable this before doing a paste through the terminal, and disable afterwards. See > help copy-paste for extensive details.
    • smartpaste: attempts to preserve correct indentation when pasting.
  • New textfilter command for using shell commands to help with editing.
  • Complete re-organization of the code to support better go modules and maintain a better directory structure.
  • Better plugin interface with better access to the Go standard library and internal Micro functions (lots of documentation still needs to be written). See the new plugins documentation.
  • The plugin manager can now be used from the CLI.
  • General QoL improvements and bug fixes.
    • Notably the infamous autoclose plugin crash issue is fixed.
  • New pre-installed colorschemes.
    • darcula
    • one-dark
    • gotham
    • sunny-day
    • material-tc
    • monokai-dark
  • Improved Windows support.
  • Many new syntax files and improvements to existing syntax files.

If you find any bugs please report them on the Github issue tracker. Enjoy!

2.0.0-rc3

24 Jan 22:05
Compare
Choose a tag to compare
2.0.0-rc3 Pre-release
Pre-release

The final release candidate for micro 2.0. Micro 2.0 will be officially released in about one week (hopefully around Feb 2).

1.4.1

10 Aug 02:01
Compare
Choose a tag to compare

Release v1.4.1: a long overdue release.

  • New syntax for opening files at a specific line
    • micro file.txt:line:col
  • New hidehelp option
  • Fix for "text file busy"
  • Fix for "terminal entry not found" without need for mkinfo
  • Ctrl-X acts like Ctrl-k when nothing is selected
  • Many small bug fixes and optimizations

1.4.0

26 Jan 01:19
Compare
Choose a tag to compare

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