Updated i3, fonts and ranger configurations
This commit is contained in:
		
							parent
							
								
									afa6ce6902
								
							
						
					
					
						commit
						4160f106b3
					
				| @ -29,7 +29,10 @@ | ||||
|     <edit mode="assign" name="hintstyle"><const>hintnone</const></edit> | ||||
|     <edit mode="assign" name="lcdfilter"><const>lcdlight</const></edit> | ||||
|   </match> | ||||
| 
 | ||||
|  <match target="pattern"> | ||||
|    <test qual="any" name="family"><string>verdana</string></test> | ||||
|    <edit name="family" mode="assign" binding="same"><string>Ubuntu</string></edit> | ||||
|  </match> | ||||
|   <!-- Prefer Liberation --> | ||||
|   <alias> | ||||
|     <family>sans-serif</family> | ||||
|  | ||||
| @ -48,12 +48,17 @@ exec --no-startup-id "udiskie --notify --automount" # Automounter | ||||
| # Background software | ||||
| exec --no-startup-id "blueman-manager" # Bluetooth | ||||
| exec --no-startup-id "cantata" | ||||
| exec --no-startup-id "boincmgr" | ||||
| exec --no-startup-id "nextcloud" | ||||
| exec --no-startup-id "pavucontrol" | ||||
| exec --no-startup-id "keepassxc" # Password manager | ||||
| 
 | ||||
| # Applications | ||||
| exec --no-startup-id "telegram-desktop" | ||||
| 
 | ||||
| # Set manual layout for tray workspace | ||||
| exec --no-startup-id "i3-msg 'workspace 10:tray; append_layout /home/lanxu/.config/i3/tray.json'" | ||||
| 
 | ||||
| set $refresh_i3status killall -SIGUSR1 i3status | ||||
| bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5% && $refresh_i3status | ||||
| bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -5% && $refresh_i3status | ||||
| @ -158,7 +163,7 @@ set $ws5 "5:steam" | ||||
| set $ws6 "6:lutris" | ||||
| set $ws7 "7" | ||||
| set $ws8 "8" | ||||
| set $ws9 "9" | ||||
| set $ws9 "9:pw" | ||||
| set $ws10 "10:tray" | ||||
| 
 | ||||
| # switch to workspace | ||||
| @ -235,8 +240,9 @@ for_window [class="Arandr"] floating enable | ||||
| for_window [title="^Telegram$"] floating enable, move scratchpad | ||||
| for_window [class="itch"] floating enable | ||||
| # for_window [class="Wine"] floating enable | ||||
| for_window [class="mpv"] floating enabler, move position center | ||||
| for_window [class="mpv"] floating enable, move position center | ||||
| for_window [class="vlc"] floating enable | ||||
| for_window [class="Mumble"] floating enable, move position center | ||||
| for_window [class="Sxiv"] floating enable | ||||
| for_window [class="Lutris"] move container to workspace $ws6 | ||||
| for_window [class="Gimp"] move container to workspace $ws4 | ||||
| @ -249,6 +255,12 @@ for_window [class="Nextcloud"] floating disable, move container to workspace $ws | ||||
| for_window [class="Blueman-manager"] move container to workspace $ws10 | ||||
| for_window [class="Pavucontrol"] move container to workspace $ws10e | ||||
| for_window [class="cantata"] floating disable, move container to workspace $ws10 | ||||
| for_window [class="boincmgr"] floating disable, move container to workspace $ws10 | ||||
| for_window [class="KeePassXC"] move container to workspace $ws9 | ||||
| 
 | ||||
| # Games | ||||
| for_window [class="kfgame.exe"] floating enable | ||||
| for_window [class="Wine"] floating enable | ||||
| 
 | ||||
| # Steam | ||||
| # https://github.com/ValveSoftware/steam-for-linux/issues/1040 | ||||
| @ -276,19 +288,43 @@ smart_gaps on | ||||
| gaps outer 0 | ||||
| gaps inner 10 | ||||
| 
 | ||||
| # https://github.com/khamer/base16-i3/tree/master/colors | ||||
| 
 | ||||
| ## Base16 Solarized Light | ||||
| # Author: Ethan Schoonover (modified by aramisgithub) | ||||
| # | ||||
| # You can use these variables anywhere in the i3 configuration file. | ||||
| 
 | ||||
| set $base00 #fdf6e3 | ||||
| set $base01 #eee8d5 | ||||
| set $base02 #93a1a1 | ||||
| set $base03 #839496 | ||||
| set $base04 #657b83 | ||||
| set $base05 #586e75 | ||||
| set $base06 #073642 | ||||
| set $base07 #002b36 | ||||
| #set $base00 #fdf6e3 | ||||
| #set $base01 #eee8d5 | ||||
| #set $base02 #93a1a1 | ||||
| #set $base03 #839496 | ||||
| #set $base04 #657b83 | ||||
| #set $base05 #586e75 | ||||
| #set $base06 #073642 | ||||
| #set $base07 #002b36 | ||||
| #set $base08 #dc322f | ||||
| #set $base09 #cb4b16 | ||||
| #set $base0A #b58900 | ||||
| #set $base0B #859900 | ||||
| #set $base0C #2aa198 | ||||
| #set $base0D #268bd2 | ||||
| #set $base0E #6c71c4 | ||||
| #set $base0F #d33682 | ||||
| 
 | ||||
| ## Base16 Solarized Dark | ||||
| # Author: Ethan Schoonover (modified by aramisgithub) | ||||
| # | ||||
| # You can use these variables anywhere in the i3 configuration file. | ||||
| 
 | ||||
| set $base00 #002b36 | ||||
| set $base01 #073642 | ||||
| set $base02 #586e75 | ||||
| set $base03 #657b83 | ||||
| set $base04 #839496 | ||||
| set $base05 #93a1a1 | ||||
| set $base06 #eee8d5 | ||||
| set $base07 #fdf6e3 | ||||
| set $base08 #dc322f | ||||
| set $base09 #cb4b16 | ||||
| set $base0A #b58900 | ||||
|  | ||||
| @ -1,7 +1,8 @@ | ||||
| general { | ||||
|     # These will be used if not supplied by a module | ||||
|     # Solarized | ||||
|     color = '#073642' | ||||
|     #color = '#073642' # base0 | ||||
|     color = '#93a1a1' # base1 | ||||
|     color_good = '#859900' | ||||
|     color_degraded = '#b58900' | ||||
|     color_bad = '#dc322f' | ||||
| @ -12,8 +13,8 @@ py3status { | ||||
|     min_width = 50 | ||||
|     separator = True | ||||
|     separator_block_width = 20 | ||||
|     # border = '#4c7899' | ||||
|     border = '#073642' | ||||
|     border = '#4c7899' | ||||
|     #border = '#073642' | ||||
|     border_bottom = 0 | ||||
|     border_left = 0 | ||||
|     border_right = 0 | ||||
|  | ||||
| @ -11,8 +11,8 @@ class Py3status: | ||||
|     format = 'GPU: {temp}℃' | ||||
|     thresholds = [ | ||||
|         (0, "good"), | ||||
|         (45, "degraded"), | ||||
|         (60, "bad") | ||||
|         (50, "degraded"), | ||||
|         (70, "bad") | ||||
|     ] | ||||
| 
 | ||||
|     def gpu_temp(self): | ||||
|  | ||||
| @ -1,50 +1,51 @@ | ||||
| font_family      Fira Mono Medium | ||||
| bold_font        Fira Mono Bold | ||||
| italic_font      Fira Mono Italic | ||||
| font_family      Fira Code Medium | ||||
| bold_font        Fira Code Bold | ||||
| italic_font      Fira Code Italic | ||||
| bold_italic_font auto | ||||
| font_size 11.0 | ||||
| window_padding_width 10.0 | ||||
| window_padding_height 10.0 | ||||
| 
 | ||||
| # Base16 Solarized Light - kitty color config | ||||
| # Base16 Solarized Dark - kitty color config | ||||
| # Scheme by Ethan Schoonover (modified by aramisgithub) | ||||
| background #fdf6e3 | ||||
| foreground #586e75 | ||||
| selection_background #586e75 | ||||
| selection_foreground #fdf6e3 | ||||
| url_color #657b83 | ||||
| cursor #586e75 | ||||
| active_border_color #839496 | ||||
| inactive_border_color #eee8d5 | ||||
| active_tab_background #fdf6e3 | ||||
| active_tab_foreground #586e75 | ||||
| inactive_tab_background #eee8d5 | ||||
| inactive_tab_foreground #657b83 | ||||
| background #002b36 | ||||
| foreground #93a1a1 | ||||
| selection_background #93a1a1 | ||||
| selection_foreground #002b36 | ||||
| url_color #839496 | ||||
| cursor #93a1a1 | ||||
| active_border_color #657b83 | ||||
| inactive_border_color #073642 | ||||
| active_tab_background #002b36 | ||||
| active_tab_foreground #93a1a1 | ||||
| inactive_tab_background #073642 | ||||
| inactive_tab_foreground #839496 | ||||
| tab_bar_background #073642 | ||||
| 
 | ||||
| # normal | ||||
| color0 #fdf6e3 | ||||
| color0 #002b36 | ||||
| color1 #dc322f | ||||
| color2 #859900 | ||||
| color3 #b58900 | ||||
| color4 #268bd2 | ||||
| color5 #6c71c4 | ||||
| color6 #2aa198 | ||||
| color7 #586e75 | ||||
| color7 #93a1a1 | ||||
| 
 | ||||
| # bright | ||||
| color8 #839496 | ||||
| color8 #657b83 | ||||
| color9 #dc322f | ||||
| color10 #859900 | ||||
| color11 #b58900 | ||||
| color12 #268bd2 | ||||
| color13 #6c71c4 | ||||
| color14 #2aa198 | ||||
| color15 #586e75 | ||||
| color15 #fdf6e3 | ||||
| 
 | ||||
| # extended base16 colors | ||||
| color16 #cb4b16 | ||||
| color17 #d33682 | ||||
| color18 #eee8d5 | ||||
| color19 #93a1a1 | ||||
| color20 #657b83 | ||||
| color21 #073642 | ||||
| color18 #073642 | ||||
| color19 #586e75 | ||||
| color20 #839496 | ||||
| color21 #eee8d5 | ||||
|  | ||||
| @ -1,9 +1,9 @@ | ||||
| [xin_0] | ||||
| file=/home/lanxu/.config/i3/background.png | ||||
| mode=2 | ||||
| mode=5 | ||||
| bgcolor=#000000 | ||||
| 
 | ||||
| [xin_1] | ||||
| file=/home/lanxu/.config/i3/background.png | ||||
| mode=2 | ||||
| mode=5 | ||||
| bgcolor=#000000 | ||||
|  | ||||
| @ -1,12 +1,12 @@ | ||||
| [geometry] | ||||
| posx=616 | ||||
| posy=19 | ||||
| sizex=638 | ||||
| sizey=1059 | ||||
| posx=3205 | ||||
| posy=33 | ||||
| sizex=625 | ||||
| sizey=1037 | ||||
| 
 | ||||
| [nitrogen] | ||||
| view=icon | ||||
| view=list | ||||
| recurse=true | ||||
| sort=alpha | ||||
| icon_caps=false | ||||
| dirs= | ||||
| dirs=/home/lanxu/.config/i3; | ||||
|  | ||||
| @ -67,6 +67,9 @@ set vcs_backend_hg disabled | ||||
| set vcs_backend_bzr disabled | ||||
| set vcs_backend_svn disabled | ||||
| 
 | ||||
| # Truncate the long commit messages to this length when shown in the statusbar. | ||||
| set vcs_msg_length 50 | ||||
| 
 | ||||
| # Use one of the supported image preview protocols | ||||
| set preview_images true | ||||
| 
 | ||||
| @ -106,12 +109,20 @@ set preview_images true | ||||
| #   while slower, this allows remote previews, | ||||
| #   for example during an ssh session. | ||||
| #   Tmux is unsupported. | ||||
| # | ||||
| # * ueberzug: | ||||
| #   Preview images in full color with the external command "ueberzug". | ||||
| #   Images are shown by using a child window. | ||||
| #   Only for users who run X11 in GNU/Linux. | ||||
| set preview_images_method kitty | ||||
| 
 | ||||
| # Delay in seconds before displaying an image with the w3m method. | ||||
| # Increase it in case of experiencing display corruption. | ||||
| set w3m_delay 0.02 | ||||
| 
 | ||||
| # Manually adjust the w3mimg offset when using a terminal which needs this | ||||
| set w3m_offset 0 | ||||
| 
 | ||||
| # Default iTerm2 font size (see: preview_images_method: iterm2) | ||||
| set iterm2_font_width 8 | ||||
| set iterm2_font_height 11 | ||||
| @ -136,6 +147,9 @@ set preview_files true | ||||
| set preview_directories true | ||||
| set collapse_preview true | ||||
| 
 | ||||
| # Wrap long lines in plain text previews? | ||||
| set wrap_plaintext_previews false | ||||
| 
 | ||||
| # Save the console history on exit? | ||||
| set save_console_history true | ||||
| 
 | ||||
| @ -168,10 +182,10 @@ set display_free_space_in_status_bar true | ||||
| # Display files tags in all columns or only in main column? | ||||
| set display_tags_in_all_columns true | ||||
| 
 | ||||
| # Set a title for the window? | ||||
| # Set a title for the window? Updates both `WM_NAME` and `WM_ICON_NAME` | ||||
| set update_title false | ||||
| 
 | ||||
| # Set the title to "ranger" in the tmux program? | ||||
| # Set the tmux/screen window-name to "ranger"? | ||||
| set update_tmux_title true | ||||
| 
 | ||||
| # Shorten the title if it gets long?  The number defines how many | ||||
| @ -290,6 +304,14 @@ set global_inode_type_filter | ||||
| # should be 'false' during start-up, but you can toggle it by pressing F. | ||||
| set freeze_files false | ||||
| 
 | ||||
| # Print file sizes in bytes instead of the default human-readable format. | ||||
| set size_in_bytes false | ||||
| 
 | ||||
| # Warn at startup if RANGER_LEVEL env var is greater than 0, in other words | ||||
| # give a warning when you nest ranger in a subshell started by ranger. | ||||
| # Special value "error" makes the warning more visible. | ||||
| set nested_ranger_warning true | ||||
| 
 | ||||
| # =================================================================== | ||||
| # == Local Options | ||||
| # =================================================================== | ||||
| @ -337,6 +359,8 @@ map <esc> change_mode normal | ||||
| map ~ set viewmode! | ||||
| 
 | ||||
| map i display_file | ||||
| map <A-j> scroll_preview 1 | ||||
| map <A-k> scroll_preview -1 | ||||
| map ? help | ||||
| map W display_log | ||||
| map w taskview_open | ||||
| @ -348,9 +372,8 @@ map !  console shell%space | ||||
| map @  console -p6 shell  %%s | ||||
| map #  console shell -p%space | ||||
| map s  console shell%space | ||||
| map r  chain draw_possible_programs; console open_with%%space | ||||
| # map f  console find%space | ||||
| map f console scout -ftsea%space | ||||
| map r  chain draw_possible_programs; console open_with%space | ||||
| map f  console find%space | ||||
| map cd console cd%space | ||||
| 
 | ||||
| map <C-p> chain console; eval fm.ui.console.history_move(-1) | ||||
| @ -359,8 +382,10 @@ map <C-p> chain console; eval fm.ui.console.history_move(-1) | ||||
| map Mf linemode filename | ||||
| map Mi linemode fileinfo | ||||
| map Mm linemode mtime | ||||
| map Mh linemode humanreadablemtime | ||||
| map Mp linemode permissions | ||||
| map Ms linemode sizemtime | ||||
| map MH linemode sizehumanreadablemtime | ||||
| map Mt linemode metatitle | ||||
| 
 | ||||
| # Tagging / Marking | ||||
| @ -382,6 +407,7 @@ map <F5> copy | ||||
| map <F6> cut | ||||
| map <F7> console mkdir%space | ||||
| map <F8> console delete | ||||
| #map <F8> console trash | ||||
| map <F10> exit | ||||
| 
 | ||||
| # In case you work on a keyboard with dvorak layout | ||||
| @ -464,8 +490,12 @@ map pl paste_symlink relative=False | ||||
| map pL paste_symlink relative=True | ||||
| map phl paste_hardlink | ||||
| map pht paste_hardlinked_subtree | ||||
| map pd console paste dest= | ||||
| map p`<any> paste dest=%any_path | ||||
| map p'<any> paste dest=%any_path | ||||
| 
 | ||||
| map dD console delete | ||||
| map dT console trash | ||||
| 
 | ||||
| map dd cut | ||||
| map ud uncut | ||||
| @ -566,15 +596,18 @@ map zf    console filter%space | ||||
| copymap zf zz | ||||
| 
 | ||||
| # Filter stack | ||||
| map .n console filter_stack add name%space | ||||
| map .m console filter_stack add mime%space | ||||
| map .d filter_stack add type d | ||||
| map .f filter_stack add type f | ||||
| map .l filter_stack add type l | ||||
| map .m console filter_stack add mime%space | ||||
| map .n console filter_stack add name%space | ||||
| map .# console filter_stack add hash%space | ||||
| map ." filter_stack add duplicate | ||||
| map .' filter_stack add unique | ||||
| map .| filter_stack add or | ||||
| map .& filter_stack add and | ||||
| map .! filter_stack add not | ||||
| map .r console filter_stack rotate | ||||
| map .r filter_stack rotate | ||||
| map .c filter_stack clear | ||||
| map .* filter_stack decompose | ||||
| map .p filter_stack pop | ||||
| @ -724,3 +757,6 @@ tmap <delete>   eval -q fm.ui.taskview.task_remove() | ||||
| tmap <C-l> redraw_window | ||||
| tmap <ESC> taskview_close | ||||
| copytmap <ESC> q Q w <C-c> | ||||
| 
 | ||||
| # Drag'n'Drop using dragon https://github.com/mwh/dragon | ||||
| map <C-d> shell dragon -a -x %p | ||||
|  | ||||
| @ -26,7 +26,7 @@ | ||||
| #   directory      | $1 is a directory | ||||
| #   number <n>     | change the number of this command to n | ||||
| #   terminal       | stdin, stderr and stdout are connected to a terminal | ||||
| #   X              | $DISPLAY is not empty (i.e. Xorg runs) | ||||
| #   X              | A graphical environment is available (darwin, Xorg, or Wayland) | ||||
| # | ||||
| # There are also pseudo-conditions which have a "side effect": | ||||
| #   flag <flags>  | Change how the program is run. See below. | ||||
| @ -48,7 +48,7 @@ | ||||
| # Note: When using rifle in ranger, there is an additional flag "c" for | ||||
| # only running the current file even if you have marked multiple files. | ||||
| 
 | ||||
| has xdg-open, flag f = xdg-open "$1" | ||||
| # has xdg-open, flag f = xdg-open "$1" | ||||
| #------------------------------------------- | ||||
| # Websites | ||||
| #------------------------------------------- | ||||
| @ -67,13 +67,13 @@ ext x?html?, has uzbl-tabbed,      X, flag f = uzbl-tabbed -- "$@" | ||||
| ext x?html?, has uzbl-browser,     X, flag f = uzbl-browser -- "$@" | ||||
| ext x?html?, has uzbl-core,        X, flag f = uzbl-core -- "$@" | ||||
| ext x?html?, has midori,           X, flag f = midori -- "$@" | ||||
| ext x?html?, has chromium-browser, X, flag f = chromium-browser -- "$@" | ||||
| ext x?html?, has chromium,         X, flag f = chromium -- "$@" | ||||
| ext x?html?, has google-chrome,    X, flag f = google-chrome -- "$@" | ||||
| ext x?html?, has opera,            X, flag f = opera -- "$@" | ||||
| ext x?html?, has firefox,          X, flag f = firefox -- "$@" | ||||
| ext x?html?, has seamonkey,        X, flag f = seamonkey -- "$@" | ||||
| ext x?html?, has iceweasel,        X, flag f = iceweasel -- "$@" | ||||
| ext x?html?, has chromium-browser, X, flag f = chromium-browser -- "$@" | ||||
| ext x?html?, has chromium,         X, flag f = chromium -- "$@" | ||||
| ext x?html?, has google-chrome,    X, flag f = google-chrome -- "$@" | ||||
| ext x?html?, has epiphany,         X, flag f = epiphany -- "$@" | ||||
| ext x?html?, has konqueror,        X, flag f = konqueror -- "$@" | ||||
| ext x?html?, has elinks,            terminal = elinks "$@" | ||||
| @ -99,7 +99,7 @@ ext exe                       = wine "$1" | ||||
| name ^[mM]akefile$            = make | ||||
| 
 | ||||
| #-------------------------------------------- | ||||
| # Code | ||||
| # Scripts | ||||
| #------------------------------------------- | ||||
| ext py  = python -- "$1" | ||||
| ext pl  = perl -- "$1" | ||||
| @ -168,8 +168,13 @@ ext djvu, has atril,  X, flag f = atril -- "$@" | ||||
| ext djvu, has djview, X, flag f = djview -- "$@" | ||||
| 
 | ||||
| ext epub, has ebook-viewer, X, flag f = ebook-viewer -- "$@" | ||||
| ext epub, has zathura,      X, flag f = zathura -- "$@" | ||||
| ext epub, has mupdf,        X, flag f = mupdf -- "$@" | ||||
| ext mobi, has ebook-viewer, X, flag f = ebook-viewer -- "$@" | ||||
| 
 | ||||
| ext cbr,  has zathura,      X, flag f = zathura -- "$@" | ||||
| ext cbz,  has zathura,      X, flag f = zathura -- "$@" | ||||
| 
 | ||||
| #------------------------------------------- | ||||
| # Images | ||||
| #------------------------------------------- | ||||
| @ -186,6 +191,7 @@ mime ^image, has eog,       X, flag f = eog -- "$@" | ||||
| mime ^image, has eom,       X, flag f = eom -- "$@" | ||||
| mime ^image, has nomacs,    X, flag f = nomacs -- "$@" | ||||
| mime ^image, has geeqie,    X, flag f = geeqie -- "$@" | ||||
| mime ^image, has gpicview,  X, flag f = gpicview -- "$@" | ||||
| mime ^image, has gwenview,  X, flag f = gwenview -- "$@" | ||||
| mime ^image, has gimp,      X, flag f = gimp -- "$@" | ||||
| ext xcf,                    X, flag f = gimp -- "$@" | ||||
| @ -254,10 +260,29 @@ label wallpaper, number 12, mime ^image, has feh, X = feh --bg-tile "$1" | ||||
| label wallpaper, number 13, mime ^image, has feh, X = feh --bg-center "$1" | ||||
| label wallpaper, number 14, mime ^image, has feh, X = feh --bg-fill "$1" | ||||
| 
 | ||||
| #------------------------------------------- | ||||
| # Generic file openers | ||||
| #------------------------------------------- | ||||
| label open, has xdg-open = xdg-open -- "$@" | ||||
| label open, has open     = open -- "$@" | ||||
| 
 | ||||
| # Define the editor for non-text files + pager as last action | ||||
|               !mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php  = ask | ||||
| label editor, !mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php  = ${VISUAL:-$EDITOR} -- "$@" | ||||
| label pager,  !mime ^text, !ext xml|json|csv|tex|py|pl|rb|js|sh|php  = "$PAGER" -- "$@" | ||||
| 
 | ||||
| # The very last action, so that it's never triggered accidentally, is to execute a program: | ||||
| 
 | ||||
| ###################################################################### | ||||
| # The actions below are left so low down in this file on purpose, so # | ||||
| # they are never triggered accidentally.                             # | ||||
| ###################################################################### | ||||
| 
 | ||||
| # Execute a file as program/script. | ||||
| mime application/x-executable = "$1" | ||||
| 
 | ||||
| # Move the file to trash using trash-cli. | ||||
| label trash, has trash-put = trash-put -- "$@" | ||||
| label trash = mkdir -p -- ${XDG_DATA_DIR:-$HOME/.ranger}/ranger-trash; mv -- "$@" ${XDG_DATA_DIR:-$HOME/.ranger}/ranger-trash | ||||
| 
 | ||||
| # Drag'n'Drop using dragon https://github.com/mwh/dragon | ||||
| has dragon, X, flag f = dragon -a -x "$@" | ||||
|  | ||||
| @ -3,29 +3,34 @@ | ||||
| set -o noclobber -o noglob -o nounset -o pipefail | ||||
| IFS=$'\n' | ||||
| 
 | ||||
| # If the option `use_preview_script` is set to `true`, | ||||
| # then this script will be called and its output will be displayed in ranger. | ||||
| # ANSI color codes are supported. | ||||
| # STDIN is disabled, so interactive scripts won't work properly | ||||
| ## If the option `use_preview_script` is set to `true`, | ||||
| ## then this script will be called and its output will be displayed in ranger. | ||||
| ## ANSI color codes are supported. | ||||
| ## STDIN is disabled, so interactive scripts won't work properly | ||||
| 
 | ||||
| # This script is considered a configuration file and must be updated manually. | ||||
| # It will be left untouched if you upgrade ranger. | ||||
| ## This script is considered a configuration file and must be updated manually. | ||||
| ## It will be left untouched if you upgrade ranger. | ||||
| 
 | ||||
| # Meanings of exit codes: | ||||
| # code | meaning    | action of ranger | ||||
| # -----+------------+------------------------------------------- | ||||
| # 0    | success    | Display stdout as preview | ||||
| # 1    | no preview | Display no preview at all | ||||
| # 2    | plain text | Display the plain content of the file | ||||
| # 3    | fix width  | Don't reload when width changes | ||||
| # 4    | fix height | Don't reload when height changes | ||||
| # 5    | fix both   | Don't ever reload | ||||
| # 6    | image      | Display the image `$IMAGE_CACHE_PATH` points to as an image preview | ||||
| # 7    | image      | Display the file directly as an image | ||||
| ## Because of some automated testing we do on the script #'s for comments need | ||||
| ## to be doubled up. Code that is commented out, because it's an alternative for | ||||
| ## example, gets only one #. | ||||
| 
 | ||||
| # Script arguments | ||||
| ## Meanings of exit codes: | ||||
| ## code | meaning    | action of ranger | ||||
| ## -----+------------+------------------------------------------- | ||||
| ## 0    | success    | Display stdout as preview | ||||
| ## 1    | no preview | Display no preview at all | ||||
| ## 2    | plain text | Display the plain content of the file | ||||
| ## 3    | fix width  | Don't reload when width changes | ||||
| ## 4    | fix height | Don't reload when height changes | ||||
| ## 5    | fix both   | Don't ever reload | ||||
| ## 6    | image      | Display the image `$IMAGE_CACHE_PATH` points to as an image preview | ||||
| ## 7    | image      | Display the file directly as an image | ||||
| 
 | ||||
| ## Script arguments | ||||
| FILE_PATH="${1}"         # Full path of the highlighted file | ||||
| PV_WIDTH="${2}"          # Width of the preview pane (number of fitting characters) | ||||
| ## shellcheck disable=SC2034 # PV_HEIGHT is provided for convenience and unused | ||||
| PV_HEIGHT="${3}"         # Height of the preview pane (number of fitting characters) | ||||
| IMAGE_CACHE_PATH="${4}"  # Full path that should be used to cache image preview | ||||
| PV_IMAGE_ENABLED="${5}"  # 'True' if image previews are enabled, 'False' otherwise. | ||||
| @ -33,71 +38,93 @@ PV_IMAGE_ENABLED="${5}"  # 'True' if image previews are enabled, 'False' otherwi | ||||
| FILE_EXTENSION="${FILE_PATH##*.}" | ||||
| FILE_EXTENSION_LOWER="$(printf "%s" "${FILE_EXTENSION}" | tr '[:upper:]' '[:lower:]')" | ||||
| 
 | ||||
| # Settings | ||||
| ## Settings | ||||
| HIGHLIGHT_SIZE_MAX=262143  # 256KiB | ||||
| HIGHLIGHT_TABWIDTH=${HIGHLIGHT_TABWIDTH:-8} | ||||
| HIGHLIGHT_STYLE=${HIGHLIGHT_STYLE:-pablo} | ||||
| HIGHLIGHT_OPTIONS="--replace-tabs=${HIGHLIGHT_TABWIDTH} --style=${HIGHLIGHT_STYLE} ${HIGHLIGHT_OPTIONS:-}" | ||||
| PYGMENTIZE_STYLE=${PYGMENTIZE_STYLE:-autumn} | ||||
| 
 | ||||
| OPENSCAD_IMGSIZE=${RNGR_OPENSCAD_IMGSIZE:-1000,1000} | ||||
| OPENSCAD_COLORSCHEME=${RNGR_OPENSCAD_COLORSCHEME:-Tomorrow Night} | ||||
| 
 | ||||
| handle_extension() { | ||||
|     case "${FILE_EXTENSION_LOWER}" in | ||||
|         # Archive | ||||
|         ## 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 5 | ||||
|             bsdtar --list --file "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
|         rar) | ||||
|             # Avoid password prompt by providing empty password | ||||
|             ## Avoid password prompt by providing empty password | ||||
|             unrar lt -p- -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
|         7z) | ||||
|             # Avoid password prompt by providing empty password | ||||
|             ## Avoid password prompt by providing empty password | ||||
|             7z l -p -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         # PDF | ||||
|         #pdf) | ||||
|         #    # Preview as text conversion | ||||
|         #    pdftotext -l 10 -nopgbrk -q -- "${FILE_PATH}" - | fmt -w ${PV_WIDTH} && exit 5 | ||||
|         #    mutool draw -F txt -i -- "${FILE_PATH}" 1-10 | fmt -w ${PV_WIDTH} && exit 5 | ||||
|         #    exiftool "${FILE_PATH}" && exit 5 | ||||
| 	#    exit 1;; | ||||
|         ## PDF | ||||
|         pdf) | ||||
|             ## Preview as text conversion | ||||
|             pdftotext -l 10 -nopgbrk -q -- "${FILE_PATH}" - | \ | ||||
|               fmt -w "${PV_WIDTH}" && exit 5 | ||||
|             mutool draw -F txt -i -- "${FILE_PATH}" 1-10 | \ | ||||
|               fmt -w "${PV_WIDTH}" && exit 5 | ||||
|             exiftool "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         # BitTorrent | ||||
|         ## BitTorrent | ||||
|         torrent) | ||||
|             transmission-show -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         # OpenDocument | ||||
|         ## OpenDocument | ||||
|         odt|ods|odp|sxw) | ||||
|             # Preview as text conversion | ||||
|             ## Preview as text conversion | ||||
|             odt2txt "${FILE_PATH}" && exit 5 | ||||
|             ## Preview as markdown conversion | ||||
|             pandoc -s -t markdown -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         # HTML | ||||
|         ## XLSX | ||||
|         xlsx) | ||||
|             ## Preview as csv conversion | ||||
|             ## Uses: https://github.com/dilshod/xlsx2csv | ||||
|             xlsx2csv -- "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         ## HTML | ||||
|         htm|html|xhtml) | ||||
|             # Preview as text conversion | ||||
|             ## Preview as text conversion | ||||
|             w3m -dump "${FILE_PATH}" && exit 5 | ||||
|             lynx -dump -- "${FILE_PATH}" && exit 5 | ||||
|             elinks -dump "${FILE_PATH}" && exit 5 | ||||
|             ;; # Continue with next handler on failure | ||||
|             pandoc -s -t markdown -- "${FILE_PATH}" && exit 5 | ||||
|             ;; | ||||
| 
 | ||||
| 	# JSON | ||||
|         ## JSON | ||||
|         json) | ||||
|             jq --color-output . "${FILE_PATH}" && exit 5 | ||||
|             python -m json.tool -- "${FILE_PATH}" && exit 5 | ||||
| ;; | ||||
|             ;; | ||||
| 
 | ||||
|         ## Direct Stream Digital/Transfer (DSDIFF) and wavpack aren't detected | ||||
|         ## by file(1). | ||||
|         dff|dsf|wv|wvc) | ||||
|             mediainfo "${FILE_PATH}" && exit 5 | ||||
|             exiftool "${FILE_PATH}" && exit 5 | ||||
|             ;; # Continue with next handler on failure | ||||
|     esac | ||||
| } | ||||
| 
 | ||||
| handle_image() { | ||||
|     # Size of the preview if there are multiple options or it has to be rendered | ||||
|     # from vector graphics. If the conversion program allows specifying only one | ||||
|     # dimension while keeping the aspect ratio, the width will be used. | ||||
|     ## Size of the preview if there are multiple options or it has to be | ||||
|     ## rendered from vector graphics. If the conversion program allows | ||||
|     ## specifying only one dimension while keeping the aspect ratio, the width | ||||
|     ## will be used. | ||||
|     local DEFAULT_SIZE="1920x1080" | ||||
| 
 | ||||
|     local mimetype="${1}" | ||||
| 
 | ||||
|     case "${FILE_EXTENSION_LOWER}" in | ||||
| @ -134,33 +161,32 @@ handle_image() { | ||||
|             # but might fail for unsupported types. | ||||
|             exit 7;; | ||||
| 
 | ||||
|         # Video | ||||
|         video/*) | ||||
|             # Thumbnail | ||||
|             ffmpegthumbnailer -i "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}" -s 0 && exit 6 | ||||
|             exit 1;; | ||||
|         ## Video | ||||
|         # video/*) | ||||
|         #     # Thumbnail | ||||
|         #     ffmpegthumbnailer -i "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}" -s 0 && exit 6 | ||||
|         #     exit 1;; | ||||
| 
 | ||||
|         # PDF | ||||
|         application/pdf) | ||||
|             pdftoppm -f 1 -l 1 \ | ||||
|                      -scale-to-x "${DEFAULT_SIZE%x*}" \ | ||||
|                      -scale-to-y -1 \ | ||||
|                      -singlefile \ | ||||
|                      -jpeg -tiffcompression jpeg \ | ||||
|                      -- "${FILE_PATH}" "${IMAGE_CACHE_PATH%.*}" \ | ||||
| 	        && exit 6 || exit 1;; | ||||
|         # ePub, MOBI, FB2 (using Calibre) | ||||
|         # application/epub+zip|application/x-mobipocket-ebook|application/x-fictionbook+xml) | ||||
|         #     ebook-meta --get-cover="${IMAGE_CACHE_PATH}" -- "${FILE_PATH}" > /dev/null \ | ||||
|         ## PDF | ||||
|         # application/pdf) | ||||
|         #     pdftoppm -f 1 -l 1 \ | ||||
|         #              -scale-to-x "${DEFAULT_SIZE%x*}" \ | ||||
|         #              -scale-to-y -1 \ | ||||
|         #              -singlefile \ | ||||
|         #              -jpeg -tiffcompression jpeg \ | ||||
|         #              -- "${FILE_PATH}" "${IMAGE_CACHE_PATH%.*}" \ | ||||
|         #         && exit 6 || exit 1;; | ||||
|         ## ePub, MOBI, FB2 (using Calibre) | ||||
|         # application/epub+zip|application/x-mobipocket-ebook|\ | ||||
|         # application/x-fictionbook+xml) | ||||
|         #     # ePub (using https://github.com/marianosimone/epub-thumbnailer) | ||||
|         #     epub-thumbnailer "${FILE_PATH}" "${IMAGE_CACHE_PATH}" \ | ||||
|         #         "${DEFAULT_SIZE%x*}" && exit 6 | ||||
|         #     ebook-meta --get-cover="${IMAGE_CACHE_PATH}" -- "${FILE_PATH}" \ | ||||
|         #         >/dev/null && exit 6 | ||||
|         #     exit 1;; | ||||
| 
 | ||||
|         # ePub (using <https://github.com/marianosimone/epub-thumbnailer>) | ||||
|         # application/epub+zip) | ||||
|         #     epub-thumbnailer \ | ||||
|         #         "${FILE_PATH}" "${IMAGE_CACHE_PATH}" "${DEFAULT_SIZE%x*}" \ | ||||
|         #         && exit 6 || exit 1;; | ||||
| 
 | ||||
|         # Font | ||||
|         ## Font | ||||
|         application/font*|application/*opentype) | ||||
|             preview_png="/tmp/$(basename "${IMAGE_CACHE_PATH%.*}").png" | ||||
|             if fontimage -o "${preview_png}" \ | ||||
| @ -181,8 +207,8 @@ handle_image() { | ||||
|             fi | ||||
|             ;; | ||||
| 
 | ||||
|         # Preview archives using the first image inside. | ||||
|         # (Very useful for comic book collections for example.) | ||||
|         ## Preview archives using the first image inside. | ||||
|         ## (Very useful for comic book collections for example.) | ||||
|         # application/zip|application/x-rar|application/x-7z-compressed|\ | ||||
|         #     application/x-xz|application/x-bzip2|application/x-gzip|application/x-tar) | ||||
|         #     local fn=""; local fe="" | ||||
| @ -218,14 +244,60 @@ handle_image() { | ||||
|         #     [ "$rar" ] || [ "$zip" ] && rm -- "${IMAGE_CACHE_PATH}" | ||||
| 	#     ;; | ||||
|     esac | ||||
| 
 | ||||
|     # openscad_image() { | ||||
|     #     TMPPNG="$(mktemp -t XXXXXX.png)" | ||||
|     #     openscad --colorscheme="${OPENSCAD_COLORSCHEME}" \ | ||||
|     #         --imgsize="${OPENSCAD_IMGSIZE/x/,}" \ | ||||
|     #         -o "${TMPPNG}" "${1}" | ||||
|     #     mv "${TMPPNG}" "${IMAGE_CACHE_PATH}" | ||||
|     # } | ||||
| 
 | ||||
|     # case "${FILE_EXTENSION_LOWER}" in | ||||
|     #     ## 3D models | ||||
|     #     ## OpenSCAD only supports png image output, and ${IMAGE_CACHE_PATH} | ||||
|     #     ## is hardcoded as jpeg. So we make a tempfile.png and just | ||||
|     #     ## move/rename it to jpg. This works because image libraries are | ||||
|     #     ## smart enough to handle it. | ||||
|     #     csg|scad) | ||||
|     #         openscad_image "${FILE_PATH}" && exit 6 | ||||
|     #         ;; | ||||
|     #     3mf|amf|dxf|off|stl) | ||||
|     #         openscad_image <(echo "import(\"${FILE_PATH}\");") && exit 6 | ||||
|     #         ;; | ||||
|     # esac | ||||
| } | ||||
| 
 | ||||
| handle_mime() { | ||||
|     local mimetype="${1}" | ||||
|     case "${mimetype}" in | ||||
|         # Text | ||||
|         ## 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 5 | ||||
|             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}" && exit 5 | ||||
|             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 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         ## Text | ||||
|         text/* | */xml) | ||||
|             # Syntax highlight | ||||
|             ## Syntax highlight | ||||
|             if [[ "$( stat --printf='%s' -- "${FILE_PATH}" )" -gt "${HIGHLIGHT_SIZE_MAX}" ]]; then | ||||
|                 exit 2 | ||||
|             fi | ||||
| @ -239,26 +311,27 @@ handle_mime() { | ||||
|             env HIGHLIGHT_OPTIONS="${HIGHLIGHT_OPTIONS}" highlight \ | ||||
|                 --out-format="${highlight_format}" \ | ||||
|                 --force -- "${FILE_PATH}" && exit 5 | ||||
|             env COLORTERM=8bit bat --color=always --style="plain" \ | ||||
|                 -- "${FILE_PATH}" && exit 5 | ||||
|             pygmentize -f "${pygmentize_format}" -O "style=${PYGMENTIZE_STYLE}"\ | ||||
|                 -- "${FILE_PATH}" && exit 5 | ||||
|             exit 2;; | ||||
| 
 | ||||
|         # DjVu | ||||
|         ## DjVu | ||||
|         image/vnd.djvu) | ||||
|             # Preview as text conversion (requires djvulibre) | ||||
|             djvutxt "${FILE_PATH}" | fmt -w ${PV_WIDTH} && exit 5 | ||||
|             ## Preview as text conversion (requires djvulibre) | ||||
|             djvutxt "${FILE_PATH}" | fmt -w "${PV_WIDTH}" && exit 5 | ||||
|             exiftool "${FILE_PATH}" && exit 5 | ||||
| 	    exit 1;; | ||||
| 
 | ||||
|         # Image | ||||
|         ## Image | ||||
|         image/*) | ||||
|             # Preview as text conversion | ||||
|             img2txt --format=utf8 --gamma=0.6 --width="${PV_WIDTH}" -- "${FILE_PATH}" && exit 4 | ||||
| 	    #catimg -w "${PV_WIDTH}" -- "${FILE_PATH}" && exit 4 | ||||
|             ## Preview as text conversion | ||||
|             img2txt --gamma=0.6 --width="${PV_WIDTH}" -- "${FILE_PATH}" && exit 4 | ||||
|             #exiftool "${FILE_PATH}" && exit 5 | ||||
|             exit 1;; | ||||
| 
 | ||||
|         # Video and audio | ||||
|         ## Video and audio | ||||
|         video/* | audio/*) | ||||
|             mediainfo "${FILE_PATH}" && exit 5 | ||||
|             exiftool "${FILE_PATH}" && exit 5 | ||||
|  | ||||
							
								
								
									
										5
									
								
								.vimrc
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								.vimrc
									
									
									
									
									
								
							| @ -17,6 +17,7 @@ Plug 'rust-lang/rust.vim', {'for': 'rust'} | ||||
| " Syntax checking | ||||
| "Plug 'Valloric/YouCompleteMe' " alternative #1, full-blown | ||||
| Plug 'w0rp/ale', | ||||
| Plug 'neoclide/coc.nvim', {'branch': 'release'} | ||||
| 
 | ||||
| " Useful plugins | ||||
| Plug 'Raimondi/delimitMate' | ||||
| @ -56,7 +57,7 @@ syntax on | ||||
| set t_Co=256 | ||||
| set background=light | ||||
| let base16colorspace=256 | ||||
| colorscheme base16-solarized-light | ||||
| colorscheme base16-solarized-dark | ||||
| 
 | ||||
| " Other | ||||
| set encoding=utf-8 | ||||
| @ -83,7 +84,7 @@ if has("gui_running") | ||||
| 	set guioptions-=T  " remove toolbar | ||||
| 	set guioptions-=r  " remove right-hand scroll bar | ||||
| 	set guioptions-=L  " remove left-hand scroll bar | ||||
| 	set guifont=Fira\ Code\ 11 | ||||
| 	set guifont=Fira\ Code\ Medium\ 11 | ||||
| 	"set guifont=Fura\ Code\ Nerd\ Font\ 11 | ||||
| 	set guiheadroom=0 | ||||
| endif | ||||
|  | ||||
| @ -66,3 +66,4 @@ export TERMCMD=$TERMINAL | ||||
| if systemctl -q is-active graphical.target && [[ ! $DISPLAY && $XDG_VTNR -eq 1 ]]; then | ||||
|   exec startx | ||||
| fi | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										6
									
								
								.zshrc
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								.zshrc
									
									
									
									
									
								
							| @ -41,7 +41,7 @@ source ~/.zplugins | ||||
| alias top=htop | ||||
| alias ll="ls -lh" | ||||
| alias la="ls -a" | ||||
| alias lp="lastpass.sh" | ||||
| alias lp="keepass.sh" | ||||
| alias ranger="ranger" | ||||
| alias search="search.sh" | ||||
| #alias ls="ls -N --time-style=long-iso --color=auto" | ||||
| @ -56,10 +56,12 @@ alias runwinesteam="MESA_GL_VERSION_OVERRIDE=3.3COMPAT PULSE_LATENCY_MSEC=60 run | ||||
| alias rbackup="restic -r rclone:hubic:ChimeraLinux" | ||||
| alias bat="bat --theme base16" | ||||
| alias wine32="WINEPREFIX=~/.wine32 wine" | ||||
| alias steam="DBUS_SESSION_BUS_ADDRESS=unix:abstract=/dev/null steam" | ||||
| # https://github.com/chriskempson/base16-shell | ||||
| # git clone https://github.com/chriskempson/base16-shell.git ~/.config/base16-shell | ||||
| #source $HOME/.config/base16-shell/scripts/base16-default-dark.sh | ||||
| source $HOME/.config/base16-shell/scripts/base16-solarized-light.sh | ||||
| #source $HOME/.config/base16-shell/scripts/base16-solarized-light.sh | ||||
| source $HOME/.config/base16-shell/scripts/base16-solarized-dark.sh | ||||
| 
 | ||||
| # Emscripten | ||||
| #source /home/lanxu/Koodit/github/emsdk/emsdk_env.sh | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user