Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 80 |
1 files changed, 52 insertions, 28 deletions
@@ -1,27 +1,14 @@ -<div align="center"> +# Helix -<h1> -<picture> - <source media="(prefers-color-scheme: dark)" srcset="logo_dark.svg"> - <source media="(prefers-color-scheme: light)" srcset="logo_light.svg"> - <img alt="Helix" height="128" src="logo_light.svg"> -</picture> -</h1> [](https://github.com/helix-editor/helix/actions) -[](https://github.com/helix-editor/helix/releases/latest) -[](https://docs.helix-editor.com/) -[](https://github.com/helix-editor/helix/graphs/contributors) -[](https://matrix.to/#/#helix-community:matrix.org) - -</div>  -A [Kakoune](https://github.com/mawww/kakoune) / [Neovim](https://github.com/neovim/neovim) inspired editor, written in Rust. +A kakoune / neovim inspired editor, written in Rust. -The editing model is very heavily based on Kakoune; during development I found -myself agreeing with most of Kakoune's design decisions. +The editing model is very heavily based on kakoune; during development I found +myself agreeing with most of kakoune's design decisions. For more information, see the [website](https://helix-editor.com) or [documentation](https://docs.helix-editor.com/). @@ -37,28 +24,65 @@ All shortcuts/keymaps can be found [in the documentation on the website](https:/ - Built-in language server support - Smart, incremental syntax highlighting and code editing via tree-sitter -Although it's primarily a terminal-based editor, I am interested in exploring -a custom renderer (similar to Emacs) using wgpu or skulpin. +It's a terminal-based editor first, but I'd like to explore a custom renderer +(similar to emacs) in wgpu or skulpin. + +# Installation Note: Only certain languages have indentation definitions at the moment. Check -`runtime/queries/<lang>/` for `indents.scm`. +`runtime/queries/<lang>/` for `indents.toml`. -# Installation +We provide packaging for various distributions, but here's a quick method to +build from source. + +``` +git clone --recurse-submodules --shallow-submodules -j8 https://github.com/helix-editor/helix +cd helix +cargo install --path helix-term +``` + +This will install the `hx` binary to `$HOME/.cargo/bin`. + +Helix also needs its runtime files so make sure to copy/symlink the `runtime/` directory into the +config directory (for example `~/.config/helix/runtime` on Linux/macOS). This location can be overriden +via the `HELIX_RUNTIME` environment variable. -[Installation documentation](https://docs.helix-editor.com/install.html). +Packages already solve this for you by wrapping the `hx` binary with a wrapper +that sets the variable to the install dir. -[](https://repology.org/project/helix-editor/versions) +> NOTE: running via cargo also doesn't require setting explicit `HELIX_RUNTIME` path, it will automatically +> detect the `runtime` directory in the project root. +[](https://repology.org/project/helix/versions) + +## MacOS +Helix can be installed on MacOS through homebrew via: + +``` +brew tap helix-editor/helix +brew install helix +``` + # Contributing -Contributing guidelines can be found [here](./docs/CONTRIBUTING.md). +Contributors are very welcome! **No contribution is too small and all contributions are valued.** + +Some suggestions to get started: + +- You can look at the [good first issue](https://github.com/helix-editor/helix/labels/E-easy) label on the issue tracker. +- Help with packaging on various distributions needed! +- To use print debugging to the `~/.cache/helix/helix.log` file, you must: + * Print using `log::info!`, `warn!`, or `error!`. (`log::info!("helix!")`) + * Pass the appropriate verbosity level option for the desired log level. (`hx -v <file>` for info, more `v`s for higher severity inclusive) +- If your preferred language is missing, integrating a tree-sitter grammar for + it and defining syntax highlight queries for it is straight forward and + doesn't require much knowledge of the internals. + +We provide an [architecture.md](./docs/architecture.md) that should give you +a good overview of the internals. # Getting help Your question might already be answered on the [FAQ](https://github.com/helix-editor/helix/wiki/FAQ). Discuss the project on the community [Matrix Space](https://matrix.to/#/#helix-community:matrix.org) (make sure to join `#helix-editor:matrix.org` if you're on a client that doesn't support Matrix Spaces yet). - -# Credits - -Thanks to [@jakenvac](https://github.com/jakenvac) for designing the logo! |