Using gitui instead of lazygit

This commit is contained in:
Sagi Dayan 2021-12-19 12:17:49 +02:00
parent 7b5e07e2cb
commit 46cc9cb46e
Signed by: sagi
GPG key ID: FAB96BFC63B46458
5 changed files with 596 additions and 8 deletions

View file

@ -1,10 +1,9 @@
---
stages:
- dnf_systems
- apt_systems
- x86 Systems
Run Workstation playbook on fedora:
stage: dnf_systems
stage: x86 Systems
image: fedora:latest
script:
- dnf install -y ansible python3-pip
@ -18,7 +17,7 @@ Run Workstation playbook on fedora:
junit: report.xml
Run cli-tools playbook on centos:
stage: dnf_systems
stage: x86 Systems
image: centos:8
script:
- dnf install -y epel-release dnf-plugins-core
@ -35,7 +34,7 @@ Run cli-tools playbook on centos:
junit: report.xml
Run Workstation playbook on ubuntu:
stage: apt_systems
stage: x86 Systems
image: ubuntu:latest
script:
- export DEBIAN_FRONTEND=noninteractive
@ -53,7 +52,7 @@ Run Workstation playbook on ubuntu:
junit: report.xml
Run cli-tools playbook on debian:
stage: apt_systems
stage: x86 Systems
image: debian:latest
script:
- apt-get update

View file

@ -0,0 +1,553 @@
// ************** Managed by Ansible ****************
// src: https://github.com/extrawurst/gitui/blob/master/vim_style_key_config.ron
// bit for modifiers
// bits: 0 None
// bits: 1 SHIFT
// bits: 2 CONTROL
//
// Note:
// If the default key layout is lower case,
// and you want to use `Shift + q` to trigger the exit event,
// the setting should like this `exit: Some(( code: Char('Q'), modifiers: ( bits: 1,),)),`
// The Char should be upper case, and the shift modified bit should be set to 1.
//
// Note:
// find `KeysList` type in src/keys/key_list.rs for all possible keys.
// every key not overwritten via the config file will use the default specified there
(
tab_status: (
code: Char('1'),
modifiers: (
bits: 0,
),
),
tab_log: (
code: Char('2'),
modifiers: (
bits: 0,
),
),
tab_files: (
code: Char('3'),
modifiers: (
bits: 0,
),
),
tab_stashing: (
code: Char('4'),
modifiers: (
bits: 0,
),
),
tab_stashes: (
code: Char('5'),
modifiers: (
bits: 0,
),
),
tab_toggle: (
code: Tab,
modifiers: (
bits: 0,
),
),
tab_toggle_reverse: (
code: BackTab,
modifiers: (
bits: 1,
),
),
toggle_workarea: (
code: Char('w'),
modifiers: (
bits: 0,
),
),
exit: (
code: Char('c'),
modifiers: (
bits: 2,
),
),
quit: (
code: Char('q'),
modifiers: (
bits: 0,
),
),
exit_popup: (
code: Esc,
modifiers: (
bits: 0,
),
),
open_commit: (
code: Char('c'),
modifiers: (
bits: 0,
),
),
open_commit_editor: (
code: Char('e'),
modifiers: (
bits: 2,
),
),
tree_collapse_recursive: (
code: Left,
modifiers: (
bits: 1,
),
),
tree_expand_recursive: (
code: Right,
modifiers: (
bits: 1,
),
),
enter: (
code: Enter,
modifiers: (
bits: 0,
),
),
blame: (
code: Char('B'),
modifiers: (
bits: 1,
),
),
status_stage_all: (
code: Char('a'),
modifiers: (
bits: 0,
),
),
status_ignore_file: (
code: Char('i'),
modifiers: (
bits: 0,
),
),
stashing_toggle_untracked: (
code: Char('u'),
modifiers: (
bits: 0,
),
),
stash_apply: (
code: Char('a'),
modifiers: (
bits: 0,
),
),
stash_drop: (
code: Char('D'),
modifiers: (
bits: 1,
),
),
cmd_bar_toggle: (
code: Char('.'),
modifiers: (
bits: 0,
),
),
log_tag_commit: (
code: Char('t'),
modifiers: (
bits: 0,
),
),
commit_amend: (
code: Char('a'),
modifiers: (
bits: 2,
),
),
copy: (
code: Char('y'),
modifiers: (
bits: 0,
),
),
create_branch: (
code: Char('c'),
modifiers: (
bits: 0,
),
),
rename_branch: (
code: Char('r'),
modifiers: (
bits: 0,
),
),
select_branch: (
code: Char('b'),
modifiers: (
bits: 0,
),
),
delete_branch: (
code: Char('D'),
modifiers: (
bits: 1,
),
),
merge_branch: (
code: Char('m'),
modifiers: (
bits: 0,
),
),
tags: (
code: Char('T'),
modifiers: (
bits: 1,
),
),
delete_tag: (
code: Char('D'),
modifiers: (
bits: 1,
),
),
select_tag: (
code: Enter,
modifiers: (
bits: 0,
),
),
push: (
code: Char('p'),
modifiers: (
bits: 0,
),
),
open_file_tree: (
code: Char('F'),
modifiers: (
bits: 1,
),
),
force_push: (
code: Char('P'),
modifiers: (
bits: 1,
),
),
pull: (
code: Char('f'),
modifiers: (
bits: 0,
),
),
undo_commit: (
code: Char('U'),
modifiers: (
bits: 1,
),
),
focus_right: ( code: Char('l'), modifiers: ( bits: 0,),),
focus_left: ( code: Char('h'), modifiers: ( bits: 0,),),
focus_above: ( code: Char('k'), modifiers: ( bits: 0,),),
focus_below: ( code: Char('j'), modifiers: ( bits: 0,),),
open_help: ( code: F(1), modifiers: ( bits: 0,),),
move_left: ( code: Char('h'), modifiers: ( bits: 0,),),
move_right: ( code: Char('l'), modifiers: ( bits: 0,),),
move_up: ( code: Char('k'), modifiers: ( bits: 0,),),
move_down: ( code: Char('j'), modifiers: ( bits: 0,),),
popup_up: ( code: Char('p'), modifiers: ( bits: 2,),),
popup_down: ( code: Char('n'), modifiers: ( bits: 2,),),
page_up: ( code: Char('b'), modifiers: ( bits: 2,),),
page_down: ( code: Char('f'), modifiers: ( bits: 2,),),
home: ( code: Char('g'), modifiers: ( bits: 0,),),
end: ( code: Char('G'), modifiers: ( bits: 1,),),
shift_up: ( code: Char('K'), modifiers: ( bits: 1,),),
shift_down: ( code: Char('J'), modifiers: ( bits: 1,),),
edit_file: ( code: Char('I'), modifiers: ( bits: 1,),),
status_reset_item: ( code: Char('U'), modifiers: ( bits: 1,),),
diff_reset_lines: ( code: Char('u'), modifiers: ( bits: 0,),),
diff_stage_lines: ( code: Char('s'), modifiers: ( bits: 0,),),
stashing_save: ( code: Char('w'), modifiers: ( bits: 0,),),
stashing_toggle_index: ( code: Char('m'), modifiers: ( bits: 0,),),
stash_open: ( code: Char('l'), modifiers: ( bits: 0,),),
abort_merge: ( code: Char('M'), modifiers: ( bits: 1,),),
)

View file

@ -0,0 +1,19 @@
(
selected_tab: Cyan,
command_fg: Black,
selection_bg: Rgb(124, 156, 183),
cmdbar_extra_lines_bg: Blue,
disabled_fg: Gray,
diff_line_add: Green,
diff_line_delete: Red,
diff_file_added: LightGreen,
diff_file_removed: LightRed,
diff_file_moved: LightMagenta,
diff_file_modified: Yellow,
commit_hash: Magenta,
commit_time: LightCyan,
commit_author: Green,
danger_fg: Red,
push_gauge_bg: Blue,
push_gauge_fg: Reset,
)

View file

@ -75,7 +75,7 @@ function ide() {
tmux send-keys "l" C-m
tmux split-window -h -p 80
tmux split-window -h -p 30
tmux send-keys "lazygit" C-m
tmux send-keys "gitui" C-m
tmux select-pane -t 1
tmux split-window -v -p 20
tmux select-pane -t 1

View file

@ -101,10 +101,27 @@
dest: ~/.shellconfig/environment.sh
force: no
- name: Verifying gitui config folder
file:
path: ~/.config/gitui
state: directory
- name: Copy gitui keybindings config file
copy:
src: dotfiles/gitui/key_config.ron
dest: ~/.config/gitui/key_config.ron
force: yes
- name: Copy gitui theme config file
copy:
src: dotfiles/gitui/theme.ron
dest: ~/.config/gitui/theme.ron
force: yes
- name: Install rust and common tooling
vars:
rustup_user: "{{ running_user }}"
rustup_cargo_crates: [bat,lsd,bottom]
rustup_cargo_crates: [bat,lsd,bottom,gitui]
ansible.builtin.include_role:
name: hurricanehrndz.rustup