X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=README.md;h=66174e4e35b9c3129d21036c83d5d1a2d6c4f8b9;hb=c340e6d48da8889b10a1b69e614a5bfb04be7eec;hp=23c2c591c443ea480b62cc0f7432fe69281e05c8;hpb=8a2479a43d143077eef1da148096297af3298b2f;p=micro.git diff --git a/README.md b/README.md index 23c2c591..66174e4e 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,14 @@ # Micro [![Build Status](https://travis-ci.org/zyedidia/micro.svg?branch=master)](https://travis-ci.org/zyedidia/micro) -[![Go Report Card](http://goreportcard.com/badge/zyedidia/micro)](http://goreportcard.com/report/zyedidia/micro) +![Go Report Card](https://goreportcard.com/badge/github.com/zyedidia/micro) +[![Join the chat at https://gitter.im/zyedidia/micro](https://badges.gitter.im/zyedidia/micro.svg)](https://gitter.im/zyedidia/micro?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![MIT License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/zyedidia/micro/blob/master/LICENSE) -> Micro is very much a work in progress +> Micro is still a work in progress -Micro is a command line text editor that aims to be easy to use and intuitive, while also taking advantage of the full capabilities -of modern terminals. +Micro is a terminal-based text editor that aims to be easy to use and intuitive, while also taking advantage of the full capabilities +of modern terminals. It comes as one single, batteries-included, static binary with no dependencies, and you can download and use it right now. Here is a picture of micro editing its source code. @@ -15,49 +16,67 @@ Here is a picture of micro editing its source code. # Features -* Easy to use +* Easy to use and to install +* No dependencies or external files are needed -- just the binary you can download further down the page * Common keybindings (ctrl-s, ctrl-c, ctrl-v, ctrl-z...) + * Keybindings can be rebound to your liking +* Sane defaults + * You shouldn't have to configure much out of the box (and it is extremely easy to configure) * Extremely good mouse support -* Cross platform -* Syntax highlighting (in over [75 languages](runtime/syntax)!) + * This means mouse dragging to create a selection, double click to select by word, and triple click to select by line +* Cross platform (It should work on all the platforms Go runs on) +* Plugin system (plugins are written in Lua) +* Automatic linting and error notifications +* Syntax highlighting (for over [75 languages](runtime/syntax)!) * Colorscheme support + * By default, micro comes with 16, 256, and true color themes. * True color support (set the `MICRO_TRUECOLOR` env variable to 1 to enable it) -* Search and replace -* Undo and redo +* Copy and paste with the system clipboard * Small and simple -* Configurable - -If you'd like to see what has been implemented, and what I plan on implementing soon-ish, see the [todo list](todolist.md) +* Easily configurable +* Common editor things such as undo/redo, line numbers, unicode support... # Installation +To install micro, you can download a prebuilt binary, or you can build it from source. + +You can also install micro with a few package managers (on OSX, Arch Linux, and CRUX). +See this [wiki page](https://github.com/zyedidia/micro/wiki/Installing-Micro) for details. + +Please note that micro uses the amazing [tcell library](https://github.com/gdamore/tcell), but this +means that micro is restricted to the platforms tcell supports. As a result, micro does not support +Plan9, NaCl, and Cygwin (although this may change in the future). + ### Prebuilt binaries -| Download | -| --- | -| [Mac OS X](http://zbyedidia.webfactional.com/micro/binaries/micro-osx.tar.gz) | -| [64 bit Linux](http://zbyedidia.webfactional.com/micro/binaries/micro-linux64.tar.gz) | -| [32 bit Linux](http://zbyedidia.webfactional.com/micro/binaries/micro-linux32.tar.gz) | -| [Arm Linux](http://zbyedidia.webfactional.com/micro/binaries/micro-linux-arm.tar.gz) | +All you need to install micro is one file, the binary itself. It's as simple as that! -Once you have downloaded the file, you can install the runtime files by running `./install.sh` -in the directory you downloaded. This will place all the runtime files in `~/.micro`. +You can download the correct binary for your operating system from the list in the [nightly build release](https://github.com/zyedidia/micro/releases/tag/nightly). -To run the micro binary just run `./bin/micro` (you may want to place the binary on your path for ease of use). +Micro has no released version, instead these binaries are compiled every night and you can find the +commit they were compiled with by running `micro -version`. + +If your operating system does not have binary, but does run Go, you can build from source. ### Building from source -Micro is made in Go so you must have Go installed on your system to build it, and make sure your `GOPATH` is set. +Make sure that you have Go version 1.5 or greater (Go 1.4 will work for the systems like support CGO then). +```sh +go get -u github.com/zyedidia/micro/... ``` -$ git clone https://github.com/zyedidia/micro -$ cd micro -$ make -``` -This will build micro and put the binary in the current directory. It will also install syntax highlighting files to `~/.micro/syntax`. +### Clipboard support + +On Linux, clipboard support requires 'xclip' or 'xsel' command to be installed. -Alternatively you can use `make install` instead of `make` if you want the binary to be added to you `GOBIN` (make sure that it is set). +For Ubuntu: + +```sh +sudo apt-get install xclip +``` + +If you don't have xclip or xsel, micro will use an internal clipboard for copy and paste, but it won't work with external applications. # Usage @@ -65,47 +84,20 @@ Once you have built the editor, simply start it by running `micro path/to/file.t Micro also supports creating buffers from `stdin`: -``` -$ ifconfig | micro +```sh +ifconfig | micro ``` You can move the cursor around with the arrow keys and mouse. -#### Keybindings - -* Ctrl-q: Quit -* Ctrl-s: Save -* Ctrl-o: Open file -* Ctrl-z: Undo -* Ctrl-y: Redo -* Ctrl-f: Find -* Ctrl-a: Select all -* Ctrl-c: Copy -* Ctrl-x: Cut -* Ctrl-v: Paste -* Ctrl-h: Open help -* Ctrl-u: Half page up -* Ctrl-d: Half page down -* PageUp: Page up -* PageDown: Page down -* Ctrl-e: Execute a command - -You can also use the mouse to manipulate the text. Simply clicking and dragging will select text. You can also double click -to enable word selection, and triple click to enable line selection. - -# Configuration - -At this point, there isn't much you can configure. -Micro has a few options which you can set: - -* colorscheme -* tabsize -* syntax - -To set an option run Ctrl-e to execute a command, and type `set option value`, so to set the tabsize to 8 it would be `set tabsize 8`. - -Any option you set in the editor will be saved to the file `~/.micro/settings.json` so, in effect, your configuration file will be created -for you. If you'd like to take your configuration with you to another machine, simply copy the `settings.json` to the other machine. +You can also use the mouse to manipulate the text. Simply clicking and dragging +will select text. You can also double click to enable word selection, and triple +click to enable line selection. + +### Documentation and Help + +Micro has a built-in help system which you can access by pressing `CtrlE` and typing `help`. Additionally, you can +view the help files online [here](https://github.com/zyedidia/micro/tree/master/runtime/help). # Contributing