Add mc config, lazygit/nerd-font installers, fzf/zoxide bash integration
- New mc package: seasons-winter16M skin (fixes washed-out file colors under the old default skin), arrow-key panel navigation, and Backspace bound as an alt key for CdParent (Double Commander-style parent-dir navigation). - setup.sh: install_lazygit and install_nerd_font helpers, since neither ships as an apt/PPA package on this distro anymore. - bash/.bashrc.omb: wire up fzf key-bindings and zoxide, drop the now- redundant bashmarks plugin, enable globstar, and widen history.
This commit is contained in:
+20
-1
@@ -17,7 +17,6 @@ if [ -d "$HOME/.oh-my-bash" ]; then
|
|||||||
|
|
||||||
plugins=(
|
plugins=(
|
||||||
git
|
git
|
||||||
bashmarks
|
|
||||||
)
|
)
|
||||||
|
|
||||||
source "$OSH/oh-my-bash.sh"
|
source "$OSH/oh-my-bash.sh"
|
||||||
@@ -26,6 +25,26 @@ fi
|
|||||||
# PATH
|
# PATH
|
||||||
export PATH="$HOME/.local/bin:$PATH"
|
export PATH="$HOME/.local/bin:$PATH"
|
||||||
|
|
||||||
|
# History
|
||||||
|
HISTSIZE=100000
|
||||||
|
HISTFILESIZE=200000
|
||||||
|
HISTTIMEFORMAT="%F %T "
|
||||||
|
|
||||||
|
# Recursive globbing with **
|
||||||
|
shopt -s globstar
|
||||||
|
|
||||||
|
# fzf — fuzzy Ctrl+R history / Ctrl+T file search
|
||||||
|
if command -v fzf &>/dev/null; then
|
||||||
|
for f in /usr/share/doc/fzf/examples/key-bindings.bash /usr/share/fzf/key-bindings.bash; do
|
||||||
|
[ -f "$f" ] && source "$f" && break
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
# zoxide — frecency-based `cd` replacement (use `z <dir>`)
|
||||||
|
if command -v zoxide &>/dev/null; then
|
||||||
|
eval "$(zoxide init bash)"
|
||||||
|
fi
|
||||||
|
|
||||||
# Color support
|
# Color support
|
||||||
if [ -x /usr/bin/dircolors ]; then
|
if [ -x /usr/bin/dircolors ]; then
|
||||||
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
|
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
|
||||||
|
|||||||
@@ -496,6 +496,11 @@ visual_bell_duration 0.3
|
|||||||
|
|
||||||
#: }}}
|
#: }}}
|
||||||
|
|
||||||
|
font_family MesloLGS Nerd Font Mono
|
||||||
|
|
||||||
|
#: Needed for oh-my-bash's agnoster theme (powerline glyphs). Installed
|
||||||
|
#: via setup.sh's install_nerd_font step.
|
||||||
|
|
||||||
#: Window layout {{{
|
#: Window layout {{{
|
||||||
|
|
||||||
# remember_window_size yes
|
# remember_window_size yes
|
||||||
|
|||||||
@@ -0,0 +1,144 @@
|
|||||||
|
[Midnight-Commander]
|
||||||
|
verbose=true
|
||||||
|
shell_patterns=true
|
||||||
|
auto_save_setup=true
|
||||||
|
preallocate_space=false
|
||||||
|
auto_menu=false
|
||||||
|
use_internal_view=true
|
||||||
|
use_internal_edit=false
|
||||||
|
clear_before_exec=true
|
||||||
|
confirm_delete=true
|
||||||
|
confirm_overwrite=true
|
||||||
|
confirm_execute=false
|
||||||
|
confirm_history_cleanup=true
|
||||||
|
confirm_exit=false
|
||||||
|
confirm_directory_hotlist_delete=false
|
||||||
|
confirm_view_dir=false
|
||||||
|
safe_delete=false
|
||||||
|
safe_overwrite=false
|
||||||
|
use_8th_bit_as_meta=false
|
||||||
|
mouse_move_pages_viewer=true
|
||||||
|
mouse_close_dialog=false
|
||||||
|
fast_refresh=false
|
||||||
|
drop_menus=false
|
||||||
|
wrap_mode=true
|
||||||
|
old_esc_mode=true
|
||||||
|
cd_symlinks=true
|
||||||
|
show_all_if_ambiguous=false
|
||||||
|
use_file_to_guess_type=true
|
||||||
|
alternate_plus_minus=false
|
||||||
|
only_leading_plus_minus=true
|
||||||
|
show_output_starts_shell=false
|
||||||
|
xtree_mode=false
|
||||||
|
file_op_compute_totals=true
|
||||||
|
classic_progressbar=true
|
||||||
|
use_netrc=true
|
||||||
|
ftpfs_always_use_proxy=false
|
||||||
|
ftpfs_use_passive_connections=true
|
||||||
|
ftpfs_use_passive_connections_over_proxy=false
|
||||||
|
ftpfs_use_unix_list_options=true
|
||||||
|
ftpfs_first_cd_then_ls=true
|
||||||
|
ignore_ftp_chattr_errors=true
|
||||||
|
editor_fill_tabs_with_spaces=false
|
||||||
|
editor_return_does_auto_indent=false
|
||||||
|
editor_backspace_through_tabs=false
|
||||||
|
editor_fake_half_tabs=true
|
||||||
|
editor_option_save_position=true
|
||||||
|
editor_option_auto_para_formatting=false
|
||||||
|
editor_option_typewriter_wrap=false
|
||||||
|
editor_edit_confirm_save=true
|
||||||
|
editor_syntax_highlighting=true
|
||||||
|
editor_persistent_selections=true
|
||||||
|
editor_drop_selection_on_copy=true
|
||||||
|
editor_cursor_beyond_eol=false
|
||||||
|
editor_cursor_after_inserted_block=false
|
||||||
|
editor_visible_tabs=true
|
||||||
|
editor_visible_spaces=true
|
||||||
|
editor_line_state=false
|
||||||
|
editor_simple_statusbar=false
|
||||||
|
editor_check_new_line=false
|
||||||
|
editor_show_right_margin=false
|
||||||
|
editor_group_undo=true
|
||||||
|
editor_state_full_filename=true
|
||||||
|
editor_ask_filename_before_edit=false
|
||||||
|
nice_rotating_dash=true
|
||||||
|
shadows=true
|
||||||
|
mcview_remember_file_position=false
|
||||||
|
auto_fill_mkdir_name=true
|
||||||
|
copymove_persistent_attr=true
|
||||||
|
pause_after_run=1
|
||||||
|
mouse_repeat_rate=100
|
||||||
|
double_click_speed=250
|
||||||
|
old_esc_mode_timeout=1000000
|
||||||
|
max_dirt_limit=10
|
||||||
|
num_history_items_recorded=60
|
||||||
|
vfs_timeout=60
|
||||||
|
ftpfs_directory_timeout=900
|
||||||
|
ftpfs_retry_seconds=30
|
||||||
|
fish_directory_timeout=900
|
||||||
|
editor_tab_spacing=8
|
||||||
|
editor_word_wrap_line_length=72
|
||||||
|
editor_option_save_mode=0
|
||||||
|
editor_backup_extension=~
|
||||||
|
editor_filesize_threshold=64M
|
||||||
|
editor_stop_format_chars=-+*\\,.;:&>
|
||||||
|
mcview_eof=
|
||||||
|
skin=modarin256-defbg
|
||||||
|
|
||||||
|
[Layout]
|
||||||
|
output_lines=0
|
||||||
|
left_panel_size=53
|
||||||
|
top_panel_size=0
|
||||||
|
message_visible=true
|
||||||
|
keybar_visible=true
|
||||||
|
xterm_title=true
|
||||||
|
command_prompt=true
|
||||||
|
menubar_visible=true
|
||||||
|
free_space=true
|
||||||
|
horizontal_split=false
|
||||||
|
vertical_equal=true
|
||||||
|
horizontal_equal=true
|
||||||
|
|
||||||
|
[Misc]
|
||||||
|
timeformat_recent=%b %e %H:%M
|
||||||
|
timeformat_old=%b %e %Y
|
||||||
|
ftp_proxy_host=gate
|
||||||
|
ftpfs_password=anonymous@
|
||||||
|
display_codepage=UTF-8
|
||||||
|
source_codepage=Other_8_bit
|
||||||
|
autodetect_codeset=
|
||||||
|
spell_language=en
|
||||||
|
clipboard_store=
|
||||||
|
clipboard_paste=
|
||||||
|
|
||||||
|
[Colors]
|
||||||
|
base_color=
|
||||||
|
xterm-kitty=
|
||||||
|
color_terminals=
|
||||||
|
|
||||||
|
[Panels]
|
||||||
|
show_mini_info=true
|
||||||
|
kilobyte_si=false
|
||||||
|
mix_all_files=false
|
||||||
|
show_backups=true
|
||||||
|
show_dot_files=true
|
||||||
|
fast_reload=false
|
||||||
|
fast_reload_msg_shown=false
|
||||||
|
mark_moves_down=true
|
||||||
|
reverse_files_only=true
|
||||||
|
auto_save_setup_panels=false
|
||||||
|
navigate_with_arrows=true
|
||||||
|
panel_scroll_pages=true
|
||||||
|
panel_scroll_center=false
|
||||||
|
mouse_move_pages=true
|
||||||
|
filetype_mode=true
|
||||||
|
permission_mode=false
|
||||||
|
torben_fj_mode=false
|
||||||
|
quick_search_mode=2
|
||||||
|
select_flags=6
|
||||||
|
|
||||||
|
[Panelize]
|
||||||
|
Find *.orig after patching=find . -name \\*.orig -print
|
||||||
|
Find SUID and SGID programs=find . \\( \\( -perm -04000 -a -perm /011 \\) -o \\( -perm -02000 -a -perm /01 \\) \\) -print
|
||||||
|
Find rejects after patching=find . -name \\*.rej -print
|
||||||
|
Modified git files=git ls-files --modified
|
||||||
@@ -0,0 +1,497 @@
|
|||||||
|
[filemanager]
|
||||||
|
ChangePanel = tab; ctrl-i
|
||||||
|
Help = f1
|
||||||
|
UserMenu = f2
|
||||||
|
View = f3
|
||||||
|
# ViewFile =
|
||||||
|
Edit = f4
|
||||||
|
# EditForceInternal =
|
||||||
|
Copy = f5
|
||||||
|
Move = f6
|
||||||
|
MakeDir = f7
|
||||||
|
Delete = f8
|
||||||
|
Menu = f9
|
||||||
|
Quit = f10
|
||||||
|
MenuLastSelected = f19
|
||||||
|
QuitQuiet = f20
|
||||||
|
Find = alt-question
|
||||||
|
CdQuick = alt-c
|
||||||
|
HotList = ctrl-backslash
|
||||||
|
Reread = ctrl-r
|
||||||
|
DirSize = ctrl-space
|
||||||
|
Suspend = ctrl-z
|
||||||
|
Swap = ctrl-u
|
||||||
|
History = alt-h
|
||||||
|
# PanelListing =
|
||||||
|
# SetupListingFormat =
|
||||||
|
ShowHidden = alt-dot
|
||||||
|
SplitVertHoriz = alt-comma
|
||||||
|
SplitEqual = alt-equal
|
||||||
|
SplitMore = alt-shift-right
|
||||||
|
SplitLess = alt-shift-left
|
||||||
|
Shell = ctrl-o
|
||||||
|
PutCurrentPath = alt-a
|
||||||
|
PutOtherPath = alt-shift-a
|
||||||
|
PutCurrentSelected = alt-enter; ctrl-enter
|
||||||
|
PutCurrentFullSelected = ctrl-shift-enter
|
||||||
|
ViewFiltered = alt-exclamation
|
||||||
|
Select = kpplus
|
||||||
|
Unselect = kpminus
|
||||||
|
SelectInvert = kpasterisk
|
||||||
|
ScreenList = alt-prime
|
||||||
|
# OptionsLayout =
|
||||||
|
# OptionsAppearance =
|
||||||
|
# OptionsPanel =
|
||||||
|
# OptionsConfirm =
|
||||||
|
# OptionsDisplayBits =
|
||||||
|
# OptionsVfs =
|
||||||
|
# LearnKeys =
|
||||||
|
# SaveSetup =
|
||||||
|
# EditExtensionsFile =
|
||||||
|
# EditFileHighlightFile =
|
||||||
|
# Filter =
|
||||||
|
# ConnectFish =
|
||||||
|
# ConnectFtp =
|
||||||
|
# ConnectSmb =
|
||||||
|
# Undelete =
|
||||||
|
EditorViewerHistory = alt-shift-e
|
||||||
|
ExtendedKeyMap = ctrl-x
|
||||||
|
|
||||||
|
[filemanager:xmap]
|
||||||
|
ChangeMode = c
|
||||||
|
ChangeOwn = o
|
||||||
|
ChangeAttributes = e
|
||||||
|
CompareDirs = d
|
||||||
|
CompareFiles = ctrl-d
|
||||||
|
HotListAdd = h
|
||||||
|
LinkSymbolicEdit = ctrl-s
|
||||||
|
Link = l
|
||||||
|
LinkSymbolic = s
|
||||||
|
LinkSymbolicRelative = v
|
||||||
|
PanelInfo = i
|
||||||
|
PanelQuickView = q
|
||||||
|
ExternalPanelize = exclamation
|
||||||
|
VfsList = a
|
||||||
|
Jobs = j
|
||||||
|
PutCurrentPath = p
|
||||||
|
PutOtherPath = ctrl-p
|
||||||
|
PutCurrentTagged = t
|
||||||
|
PutOtherTagged = ctrl-t
|
||||||
|
PutCurrentLink = r
|
||||||
|
PutOtherLink = ctrl-r
|
||||||
|
|
||||||
|
[panel]
|
||||||
|
CycleListingFormat = alt-t
|
||||||
|
Search = ctrl-s; alt-s
|
||||||
|
Mark = insert; ctrl-t
|
||||||
|
MarkUp = shift-up
|
||||||
|
MarkDown = shift-down
|
||||||
|
# MarkLeft =
|
||||||
|
# MarkRight =
|
||||||
|
Down = down; ctrl-n
|
||||||
|
Up = up; ctrl-p
|
||||||
|
Left = left
|
||||||
|
Right = right
|
||||||
|
PageUp = pgup; alt-v
|
||||||
|
PageDown = pgdn; ctrl-v
|
||||||
|
Enter = enter
|
||||||
|
PanelOtherCd = alt-o
|
||||||
|
PanelOtherCdLink = alt-l
|
||||||
|
ViewRaw = f13
|
||||||
|
EditNew = f14
|
||||||
|
CopySingle = f15
|
||||||
|
MoveSingle = f16
|
||||||
|
DeleteSingle = f18
|
||||||
|
# SelectExt =
|
||||||
|
Select = alt-plus
|
||||||
|
Unselect = alt-minus
|
||||||
|
SelectInvert = alt-asterisk
|
||||||
|
CdChild = ctrl-pgdn
|
||||||
|
CdParent = ctrl-pgup; backspace
|
||||||
|
# CdParentSmart =
|
||||||
|
# Panelize =
|
||||||
|
History = alt-shift-h
|
||||||
|
HistoryNext = alt-u
|
||||||
|
HistoryPrev = alt-y
|
||||||
|
BottomOnScreen = alt-j
|
||||||
|
MiddleOnScreen = alt-r
|
||||||
|
TopOnScreen = alt-g
|
||||||
|
PanelOtherSync = alt-i
|
||||||
|
SelectCodepage = alt-e
|
||||||
|
Top = alt-lt; home; a1
|
||||||
|
Bottom = alt-gt; end; c1
|
||||||
|
# Sort =
|
||||||
|
# SortPrev =
|
||||||
|
# SortNext =
|
||||||
|
# SortReverse =
|
||||||
|
# SortByName =
|
||||||
|
# SortByExt =
|
||||||
|
# SortBySize =
|
||||||
|
# SortByMTime =
|
||||||
|
# ScrollLeft =
|
||||||
|
# ScrollRight =
|
||||||
|
|
||||||
|
[dialog]
|
||||||
|
Ok = enter
|
||||||
|
Cancel = f10; esc; ctrl-g
|
||||||
|
Up = left; up
|
||||||
|
#Left = left; up
|
||||||
|
Down = right; down
|
||||||
|
#Right = right; down
|
||||||
|
Help = f1
|
||||||
|
Suspend = ctrl-z
|
||||||
|
Refresh = ctrl-l
|
||||||
|
ScreenList = alt-prime
|
||||||
|
ScreenNext = alt-rbrace
|
||||||
|
ScreenPrev = alt-lbrace
|
||||||
|
|
||||||
|
[menu]
|
||||||
|
Help = f1
|
||||||
|
Left = left; ctrl-b
|
||||||
|
Right = right; ctrl-f
|
||||||
|
Up = up; ctrl-p
|
||||||
|
Down = down; ctrl-n
|
||||||
|
Home = home; alt-lt; ctr-a
|
||||||
|
End = end; alt-gt ctrl-e
|
||||||
|
Enter = enter
|
||||||
|
Quit = F10; esc; ctrl-g
|
||||||
|
|
||||||
|
[input]
|
||||||
|
Home = ctrl-a; alt-lt; home; a1
|
||||||
|
End = ctrl-e; alt-gt; end; c1
|
||||||
|
Left = left; alt-left; ctrl-b
|
||||||
|
Right = right; alt-right; ctrl-f
|
||||||
|
WordLeft = ctrl-left; alt-b
|
||||||
|
WordRight = ctrl-right; alt-f
|
||||||
|
Backspace = backspace; ctrl-h
|
||||||
|
Delete = delete; ctrl-d
|
||||||
|
DeleteToWordBegin = alt-backspace
|
||||||
|
DeleteToWordEnd = alt-d
|
||||||
|
# Mark =
|
||||||
|
Remove = ctrl-w
|
||||||
|
# Cut =
|
||||||
|
Store = alt-w
|
||||||
|
# Paste =
|
||||||
|
Yank = ctrl-y
|
||||||
|
DeleteToEnd = ctrl-k
|
||||||
|
HistoryPrev = alt-p; ctrl-down
|
||||||
|
HistoryNext = alt-n; ctrl-up
|
||||||
|
History = alt-h
|
||||||
|
Complete = alt-tab
|
||||||
|
# Clear =
|
||||||
|
MarkLeft = shift-left
|
||||||
|
MarkRight = shift-right
|
||||||
|
MarkToWordBegin = ctrl-shift-left
|
||||||
|
MarkToWordEnd = ctrl-shift-right
|
||||||
|
MarkToHome = shift-home
|
||||||
|
MarkToEnd = shift-end
|
||||||
|
|
||||||
|
[listbox]
|
||||||
|
Up = up; ctrl-p
|
||||||
|
Down = down; ctrl-n
|
||||||
|
Top = home; alt-lt; a1
|
||||||
|
Bottom = end; alt-gt; c1
|
||||||
|
PageUp = pgup; alt-v
|
||||||
|
PageDown = pgdn; ctrl-v
|
||||||
|
Delete = delete; d
|
||||||
|
Clear = shift-delete; shift-d
|
||||||
|
View = f3
|
||||||
|
Edit = f4
|
||||||
|
Enter = enter
|
||||||
|
|
||||||
|
[radio]
|
||||||
|
Up = up; ctrl-p
|
||||||
|
Down = down; ctrl-n
|
||||||
|
Top = home; alt-lt; a1
|
||||||
|
Bottom = end; alt-gt; c1
|
||||||
|
Select = space
|
||||||
|
|
||||||
|
[tree]
|
||||||
|
Help = f1
|
||||||
|
Reread = f2; ctrl-r
|
||||||
|
Forget = f3
|
||||||
|
ToggleNavigation = f4
|
||||||
|
Copy = f5
|
||||||
|
Move = f6
|
||||||
|
Up = up; ctrl-p
|
||||||
|
Down = down; ctrl-n
|
||||||
|
Left = left
|
||||||
|
Right = right
|
||||||
|
Top = home; alt-lt; a1
|
||||||
|
Bottom = end; alt-gt; c1
|
||||||
|
PageUp = pgup; alt-v
|
||||||
|
PageDown = pgdn; ctrl-v
|
||||||
|
Enter = enter
|
||||||
|
Search = ctrl-s; alt-s
|
||||||
|
Delete = f8; delete
|
||||||
|
|
||||||
|
[help]
|
||||||
|
Help = f1
|
||||||
|
Index = f2; c
|
||||||
|
Back = f3; left; l
|
||||||
|
Quit = f10; esc
|
||||||
|
Up = up; ctrl-p
|
||||||
|
Down = down; ctrl-n
|
||||||
|
PageDown = f; space; pgdn; ctrl-v
|
||||||
|
PageUp = b; pgup; alt-v; backspace
|
||||||
|
HalfPageDown = d
|
||||||
|
HalfPageUp = u
|
||||||
|
Top = home; ctrl-home; ctrl-pgup; a1; alt-lt; g
|
||||||
|
Bottom = end; ctrl-end; ctrl-pgdn; c1; alt-gt; shift-g
|
||||||
|
Enter = right; enter
|
||||||
|
LinkNext = tab
|
||||||
|
LinkPrev = alt-tab
|
||||||
|
NodeNext = n
|
||||||
|
NodePrev = p
|
||||||
|
|
||||||
|
[chattr]
|
||||||
|
Up = up; left; ctrl-p
|
||||||
|
Down = down; right; ctrl-n
|
||||||
|
Top = home; alt-lt; a1
|
||||||
|
Bottom = end; alt-gt; c1
|
||||||
|
PageUp = pgup; alt-v
|
||||||
|
PageDown = pgdn; ctrl-v
|
||||||
|
Mark = t; shift-t
|
||||||
|
MarkAndDown = insert
|
||||||
|
|
||||||
|
[editor]
|
||||||
|
Store = ctrl-insert
|
||||||
|
Paste = shift-insert
|
||||||
|
Cut = shift-delete
|
||||||
|
Up = up
|
||||||
|
Down = down
|
||||||
|
Left = left
|
||||||
|
Right = right
|
||||||
|
WordLeft = ctrl-left; ctrl-z
|
||||||
|
WordRight = ctrl-right; ctrl-x
|
||||||
|
Enter = enter
|
||||||
|
Return = shift-enter; ctrl-enter; ctrl-shift-enter
|
||||||
|
BackSpace = backspace; ctrl-h
|
||||||
|
Delete = delete; ctrl-d
|
||||||
|
PageUp = pgup
|
||||||
|
PageDown = pgdn
|
||||||
|
Home = home
|
||||||
|
End = end
|
||||||
|
Tab = tab; shift-tab; ctrl-tab; ctrl-shift-tab
|
||||||
|
Undo = ctrl-u
|
||||||
|
Redo = alt-r
|
||||||
|
Top = ctrl-home; alt-lt
|
||||||
|
Bottom = ctrl-end; alt-gt
|
||||||
|
ScrollUp = ctrl-up
|
||||||
|
ScrollDown = ctrl-down
|
||||||
|
TopOnScreen = ctrl-pgup
|
||||||
|
BottomOnScreen = ctrl-pgdn
|
||||||
|
DeleteToWordBegin = alt-backspace
|
||||||
|
DeleteToWordEnd = alt-d
|
||||||
|
DeleteLine = ctrl-y
|
||||||
|
DeleteToEnd = ctrl-k
|
||||||
|
# DeleteToHome =
|
||||||
|
# ParagraphUp =
|
||||||
|
# ParagraphDown =
|
||||||
|
Save = f2
|
||||||
|
# EditFile =
|
||||||
|
EditNew = ctrl-n
|
||||||
|
SaveAs = f12; ctrl-f2
|
||||||
|
# Close =
|
||||||
|
History = alt-shift-e
|
||||||
|
Mark = f3
|
||||||
|
Copy = f5
|
||||||
|
Move = f6
|
||||||
|
Remove = f8
|
||||||
|
# MarkLine =
|
||||||
|
# MarkWord =
|
||||||
|
# MarkAll =
|
||||||
|
# Unmark =
|
||||||
|
Search = f7
|
||||||
|
SearchContinue = f17
|
||||||
|
# BlockShiftLeft =
|
||||||
|
# BlockShiftRight =
|
||||||
|
MarkPageUp = shift-pgup
|
||||||
|
MarkPageDown = shift-pgdn
|
||||||
|
MarkLeft = shift-left
|
||||||
|
MarkRight = shift-right
|
||||||
|
MarkToWordBegin = ctrl-shift-left
|
||||||
|
MarkToWordEnd = ctrl-shift-right
|
||||||
|
MarkUp = shift-up
|
||||||
|
MarkDown = shift-down
|
||||||
|
MarkToHome = shift-home
|
||||||
|
MarkToEnd = shift-end
|
||||||
|
MarkToFileBegin = ctrl-shift-home
|
||||||
|
MarkToFileEnd = ctrl-shift-end
|
||||||
|
MarkToPageBegin = ctrl-shift-pgup
|
||||||
|
MarkToPageEnd = ctrl-shift-pgdn
|
||||||
|
MarkScrollUp = ctrl-shift-up
|
||||||
|
MarkScrollDown = ctrl-shift-down
|
||||||
|
# MarkParagraphUp =
|
||||||
|
# MarkParagraphDown =
|
||||||
|
MarkColumnPageUp = alt-pgup
|
||||||
|
MarkColumnPageDown = alt-pgdn
|
||||||
|
MarkColumnLeft = alt-left
|
||||||
|
MarkColumnRight = alt-right
|
||||||
|
MarkColumnUp = alt-up
|
||||||
|
MarkColumnDown = alt-down
|
||||||
|
# MarkColumnScrollUp =
|
||||||
|
# MarkColumnScrollDown =
|
||||||
|
# MarkColumnParagraphUp =
|
||||||
|
# MarkColumnParagraphDown =
|
||||||
|
BlockSave = ctrl-f
|
||||||
|
MarkColumn = f13
|
||||||
|
Replace = f4
|
||||||
|
ReplaceContinue = f14
|
||||||
|
Complete = alt-tab
|
||||||
|
InsertFile = f15
|
||||||
|
Quit = f10; esc
|
||||||
|
InsertOverwrite = insert
|
||||||
|
Help = f1
|
||||||
|
# Date =
|
||||||
|
Refresh = ctrl-l
|
||||||
|
Goto = alt-l
|
||||||
|
Sort = alt-t
|
||||||
|
Mail = alt-m
|
||||||
|
ParagraphFormat = alt-p
|
||||||
|
MatchBracket = alt-b
|
||||||
|
ExternalCommand = alt-u
|
||||||
|
UserMenu = f11
|
||||||
|
Menu = f9
|
||||||
|
Bookmark = alt-k
|
||||||
|
BookmarkFlush = alt-o
|
||||||
|
BookmarkNext = alt-j
|
||||||
|
BookmarkPrev = alt-i
|
||||||
|
# History =
|
||||||
|
Shell = ctrl-o
|
||||||
|
InsertLiteral = ctrl-q
|
||||||
|
# MacroStartRecord =
|
||||||
|
# MacroStopRecord =
|
||||||
|
MacroStartStopRecord = ctrl-r
|
||||||
|
# MacroDelete =
|
||||||
|
ShowNumbers = alt-n
|
||||||
|
ShowTabTws = alt-underline
|
||||||
|
SyntaxOnOff = ctrl-s
|
||||||
|
# SyntaxChoose =
|
||||||
|
# ShowMargin =
|
||||||
|
Find = alt-enter
|
||||||
|
FilePrev = alt-minus
|
||||||
|
FileNext = alt-plus
|
||||||
|
# RepeatStartStopRecord =
|
||||||
|
SelectCodepage = alt-e
|
||||||
|
# Options =
|
||||||
|
# OptionsSaveMode =
|
||||||
|
# SpellCheck =
|
||||||
|
SpellCheckCurrentWord = ctrl-p
|
||||||
|
# SpellCheckSelectLang =
|
||||||
|
# LearnKeys =
|
||||||
|
# WindowMove =
|
||||||
|
# WindowResize =
|
||||||
|
# WindowFullscreen =
|
||||||
|
# WindowList =
|
||||||
|
# WindowNext =
|
||||||
|
# WindowPrev =
|
||||||
|
# ExtendedKeyMap =
|
||||||
|
|
||||||
|
[viewer]
|
||||||
|
Help = f1
|
||||||
|
WrapMode = f2
|
||||||
|
Quit = f3; f10; q; esc
|
||||||
|
HexMode = f4
|
||||||
|
Goto = f5
|
||||||
|
Search = f7
|
||||||
|
SearchForward = slash
|
||||||
|
SearchBackward = question
|
||||||
|
SearchContinue = f17; n
|
||||||
|
SearchForwardContinue = ctrl-s
|
||||||
|
SearchBackwardContinue = ctrl-r
|
||||||
|
SearchOppositeContinue = shift-n
|
||||||
|
MagicMode = f8
|
||||||
|
NroffMode = f9
|
||||||
|
Home = ctrl-a
|
||||||
|
End = ctrl-e
|
||||||
|
Left = h; left
|
||||||
|
Right = l; right
|
||||||
|
LeftQuick = ctrl-left
|
||||||
|
RightQuick = ctrl-right
|
||||||
|
Up = k; y; insert; up; ctrl-p
|
||||||
|
Down = j; e; delete; down; enter; ctrl-n
|
||||||
|
PageDown = f; space; pgdn; ctrl-v
|
||||||
|
PageUp = b; pgup; alt-v; backspace
|
||||||
|
HalfPageDown = d
|
||||||
|
HalfPageUp = u
|
||||||
|
Top = home; ctrl-home; ctrl-pgup; a1; alt-lt; g
|
||||||
|
Bottom = end; ctrl-end; ctrl-pgdn; c1; alt-gt; shift-g
|
||||||
|
BookmarkGoto = m
|
||||||
|
Bookmark = r
|
||||||
|
FileNext = ctrl-f
|
||||||
|
FilePrev = ctrl-b
|
||||||
|
SelectCodepage = alt-e
|
||||||
|
Shell = ctrl-o
|
||||||
|
Ruler = alt-r
|
||||||
|
History = alt-shift-e
|
||||||
|
|
||||||
|
[viewer:hex]
|
||||||
|
Help = f1
|
||||||
|
HexEditMode = f2
|
||||||
|
Quit = f3; f10; q; esc
|
||||||
|
HexMode = f4
|
||||||
|
Goto = f5
|
||||||
|
Save = f6
|
||||||
|
Search = f7
|
||||||
|
SearchForward = slash
|
||||||
|
SearchBackward = question
|
||||||
|
SearchContinue = f17; n
|
||||||
|
SearchForwardContinue = ctrl-s
|
||||||
|
SearchBackwardContinue = ctrl-r
|
||||||
|
SearchOppositeContinue = shift-n
|
||||||
|
MagicMode = f8
|
||||||
|
NroffMode = f9
|
||||||
|
ToggleNavigation = tab
|
||||||
|
Home = ctrl-a; home
|
||||||
|
End = ctrl-e; end
|
||||||
|
Left = b; left
|
||||||
|
Right = f; right
|
||||||
|
Up = k; y; up
|
||||||
|
Down = j; delete; down
|
||||||
|
PageDown = pgdn; ctrl-v
|
||||||
|
PageUp = pgup; alt-v
|
||||||
|
Top = ctrl-home; ctrl-pgup; a1; alt-lt; g
|
||||||
|
Bottom = ctrl-end; ctrl-pgdn; c1; alt-gt; shift-g
|
||||||
|
History = alt-shift-e
|
||||||
|
|
||||||
|
[diffviewer]
|
||||||
|
ShowSymbols = alt-s; s
|
||||||
|
ShowNumbers = alt-n; l
|
||||||
|
SplitFull = f
|
||||||
|
SplitEqual = equal
|
||||||
|
SplitMore = gt
|
||||||
|
SplitLess = lt
|
||||||
|
Tab2 = 2
|
||||||
|
Tab3 = 3
|
||||||
|
Tab4 = 4
|
||||||
|
Tab8 = 8
|
||||||
|
Swap = ctrl-u
|
||||||
|
Redo = ctrl-r
|
||||||
|
HunkNext = n; enter; space
|
||||||
|
HunkPrev = p; backspace
|
||||||
|
Goto = g; shift-g
|
||||||
|
Save = f2
|
||||||
|
Edit = f4
|
||||||
|
EditOther = f14
|
||||||
|
Merge = f5
|
||||||
|
MergeOther = f15
|
||||||
|
Search = f7
|
||||||
|
SearchContinue = f17
|
||||||
|
Options = f9
|
||||||
|
Top = ctrl-home
|
||||||
|
Bottom = ctrl-end
|
||||||
|
Down = down
|
||||||
|
Up = up
|
||||||
|
LeftQuick = ctrl-left
|
||||||
|
RightQuick = ctrl-right
|
||||||
|
Left = left
|
||||||
|
Right = right
|
||||||
|
PageDown = pgdn
|
||||||
|
PageUp = pgup
|
||||||
|
Home = home
|
||||||
|
End = end
|
||||||
|
Help = f1
|
||||||
|
Quit = f10; q; shift-q; esc
|
||||||
|
Shell = ctrl-o
|
||||||
|
SelectCodepage = alt-e
|
||||||
@@ -11,6 +11,72 @@ stow_pkg() {
|
|||||||
stow -v -d "$DOTFILES_DIR" -t "$HOME" "$pkg"
|
stow -v -d "$DOTFILES_DIR" -t "$HOME" "$pkg"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
install_nerd_font() {
|
||||||
|
local font_dir="$HOME/.local/share/fonts"
|
||||||
|
|
||||||
|
if fc-list 2>/dev/null | grep -qi "MesloLGS Nerd Font"; then
|
||||||
|
echo "OK: MesloLGS Nerd Font already installed"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! command -v curl &>/dev/null || ! command -v unzip &>/dev/null; then
|
||||||
|
echo "SKIP: MesloLGS Nerd Font (curl and/or unzip not available)"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Installing MesloLGS Nerd Font..."
|
||||||
|
local tmp_zip
|
||||||
|
tmp_zip="$(mktemp --suffix=.zip)"
|
||||||
|
if curl -fsSL -o "$tmp_zip" \
|
||||||
|
"https://github.com/ryanoasis/nerd-fonts/releases/latest/download/Meslo.zip"; then
|
||||||
|
mkdir -p "$font_dir"
|
||||||
|
unzip -oq "$tmp_zip" -d "$font_dir" "*.ttf"
|
||||||
|
fc-cache -f "$font_dir" >/dev/null
|
||||||
|
echo "ADDED: MesloLGS Nerd Font to $font_dir"
|
||||||
|
else
|
||||||
|
echo "WARNING: failed to download Nerd Font, skipping"
|
||||||
|
fi
|
||||||
|
rm -f "$tmp_zip"
|
||||||
|
}
|
||||||
|
|
||||||
|
install_lazygit() {
|
||||||
|
local bin_dir="$HOME/.local/bin"
|
||||||
|
|
||||||
|
if command -v lazygit &>/dev/null; then
|
||||||
|
echo "OK: lazygit already installed"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! command -v curl &>/dev/null || ! command -v tar &>/dev/null; then
|
||||||
|
echo "SKIP: lazygit (curl and/or tar not available)"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Installing lazygit..."
|
||||||
|
local version
|
||||||
|
version="$(curl -fsSL https://api.github.com/repos/jesseduffield/lazygit/releases/latest \
|
||||||
|
| grep -Po '"tag_name": "v\K[^"]*')"
|
||||||
|
|
||||||
|
if [ -z "$version" ]; then
|
||||||
|
echo "WARNING: could not determine latest lazygit version, skipping"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
local tmp_tar
|
||||||
|
tmp_tar="$(mktemp --suffix=.tar.gz)"
|
||||||
|
if curl -fsSL -o "$tmp_tar" \
|
||||||
|
"https://github.com/jesseduffield/lazygit/releases/latest/download/lazygit_${version}_Linux_x86_64.tar.gz"; then
|
||||||
|
mkdir -p "$bin_dir"
|
||||||
|
tar -xzf "$tmp_tar" -C "$(dirname "$tmp_tar")" lazygit
|
||||||
|
install -m 755 "$(dirname "$tmp_tar")/lazygit" "$bin_dir/lazygit"
|
||||||
|
rm -f "$(dirname "$tmp_tar")/lazygit"
|
||||||
|
echo "ADDED: lazygit $version to $bin_dir"
|
||||||
|
else
|
||||||
|
echo "WARNING: failed to download lazygit, skipping"
|
||||||
|
fi
|
||||||
|
rm -f "$tmp_tar"
|
||||||
|
}
|
||||||
|
|
||||||
ensure_sourced() {
|
ensure_sourced() {
|
||||||
local file="$1"
|
local file="$1"
|
||||||
local bashrc="$HOME/.bashrc"
|
local bashrc="$HOME/.bashrc"
|
||||||
@@ -44,10 +110,12 @@ fi
|
|||||||
# bash — stow dotfiles, then ensure ~/.bashrc sources them
|
# bash — stow dotfiles, then ensure ~/.bashrc sources them
|
||||||
stow_pkg bash
|
stow_pkg bash
|
||||||
ensure_sourced "$HOME/.bashrc.omb"
|
ensure_sourced "$HOME/.bashrc.omb"
|
||||||
|
install_lazygit
|
||||||
|
|
||||||
# kitty
|
# kitty
|
||||||
if command -v kitty &>/dev/null; then
|
if command -v kitty &>/dev/null; then
|
||||||
stow_pkg kitty
|
stow_pkg kitty
|
||||||
|
install_nerd_font
|
||||||
else
|
else
|
||||||
echo "SKIP: kitty (not installed)"
|
echo "SKIP: kitty (not installed)"
|
||||||
fi
|
fi
|
||||||
@@ -59,4 +127,11 @@ else
|
|||||||
echo "SKIP: fastfetch (not installed)"
|
echo "SKIP: fastfetch (not installed)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# mc
|
||||||
|
if command -v mc &>/dev/null; then
|
||||||
|
stow_pkg mc
|
||||||
|
else
|
||||||
|
echo "SKIP: mc (not installed)"
|
||||||
|
fi
|
||||||
|
|
||||||
echo "Done!"
|
echo "Done!"
|
||||||
|
|||||||
Reference in New Issue
Block a user