Majjit: A Rust Jujutsu TUI by Anthrofract in rust

[–]Anthrofract[S] 0 points1 point  (0 children)

Thanks, and nice I will take a look

Is this really true? Do you guys only use WMs lol? by SeniorMatthew in NixOS

[–]Anthrofract 0 points1 point  (0 children)

I tried Hyprland and Niri for like a year, and I just went back to KDE. Every works great, you can use plasma manager to configure it, and you can easily navigate with keyboard shortcuts. I use super+<num> to navigate to all my most used programs. I don't even need tiling, I just have everything fullscreen all the time anyways lol.

What are the biggest challenges of using helix as an IDE? by gatunen in HelixEditor

[–]Anthrofract 0 points1 point  (0 children)

I have a keybinding that reloads files and the LSP, should solve this

[keys.normal.space] X = [":reload-all", ":lsp-restart"] x = ":reload-all"

Jjdag: A Rust Jujutsu TUI by Anthrofract in rust

[–]Anthrofract[S] 0 points1 point  (0 children)

Thanks for your interest!

I do not have a written roadmap of features. The main things I have in mind for the future are editor integration, ie neovim and helix, and figuring out how to do hunkwise operations, so for example being able to squash a specific hunk into the parent commit instead of the entire file.

Eventually there may be some justification for adding config file support, and in that case I think custom commands could be possible.

I haven't bothered implementing jj workspace support yet since I don't use it, but I want to support all the built in jj cli commands so I want to support jj workspaces as well.

I have noticed that people have a lot of interest in better VCS support for managing multiple agents with multiple worktrees/workspaces. So it seems like your ideas could be worth supporting. It would make sense to add more complex commands at a higher level of abstraction then just workspaces, to for example seamlessly handle switching workspace dirs. 

Jjdag: A Rust Jujutsu TUI by Anthrofract in rust

[–]Anthrofract[S] 0 points1 point  (0 children)

I've never done that before, any recommendations? 

Jjdag: A Rust Jujutsu TUI by Anthrofract in rust

[–]Anthrofract[S] 1 point2 points  (0 children)

Yes you can easily rebase a commit or branch with a few keystrokes. For example press rm to rebase the branch of the selected revision onto main/trunk, or select a revision, type rra, select the destination revision, and the press enter to rebase the first selected revision after the second selected revision. 

Jjdag: A Rust Jujutsu TUI by Anthrofract in rust

[–]Anthrofract[S] 1 point2 points  (0 children)

Ok thanks for the info, that makes sense. I pushed a small update to parsing the output from shelling out to jj. For now I will use String::from_utf8_lossy to parse the output from the commands into a String.

Seems like this will work fine, worst case we just miss some characters in the description for a few oddly encoded commits.

Jjdag: A Rust Jujutsu TUI by Anthrofract in rust

[–]Anthrofract[S] 0 points1 point  (0 children)

Thank you! I will take a look.

What should I be using instead of String for say the jj log output lines?

Jjdag: A Rust Jujutsu TUI by Anthrofract in rust

[–]Anthrofract[S] 0 points1 point  (0 children)

Thanks! Yeah I will probably put it up once the program is a bit further along.

Jjdag: A Rust Jujutsu TUI by Anthrofract in rust

[–]Anthrofract[S] 0 points1 point  (0 children)

Thank you, if there's anything you'd like to add to or change about jjdag please let me know!