Micro Versions Save

A modern and intuitive terminal-based text editor

v2.0.4

3 years ago

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.

v2.0.3

4 years ago

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++

v2.0.2

4 years ago

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).

v2.0.1

4 years ago

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.

v2.0.0

4 years ago

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!

v2.0.0-rc3

4 years ago

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

v1.4.1

5 years ago

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

v1.4.0

6 years ago

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

v1.3.4

6 years ago

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

v1.3.3

6 years ago

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