on master help sign in
Update README.
commitf6d0c7a995c76b0937880dfe6aa1741faff283f0 authorBlaž Hrastnik <blaz@mxxn.io> dateTue 11 May 2021, 18:50 (5 years ago) parent2d88c39
2 files changed+50−7
README.md+41−7 doc/architecture.md+9
README.md+41−7
@@ -1,19 +1,53 @@
11# Helix
22
3−| Crate | Description |
4−| ----------- | ----------- |
5−| helix-core | Core editing primitives, functional. |
6−| helix-syntax | Tree-sitter grammars |
7−| helix-view | UI abstractions for use in backends, imperative shell. |
8−| helix-term | Terminal UI |
3+A kakoune / neovim inspired editor, written in Rust.
4+
5+The editing model is very heavily based on kakoune; during development I found
6+myself agreeing with most of kakoune's design decisions.
7+
8+# Features
9+
10+- Vim-like modal editing
11+- Multiple selections
12+- Built-in language server support
13+- Smart, incremental syntax highlighting and code editing via tree-sitter
14+
15+It's a terminal-based editor first, but I'd like to explore a custom renderer
16+(similar to emacs) in wgpu or skulpin.
917
1018# Installation
1119
20+We provide packaging for various distributions, but here's a quick method to
21+build from source.
22+
1223```
13−git clone --depth 1 --recurse-submodules -j8 https://github.com/helix-editor/helix
24+git clone --recurse-submodules --shallow-submodules -j8 https://github.com/helix-editor/helix
1425cd helix
1526cargo install --path helix-term
1627```
1728
1829This will install the `hx` binary to `$HOME/.cargo/bin`.
1930
31+Now copy the `runtime/` directory somewhere. Helix will by default look for the
32+runtime inside the same folder as the executable, but that can be overriden via
33+the `HELIX_RUNTIME` environment variable.
34+
35+# Contributing
36+
37+Contributors are very welcome! **No contribution is too small and all contributions are valued.**
38+
39+Some suggestions to get started:
40+
41+- You can look at the [good first issue](https://github.com/helix-editor/helix/labels/good%20first%20issue) label on the issue tracker.
42+- Help with packaging on various distributions needed!
43+- If your preffered language is missing, integrating a tree-sitter grammar for
44+ it and defining syntax highlight queries for it is straight forward and
45+ doesn't require much knowledge of the internals.
46+
47+We provide an [architecture.md](./docs/architecture.md) that should give you
48+a good overview of the internals.
49+
50+# Getting help
51+
52+Discuss the project on the community [Matrix channel](https://matrix.to/#/#helix-editor:example.com).
53+
doc/architecture.md+9
@@ -1,4 +1,13 @@
11
2+| Crate | Description |
3+| ----------- | ----------- |
4+| helix-core | Core editing primitives, functional. |
5+| helix-syntax | Tree-sitter grammars |
6+| helix-lsp | Language server client |
7+| helix-view | UI abstractions for use in backends, imperative shell. |
8+| helix-term | Terminal UI |
9+| helix-tui | TUI primitives, forked from tui-rs, inspired by Cursive |
10+
211# Notes
312
413- server-client architecture via gRPC, UI separate from core