terminal user interface to jujutsu. Focused on speed and clarity
10
fork

Configure Feed

Select the types of activity you want to include in your feed.

OCaml 48.0%
Nix 1.4%
Dune 0.2%
Shell 0.1%
Makefile 0.1%
Standard ML 0.1%
C 0.1%
JavaScript 0.1%
Other 50.1%
261 3 2

Clone this repository

https://tangled.org/elidowling.com/jj_tui https://tangled.org/did:plc:wnmeshskfslkiwbftccioqut/jj_tui
git@tangled.org:elidowling.com/jj_tui git@tangled.org:did:plc:wnmeshskfslkiwbftccioqut/jj_tui

For self-hosted knots, clone URLs may differ based on your setup.

Download tar.gz
README.md

Jujutsu TUI#

nix A TUI for the new version control system Jujutsu

jj_tui-ezgif com-optimize

Press ? to show the help. (commands are different between graph and files view). Press Arrows to navigate windows, Enter to focus status view List of graph commands:

jj_tui commands

Please provide any suggestions. I'm new to jujutsu so I'm sure people have workflows I couldn't even dream of.

Installing#

linux: Grab the latest release. It's statically linked and should work on any linux machine. mac: Grab a prebuild. Let me know if you have any issues as I can't test on a mac.

To open a shell with jj_tui on nix:`nix shell github:faldor20/jj_tui``

Dependencies#

The jujutsu CLI (minimum version 0.30.0) I haven't tested on windows or Mac. I believe it won't work outside Unix so Windows users will currently have to use wsl.

Config file:#

You can make a config.yaml config file in the following directories to customize key inputs linux: $XDG_CONFIG_HOME/jj_tui/ macos: ~/Library/preferences/jj_tui/ see ./jj_tui/lib/key_map.ml for a spec for the keymap and ./jj_tui/lib/config.ml for the config The keymap config lets you fully customize all the commands and their sub mmenus.

key_map:
  graph:
    #Simple mapping from key to command_id
    p: prev
    #Command sub menu
    s:
      title: "Squash"
      sub:
        # sub menu command
        s: "squash_into_parent" 
# If the terminal is smaller than this width, the UI will change to a single pane view
single_pane_width_threshold: 110

For a full list of commands ids see jj_tui/bin/graph_commands.ml and jj_tui/bin/file_commands.ml

logs:#

linux: $XDG_STATE_HOME/jj_tui/ macos: ~/Library/logs/jj_tui/

Dev#

Can be built with nix nix build or open a nix shell with nix develop For non-nix the project is currently not setup to build with dune or opam. Sorry, I'll get there one day.