From abdc9466eca1eb09c1a2275b89ed07f6e675a944 Mon Sep 17 00:00:00 2001 From: David Chen Date: Sat, 20 May 2023 23:14:08 -0700 Subject: [PATCH] addded joshuto config --- .gitignore | 1 + joshuto/joshuto.toml | 42 +++++++++ joshuto/keymap.toml | 182 ++++++++++++++++++++++++++++++++++++ joshuto/mimetype.toml | 199 ++++++++++++++++++++++++++++++++++++++++ joshuto/preview_file.sh | 199 ++++++++++++++++++++++++++++++++++++++++ zsh/aliases.zsh | 3 +- 6 files changed, 624 insertions(+), 2 deletions(-) create mode 100644 joshuto/joshuto.toml create mode 100644 joshuto/keymap.toml create mode 100644 joshuto/mimetype.toml create mode 100755 joshuto/preview_file.sh diff --git a/.gitignore b/.gitignore index d76ee31..c78abe2 100755 --- a/.gitignore +++ b/.gitignore @@ -45,6 +45,7 @@ ranger/plugins/devicons_linemode.pyo !/lmk !/.yabairc !/Default.bttpreset +!/joshuto jesseduffield/lazynpm/state.yml diff --git a/joshuto/joshuto.toml b/joshuto/joshuto.toml new file mode 100644 index 0000000..48f396e --- /dev/null +++ b/joshuto/joshuto.toml @@ -0,0 +1,42 @@ +numbered_command = false + +use_trash = true +watch_files = true +xdg_open = false +xdg_open_fork = false + + +[display] +# default, hsplit +mode = "default" + +automatically_count_files = true +collapse_preview = true +# ratios for parent view (optional), current view and preview +column_ratio = [1, 3, 4] +scroll_offset = 6 +show_borders = false +show_hidden = false +show_icons = true +# Shorten /home/$USER to ~ +tilde_in_titlebar = true +# none, absolute, relative +line_number_style = "none" + +[display.sort] +# Options include +# - lexical (10.txt comes before 2.txt) +# - natural (2.txt comes before 10.txt) +# - mtime +method = "natural" +case_sensitive = false +directories_first = true +reverse = false + +[preview] +max_preview_size = 2097152 # 2MB +preview_script = "~/.config/joshuto/preview_file.sh" + +[tab] +# inherit, home, root +home_page = "home" diff --git a/joshuto/keymap.toml b/joshuto/keymap.toml new file mode 100644 index 0000000..ffb0abd --- /dev/null +++ b/joshuto/keymap.toml @@ -0,0 +1,182 @@ +[default_view] + +keymap = [ + { keys = [ "escape" ], command = "escape" }, + # { keys = [ "t", "u" ], command = "new_tab" }, + # { keys = [ "t", "u" ], command = "new_tab --cursor" }, + { keys = [ "t", "u" ], command = "new_tab --current" }, + { keys = [ "q" ], command = "close_tab" }, + { keys = [ "ctrl+c" ], command = "quit" }, + { keys = [ "Q" ], command = "quit --output-current-directory" }, + + { keys = [ "R" ], command = "reload_dirlist" }, + { keys = [ "z", "h" ], command = "toggle_hidden" }, + { keys = [ "ctrl+h" ], command = "toggle_hidden" }, + { keys = [ "t", "i" ], command = "tab_switch 1" }, + { keys = [ "t", "n" ], command = "tab_switch -1" }, + + { keys = [ "alt+1" ], command = "tab_switch_index 1" }, + { keys = [ "alt+2" ], command = "tab_switch_index 2" }, + { keys = [ "alt+3" ], command = "tab_switch_index 3" }, + { keys = [ "alt+4" ], command = "tab_switch_index 4" }, + { keys = [ "alt+5" ], command = "tab_switch_index 5" }, + + { keys = [ "1" ], command = "numbered_command 1" }, + { keys = [ "2" ], command = "numbered_command 2" }, + { keys = [ "3" ], command = "numbered_command 3" }, + { keys = [ "4" ], command = "numbered_command 4" }, + { keys = [ "5" ], command = "numbered_command 5" }, + { keys = [ "6" ], command = "numbered_command 6" }, + { keys = [ "7" ], command = "numbered_command 7" }, + { keys = [ "8" ], command = "numbered_command 8" }, + { keys = [ "9" ], command = "numbered_command 9" }, + + # arrow keys + # { keys = [ "arrow_up" ], command = "cursor_move_up" }, + # { keys = [ "arrow_down" ], command = "cursor_move_down" }, + # { keys = [ "arrow_left" ], command = "cd .." }, + # { keys = [ "arrow_right" ], command = "open" }, + { keys = [ "\n" ], command = "open" }, + { keys = [ "home" ], command = "cursor_move_home" }, + { keys = [ "end" ], command = "cursor_move_end" }, + { keys = [ "page_up" ], command = "cursor_move_page_up" }, + { keys = [ "page_down" ], command = "cursor_move_page_down" }, + { keys = [ "ctrl+u" ], command = "cursor_move_page_up 0.5" }, + { keys = [ "ctrl+e" ], command = "cursor_move_page_down 0.5" }, + + # vim-like keybindings + { keys = [ "e" ], command = "cursor_move_down" }, + { keys = [ "u" ], command = "cursor_move_up" }, + { keys = [ "E" ], command = "cursor_move_down 5" }, + { keys = [ "U" ], command = "cursor_move_up 5" }, + { keys = [ "n" ], command = "cd .." }, + { keys = [ "h" ], command = "cd -" }, + { keys = [ "i" ], command = "open" }, + { keys = [ "g", "g" ], command = "cursor_move_home" }, + { keys = [ "G" ], command = "cursor_move_end" }, + { keys = [ "r" ], command = "open_with" }, + + # { keys = [ "H" ], command = "cursor_move_page_home" }, + # { keys = [ "L" ], command = "cursor_move_page_middle" }, + # { keys = [ "M" ], command = "cursor_move_page_end" }, + + { keys = [ "[" ], command = "parent_cursor_move_up" }, + { keys = [ "]" ], command = "parent_cursor_move_down" }, + + { keys = [ "c", "d" ], command = ":cd " }, + { keys = [ "d", "d" ], command = "cut_files" }, + { keys = [ "y", "y" ], command = "copy_files" }, + { keys = [ "y", "n" ], command = "copy_filename" }, + { keys = [ "y", "." ], command = "copy_filename_without_extension" }, + { keys = [ "y", "p" ], command = "copy_filepath" }, + { keys = [ "y", "d" ], command = "copy_dirpath" }, + + { keys = [ "p", "l" ], command = "symlink_files --relative=false" }, + { keys = [ "p", "L" ], command = "symlink_files --relative=true" }, + + { keys = [ "delete" ], command = "delete_files" }, + { keys = [ "d", "D" ], command = "delete_files" }, + + { keys = [ "p", "p" ], command = "paste_files" }, + { keys = [ "p", "o" ], command = "paste_files --overwrite=true" }, + + { keys = [ "a" ], command = "rename_append" }, + { keys = [ "A" ], command = "rename_prepend" }, + + { keys = [ "T" ], command = ":touch " }, + + { keys = [ " " ], command = "select --toggle=true" }, + { keys = [ "v" ], command = "select --all=true --toggle=true" }, + # { keys = [ "V" ], command = "toggle_visual"}, + + { keys = [ "w" ], command = "show_tasks --exit-key=w" }, + { keys = [ "c", "b" ], command = "bulk_rename" }, + { keys = [ "c", "m" ], command = "set_mode" }, + + { keys = [ ":" ], command = ":" }, + { keys = [ ";" ], command = ":" }, + + { keys = [ "'" ], command = ":shell " }, + { keys = [ "S" ], command = "shell zsh" }, + { keys = [ "ctrl+g" ], command = "shell lazygit" }, + { keys = [ "M" ], command = ":mkdir " }, + { keys = [ "c", "w" ], command = ":rename " }, + + { keys = [ "/" ], command = ":search_inc " }, + { keys = [ "f" ], command = ":filter " }, + # { keys = [ "/" ], command = ":search " }, + # { keys = [ "|" ], command = ":search_inc " }, + { keys = [ "\\" ], command = ":search_glob " }, + # { keys = [ "ctrl+f" ], command = "search_fzf" }, + { keys = [ "ctrl+f" ], command = "subdir_fzf" }, + + { keys = [ "=" ], command = "search_next" }, + { keys = [ "-" ], command = "search_prev" }, + + { keys = [ "o", "r" ], command = "sort reverse" }, + { keys = [ "o", "l" ], command = "sort lexical" }, + { keys = [ "o", "m" ], command = "sort mtime" }, + { keys = [ "o", "c" ], command = "sort mtime" }, + { keys = [ "o", "n" ], command = "sort natural" }, + { keys = [ "o", "s" ], command = "sort size" }, + { keys = [ "o", "e" ], command = "sort ext" }, + + { keys = [ "m", "s" ], command = "linemode size" }, + { keys = [ "m", "m" ], command = "linemode mtime" }, + { keys = [ "m", "M" ], command = "linemode sizemtime" }, + + { keys = [ "g", "r" ], command = "cd /" }, + { keys = [ "g", "d" ], command = "cd ~/Downloads" }, + { keys = [ "g", "D" ], command = "cd ~/Desktop" }, + { keys = [ "g", "e" ], command = "cd /etc" }, + { keys = [ "g", "h" ], command = "cd ~/" }, + { keys = [ "g", "p" ], command = "cd ~/prog" }, + { keys = [ "g", "i" ], command = "cd ~/Github" }, + { keys = [ "g", "f", "f" ], command = "cd ~/.config" }, + { keys = [ "g", "f", "n" ], command = "cd ~/.config/nvim" }, + { keys = [ "g", "f", "z" ], command = "cd ~/.config/zsh" }, + { keys = [ "g", "f", "j" ], command = "cd ~/.config/joshuto" }, + { keys = [ "g", "f", "l" ], command = "cd ~/.config/jesseduffield/lazygit" }, + { keys = [ "?" ], command = "help" } +] + +[task_view] + +keymap = [ + # arrow keys + { keys = [ "arrow_up" ], command = "cursor_move_up" }, + { keys = [ "arrow_down" ], command = "cursor_move_down" }, + { keys = [ "home" ], command = "cursor_move_home" }, + { keys = [ "end" ], command = "cursor_move_end" }, + + # vim-like keybindings + { keys = [ "e" ], command = "cursor_move_down" }, + { keys = [ "u" ], command = "cursor_move_up" }, + { keys = [ "g", "g" ], command = "cursor_move_home" }, + { keys = [ "G" ], command = "cursor_move_end" }, + + { keys = [ "w" ], command = "show_tasks" }, + { keys = [ "escape" ], command = "show_tasks" }, +] + +[help_view] + +keymap = [ + # arrow keys + { keys = [ "arrow_up" ], command = "cursor_move_up" }, + { keys = [ "arrow_down" ], command = "cursor_move_down" }, + { keys = [ "home" ], command = "cursor_move_home" }, + { keys = [ "end" ], command = "cursor_move_end" }, + + # vim-like keybindings + { keys = [ "e" ], command = "cursor_move_down" }, + { keys = [ "u" ], command = "cursor_move_up" }, + { keys = [ "E" ], command = "cursor_move_down 5" }, + { keys = [ "U" ], command = "cursor_move_up 5" }, + { keys = [ "g", "g" ], command = "cursor_move_home" }, + { keys = [ "G" ], command = "cursor_move_end" }, + + { keys = [ "w" ], command = "show_tasks" }, + { keys = [ "escape" ], command = "show_tasks" }, + { keys = [ "q" ], command = "show_tasks" }, +] diff --git a/joshuto/mimetype.toml b/joshuto/mimetype.toml new file mode 100644 index 0000000..313d230 --- /dev/null +++ b/joshuto/mimetype.toml @@ -0,0 +1,199 @@ +[class] +audio_default = [ + { command = "mpv", args = [ "--" ] }, + { command = "mediainfo", confirm_exit = true }, +] + +image_default = [ + { command = "qimgv", args = [ "--" ], fork = true, silent = true }, + { command = "krita", args = [ "--" ], fork = true, silent = true }, + { command = "exiftool", confirm_exit = true }, + { command = "swappy", args = [ "-f" ], fork = true }, +] + +video_default = [ + { command = "mpv", args = [ "--" ] , fork = true, silent = true }, + { command = "mediainfo", confirm_exit = true }, + { command = "mpv", args = [ "--mute", "on", "--" ], fork = true, silent = true }, +] + +text_default = [ + { command = "nvim" }, + { command = "nano" }, + { command = "gedit", fork = true, silent = true }, + { command = "bat", args = [ "--paging=always" ] }, +] + +reader_default = [ + { command = "evince", fork = true, silent = true }, +] + +libreoffice_default = [ + { command = "libreoffice", fork = true, silent = true }, +] + +[extension] + +## image formats +avif.inherit = "image_default" +bmp.inherit = "image_default" +gif.inherit = "image_default" +heic.inherit = "image_default" +jpeg.inherit = "image_default" +jpe.inherit = "image_default" +jpg.inherit = "image_default" +pgm.inherit = "image_default" +png.inherit = "image_default" +ppm.inherit = "image_default" +webp.inherit = "image_default" + +svg.app_list = [ + { command = "inkview", fork = true, silent = true }, + { command = "inkscape", fork = true, silent = true } ] +tiff.app_list = [ + { command = "qimgv", fork = true, silent = true }, + { command = "krita", fork = true, silent = true } ] + +## audio formats +flac.inherit = "audio_default" +m4a.inherit = "audio_default" +mp3.inherit = "audio_default" +ogg.inherit = "audio_default" +wav.inherit = "audio_default" + +## video formats +avi.inherit = "video_default" +av1.inherit = "video_default" +flv.inherit = "video_default" +mkv.inherit = "video_default" +m4v.inherit = "video_default" +mov.inherit = "video_default" +mp4.inherit = "video_default" +ts.inherit = "video_default" +webm.inherit = "video_default" +wmv.inherit = "video_default" + +## text formats +build.inherit = "text_default" +c.inherit = "text_default" +cmake.inherit = "text_default" +conf.inherit = "text_default" +cpp.inherit = "text_default" +css.inherit = "text_default" +csv.inherit = "text_default" +cu.inherit = "text_default" +dart.inherit = "text_default" +ebuild.inherit = "text_default" +eex.inherit = "text_default" +env.inherit = "text_default" +ex.inherit = "text_default" +exs.inherit = "text_default" +go.inherit = "text_default" +h.inherit = "text_default" +hpp.inherit = "text_default" +hs.inherit = "text_default" +html.inherit = "text_default" +ini.inherit = "text_default" +java.inherit = "text_default" +js.inherit = "text_default" +json.inherit = "text_default" +kt.inherit = "text_default" +lua.inherit = "text_default" +log.inherit = "text_default" +md.inherit = "text_default" +micro.inherit = "text_default" +ninja.inherit = "text_default" +py.inherit = "text_default" +rkt.inherit = "text_default" +rs.inherit = "text_default" +scss.inherit = "text_default" +sh.inherit = "text_default" +srt.inherit = "text_default" +svelte.inherit = "text_default" +toml.inherit = "text_default" +tsx.inherit = "text_default" +txt.inherit = "text_default" +vim.inherit = "text_default" +xml.inherit = "text_default" +yaml.inherit = "text_default" +yml.inherit = "text_default" + +# archive formats +7z.app_list = [ + { command = "7z", args = [ "x" ], confirm_exit = true }, + { command = "file-roller", fork = true, silent = true } ] +bz2.app_list = [ + { command = "tar", args = [ "-xvjf" ], confirm_exit = true }, + { command = "file-roller", fork = true, silent = true } ] +gz.app_list = [ + { command = "tar", args = [ "-xvzf" ], confirm_exit = true }, + { command = "file-roller", fork = true, silent = true } ] +tar.app_list = [ + { command = "tar", args = [ "-xvf" ], confirm_exit = true }, + { command = "file-roller", fork = true, silent = true } ] +tgz.app_list = [ + { command = "tar", args = [ "-xvzf" ], confirm_exit = true }, + { command = "file-roller", fork = true, silent = true } ] +rar.app_list = [ + { command = "unrar", args = [ "x" ], confirm_exit = true }, + { command = "file-roller", fork = true, silent = true } ] +xz.app_list = [ + { command = "tar", args = [ "-xvJf" ], confirm_exit = true }, + { command = "file-roller", fork = true, silent = true } ] +zip.app_list = [ + { command = "unzip", confirm_exit = true }, + { command = "file-roller", fork = true, silent = true } ] + +# misc formats +aup.app_list = [ + { command = "audacity", fork = true, silent = true } ] + +m3u.app_list = [ + { command = "micro" }, + { command = "mpv" }, + { command = "gedit", fork = true, silent = true }, + { command = "bat", confirm_exit = true } ] + +odt.inherit = "libreoffice_default" +odf.inherit = "libreoffice_default" +ods.inherit = "libreoffice_default" +odp.inherit = "libreoffice_default" + +doc.inherit = "libreoffice_default" +docx.inherit = "libreoffice_default" +xls.inherit = "libreoffice_default" +xlsx.inherit = "libreoffice_default" +ppt.inherit = "libreoffice_default" +pptx.inherit = "libreoffice_default" + +pdf.inherit = "reader_default" + +kra.app_list = [ + { command = "krita", fork = true, silent = true } +] +kdenlive.app_list = [ + { command = "kdenlive", fork = true, silent = true } +] + +tex.app_list = [ + { command = "micro" }, + { command = "gedit", fork = true, silent = true }, + { command = "bat", confirm_exit = true }, + { command = "pdflatex" } ] + +torrent.app_list = [ + { command = "transmission-gtk" } ] + +[mimetype] + +# application/octet-stream +[mimetype.application.subtype.octet-stream] +inherit = "video_default" + +# text/* +[mimetype.text] +inherit = "text_default" + +# text/* +[mimetype.video] +inherit = "video_default" diff --git a/joshuto/preview_file.sh b/joshuto/preview_file.sh new file mode 100755 index 0000000..ec14697 --- /dev/null +++ b/joshuto/preview_file.sh @@ -0,0 +1,199 @@ +#!/usr/bin/env bash + +## Joshuto will call this script for each file when first hovered by the cursor. +## If this script returns with an exit code 0, the stdout of this script will be +## the file's preview text in Joshuto's right panel. +## The preview text will be cached by Joshuto and only renewed on reload. +## ANSI color codes are supported if Joshuto is build with the `syntax_highlight` +## feature. +## +## This script is considered a configuration file and must be updated manually. +## It will be left untouched if you upgrade Joshuto. +## +## Meanings of exit codes: +## +## code | meaning | action of ranger +## -----+------------+------------------------------------------- +## 0 | success | Display stdout as preview +## 1 | no preview | Display no preview at all +## +## This script is used only as a provider for textual previews. +## Image previews are independent from this script. +## + +IFS=$'\n' + +# Security measures: +# * noclobber prevents you from overwriting a file with `>` +# * noglob prevents expansion of wild cards +# * nounset causes bash to fail if an undeclared variable is used (e.g. typos) +# * pipefail causes a pipeline to fail also if a command other than the last one fails +set -o noclobber -o noglob -o nounset -o pipefail + +FILE_PATH="" +PREVIEW_WIDTH=10 +PREVIEW_HEIGHT=10 + +while [ "$#" -gt 0 ]; do + case "$1" in + "--path") + shift + FILE_PATH="$1" + ;; + "--preview-width") + shift + PREVIEW_WIDTH="$1" + ;; + "--preview-height") + shift + PREVIEW_HEIGHT="$1" + ;; + esac + shift +done + +handle_extension() { + case "${FILE_EXTENSION_LOWER}" in + ## Archive + a|ace|alz|arc|arj|bz|bz2|cab|cpio|deb|gz|jar|lha|lz|lzh|lzma|lzo|\ + rpm|rz|t7z|tar|tbz|tbz2|tgz|tlz|txz|tZ|tzo|war|xpi|xz|Z|zip) + atool --list -- "${FILE_PATH}" && exit 0 + bsdtar --list --file "${FILE_PATH}" && exit 0 + exit 1;; + rar) + ## Avoid password prompt by providing empty password + unrar lt -p- -- "${FILE_PATH}" && exit 0 + exit 1;; + 7z) + ## Avoid password prompt by providing empty password + 7z l -p -- "${FILE_PATH}" && exit 0 + exit 1;; + + ## PDF + pdf) + ## Preview as text conversion + pdftotext -l 10 -nopgbrk -q -- "${FILE_PATH}" - | \ + fmt -w "${PREVIEW_WIDTH}" && exit 0 + mutool draw -F txt -i -- "${FILE_PATH}" 1-10 | \ + fmt -w "${PREVIEW_WIDTH}" && exit 0 + exiftool "${FILE_PATH}" && exit 0 + exit 1;; + + ## BitTorrent + torrent) + transmission-show -- "${FILE_PATH}" && exit 0 + exit 1;; + + ## OpenDocument + odt|ods|odp|sxw) + ## Preview as text conversion + odt2txt "${FILE_PATH}" && exit 0 + ## Preview as markdown conversion + pandoc -s -t markdown -- "${FILE_PATH}" && exit 0 + exit 1;; + + ## XLSX + xlsx) + ## Preview as csv conversion + ## Uses: https://github.com/dilshod/xlsx2csv + xlsx2csv -- "${FILE_PATH}" && exit 0 + exit 1;; + + ## HTML + htm|html|xhtml) + ## Preview as text conversion + w3m -dump "${FILE_PATH}" && exit 0 + lynx -dump -- "${FILE_PATH}" && exit 0 + elinks -dump "${FILE_PATH}" && exit 0 + pandoc -s -t markdown -- "${FILE_PATH}" && exit 0 + ;; + + ## JSON + json|ipynb) + jq --color-output . "${FILE_PATH}" && exit 0 + python -m json.tool -- "${FILE_PATH}" && exit 0 + ;; + + ## Direct Stream Digital/Transfer (DSDIFF) and wavpack aren't detected + ## by file(1). + dff|dsf|wv|wvc) + mediainfo "${FILE_PATH}" && exit 0 + exiftool "${FILE_PATH}" && exit 0 + ;; # Continue with next handler on failure + esac +} + +handle_mime() { + local mimetype="${1}" + + case "${mimetype}" in + ## RTF and DOC + text/rtf|*msword) + ## Preview as text conversion + ## note: catdoc does not always work for .doc files + ## catdoc: http://www.wagner.pp.ru/~vitus/software/catdoc/ + catdoc -- "${FILE_PATH}" && exit 0 + exit 1;; + + ## DOCX, ePub, FB2 (using markdown) + ## You might want to remove "|epub" and/or "|fb2" below if you have + ## uncommented other methods to preview those formats + *wordprocessingml.document|*/epub+zip|*/x-fictionbook+xml) + ## Preview as markdown conversion + pandoc -s -t markdown -- "${FILE_PATH}" | bat -l markdown \ + --color=always --paging=never \ + --style=plain \ + --terminal-width="${PREVIEW_WIDTH}" && exit 0 + exit 1;; + + ## E-mails + message/rfc822) + ## Parsing performed by mu: https://github.com/djcb/mu + mu view -- "${FILE_PATH}" && exit 0 + exit 1;; + + ## XLS + *ms-excel) + ## Preview as csv conversion + ## xls2csv comes with catdoc: + ## http://www.wagner.pp.ru/~vitus/software/catdoc/ + xls2csv -- "${FILE_PATH}" && exit 0 + exit 1;; + + ## Text + text/* | */xml) + bat --color=always --paging=never \ + --style=plain \ + --terminal-width="${PREVIEW_WIDTH}" \ + "${FILE_PATH}" && exit 0 + cat "${FILE_PATH}" && exit 0 + exit 1;; + + ## DjVu + image/vnd.djvu) + ## Preview as text conversion (requires djvulibre) + djvutxt "${FILE_PATH}" | fmt -w "${PREVIEW_WIDTH}" && exit 0 + exiftool "${FILE_PATH}" && exit 0 + exit 1;; + + ## Image + image/*) + ## Preview as text conversion + exiftool "${FILE_PATH}" && exit 0 + exit 1;; + + ## Video and audio + video/* | audio/*) + mediainfo "${FILE_PATH}" && exit 0 + exiftool "${FILE_PATH}" && exit 0 + exit 1;; + esac +} + +FILE_EXTENSION="${FILE_PATH##*.}" +FILE_EXTENSION_LOWER="$(printf "%s" "${FILE_EXTENSION}" | tr '[:upper:]' '[:lower:]')" +handle_extension +MIMETYPE="$( file --dereference --brief --mime-type -- "${FILE_PATH}" )" +handle_mime "${MIMETYPE}" + +exit 1 diff --git a/zsh/aliases.zsh b/zsh/aliases.zsh index 9c3ce23..0e91337 100644 --- a/zsh/aliases.zsh +++ b/zsh/aliases.zsh @@ -12,7 +12,7 @@ alias ms='mailsync' alias mt='neomutt' alias r='echo $RANGER_LEVEL' alias pu='python3 -m pudb' -alias ra='ranger' +alias ra='joshuto' # ra() { #if [ -z "$RANGER_LEVEL" ] #then @@ -27,7 +27,6 @@ alias sra='sudo -E ranger' alias sudo='sudo -E' alias vim='nvim' alias gs='git config credential.helper store' -alias bat='sudo tlp bat' alias ac='sudo tlp ac' alias gy='git-yolo' alias nb='newsboat -r'