I have not worked on this for a while, it's not working with recent Xi versions.
The latest SHA on xi-core that we are
compatible with is 429da468f6819765e969807a41ff19680316ddce. Follow the
installation instructions below (in "Running the Core"), but do a git checkout 429da468f6819765e969807a41ff19680316ddce first. If you have already done a
cargo install for some other version of the core, you may need to do cargo install --force to replace the existing installation.
xi-tui is a TUI frontend for xi.
- basic editing
- quit
- cursor handling
- scrolling
- with keyboard (still some issues with "Page Up")
- with mouse
- selection
- with mouse
- with keyboard
- yank/paste
- operating on files
- opening a new file
- loading an existing file
- saving current file
- @potocpav for the json-rpc client I stole from xi_glium.
- @ticki for termion, on which this project is based.
The frontend assumes that you have installed the core editor and is available in your PATH. The following should suffice:
git clone https://github.com/google/xi-editor
cd xi-editor/rust
cargo install
# You now need to add ~/.cargo/bin to your PATH (this is where `cargo install`
# places binaries). In your .bashrc (or equivalent), add `export PATH=$PATH:~/.cargo/bin`We assume tabs (\t) are 4 columns large. It that is not the case in your
terminal, the cursor position will be inaccurate. On linux, to set the \t
width to four spaces, do:
tabs -4
Line wrapping is completely unsupported for now. Lines that are too long will mess up the output. I'm not even sure if line wrapping should occur in the backend or in the frontend.
