remove matplotlib and ranger configs
This commit is contained in:
@@ -1,62 +0,0 @@
|
||||
# This is a sample commands.py. You can add your own commands here.
|
||||
#
|
||||
# Please refer to commands_full.py for all the default commands and a complete
|
||||
# documentation. Do NOT add them all here, or you may end up with defunct
|
||||
# commands when upgrading ranger.
|
||||
|
||||
# A simple command for demonstration purposes follows.
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
from __future__ import (absolute_import, division, print_function)
|
||||
|
||||
# You can import any python module as needed.
|
||||
import os
|
||||
|
||||
# You always need to import ranger.api.commands here to get the Command class:
|
||||
from ranger.api.commands import Command
|
||||
|
||||
|
||||
# Any class that is a subclass of "Command" will be integrated into ranger as a
|
||||
# command. Try typing ":my_edit<ENTER>" in ranger!
|
||||
class my_edit(Command):
|
||||
# The so-called doc-string of the class will be visible in the built-in
|
||||
# help that is accessible by typing "?c" inside ranger.
|
||||
""":my_edit <filename>
|
||||
|
||||
A sample command for demonstration purposes that opens a file in an editor.
|
||||
"""
|
||||
|
||||
# The execute method is called when you run this command in ranger.
|
||||
def execute(self):
|
||||
# self.arg(1) is the first (space-separated) argument to the function.
|
||||
# This way you can write ":my_edit somefilename<ENTER>".
|
||||
if self.arg(1):
|
||||
# self.rest(1) contains self.arg(1) and everything that follows
|
||||
target_filename = self.rest(1)
|
||||
else:
|
||||
# self.fm is a ranger.core.filemanager.FileManager object and gives
|
||||
# you access to internals of ranger.
|
||||
# self.fm.thisfile is a ranger.container.file.File object and is a
|
||||
# reference to the currently selected file.
|
||||
target_filename = self.fm.thisfile.path
|
||||
|
||||
# This is a generic function to print text in ranger.
|
||||
self.fm.notify("Let's edit the file " + target_filename + "!")
|
||||
|
||||
# Using bad=True in fm.notify allows you to print error messages:
|
||||
if not os.path.exists(target_filename):
|
||||
self.fm.notify("The given file does not exist!", bad=True)
|
||||
return
|
||||
|
||||
# This executes a function from ranger.core.acitons, a module with a
|
||||
# variety of subroutines that can help you construct commands.
|
||||
# Check out the source, or run "pydoc ranger.core.actions" for a list.
|
||||
self.fm.edit_file(target_filename)
|
||||
|
||||
# The tab method is called when you press tab, and should return a list of
|
||||
# suggestions that the user will tab through.
|
||||
# tabnum is 1 for <TAB> and -1 for <S-TAB> by default
|
||||
def tab(self, tabnum):
|
||||
# This is a generic tab-completion function that iterates through the
|
||||
# content of the current directory.
|
||||
return self._tab_directory_content()
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,659 +0,0 @@
|
||||
# ===================================================================
|
||||
# This file contains the default startup commands for ranger.
|
||||
# To change them, it is recommended to create the file
|
||||
# ~/.config/ranger/rc.conf and add your custom commands there.
|
||||
#
|
||||
# If you copy this whole file there, you may want to set the environment
|
||||
# variable RANGER_LOAD_DEFAULT_RC to FALSE to avoid loading it twice.
|
||||
#
|
||||
# The purpose of this file is mainly to define keybindings and settings.
|
||||
# For running more complex python code, please create a plugin in "plugins/" or
|
||||
# a command in "commands.py".
|
||||
#
|
||||
# Each line is a command that will be run before the user interface
|
||||
# is initialized. As a result, you can not use commands which rely
|
||||
# on the UI such as :delete or :mark.
|
||||
# ===================================================================
|
||||
|
||||
# ===================================================================
|
||||
# == Options
|
||||
# ===================================================================
|
||||
|
||||
# Which viewmode should be used? Possible values are:
|
||||
# miller: Use miller columns which show multiple levels of the hierarchy
|
||||
# multipane: Midnight-commander like multipane view showing all tabs next
|
||||
# to each other
|
||||
set viewmode miller
|
||||
#set viewmode multipane
|
||||
|
||||
# How many columns are there, and what are their relative widths?
|
||||
set column_ratios 1,3,4
|
||||
|
||||
# Which files should be hidden? (regular expression)
|
||||
set hidden_filter ^\.|\.(?:pyc|pyo|bak|swp)$|^lost\+found$|^__(py)?cache__$
|
||||
|
||||
# Show hidden files? You can toggle this by typing 'zh'
|
||||
set show_hidden false
|
||||
|
||||
# Ask for a confirmation when running the "delete" command?
|
||||
# Valid values are "always", "never", "multiple" (default)
|
||||
# With "multiple", ranger will ask only if you delete multiple files at once.
|
||||
set confirm_on_delete multiple
|
||||
|
||||
# Use non-default path for file preview script?
|
||||
# ranger ships with scope.sh, a script that calls external programs (see
|
||||
# README.md for dependencies) to preview images, archives, etc.
|
||||
#set preview_script ~/.config/ranger/scope.sh
|
||||
|
||||
# Use the external preview script or display simple plain text or image previews?
|
||||
set use_preview_script true
|
||||
|
||||
# Automatically count files in the directory, even before entering them?
|
||||
set automatically_count_files true
|
||||
|
||||
# Open all images in this directory when running certain image viewers
|
||||
# like feh or sxiv? You can still open selected files by marking them.
|
||||
set open_all_images true
|
||||
|
||||
# Be aware of version control systems and display information.
|
||||
set vcs_aware false
|
||||
|
||||
# State of the four backends git, hg, bzr, svn. The possible states are
|
||||
# disabled, local (only show local info), enabled (show local and remote
|
||||
# information).
|
||||
set vcs_backend_git enabled
|
||||
set vcs_backend_hg disabled
|
||||
set vcs_backend_bzr disabled
|
||||
set vcs_backend_svn disabled
|
||||
|
||||
# Use one of the supported image preview protocols
|
||||
set preview_images false
|
||||
|
||||
# Set the preview image method. Supported methods:
|
||||
#
|
||||
# * w3m (default):
|
||||
# Preview images in full color with the external command "w3mimgpreview"?
|
||||
# This requires the console web browser "w3m" and a supported terminal.
|
||||
# It has been successfully tested with "xterm" and "urxvt" without tmux.
|
||||
#
|
||||
# * iterm2:
|
||||
# Preview images in full color using iTerm2 image previews
|
||||
# (http://iterm2.com/images.html). This requires using iTerm2 compiled
|
||||
# with image preview support.
|
||||
#
|
||||
# This feature relies on the dimensions of the terminal's font. By default, a
|
||||
# width of 8 and height of 11 are used. To use other values, set the options
|
||||
# iterm2_font_width and iterm2_font_height to the desired values.
|
||||
#
|
||||
# * urxvt:
|
||||
# Preview images in full color using urxvt image backgrounds. This
|
||||
# requires using urxvt compiled with pixbuf support.
|
||||
#
|
||||
# * urxvt-full:
|
||||
# The same as urxvt but utilizing not only the preview pane but the
|
||||
# whole terminal window.
|
||||
set preview_images_method w3m
|
||||
|
||||
# Default iTerm2 font size (see: preview_images_method: iterm2)
|
||||
set iterm2_font_width 8
|
||||
set iterm2_font_height 11
|
||||
|
||||
# Use a unicode "..." character to mark cut-off filenames?
|
||||
set unicode_ellipsis false
|
||||
|
||||
# Show dotfiles in the bookmark preview box?
|
||||
set show_hidden_bookmarks true
|
||||
|
||||
# Which colorscheme to use? These colorschemes are available by default:
|
||||
# default, jungle, snow, solarized
|
||||
set colorscheme default
|
||||
|
||||
# Preview files on the rightmost column?
|
||||
# And collapse (shrink) the last column if there is nothing to preview?
|
||||
set preview_files true
|
||||
set preview_directories true
|
||||
set collapse_preview true
|
||||
|
||||
# Save the console history on exit?
|
||||
set save_console_history true
|
||||
|
||||
# Draw the status bar on top of the browser window (default: bottom)
|
||||
set status_bar_on_top false
|
||||
|
||||
# Draw a progress bar in the status bar which displays the average state of all
|
||||
# currently running tasks which support progress bars?
|
||||
set draw_progress_bar_in_status_bar true
|
||||
|
||||
# Draw borders around columns?
|
||||
set draw_borders false
|
||||
|
||||
# Display the directory name in tabs?
|
||||
set dirname_in_tabs false
|
||||
|
||||
# Enable the mouse support?
|
||||
set mouse_enabled true
|
||||
|
||||
# Display the file size in the main column or status bar?
|
||||
set display_size_in_main_column true
|
||||
set display_size_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 update_title false
|
||||
|
||||
# Set the title to "ranger" in the tmux program?
|
||||
set update_tmux_title false
|
||||
|
||||
# Shorten the title if it gets long? The number defines how many
|
||||
# directories are displayed at once, 0 turns off this feature.
|
||||
set shorten_title 3
|
||||
|
||||
# Show hostname in titlebar?
|
||||
set hostname_in_titlebar true
|
||||
|
||||
# Abbreviate $HOME with ~ in the titlebar (first line) of ranger?
|
||||
set tilde_in_titlebar false
|
||||
|
||||
# How many directory-changes or console-commands should be kept in history?
|
||||
set max_history_size 20
|
||||
set max_console_history_size 50
|
||||
|
||||
# Try to keep so much space between the top/bottom border when scrolling:
|
||||
set scroll_offset 8
|
||||
|
||||
# Flush the input after each key hit? (Noticeable when ranger lags)
|
||||
set flushinput true
|
||||
|
||||
# Padding on the right when there's no preview?
|
||||
# This allows you to click into the space to run the file.
|
||||
set padding_right true
|
||||
|
||||
# Save bookmarks (used with mX and `X) instantly?
|
||||
# This helps to synchronize bookmarks between multiple ranger
|
||||
# instances but leads to *slight* performance loss.
|
||||
# When false, bookmarks are saved when ranger is exited.
|
||||
set autosave_bookmarks true
|
||||
|
||||
# Save the "`" bookmark to disk. This can be used to switch to the last
|
||||
# directory by typing "``".
|
||||
set save_backtick_bookmark true
|
||||
|
||||
# You can display the "real" cumulative size of directories by using the
|
||||
# command :get_cumulative_size or typing "dc". The size is expensive to
|
||||
# calculate and will not be updated automatically. You can choose
|
||||
# to update it automatically though by turning on this option:
|
||||
set autoupdate_cumulative_size false
|
||||
|
||||
# Turning this on makes sense for screen readers:
|
||||
set show_cursor false
|
||||
|
||||
# One of: size, natural, basename, atime, ctime, mtime, type, random
|
||||
set sort natural
|
||||
|
||||
# Additional sorting options
|
||||
set sort_reverse false
|
||||
set sort_case_insensitive true
|
||||
set sort_directories_first false
|
||||
set sort_unicode false
|
||||
|
||||
# Enable this if key combinations with the Alt Key don't work for you.
|
||||
# (Especially on xterm)
|
||||
set xterm_alt_key false
|
||||
|
||||
# Whether to include bookmarks in cd command
|
||||
set cd_bookmarks true
|
||||
|
||||
# Changes case sensitivity for the cd command tab completion
|
||||
set cd_tab_case sensitive
|
||||
|
||||
# Use fuzzy tab completion with the "cd" command. For example,
|
||||
# ":cd /u/lo/b<tab>" expands to ":cd /usr/local/bin".
|
||||
set cd_tab_fuzzy false
|
||||
|
||||
# Avoid previewing files larger than this size, in bytes. Use a value of 0 to
|
||||
# disable this feature.
|
||||
set preview_max_size 0
|
||||
|
||||
# Add the highlighted file to the path in the titlebar
|
||||
set show_selection_in_titlebar true
|
||||
|
||||
# The delay that ranger idly waits for user input, in milliseconds, with a
|
||||
# resolution of 100ms. Lower delay reduces lag between directory updates but
|
||||
# increases CPU load.
|
||||
set idle_delay 2000
|
||||
|
||||
# When the metadata manager module looks for metadata, should it only look for
|
||||
# a ".metadata.json" file in the current directory, or do a deep search and
|
||||
# check all directories above the current one as well?
|
||||
set metadata_deep_search false
|
||||
|
||||
# Clear all existing filters when leaving a directory
|
||||
set clear_filters_on_dir_change false
|
||||
|
||||
# Disable displaying line numbers in main column
|
||||
set line_numbers false
|
||||
|
||||
# Start line numbers from 1 instead of 0
|
||||
set one_indexed false
|
||||
|
||||
# Save tabs on exit
|
||||
set save_tabs_on_exit false
|
||||
|
||||
# Enable scroll wrapping - moving down while on the last item will wrap around to
|
||||
# the top and vice versa.
|
||||
set wrap_scroll false
|
||||
|
||||
# Set the global_inode_type_filter to nothing. Possible options: d, f and l for
|
||||
# directories, files and symlinks respectively.
|
||||
set global_inode_type_filter
|
||||
|
||||
# ===================================================================
|
||||
# == Local Options
|
||||
# ===================================================================
|
||||
# You can set local options that only affect a single directory.
|
||||
|
||||
# Examples:
|
||||
# setlocal path=~/downloads sort mtime
|
||||
|
||||
# ===================================================================
|
||||
# == Command Aliases in the Console
|
||||
# ===================================================================
|
||||
|
||||
alias e edit
|
||||
alias q quit
|
||||
alias q! quit!
|
||||
alias qa quitall
|
||||
alias qa! quitall!
|
||||
alias qall quitall
|
||||
alias qall! quitall!
|
||||
alias setl setlocal
|
||||
|
||||
alias filter scout -prt
|
||||
alias find scout -aeit
|
||||
alias mark scout -mr
|
||||
alias unmark scout -Mr
|
||||
alias search scout -rs
|
||||
alias search_inc scout -rts
|
||||
alias travel scout -aefklst
|
||||
|
||||
# ===================================================================
|
||||
# == Define keys for the browser
|
||||
# ===================================================================
|
||||
|
||||
# Basic
|
||||
map Q quitall
|
||||
map q quit
|
||||
copymap q ZZ ZQ
|
||||
|
||||
map R reload_cwd
|
||||
map F set freeze_files!
|
||||
map <C-r> reset
|
||||
map <C-l> redraw_window
|
||||
map <C-c> abort
|
||||
map <esc> change_mode normal
|
||||
map ~ set viewmode!
|
||||
|
||||
map i display_file
|
||||
map ? help
|
||||
map W display_log
|
||||
map w taskview_open
|
||||
map S shell $SHELL
|
||||
|
||||
map : console
|
||||
map ; console
|
||||
map ! console shell%space
|
||||
map @ console -p9 shell -w %%s
|
||||
map # console shell -p%space
|
||||
map s console shell -w%space
|
||||
map r chain draw_possible_programs; console open_with%%space
|
||||
map f console find%space
|
||||
map cd console cd%space
|
||||
|
||||
# Change the line mode
|
||||
map Mf linemode filename
|
||||
map Mi linemode fileinfo
|
||||
map Mm linemode mtime
|
||||
map Mp linemode permissions
|
||||
map Ms linemode sizemtime
|
||||
map Mt linemode metatitle
|
||||
|
||||
# Tagging / Marking
|
||||
map t tag_toggle
|
||||
map ut tag_remove
|
||||
map "<any> tag_toggle tag=%any
|
||||
#"
|
||||
map <Space> mark_files toggle=True
|
||||
map v mark_files all=True toggle=True
|
||||
map uv mark_files all=True val=False
|
||||
map V toggle_visual_mode
|
||||
map uV toggle_visual_mode reverse=True
|
||||
|
||||
# For the nostalgics: Midnight Commander bindings
|
||||
map <F1> help
|
||||
map <F2> rename_append
|
||||
map <F3> display_file
|
||||
map <F4> edit
|
||||
map <F5> copy
|
||||
map <F6> cut
|
||||
map <F7> console mkdir%space
|
||||
map <F8> console delete
|
||||
map <F10> exit
|
||||
|
||||
# In case you work on a keyboard with dvorak layout
|
||||
map <UP> move up=1
|
||||
map <DOWN> move down=1
|
||||
map <LEFT> move left=1
|
||||
map <RIGHT> move right=1
|
||||
map <HOME> move to=0
|
||||
map <END> move to=-1
|
||||
map <PAGEDOWN> move down=1 pages=True
|
||||
map <PAGEUP> move up=1 pages=True
|
||||
map <CR> move right=1
|
||||
#map <DELETE> console delete
|
||||
map <INSERT> console touch%space
|
||||
|
||||
# VIM-like
|
||||
copymap <UP> k
|
||||
copymap <DOWN> j
|
||||
copymap <LEFT> h
|
||||
copymap <RIGHT> l
|
||||
copymap <HOME> gg
|
||||
copymap <END> G
|
||||
copymap <PAGEDOWN> <C-F>
|
||||
copymap <PAGEUP> <C-B>
|
||||
|
||||
map J move down=0.5 pages=True
|
||||
map K move up=0.5 pages=True
|
||||
copymap J <C-D>
|
||||
copymap K <C-U>
|
||||
|
||||
# Jumping around
|
||||
map H history_go -1
|
||||
map L history_go 1
|
||||
map ] move_parent 1
|
||||
map [ move_parent -1
|
||||
map } traverse
|
||||
map ) jump_non
|
||||
|
||||
map gh cd ~
|
||||
map ge cd /etc
|
||||
map gu cd /usr
|
||||
map gd cd /dev
|
||||
map gl cd -r .
|
||||
map gL cd -r %f
|
||||
map go cd /opt
|
||||
map gv cd /var
|
||||
map gm cd /media
|
||||
map gM cd /mnt
|
||||
map gs cd /srv
|
||||
map gp cd /tmp
|
||||
map gr cd /
|
||||
map gR eval fm.cd(ranger.RANGERDIR)
|
||||
map g/ cd /
|
||||
map g? cd /usr/share/doc/ranger
|
||||
|
||||
# External Programs
|
||||
map E edit
|
||||
map du shell -p du --max-depth=1 -h --apparent-size
|
||||
map dU shell -p du --max-depth=1 -h --apparent-size | sort -rh
|
||||
map yp yank path
|
||||
map yd yank dir
|
||||
map yn yank name
|
||||
|
||||
# Filesystem Operations
|
||||
map = chmod
|
||||
|
||||
map cw console rename%space
|
||||
map a rename_append
|
||||
map A eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%"))
|
||||
map I eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%"), position=7)
|
||||
|
||||
map pp paste
|
||||
map po paste overwrite=True
|
||||
map pP paste append=True
|
||||
map pO paste overwrite=True append=True
|
||||
map pl paste_symlink relative=False
|
||||
map pL paste_symlink relative=True
|
||||
map phl paste_hardlink
|
||||
map pht paste_hardlinked_subtree
|
||||
|
||||
map dD console delete
|
||||
|
||||
map dd cut
|
||||
map ud uncut
|
||||
map da cut mode=add
|
||||
map dr cut mode=remove
|
||||
map dt cut mode=toggle
|
||||
|
||||
map yy copy
|
||||
map uy uncut
|
||||
map ya copy mode=add
|
||||
map yr copy mode=remove
|
||||
map yt copy mode=toggle
|
||||
|
||||
# Temporary workarounds
|
||||
map dgg eval fm.cut(dirarg=dict(to=0), narg=quantifier)
|
||||
map dG eval fm.cut(dirarg=dict(to=-1), narg=quantifier)
|
||||
map dj eval fm.cut(dirarg=dict(down=1), narg=quantifier)
|
||||
map dk eval fm.cut(dirarg=dict(up=1), narg=quantifier)
|
||||
map ygg eval fm.copy(dirarg=dict(to=0), narg=quantifier)
|
||||
map yG eval fm.copy(dirarg=dict(to=-1), narg=quantifier)
|
||||
map yj eval fm.copy(dirarg=dict(down=1), narg=quantifier)
|
||||
map yk eval fm.copy(dirarg=dict(up=1), narg=quantifier)
|
||||
|
||||
# Searching
|
||||
map / console search%space
|
||||
map n search_next
|
||||
map N search_next forward=False
|
||||
map ct search_next order=tag
|
||||
map cs search_next order=size
|
||||
map ci search_next order=mimetype
|
||||
map cc search_next order=ctime
|
||||
map cm search_next order=mtime
|
||||
map ca search_next order=atime
|
||||
|
||||
# Tabs
|
||||
map <C-n> tab_new
|
||||
map <C-w> tab_close
|
||||
map <TAB> tab_move 1
|
||||
map <S-TAB> tab_move -1
|
||||
map <A-Right> tab_move 1
|
||||
map <A-Left> tab_move -1
|
||||
map gt tab_move 1
|
||||
map gT tab_move -1
|
||||
map gn tab_new
|
||||
map gc tab_close
|
||||
map uq tab_restore
|
||||
map <a-1> tab_open 1
|
||||
map <a-2> tab_open 2
|
||||
map <a-3> tab_open 3
|
||||
map <a-4> tab_open 4
|
||||
map <a-5> tab_open 5
|
||||
map <a-6> tab_open 6
|
||||
map <a-7> tab_open 7
|
||||
map <a-8> tab_open 8
|
||||
map <a-9> tab_open 9
|
||||
|
||||
# Sorting
|
||||
map or set sort_reverse!
|
||||
map oz set sort=random
|
||||
map os chain set sort=size; set sort_reverse=False
|
||||
map ob chain set sort=basename; set sort_reverse=False
|
||||
map on chain set sort=natural; set sort_reverse=False
|
||||
map om chain set sort=mtime; set sort_reverse=False
|
||||
map oc chain set sort=ctime; set sort_reverse=False
|
||||
map oa chain set sort=atime; set sort_reverse=False
|
||||
map ot chain set sort=type; set sort_reverse=False
|
||||
map oe chain set sort=extension; set sort_reverse=False
|
||||
|
||||
map oS chain set sort=size; set sort_reverse=True
|
||||
map oB chain set sort=basename; set sort_reverse=True
|
||||
map oN chain set sort=natural; set sort_reverse=True
|
||||
map oM chain set sort=mtime; set sort_reverse=True
|
||||
map oC chain set sort=ctime; set sort_reverse=True
|
||||
map oA chain set sort=atime; set sort_reverse=True
|
||||
map oT chain set sort=type; set sort_reverse=True
|
||||
map oE chain set sort=extension; set sort_reverse=True
|
||||
|
||||
map dc get_cumulative_size
|
||||
|
||||
# Settings
|
||||
map zc set collapse_preview!
|
||||
map zd set sort_directories_first!
|
||||
map zh set show_hidden!
|
||||
map <C-h> set show_hidden!
|
||||
map zI set flushinput!
|
||||
map zi set preview_images!
|
||||
map zm set mouse_enabled!
|
||||
map zp set preview_files!
|
||||
map zP set preview_directories!
|
||||
map zs set sort_case_insensitive!
|
||||
map zu set autoupdate_cumulative_size!
|
||||
map zv set use_preview_script!
|
||||
map zf console filter%space
|
||||
copymap zf zz
|
||||
|
||||
# Bookmarks
|
||||
map `<any> enter_bookmark %any
|
||||
map '<any> enter_bookmark %any
|
||||
#'
|
||||
map m<any> set_bookmark %any
|
||||
map um<any> unset_bookmark %any
|
||||
|
||||
map m<bg> draw_bookmarks
|
||||
copymap m<bg> um<bg> `<bg> '<bg>
|
||||
#'
|
||||
|
||||
# Generate all the chmod bindings with some python help:
|
||||
eval for arg in "rwxXst": cmd("map +u{0} shell -f chmod u+{0} %s".format(arg))
|
||||
eval for arg in "rwxXst": cmd("map +g{0} shell -f chmod g+{0} %s".format(arg))
|
||||
eval for arg in "rwxXst": cmd("map +o{0} shell -f chmod o+{0} %s".format(arg))
|
||||
eval for arg in "rwxXst": cmd("map +a{0} shell -f chmod a+{0} %s".format(arg))
|
||||
eval for arg in "rwxXst": cmd("map +{0} shell -f chmod u+{0} %s".format(arg))
|
||||
|
||||
eval for arg in "rwxXst": cmd("map -u{0} shell -f chmod u-{0} %s".format(arg))
|
||||
eval for arg in "rwxXst": cmd("map -g{0} shell -f chmod g-{0} %s".format(arg))
|
||||
eval for arg in "rwxXst": cmd("map -o{0} shell -f chmod o-{0} %s".format(arg))
|
||||
eval for arg in "rwxXst": cmd("map -a{0} shell -f chmod a-{0} %s".format(arg))
|
||||
eval for arg in "rwxXst": cmd("map -{0} shell -f chmod u-{0} %s".format(arg))
|
||||
|
||||
# ===================================================================
|
||||
# == Define keys for the console
|
||||
# ===================================================================
|
||||
# Note: Unmapped keys are passed directly to the console.
|
||||
|
||||
# Basic
|
||||
cmap <tab> eval fm.ui.console.tab()
|
||||
cmap <s-tab> eval fm.ui.console.tab(-1)
|
||||
cmap <ESC> eval fm.ui.console.close()
|
||||
cmap <CR> eval fm.ui.console.execute()
|
||||
cmap <C-l> redraw_window
|
||||
|
||||
copycmap <ESC> <C-c>
|
||||
copycmap <CR> <C-j>
|
||||
|
||||
# Move around
|
||||
cmap <up> eval fm.ui.console.history_move(-1)
|
||||
cmap <down> eval fm.ui.console.history_move(1)
|
||||
cmap <left> eval fm.ui.console.move(left=1)
|
||||
cmap <right> eval fm.ui.console.move(right=1)
|
||||
cmap <home> eval fm.ui.console.move(right=0, absolute=True)
|
||||
cmap <end> eval fm.ui.console.move(right=-1, absolute=True)
|
||||
cmap <a-left> eval fm.ui.console.move_word(left=1)
|
||||
cmap <a-right> eval fm.ui.console.move_word(right=1)
|
||||
|
||||
# Line Editing
|
||||
cmap <backspace> eval fm.ui.console.delete(-1)
|
||||
cmap <delete> eval fm.ui.console.delete(0)
|
||||
cmap <C-w> eval fm.ui.console.delete_word()
|
||||
cmap <A-d> eval fm.ui.console.delete_word(backward=False)
|
||||
cmap <C-k> eval fm.ui.console.delete_rest(1)
|
||||
cmap <C-u> eval fm.ui.console.delete_rest(-1)
|
||||
cmap <C-y> eval fm.ui.console.paste()
|
||||
|
||||
# And of course the emacs way
|
||||
copycmap <up> <C-p>
|
||||
copycmap <down> <C-n>
|
||||
copycmap <left> <C-b>
|
||||
copycmap <right> <C-f>
|
||||
copycmap <home> <C-a>
|
||||
copycmap <end> <C-e>
|
||||
copycmap <delete> <C-d>
|
||||
copycmap <backspace> <C-h>
|
||||
|
||||
# Note: There are multiple ways to express backspaces. <backspace> (code 263)
|
||||
# and <backspace2> (code 127). To be sure, use both.
|
||||
copycmap <backspace> <backspace2>
|
||||
|
||||
# This special expression allows typing in numerals:
|
||||
cmap <allow_quantifiers> false
|
||||
|
||||
# ===================================================================
|
||||
# == Pager Keybindings
|
||||
# ===================================================================
|
||||
|
||||
# Movement
|
||||
pmap <down> pager_move down=1
|
||||
pmap <up> pager_move up=1
|
||||
pmap <left> pager_move left=4
|
||||
pmap <right> pager_move right=4
|
||||
pmap <home> pager_move to=0
|
||||
pmap <end> pager_move to=-1
|
||||
pmap <pagedown> pager_move down=1.0 pages=True
|
||||
pmap <pageup> pager_move up=1.0 pages=True
|
||||
pmap <C-d> pager_move down=0.5 pages=True
|
||||
pmap <C-u> pager_move up=0.5 pages=True
|
||||
|
||||
copypmap <UP> k <C-p>
|
||||
copypmap <DOWN> j <C-n> <CR>
|
||||
copypmap <LEFT> h
|
||||
copypmap <RIGHT> l
|
||||
copypmap <HOME> g
|
||||
copypmap <END> G
|
||||
copypmap <C-d> d
|
||||
copypmap <C-u> u
|
||||
copypmap <PAGEDOWN> n f <C-F> <Space>
|
||||
copypmap <PAGEUP> p b <C-B>
|
||||
|
||||
# Basic
|
||||
pmap <C-l> redraw_window
|
||||
pmap <ESC> pager_close
|
||||
copypmap <ESC> q Q i <F3>
|
||||
pmap E edit_file
|
||||
|
||||
# ===================================================================
|
||||
# == Taskview Keybindings
|
||||
# ===================================================================
|
||||
|
||||
# Movement
|
||||
tmap <up> taskview_move up=1
|
||||
tmap <down> taskview_move down=1
|
||||
tmap <home> taskview_move to=0
|
||||
tmap <end> taskview_move to=-1
|
||||
tmap <pagedown> taskview_move down=1.0 pages=True
|
||||
tmap <pageup> taskview_move up=1.0 pages=True
|
||||
tmap <C-d> taskview_move down=0.5 pages=True
|
||||
tmap <C-u> taskview_move up=0.5 pages=True
|
||||
|
||||
copytmap <UP> k <C-p>
|
||||
copytmap <DOWN> j <C-n> <CR>
|
||||
copytmap <HOME> g
|
||||
copytmap <END> G
|
||||
copytmap <C-u> u
|
||||
copytmap <PAGEDOWN> n f <C-F> <Space>
|
||||
copytmap <PAGEUP> p b <C-B>
|
||||
|
||||
# Changing priority and deleting tasks
|
||||
tmap J eval -q fm.ui.taskview.task_move(-1)
|
||||
tmap K eval -q fm.ui.taskview.task_move(0)
|
||||
tmap dd eval -q fm.ui.taskview.task_remove()
|
||||
tmap <pagedown> eval -q fm.ui.taskview.task_move(-1)
|
||||
tmap <pageup> eval -q fm.ui.taskview.task_move(0)
|
||||
tmap <delete> eval -q fm.ui.taskview.task_remove()
|
||||
|
||||
# Basic
|
||||
tmap <C-l> redraw_window
|
||||
tmap <ESC> taskview_close
|
||||
copytmap <ESC> q Q w <C-c>
|
||||
@@ -1,226 +0,0 @@
|
||||
# vim: ft=cfg
|
||||
#
|
||||
# This is the configuration file of "rifle", ranger's file executor/opener.
|
||||
# Each line consists of conditions and a command. For each line the conditions
|
||||
# are checked and if they are met, the respective command is run.
|
||||
#
|
||||
# Syntax:
|
||||
# <condition1> , <condition2> , ... = command
|
||||
#
|
||||
# The command can contain these environment variables:
|
||||
# $1-$9 | The n-th selected file
|
||||
# $@ | All selected files
|
||||
#
|
||||
# If you use the special command "ask", rifle will ask you what program to run.
|
||||
#
|
||||
# Prefixing a condition with "!" will negate its result.
|
||||
# These conditions are currently supported:
|
||||
# match <regexp> | The regexp matches $1
|
||||
# ext <regexp> | The regexp matches the extension of $1
|
||||
# mime <regexp> | The regexp matches the mime type of $1
|
||||
# name <regexp> | The regexp matches the basename of $1
|
||||
# path <regexp> | The regexp matches the absolute path of $1
|
||||
# has <program> | The program is installed (i.e. located in $PATH)
|
||||
# env <variable> | The environment variable "variable" is non-empty
|
||||
# file | $1 is a file
|
||||
# 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)
|
||||
#
|
||||
# There are also pseudo-conditions which have a "side effect":
|
||||
# flag <flags> | Change how the program is run. See below.
|
||||
# label <label> | Assign a label or name to the command so it can
|
||||
# | be started with :open_with <label> in ranger
|
||||
# | or `rifle -p <label>` in the standalone executable.
|
||||
# else | Always true.
|
||||
#
|
||||
# Flags are single characters which slightly transform the command:
|
||||
# f | Fork the program, make it run in the background.
|
||||
# | New command = setsid $command >& /dev/null &
|
||||
# r | Execute the command with root permissions
|
||||
# | New command = sudo $command
|
||||
# t | Run the program in a new terminal. If $TERMCMD is not defined,
|
||||
# | rifle will attempt to extract it from $TERM.
|
||||
# | New command = $TERMCMD -e $command
|
||||
# Note: The "New command" serves only as an illustration, the exact
|
||||
# implementation may differ.
|
||||
# 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.
|
||||
|
||||
#-------------------------------------------
|
||||
# Websites
|
||||
#-------------------------------------------
|
||||
# Rarely installed browsers get higher priority; It is assumed that if you
|
||||
# install a rare browser, you probably use it. Firefox/konqueror/w3m on the
|
||||
# other hand are often only installed as fallback browsers.
|
||||
ext x?html?, has surf, X, flag f = surf -- file://"$1"
|
||||
ext x?html?, has vimprobable, X, flag f = vimprobable -- "$@"
|
||||
ext x?html?, has vimprobable2, X, flag f = vimprobable2 -- "$@"
|
||||
ext x?html?, has qutebrowser, X, flag f = qutebrowser -- "$@"
|
||||
ext x?html?, has dwb, X, flag f = dwb -- "$@"
|
||||
ext x?html?, has jumanji, X, flag f = jumanji -- "$@"
|
||||
ext x?html?, has luakit, X, flag f = luakit -- "$@"
|
||||
ext x?html?, has uzbl, X, flag f = uzbl -- "$@"
|
||||
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 epiphany, X, flag f = epiphany -- "$@"
|
||||
ext x?html?, has konqueror, X, flag f = konqueror -- "$@"
|
||||
ext x?html?, has elinks, terminal = elinks "$@"
|
||||
ext x?html?, has links2, terminal = links2 "$@"
|
||||
ext x?html?, has links, terminal = links "$@"
|
||||
ext x?html?, has lynx, terminal = lynx -- "$@"
|
||||
ext x?html?, has w3m, terminal = w3m "$@"
|
||||
|
||||
#-------------------------------------------
|
||||
# Misc
|
||||
#-------------------------------------------
|
||||
# Define the "editor" for text files as first action
|
||||
mime ^text, label editor = ${VISUAL:-$EDITOR} -- "$@"
|
||||
mime ^text, label pager = "$PAGER" -- "$@"
|
||||
!mime ^text, label editor, ext xml|json|csv|tex|py|pl|rb|js|sh|php = ${VISUAL:-$EDITOR} -- "$@"
|
||||
!mime ^text, label pager, ext xml|json|csv|tex|py|pl|rb|js|sh|php = "$PAGER" -- "$@"
|
||||
|
||||
ext 1 = man "$1"
|
||||
ext s[wmf]c, has zsnes, X = zsnes "$1"
|
||||
ext s[wmf]c, has snes9x-gtk,X = snes9x-gtk "$1"
|
||||
ext nes, has fceux, X = fceux "$1"
|
||||
ext exe = wine "$1"
|
||||
name ^[mM]akefile$ = make
|
||||
|
||||
#--------------------------------------------
|
||||
# Code
|
||||
#-------------------------------------------
|
||||
ext py = python -- "$1"
|
||||
ext pl = perl -- "$1"
|
||||
ext rb = ruby -- "$1"
|
||||
ext js = node -- "$1"
|
||||
ext sh = sh -- "$1"
|
||||
ext php = php -- "$1"
|
||||
|
||||
#--------------------------------------------
|
||||
# Audio without X
|
||||
#-------------------------------------------
|
||||
mime ^audio|ogg$, terminal, has mpv = mpv -- "$@"
|
||||
mime ^audio|ogg$, terminal, has mplayer2 = mplayer2 -- "$@"
|
||||
mime ^audio|ogg$, terminal, has mplayer = mplayer -- "$@"
|
||||
ext midi?, terminal, has wildmidi = wildmidi -- "$@"
|
||||
|
||||
#--------------------------------------------
|
||||
# Video/Audio with a GUI
|
||||
#-------------------------------------------
|
||||
mime ^video|audio, has gmplayer, X, flag f = gmplayer -- "$@"
|
||||
mime ^video|audio, has smplayer, X, flag f = smplayer "$@"
|
||||
mime ^video, has mpv, X, flag f = mpv -- "$@"
|
||||
mime ^video, has mpv, X, flag f = mpv --fs -- "$@"
|
||||
mime ^video, has mplayer2, X, flag f = mplayer2 -- "$@"
|
||||
mime ^video, has mplayer2, X, flag f = mplayer2 -fs -- "$@"
|
||||
mime ^video, has mplayer, X, flag f = mplayer -- "$@"
|
||||
mime ^video, has mplayer, X, flag f = mplayer -fs -- "$@"
|
||||
mime ^video|audio, has vlc, X, flag f = vlc -- "$@"
|
||||
mime ^video|audio, has totem, X, flag f = totem -- "$@"
|
||||
mime ^video|audio, has totem, X, flag f = totem --fullscreen -- "$@"
|
||||
|
||||
#--------------------------------------------
|
||||
# Video without X:
|
||||
#-------------------------------------------
|
||||
mime ^video, terminal, !X, has mpv = mpv -- "$@"
|
||||
mime ^video, terminal, !X, has mplayer2 = mplayer2 -- "$@"
|
||||
mime ^video, terminal, !X, has mplayer = mplayer -- "$@"
|
||||
|
||||
#-------------------------------------------
|
||||
# Documents
|
||||
#-------------------------------------------
|
||||
ext pdf, has llpp, X, flag f = llpp "$@"
|
||||
ext pdf, has zathura, X, flag f = zathura -- "$@"
|
||||
ext pdf, has mupdf, X, flag f = mupdf "$@"
|
||||
ext pdf, has mupdf-x11,X, flag f = mupdf-x11 "$@"
|
||||
ext pdf, has apvlv, X, flag f = apvlv -- "$@"
|
||||
ext pdf, has xpdf, X, flag f = xpdf -- "$@"
|
||||
ext pdf, has evince, X, flag f = evince -- "$@"
|
||||
ext pdf, has atril, X, flag f = atril -- "$@"
|
||||
ext pdf, has okular, X, flag f = okular -- "$@"
|
||||
ext pdf, has epdfview, X, flag f = epdfview -- "$@"
|
||||
ext pdf, has qpdfview, X, flag f = qpdfview "$@"
|
||||
ext pdf, has open, X, flat f = open "$@"
|
||||
|
||||
ext docx?, has catdoc, terminal = catdoc -- "$@" | "$PAGER"
|
||||
|
||||
ext sxc|xlsx?|xlt|xlw|gnm|gnumeric, has gnumeric, X, flag f = gnumeric -- "$@"
|
||||
ext sxc|xlsx?|xlt|xlw|gnm|gnumeric, has kspread, X, flag f = kspread -- "$@"
|
||||
ext pptx?|od[dfgpst]|docx?|sxc|xlsx?|xlt|xlw|gnm|gnumeric, has libreoffice, X, flag f = libreoffice "$@"
|
||||
ext pptx?|od[dfgpst]|docx?|sxc|xlsx?|xlt|xlw|gnm|gnumeric, has soffice, X, flag f = soffice "$@"
|
||||
ext pptx?|od[dfgpst]|docx?|sxc|xlsx?|xlt|xlw|gnm|gnumeric, has ooffice, X, flag f = ooffice "$@"
|
||||
|
||||
ext djvu, has zathura,X, flag f = zathura -- "$@"
|
||||
ext djvu, has evince, X, flag f = evince -- "$@"
|
||||
ext djvu, has atril, X, flag f = atril -- "$@"
|
||||
|
||||
ext epub, has ebook-viewer, X, flag f = ebook-viewer -- "$@"
|
||||
ext mobi, has ebook-viewer, X, flag f = ebook-viewer -- "$@"
|
||||
|
||||
#-------------------------------------------
|
||||
# Image Viewing:
|
||||
#-------------------------------------------
|
||||
mime ^image/svg, has inkscape, X, flag f = inkscape -- "$@"
|
||||
mime ^image/svg, has display, X, flag f = display -- "$@"
|
||||
|
||||
mime ^image, has pqiv, X, flag f = pqiv -- "$@"
|
||||
mime ^image, has sxiv, X, flag f = sxiv -- "$@"
|
||||
mime ^image, has feh, X, flag f = feh -- "$@"
|
||||
mime ^image, has mirage, X, flag f = mirage -- "$@"
|
||||
mime ^image, has ristretto, X, flag f = ristretto "$@"
|
||||
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 gimp, X, flag f = gimp -- "$@"
|
||||
ext xcf, X, flag f = gimp -- "$@"
|
||||
|
||||
#-------------------------------------------
|
||||
# Archives
|
||||
#-------------------------------------------
|
||||
|
||||
# avoid password prompt by providing empty password
|
||||
ext 7z, has 7z = 7z -p l "$@" | "$PAGER"
|
||||
# This requires atool
|
||||
ext ace|ar|arc|bz2?|cab|cpio|cpt|deb|dgc|dmg|gz, has atool = atool --list --each -- "$@" | "$PAGER"
|
||||
ext iso|jar|msi|pkg|rar|shar|tar|tgz|xar|xpi|xz|zip, has atool = atool --list --each -- "$@" | "$PAGER"
|
||||
ext 7z|ace|ar|arc|bz2?|cab|cpio|cpt|deb|dgc|dmg|gz, has atool = atool --extract --each -- "$@"
|
||||
ext iso|jar|msi|pkg|rar|shar|tar|tgz|xar|xpi|xz|zip, has atool = atool --extract --each -- "$@"
|
||||
|
||||
# Listing and extracting archives without atool:
|
||||
ext tar|gz|bz2|xz, has tar = tar vvtf "$1" | "$PAGER"
|
||||
ext tar|gz|bz2|xz, has tar = for file in "$@"; do tar vvxf "$file"; done
|
||||
ext bz2, has bzip2 = for file in "$@"; do bzip2 -dk "$file"; done
|
||||
ext zip, has unzip = unzip -l "$1" | less
|
||||
ext zip, has unzip = for file in "$@"; do unzip -d "${file%.*}" "$file"; done
|
||||
ext ace, has unace = unace l "$1" | less
|
||||
ext ace, has unace = for file in "$@"; do unace e "$file"; done
|
||||
ext rar, has unrar = unrar l "$1" | less
|
||||
ext rar, has unrar = for file in "$@"; do unrar x "$file"; done
|
||||
|
||||
#-------------------------------------------
|
||||
# Misc
|
||||
#-------------------------------------------
|
||||
label wallpaper, number 11, mime ^image, has feh, X = feh --bg-scale "$1"
|
||||
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"
|
||||
|
||||
# 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:
|
||||
mime application/x-executable = "$1"
|
||||
@@ -1,178 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
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
|
||||
|
||||
# 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
|
||||
|
||||
# Script arguments
|
||||
FILE_PATH="${1}" # Full path of the highlighted file
|
||||
PV_WIDTH="${2}" # Width of the preview pane (number of fitting characters)
|
||||
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.
|
||||
|
||||
FILE_EXTENSION="${FILE_PATH##*.}"
|
||||
FILE_EXTENSION_LOWER=$(echo ${FILE_EXTENSION} | tr '[:upper:]' '[:lower:]')
|
||||
|
||||
# Settings
|
||||
HIGHLIGHT_SIZE_MAX=262143 # 256KiB
|
||||
HIGHLIGHT_TABWIDTH=8
|
||||
HIGHLIGHT_STYLE='pablo'
|
||||
PYGMENTIZE_STYLE='autumn'
|
||||
|
||||
|
||||
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 5
|
||||
bsdtar --list --file "${FILE_PATH}" && exit 5
|
||||
exit 1;;
|
||||
rar)
|
||||
# Avoid password prompt by providing empty password
|
||||
unrar lt -p- -- "${FILE_PATH}" && exit 5
|
||||
exit 1;;
|
||||
7z)
|
||||
# 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}" - && exit 5
|
||||
exiftool "${FILE_PATH}" && exit 5
|
||||
exit 1;;
|
||||
|
||||
# BitTorrent
|
||||
torrent)
|
||||
transmission-show -- "${FILE_PATH}" && exit 5
|
||||
exit 1;;
|
||||
|
||||
# OpenDocument
|
||||
odt|ods|odp|sxw)
|
||||
# Preview as text conversion
|
||||
odt2txt "${FILE_PATH}" && exit 5
|
||||
exit 1;;
|
||||
|
||||
# HTML
|
||||
htm|html|xhtml)
|
||||
# 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
|
||||
esac
|
||||
}
|
||||
|
||||
handle_image() {
|
||||
local mimetype="${1}"
|
||||
case "${mimetype}" in
|
||||
# SVG
|
||||
# image/svg+xml)
|
||||
# convert "${FILE_PATH}" "${IMAGE_CACHE_PATH}" && exit 6
|
||||
# exit 1;;
|
||||
|
||||
# Image
|
||||
image/*)
|
||||
local orientation
|
||||
orientation="$( identify -format '%[EXIF:Orientation]\n' -- "${FILE_PATH}" )"
|
||||
# If orientation data is present and the image actually
|
||||
# needs rotating ("1" means no rotation)...
|
||||
if [[ -n "$orientation" && "$orientation" != 1 ]]; then
|
||||
# ...auto-rotate the image according to the EXIF data.
|
||||
convert -- "${FILE_PATH}" -auto-orient "${IMAGE_CACHE_PATH}" && exit 6
|
||||
fi
|
||||
|
||||
# `w3mimgdisplay` will be called for all images (unless overriden as above),
|
||||
# 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;;
|
||||
# PDF
|
||||
# application/pdf)
|
||||
# pdftoppm -f 1 -l 1 \
|
||||
# -scale-to-x 1920 \
|
||||
# -scale-to-y -1 \
|
||||
# -singlefile \
|
||||
# -jpeg -tiffcompression jpeg \
|
||||
# -- "${FILE_PATH}" "${IMAGE_CACHE_PATH%.*}" \
|
||||
# && exit 6 || exit 1;;
|
||||
esac
|
||||
}
|
||||
|
||||
handle_mime() {
|
||||
local mimetype="${1}"
|
||||
case "${mimetype}" in
|
||||
# Text
|
||||
text/* | */xml)
|
||||
# Syntax highlight
|
||||
if [[ "$( stat --printf='%s' -- "${FILE_PATH}" )" -gt "${HIGHLIGHT_SIZE_MAX}" ]]; then
|
||||
exit 2
|
||||
fi
|
||||
if [[ "$( tput colors )" -ge 256 ]]; then
|
||||
local pygmentize_format='terminal256'
|
||||
local highlight_format='xterm256'
|
||||
else
|
||||
local pygmentize_format='terminal'
|
||||
local highlight_format='ansi'
|
||||
fi
|
||||
highlight --replace-tabs="${HIGHLIGHT_TABWIDTH}" --out-format="${highlight_format}" \
|
||||
--style="${HIGHLIGHT_STYLE}" --force -- "${FILE_PATH}" && exit 5
|
||||
# pygmentize -f "${pygmentize_format}" -O "style=${PYGMENTIZE_STYLE}" -- "${FILE_PATH}" && exit 5
|
||||
exit 2;;
|
||||
|
||||
# Image
|
||||
image/*)
|
||||
# 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/* | audio/*)
|
||||
mediainfo "${FILE_PATH}" && exit 5
|
||||
exiftool "${FILE_PATH}" && exit 5
|
||||
exit 1;;
|
||||
esac
|
||||
}
|
||||
|
||||
handle_fallback() {
|
||||
echo '----- File Type Classification -----' && file --dereference --brief -- "${FILE_PATH}" && exit 5
|
||||
exit 1
|
||||
}
|
||||
|
||||
|
||||
MIMETYPE="$( file --dereference --brief --mime-type -- "${FILE_PATH}" )"
|
||||
if [[ "${PV_IMAGE_ENABLED}" == 'True' ]]; then
|
||||
handle_image "${MIMETYPE}"
|
||||
fi
|
||||
handle_extension
|
||||
handle_mime "${MIMETYPE}"
|
||||
handle_fallback
|
||||
|
||||
exit 1
|
||||
@@ -1,633 +0,0 @@
|
||||
### MATPLOTLIBRC FORMAT
|
||||
|
||||
# This is a sample matplotlib configuration file - you can find a copy
|
||||
# of it on your system in
|
||||
# site-packages/matplotlib/mpl-data/matplotlibrc. If you edit it
|
||||
# there, please note that it will be overwritten in your next install.
|
||||
# If you want to keep a permanent local copy that will not be
|
||||
# overwritten, place it in the following location:
|
||||
# unix/linux:
|
||||
# $HOME/.config/matplotlib/matplotlibrc or
|
||||
# $XDG_CONFIG_HOME/matplotlib/matplotlibrc (if $XDG_CONFIG_HOME is set)
|
||||
# other platforms:
|
||||
# $HOME/.matplotlib/matplotlibrc
|
||||
#
|
||||
# See http://matplotlib.org/users/customizing.html#the-matplotlibrc-file for
|
||||
# more details on the paths which are checked for the configuration file.
|
||||
#
|
||||
# This file is best viewed in a editor which supports python mode
|
||||
# syntax highlighting. Blank lines, or lines starting with a comment
|
||||
# symbol, are ignored, as are trailing comments. Other lines must
|
||||
# have the format
|
||||
# key : val # optional comment
|
||||
#
|
||||
# Colors: for the color values below, you can either use - a
|
||||
# matplotlib color string, such as r, k, or b - an rgb tuple, such as
|
||||
# (1.0, 0.5, 0.0) - a hex string, such as ff00ff - a scalar
|
||||
# grayscale intensity such as 0.75 - a legal html color name, e.g., red,
|
||||
# blue, darkslategray
|
||||
|
||||
#### CONFIGURATION BEGINS HERE
|
||||
|
||||
# The default backend; one of GTK GTKAgg GTKCairo GTK3Agg GTK3Cairo
|
||||
# MacOSX Qt4Agg Qt5Agg TkAgg WX WXAgg Agg Cairo GDK PS PDF SVG
|
||||
# Template.
|
||||
# You can also deploy your own backend outside of matplotlib by
|
||||
# referring to the module name (which must be in the PYTHONPATH) as
|
||||
# 'module://my_backend'.
|
||||
backend : macosx
|
||||
|
||||
# If you are using the Qt4Agg backend, you can choose here
|
||||
# to use the PyQt4 bindings or the newer PySide bindings to
|
||||
# the underlying Qt4 toolkit.
|
||||
#backend.qt4 : PyQt4 # PyQt4 | PySide
|
||||
|
||||
# Note that this can be overridden by the environment variable
|
||||
# QT_API used by Enthought Tool Suite (ETS); valid values are
|
||||
# "pyqt" and "pyside". The "pyqt" setting has the side effect of
|
||||
# forcing the use of Version 2 API for QString and QVariant.
|
||||
|
||||
# The port to use for the web server in the WebAgg backend.
|
||||
# webagg.port : 8888
|
||||
|
||||
# If webagg.port is unavailable, a number of other random ports will
|
||||
# be tried until one that is available is found.
|
||||
# webagg.port_retries : 50
|
||||
|
||||
# When True, open the webbrowser to the plot that is shown
|
||||
# webagg.open_in_browser : True
|
||||
|
||||
# When True, the figures rendered in the nbagg backend are created with
|
||||
# a transparent background.
|
||||
# nbagg.transparent : False
|
||||
|
||||
# if you are running pyplot inside a GUI and your backend choice
|
||||
# conflicts, we will automatically try to find a compatible one for
|
||||
# you if backend_fallback is True
|
||||
#backend_fallback: True
|
||||
|
||||
#interactive : False
|
||||
#toolbar : toolbar2 # None | toolbar2 ("classic" is deprecated)
|
||||
#timezone : UTC # a pytz timezone string, e.g., US/Central or Europe/Paris
|
||||
|
||||
# Where your matplotlib data lives if you installed to a non-default
|
||||
# location. This is where the matplotlib fonts, bitmaps, etc reside
|
||||
#datapath : /home/jdhunter/mpldata
|
||||
|
||||
|
||||
### LINES
|
||||
# See http://matplotlib.org/api/artist_api.html#module-matplotlib.lines for more
|
||||
# information on line properties.
|
||||
#lines.linewidth : 1.5 # line width in points
|
||||
#lines.linestyle : - # solid line
|
||||
#lines.color : C0 # has no affect on plot(); see axes.prop_cycle
|
||||
#lines.marker : None # the default marker
|
||||
#lines.markeredgewidth : 1.0 # the line width around the marker symbol
|
||||
#lines.markersize : 6 # markersize, in points
|
||||
#lines.dash_joinstyle : miter # miter|round|bevel
|
||||
#lines.dash_capstyle : butt # butt|round|projecting
|
||||
#lines.solid_joinstyle : miter # miter|round|bevel
|
||||
#lines.solid_capstyle : projecting # butt|round|projecting
|
||||
#lines.antialiased : True # render lines in antialiased (no jaggies)
|
||||
|
||||
# The three standard dash patterns. These are scaled by the linewidth.
|
||||
#lines.dashed_pattern : 2.8, 1.2
|
||||
#lines.dashdot_pattern : 4.8, 1.2, 0.8, 1.2
|
||||
#lines.dotted_pattern : 1.1, 1.1
|
||||
#lines.scale_dashes : True
|
||||
|
||||
#markers.fillstyle: full # full|left|right|bottom|top|none
|
||||
|
||||
### PATCHES
|
||||
# Patches are graphical objects that fill 2D space, like polygons or
|
||||
# circles. See
|
||||
# http://matplotlib.org/api/artist_api.html#module-matplotlib.patches
|
||||
# information on patch properties
|
||||
#patch.linewidth : 1 # edge width in points.
|
||||
#patch.facecolor : C0
|
||||
#patch.edgecolor : black # if forced, or patch is not filled
|
||||
#patch.force_edgecolor : False # True to always use edgecolor
|
||||
#patch.antialiased : True # render patches in antialiased (no jaggies)
|
||||
|
||||
### HATCHES
|
||||
#hatch.color : k
|
||||
#hatch.linewidth : 1.0
|
||||
|
||||
### Boxplot
|
||||
#boxplot.notch : False
|
||||
#boxplot.vertical : True
|
||||
#boxplot.whiskers : 1.5
|
||||
#boxplot.bootstrap : None
|
||||
#boxplot.patchartist : False
|
||||
#boxplot.showmeans : False
|
||||
#boxplot.showcaps : True
|
||||
#boxplot.showbox : True
|
||||
#boxplot.showfliers : True
|
||||
#boxplot.meanline : False
|
||||
|
||||
#boxplot.flierprops.color : 'k'
|
||||
#boxplot.flierprops.marker : 'o'
|
||||
#boxplot.flierprops.markerfacecolor : 'none'
|
||||
#boxplot.flierprops.markeredgecolor : 'k'
|
||||
#boxplot.flierprops.markersize : 6
|
||||
#boxplot.flierprops.linestyle : 'none'
|
||||
#boxplot.flierprops.linewidth : 1.0
|
||||
|
||||
#boxplot.boxprops.color : 'k'
|
||||
#boxplot.boxprops.linewidth : 1.0
|
||||
#boxplot.boxprops.linestyle : '-'
|
||||
|
||||
#boxplot.whiskerprops.color : 'k'
|
||||
#boxplot.whiskerprops.linewidth : 1.0
|
||||
#boxplot.whiskerprops.linestyle : '-'
|
||||
|
||||
#boxplot.capprops.color : 'k'
|
||||
#boxplot.capprops.linewidth : 1.0
|
||||
#boxplot.capprops.linestyle : '-'
|
||||
|
||||
#boxplot.medianprops.color : 'C1'
|
||||
#boxplot.medianprops.linewidth : 1.0
|
||||
#boxplot.medianprops.linestyle : '-'
|
||||
|
||||
#boxplot.meanprops.color : 'C2'
|
||||
#boxplot.meanprops.marker : '^'
|
||||
#boxplot.meanprops.markerfacecolor : 'C2'
|
||||
#boxplot.meanprops.markeredgecolor : 'C2'
|
||||
#boxplot.meanprops.markersize : 6
|
||||
#boxplot.meanprops.linestyle : 'none'
|
||||
#boxplot.meanprops.linewidth : 1.0
|
||||
|
||||
### FONT
|
||||
#
|
||||
# font properties used by text.Text. See
|
||||
# http://matplotlib.org/api/font_manager_api.html for more
|
||||
# information on font properties. The 6 font properties used for font
|
||||
# matching are given below with their default values.
|
||||
#
|
||||
# The font.family property has five values: 'serif' (e.g., Times),
|
||||
# 'sans-serif' (e.g., Helvetica), 'cursive' (e.g., Zapf-Chancery),
|
||||
# 'fantasy' (e.g., Western), and 'monospace' (e.g., Courier). Each of
|
||||
# these font families has a default list of font names in decreasing
|
||||
# order of priority associated with them. When text.usetex is False,
|
||||
# font.family may also be one or more concrete font names.
|
||||
#
|
||||
# The font.style property has three values: normal (or roman), italic
|
||||
# or oblique. The oblique style will be used for italic, if it is not
|
||||
# present.
|
||||
#
|
||||
# The font.variant property has two values: normal or small-caps. For
|
||||
# TrueType fonts, which are scalable fonts, small-caps is equivalent
|
||||
# to using a font size of 'smaller', or about 83%% of the current font
|
||||
# size.
|
||||
#
|
||||
# The font.weight property has effectively 13 values: normal, bold,
|
||||
# bolder, lighter, 100, 200, 300, ..., 900. Normal is the same as
|
||||
# 400, and bold is 700. bolder and lighter are relative values with
|
||||
# respect to the current weight.
|
||||
#
|
||||
# The font.stretch property has 11 values: ultra-condensed,
|
||||
# extra-condensed, condensed, semi-condensed, normal, semi-expanded,
|
||||
# expanded, extra-expanded, ultra-expanded, wider, and narrower. This
|
||||
# property is not currently implemented.
|
||||
#
|
||||
# The font.size property is the default font size for text, given in pts.
|
||||
# 10 pt is the standard value.
|
||||
#
|
||||
#font.family : sans-serif
|
||||
#font.style : normal
|
||||
#font.variant : normal
|
||||
#font.weight : medium
|
||||
#font.stretch : normal
|
||||
# note that font.size controls default text sizes. To configure
|
||||
# special text sizes tick labels, axes, labels, title, etc, see the rc
|
||||
# settings for axes and ticks. Special text sizes can be defined
|
||||
# relative to font.size, using the following values: xx-small, x-small,
|
||||
# small, medium, large, x-large, xx-large, larger, or smaller
|
||||
#font.size : 10.0
|
||||
#font.serif : DejaVu Serif, Bitstream Vera Serif, New Century Schoolbook, Century Schoolbook L, Utopia, ITC Bookman, Bookman, Nimbus Roman No9 L, Times New Roman, Times, Palatino, Charter, serif
|
||||
#font.sans-serif : DejaVu Sans, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
|
||||
#font.cursive : Apple Chancery, Textile, Zapf Chancery, Sand, Script MT, Felipa, cursive
|
||||
#font.fantasy : Comic Sans MS, Chicago, Charcoal, Impact, Western, Humor Sans, xkcd, fantasy
|
||||
#font.monospace : DejaVu Sans Mono, Bitstream Vera Sans Mono, Andale Mono, Nimbus Mono L, Courier New, Courier, Fixed, Terminal, monospace
|
||||
|
||||
### TEXT
|
||||
# text properties used by text.Text. See
|
||||
# http://matplotlib.org/api/artist_api.html#module-matplotlib.text for more
|
||||
# information on text properties
|
||||
|
||||
#text.color : black
|
||||
|
||||
### LaTeX customizations. See http://wiki.scipy.org/Cookbook/Matplotlib/UsingTex
|
||||
#text.usetex : False # use latex for all text handling. The following fonts
|
||||
# are supported through the usual rc parameter settings:
|
||||
# new century schoolbook, bookman, times, palatino,
|
||||
# zapf chancery, charter, serif, sans-serif, helvetica,
|
||||
# avant garde, courier, monospace, computer modern roman,
|
||||
# computer modern sans serif, computer modern typewriter
|
||||
# If another font is desired which can loaded using the
|
||||
# LaTeX \usepackage command, please inquire at the
|
||||
# matplotlib mailing list
|
||||
#text.latex.unicode : False # use "ucs" and "inputenc" LaTeX packages for handling
|
||||
# unicode strings.
|
||||
#text.latex.preamble : # IMPROPER USE OF THIS FEATURE WILL LEAD TO LATEX FAILURES
|
||||
# AND IS THEREFORE UNSUPPORTED. PLEASE DO NOT ASK FOR HELP
|
||||
# IF THIS FEATURE DOES NOT DO WHAT YOU EXPECT IT TO.
|
||||
# preamble is a comma separated list of LaTeX statements
|
||||
# that are included in the LaTeX document preamble.
|
||||
# An example:
|
||||
# text.latex.preamble : \usepackage{bm},\usepackage{euler}
|
||||
# The following packages are always loaded with usetex, so
|
||||
# beware of package collisions: color, geometry, graphicx,
|
||||
# type1cm, textcomp. Adobe Postscript (PSSNFS) font packages
|
||||
# may also be loaded, depending on your font settings
|
||||
|
||||
#text.dvipnghack : None # some versions of dvipng don't handle alpha
|
||||
# channel properly. Use True to correct
|
||||
# and flush ~/.matplotlib/tex.cache
|
||||
# before testing and False to force
|
||||
# correction off. None will try and
|
||||
# guess based on your dvipng version
|
||||
|
||||
#text.hinting : auto # May be one of the following:
|
||||
# 'none': Perform no hinting
|
||||
# 'auto': Use FreeType's autohinter
|
||||
# 'native': Use the hinting information in the
|
||||
# font file, if available, and if your
|
||||
# FreeType library supports it
|
||||
# 'either': Use the native hinting information,
|
||||
# or the autohinter if none is available.
|
||||
# For backward compatibility, this value may also be
|
||||
# True === 'auto' or False === 'none'.
|
||||
#text.hinting_factor : 8 # Specifies the amount of softness for hinting in the
|
||||
# horizontal direction. A value of 1 will hint to full
|
||||
# pixels. A value of 2 will hint to half pixels etc.
|
||||
|
||||
#text.antialiased : True # If True (default), the text will be antialiased.
|
||||
# This only affects the Agg backend.
|
||||
|
||||
# The following settings allow you to select the fonts in math mode.
|
||||
# They map from a TeX font name to a fontconfig font pattern.
|
||||
# These settings are only used if mathtext.fontset is 'custom'.
|
||||
# Note that this "custom" mode is unsupported and may go away in the
|
||||
# future.
|
||||
#mathtext.cal : cursive
|
||||
#mathtext.rm : serif
|
||||
#mathtext.tt : monospace
|
||||
#mathtext.it : serif:italic
|
||||
#mathtext.bf : serif:bold
|
||||
#mathtext.sf : sans
|
||||
#mathtext.fontset : dejavusans # Should be 'dejavusans' (default),
|
||||
# 'dejavuserif', 'cm' (Computer Modern), 'stix',
|
||||
# 'stixsans' or 'custom'
|
||||
#mathtext.fallback_to_cm : True # When True, use symbols from the Computer Modern
|
||||
# fonts when a symbol can not be found in one of
|
||||
# the custom math fonts.
|
||||
|
||||
#mathtext.default : it # The default font to use for math.
|
||||
# Can be any of the LaTeX font names, including
|
||||
# the special name "regular" for the same font
|
||||
# used in regular text.
|
||||
|
||||
### AXES
|
||||
# default face and edge color, default tick sizes,
|
||||
# default fontsizes for ticklabels, and so on. See
|
||||
# http://matplotlib.org/api/axes_api.html#module-matplotlib.axes
|
||||
#axes.facecolor : white # axes background color
|
||||
#axes.edgecolor : black # axes edge color
|
||||
#axes.linewidth : 0.8 # edge linewidth
|
||||
#axes.grid : False # display grid or not
|
||||
#axes.titlesize : large # fontsize of the axes title
|
||||
#axes.titlepad : 6.0 # pad between axes and title in points
|
||||
#axes.labelsize : medium # fontsize of the x any y labels
|
||||
#axes.labelpad : 4.0 # space between label and axis
|
||||
#axes.labelweight : normal # weight of the x and y labels
|
||||
#axes.labelcolor : black
|
||||
#axes.axisbelow : 'line' # draw axis gridlines and ticks below
|
||||
# patches (True); above patches but below
|
||||
# lines ('line'); or above all (False)
|
||||
|
||||
#axes.formatter.limits : -7, 7 # use scientific notation if log10
|
||||
# of the axis range is smaller than the
|
||||
# first or larger than the second
|
||||
#axes.formatter.use_locale : False # When True, format tick labels
|
||||
# according to the user's locale.
|
||||
# For example, use ',' as a decimal
|
||||
# separator in the fr_FR locale.
|
||||
#axes.formatter.use_mathtext : False # When True, use mathtext for scientific
|
||||
# notation.
|
||||
#axes.formatter.useoffset : True # If True, the tick label formatter
|
||||
# will default to labeling ticks relative
|
||||
# to an offset when the data range is
|
||||
# small compared to the minimum absolute
|
||||
# value of the data.
|
||||
#axes.formatter.offset_threshold : 4 # When useoffset is True, the offset
|
||||
# will be used when it can remove
|
||||
# at least this number of significant
|
||||
# digits from tick labels.
|
||||
|
||||
# axes.spines.left : True # display axis spines
|
||||
# axes.spines.bottom : True
|
||||
# axes.spines.top : True
|
||||
# axes.spines.right : True
|
||||
|
||||
|
||||
#axes.unicode_minus : True # use unicode for the minus symbol
|
||||
# rather than hyphen. See
|
||||
# http://en.wikipedia.org/wiki/Plus_and_minus_signs#Character_codes
|
||||
#axes.prop_cycle : cycler('color',
|
||||
# ['1f77b4', 'ff7f0e', '2ca02c', 'd62728',
|
||||
# '9467bd', '8c564b', 'e377c2', '7f7f7f',
|
||||
# 'bcbd22', '17becf'])
|
||||
# color cycle for plot lines
|
||||
# as list of string colorspecs:
|
||||
# single letter, long name, or
|
||||
# web-style hex
|
||||
#axes.autolimit_mode : data # How to scale axes limits to the data.
|
||||
# Use "data" to use data limits, plus some margin
|
||||
# Use "round_number" move to the nearest "round" number
|
||||
#axes.xmargin : .05 # x margin. See `axes.Axes.margins`
|
||||
#axes.ymargin : .05 # y margin See `axes.Axes.margins`
|
||||
|
||||
#polaraxes.grid : True # display grid on polar axes
|
||||
#axes3d.grid : True # display grid on 3d axes
|
||||
|
||||
### DATES
|
||||
# These control the default format strings used in AutoDateFormatter.
|
||||
# Any valid format datetime format string can be used (see the python
|
||||
# `datetime` for details). For example using '%%x' will use the locale date representation
|
||||
# '%%X' will use the locale time representation and '%%c' will use the full locale datetime
|
||||
# representation.
|
||||
# These values map to the scales:
|
||||
# {'year': 365, 'month': 30, 'day': 1, 'hour': 1/24, 'minute': 1 / (24 * 60)}
|
||||
|
||||
# date.autoformatter.year : %Y
|
||||
# date.autoformatter.month : %Y-%m
|
||||
# date.autoformatter.day : %Y-%m-%d
|
||||
# date.autoformatter.hour : %m-%d %H
|
||||
# date.autoformatter.minute : %d %H:%M
|
||||
# date.autoformatter.second : %H:%M:%S
|
||||
# date.autoformatter.microsecond : %M:%S.%f
|
||||
|
||||
### TICKS
|
||||
# see http://matplotlib.org/api/axis_api.html#matplotlib.axis.Tick
|
||||
#xtick.top : False # draw ticks on the top side
|
||||
#xtick.bottom : True # draw ticks on the bottom side
|
||||
#xtick.major.size : 3.5 # major tick size in points
|
||||
#xtick.minor.size : 2 # minor tick size in points
|
||||
#xtick.major.width : 0.8 # major tick width in points
|
||||
#xtick.minor.width : 0.6 # minor tick width in points
|
||||
#xtick.major.pad : 3.5 # distance to major tick label in points
|
||||
#xtick.minor.pad : 3.4 # distance to the minor tick label in points
|
||||
#xtick.color : k # color of the tick labels
|
||||
#xtick.labelsize : medium # fontsize of the tick labels
|
||||
#xtick.direction : out # direction: in, out, or inout
|
||||
#xtick.minor.visible : False # visibility of minor ticks on x-axis
|
||||
#xtick.major.top : True # draw x axis top major ticks
|
||||
#xtick.major.bottom : True # draw x axis bottom major ticks
|
||||
#xtick.minor.top : True # draw x axis top minor ticks
|
||||
#xtick.minor.bottom : True # draw x axis bottom minor ticks
|
||||
|
||||
#ytick.left : True # draw ticks on the left side
|
||||
#ytick.right : False # draw ticks on the right side
|
||||
#ytick.major.size : 3.5 # major tick size in points
|
||||
#ytick.minor.size : 2 # minor tick size in points
|
||||
#ytick.major.width : 0.8 # major tick width in points
|
||||
#ytick.minor.width : 0.6 # minor tick width in points
|
||||
#ytick.major.pad : 3.5 # distance to major tick label in points
|
||||
#ytick.minor.pad : 3.4 # distance to the minor tick label in points
|
||||
#ytick.color : k # color of the tick labels
|
||||
#ytick.labelsize : medium # fontsize of the tick labels
|
||||
#ytick.direction : out # direction: in, out, or inout
|
||||
#ytick.minor.visible : False # visibility of minor ticks on y-axis
|
||||
#ytick.major.left : True # draw y axis left major ticks
|
||||
#ytick.major.right : True # draw y axis right major ticks
|
||||
#ytick.minor.left : True # draw y axis left minor ticks
|
||||
#ytick.minor.right : True # draw y axis right minor ticks
|
||||
|
||||
|
||||
### GRIDS
|
||||
#grid.color : b0b0b0 # grid color
|
||||
#grid.linestyle : - # solid
|
||||
#grid.linewidth : 0.8 # in points
|
||||
#grid.alpha : 1.0 # transparency, between 0.0 and 1.0
|
||||
|
||||
### Legend
|
||||
#legend.loc : best
|
||||
#legend.frameon : True # if True, draw the legend on a background patch
|
||||
#legend.framealpha : 0.8 # legend patch transparency
|
||||
#legend.facecolor : inherit # inherit from axes.facecolor; or color spec
|
||||
#legend.edgecolor : 0.8 # background patch boundary color
|
||||
#legend.fancybox : True # if True, use a rounded box for the
|
||||
# legend background, else a rectangle
|
||||
#legend.shadow : False # if True, give background a shadow effect
|
||||
#legend.numpoints : 1 # the number of marker points in the legend line
|
||||
#legend.scatterpoints : 1 # number of scatter points
|
||||
#legend.markerscale : 1.0 # the relative size of legend markers vs. original
|
||||
#legend.fontsize : medium
|
||||
# Dimensions as fraction of fontsize:
|
||||
#legend.borderpad : 0.4 # border whitespace
|
||||
#legend.labelspacing : 0.5 # the vertical space between the legend entries
|
||||
#legend.handlelength : 2.0 # the length of the legend lines
|
||||
#legend.handleheight : 0.7 # the height of the legend handle
|
||||
#legend.handletextpad : 0.8 # the space between the legend line and legend text
|
||||
#legend.borderaxespad : 0.5 # the border between the axes and legend edge
|
||||
#legend.columnspacing : 2.0 # column separation
|
||||
|
||||
### FIGURE
|
||||
# See http://matplotlib.org/api/figure_api.html#matplotlib.figure.Figure
|
||||
#figure.titlesize : large # size of the figure title (Figure.suptitle())
|
||||
#figure.titleweight : normal # weight of the figure title
|
||||
|
||||
figure.figsize : 16, 9 # figure size in inches
|
||||
figure.dpi : 120 # figure dots per inch
|
||||
|
||||
|
||||
# figure.figsize : 8, 4 # figure size in inches
|
||||
# figure.dpi : 400 # figure dots per inch
|
||||
|
||||
#figure.facecolor : white # figure facecolor; 0.75 is scalar gray
|
||||
#figure.edgecolor : white # figure edgecolor
|
||||
#figure.autolayout : False # When True, automatically adjust subplot
|
||||
# parameters to make the plot fit the figure
|
||||
#figure.max_open_warning : 20 # The maximum number of figures to open through
|
||||
# the pyplot interface before emitting a warning.
|
||||
# If less than one this feature is disabled.
|
||||
|
||||
# The figure subplot parameters. All dimensions are a fraction of the
|
||||
#figure.subplot.left : 0.125 # the left side of the subplots of the figure
|
||||
#figure.subplot.right : 0.9 # the right side of the subplots of the figure
|
||||
#figure.subplot.bottom : 0.11 # the bottom of the subplots of the figure
|
||||
#figure.subplot.top : 0.88 # the top of the subplots of the figure
|
||||
#figure.subplot.wspace : 0.2 # the amount of width reserved for blank space between subplots,
|
||||
# expressed as a fraction of the average axis width
|
||||
#figure.subplot.hspace : 0.2 # the amount of height reserved for white space between subplots,
|
||||
# expressed as a fraction of the average axis height
|
||||
|
||||
|
||||
### IMAGES
|
||||
#image.aspect : equal # equal | auto | a number
|
||||
image.interpolation : none # see help(imshow) for options
|
||||
image.cmap : inferno # A colormap name, gray etc...
|
||||
#image.lut : 256 # the size of the colormap lookup table
|
||||
#image.origin : upper # lower | upper
|
||||
#image.resample : True
|
||||
#image.composite_image : True # When True, all the images on a set of axes are
|
||||
# combined into a single composite image before
|
||||
# saving a figure as a vector graphics file,
|
||||
# such as a PDF.
|
||||
|
||||
### CONTOUR PLOTS
|
||||
#contour.negative_linestyle : dashed # dashed | solid
|
||||
#contour.corner_mask : True # True | False | legacy
|
||||
|
||||
### ERRORBAR PLOTS
|
||||
#errorbar.capsize : 0 # length of end cap on error bars in pixels
|
||||
|
||||
### HISTOGRAM PLOTS
|
||||
hist.bins : auto # The default number of histogram bins.
|
||||
# If Numpy 1.11 or later is
|
||||
# installed, may also be `auto`
|
||||
|
||||
### SCATTER PLOTS
|
||||
#scatter.marker : o # The default marker type for scatter plots.
|
||||
|
||||
### Agg rendering
|
||||
### Warning: experimental, 2008/10/10
|
||||
#agg.path.chunksize : 0 # 0 to disable; values in the range
|
||||
# 10000 to 100000 can improve speed slightly
|
||||
# and prevent an Agg rendering failure
|
||||
# when plotting very large data sets,
|
||||
# especially if they are very gappy.
|
||||
# It may cause minor artifacts, though.
|
||||
# A value of 20000 is probably a good
|
||||
# starting point.
|
||||
### SAVING FIGURES
|
||||
#path.simplify : True # When True, simplify paths by removing "invisible"
|
||||
# points to reduce file size and increase rendering
|
||||
# speed
|
||||
#path.simplify_threshold : 0.1 # The threshold of similarity below which
|
||||
# vertices will be removed in the simplification
|
||||
# process
|
||||
#path.snap : True # When True, rectilinear axis-aligned paths will be snapped to
|
||||
# the nearest pixel when certain criteria are met. When False,
|
||||
# paths will never be snapped.
|
||||
#path.sketch : None # May be none, or a 3-tuple of the form (scale, length,
|
||||
# randomness).
|
||||
# *scale* is the amplitude of the wiggle
|
||||
# perpendicular to the line (in pixels). *length*
|
||||
# is the length of the wiggle along the line (in
|
||||
# pixels). *randomness* is the factor by which
|
||||
# the length is randomly scaled.
|
||||
|
||||
# the default savefig params can be different from the display params
|
||||
# e.g., you may want a higher resolution, or to make the figure
|
||||
# background white
|
||||
#savefig.dpi : figure # figure dots per inch or 'figure'
|
||||
#savefig.facecolor : white # figure facecolor when saving
|
||||
#savefig.edgecolor : white # figure edgecolor when saving
|
||||
#savefig.format : png # png, ps, pdf, svg
|
||||
#savefig.bbox : standard # 'tight' or 'standard'.
|
||||
# 'tight' is incompatible with pipe-based animation
|
||||
# backends but will workd with temporary file based ones:
|
||||
# e.g. setting animation.writer to ffmpeg will not work,
|
||||
# use ffmpeg_file instead
|
||||
#savefig.pad_inches : 0.1 # Padding to be used when bbox is set to 'tight'
|
||||
#savefig.jpeg_quality: 95 # when a jpeg is saved, the default quality parameter.
|
||||
#savefig.directory : ~ # default directory in savefig dialog box,
|
||||
# leave empty to always use current working directory
|
||||
#savefig.transparent : False # setting that controls whether figures are saved with a
|
||||
# transparent background by default
|
||||
|
||||
# tk backend params
|
||||
#tk.window_focus : False # Maintain shell focus for TkAgg
|
||||
|
||||
# ps backend params
|
||||
#ps.papersize : letter # auto, letter, legal, ledger, A0-A10, B0-B10
|
||||
#ps.useafm : False # use of afm fonts, results in small files
|
||||
#ps.usedistiller : False # can be: None, ghostscript or xpdf
|
||||
# Experimental: may produce smaller files.
|
||||
# xpdf intended for production of publication quality files,
|
||||
# but requires ghostscript, xpdf and ps2eps
|
||||
#ps.distiller.res : 6000 # dpi
|
||||
#ps.fonttype : 3 # Output Type 3 (Type3) or Type 42 (TrueType)
|
||||
|
||||
# pdf backend params
|
||||
#pdf.compression : 6 # integer from 0 to 9
|
||||
# 0 disables compression (good for debugging)
|
||||
#pdf.fonttype : 3 # Output Type 3 (Type3) or Type 42 (TrueType)
|
||||
|
||||
# svg backend params
|
||||
#svg.image_inline : True # write raster image data directly into the svg file
|
||||
#svg.fonttype : 'path' # How to handle SVG fonts:
|
||||
# 'none': Assume fonts are installed on the machine where the SVG will be viewed.
|
||||
# 'path': Embed characters as paths -- supported by most SVG renderers
|
||||
# 'svgfont': Embed characters as SVG fonts -- supported only by Chrome,
|
||||
# Opera and Safari
|
||||
#svg.hashsalt : None # if not None, use this string as hash salt
|
||||
# instead of uuid4
|
||||
|
||||
# docstring params
|
||||
#docstring.hardcopy = False # set this when you want to generate hardcopy docstring
|
||||
|
||||
# Set the verbose flags. This controls how much information
|
||||
# matplotlib gives you at runtime and where it goes. The verbosity
|
||||
# levels are: silent, helpful, debug, debug-annoying. Any level is
|
||||
# inclusive of all the levels below it. If your setting is "debug",
|
||||
# you'll get all the debug and helpful messages. When submitting
|
||||
# problems to the mailing-list, please set verbose to "helpful" or "debug"
|
||||
# and paste the output into your report.
|
||||
#
|
||||
# The "fileo" gives the destination for any calls to verbose.report.
|
||||
# These objects can a filename, or a filehandle like sys.stdout.
|
||||
#
|
||||
# You can override the rc default verbosity from the command line by
|
||||
# giving the flags --verbose-LEVEL where LEVEL is one of the legal
|
||||
# levels, e.g., --verbose-helpful.
|
||||
#
|
||||
# You can access the verbose instance in your code
|
||||
# from matplotlib import verbose.
|
||||
#verbose.level : silent # one of silent, helpful, debug, debug-annoying
|
||||
#verbose.fileo : sys.stdout # a log filename, sys.stdout or sys.stderr
|
||||
|
||||
# Event keys to interact with figures/plots via keyboard.
|
||||
# Customize these settings according to your needs.
|
||||
# Leave the field(s) empty if you don't need a key-map. (i.e., fullscreen : '')
|
||||
|
||||
#keymap.fullscreen : f, ctrl+f # toggling
|
||||
#keymap.home : h, r, home # home or reset mnemonic
|
||||
#keymap.back : left, c, backspace # forward / backward keys to enable
|
||||
#keymap.forward : right, v # left handed quick navigation
|
||||
#keymap.pan : p # pan mnemonic
|
||||
#keymap.zoom : o # zoom mnemonic
|
||||
#keymap.save : s # saving current figure
|
||||
#keymap.quit : ctrl+w, cmd+w # close the current figure
|
||||
#keymap.grid : g # switching on/off a grid in current axes
|
||||
#keymap.yscale : l # toggle scaling of y-axes ('log'/'linear')
|
||||
#keymap.xscale : L, k # toggle scaling of x-axes ('log'/'linear')
|
||||
#keymap.all_axes : a # enable all axes
|
||||
|
||||
# Control location of examples data files
|
||||
#examples.directory : '' # directory to look in for custom installation
|
||||
|
||||
###ANIMATION settings
|
||||
animation.html : html5 # How to display the animation as HTML in
|
||||
# the IPython notebook. 'html5' uses
|
||||
# HTML5 video tag.
|
||||
#animation.writer : ffmpeg # MovieWriter 'backend' to use
|
||||
#animation.codec : h264 # Codec to use for writing movie
|
||||
#animation.bitrate: -1 # Controls size/quality tradeoff for movie.
|
||||
# -1 implies let utility auto-determine
|
||||
#animation.frame_format: 'png' # Controls frame format used by temp files
|
||||
#animation.ffmpeg_path: 'ffmpeg' # Path to ffmpeg binary. Without full path
|
||||
# $PATH is searched
|
||||
#animation.ffmpeg_args: '' # Additional arguments to pass to ffmpeg
|
||||
#animation.avconv_path: 'avconv' # Path to avconv binary. Without full path
|
||||
# $PATH is searched
|
||||
#animation.avconv_args: '' # Additional arguments to pass to avconv
|
||||
#animation.mencoder_path: 'mencoder'
|
||||
# Path to mencoder binary. Without full path
|
||||
# $PATH is searched
|
||||
#animation.mencoder_args: '' # Additional arguments to pass to mencoder
|
||||
#animation.convert_path: 'convert' # Path to ImageMagick's convert binary.
|
||||
# On Windows use the full path since convert
|
||||
# is also the name of a system tool.
|
||||
38
.starship.toml
Normal file
38
.starship.toml
Normal file
@@ -0,0 +1,38 @@
|
||||
add_newline = true
|
||||
format = """$git_branch$git_status$character"""
|
||||
right_format = """$username[@](red)$hostname $cmd_duration$time $directory"""
|
||||
|
||||
[git_branch]
|
||||
format = "[$branch]($style) "
|
||||
|
||||
[git_status]
|
||||
format = '[$all_status$ahead_behind]($style)'
|
||||
|
||||
[username]
|
||||
show_always = true
|
||||
format = "[$user]($style)"
|
||||
style_user = "blue bold"
|
||||
|
||||
[hostname]
|
||||
ssh_only = false
|
||||
format = "[$hostname]($style)"
|
||||
style = "blue bold"
|
||||
|
||||
[directory]
|
||||
truncation_length = 5
|
||||
truncate_to_repo = false
|
||||
style = "cyan bold"
|
||||
|
||||
[cmd_duration]
|
||||
min_time = 5_000
|
||||
show_milliseconds = true
|
||||
format = '[$duration]($style) '
|
||||
|
||||
[time]
|
||||
disabled = false
|
||||
format = "[$time]($style)"
|
||||
style = "green"
|
||||
|
||||
[character]
|
||||
success_symbol = "[➤](green)"
|
||||
error_symbol = "[➤](red)"
|
||||
92
.zshrc
92
.zshrc
@@ -46,26 +46,29 @@ zinit light zsh-users/zsh-completions
|
||||
autoload -Uz compinit
|
||||
compinit
|
||||
|
||||
# idk?
|
||||
zstyle ':completion:*' menu select
|
||||
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
|
||||
bindkey '^[[Z' reverse-menu-complete # shift-tab
|
||||
|
||||
# search from prefix
|
||||
zinit light zsh-users/zsh-history-substring-search
|
||||
bindkey "${key[Up]}" history-substring-search-up
|
||||
bindkey "${key[Down]}" history-substring-search-down
|
||||
# key definitions (terminfo + common codes)
|
||||
typeset -gA key
|
||||
key[Home]="${terminfo[khome]}"
|
||||
key[End]="${terminfo[kend]}"
|
||||
key[Delete]="${terminfo[kdch1]}"
|
||||
key[Up]="${terminfo[kcuu1]}"
|
||||
key[Down]="${terminfo[kcud1]}"
|
||||
key[ShiftTab]="${terminfo[kcbt]}"
|
||||
key[CtrlLeft]="^[[1;5D"
|
||||
key[CtrlRight]="^[[1;5C"
|
||||
|
||||
# keybindings
|
||||
bindkey -e # emacs mode
|
||||
bindkey '\e[1~' beginning-of-line
|
||||
bindkey '\e[4~' end-of-line
|
||||
bindkey "\eOH" beginning-of-line
|
||||
bindkey "\eOF" end-of-line
|
||||
bindkey '^[[3~' delete-char # Delete key
|
||||
bindkey '^[[1;5C' forward-word # Ctrl+Right
|
||||
bindkey '^[[1;5D' backward-word # Ctrl+Left
|
||||
bindkey '^[.' insert-last-word # Alt+. or Esc,. (last arg of prev cmd)
|
||||
bindkey -e
|
||||
[[ -n ${key[Home]} ]] && bindkey ${key[Home]} beginning-of-line
|
||||
[[ -n ${key[End]} ]] && bindkey ${key[End]} end-of-line
|
||||
[[ -n ${key[Delete]} ]] && bindkey ${key[Delete]} delete-char
|
||||
[[ -n ${key[ShiftTab]} ]] && bindkey ${key[ShiftTab]} reverse-menu-complete
|
||||
[[ -n ${key[CtrlLeft]} ]] && bindkey ${key[CtrlLeft]} backward-word
|
||||
[[ -n ${key[CtrlRight]} ]] && bindkey ${key[CtrlRight]} forward-word
|
||||
bindkey '^[.' insert-last-word # Esc,. (last arg of prev cmd)
|
||||
bindkey '^[b' backward-word # Alt+B
|
||||
bindkey '^[f' forward-word # Alt+F
|
||||
bindkey '^[^?' backward-kill-word # Alt+Backspace
|
||||
@@ -73,51 +76,13 @@ bindkey '^Q' push-line # Ctrl+Q (stash line, type another, comes back
|
||||
autoload -Uz edit-command-line && zle -N edit-command-line
|
||||
bindkey '^X^E' edit-command-line # Ctrl+X,E → edit in $EDITOR
|
||||
|
||||
# starship config (inline)
|
||||
export STARSHIP_CONFIG=~/.config/starship.toml
|
||||
mkdir -p ~/.config
|
||||
cat > $STARSHIP_CONFIG << 'EOF'
|
||||
add_newline = true
|
||||
format = """$git_branch$git_status$character"""
|
||||
right_format = """$username[@](red)$hostname $cmd_duration$time $directory"""
|
||||
|
||||
[git_branch]
|
||||
format = "[$branch]($style) "
|
||||
|
||||
[git_status]
|
||||
format = '[$all_status$ahead_behind]($style)'
|
||||
|
||||
[username]
|
||||
show_always = true
|
||||
format = "[$user]($style)"
|
||||
style_user = "blue bold"
|
||||
|
||||
[hostname]
|
||||
ssh_only = false
|
||||
format = "[$hostname]($style)"
|
||||
style = "blue bold"
|
||||
|
||||
[directory]
|
||||
truncation_length = 5
|
||||
truncate_to_repo = false
|
||||
style = "cyan bold"
|
||||
|
||||
[cmd_duration]
|
||||
min_time = 5_000
|
||||
show_milliseconds = true
|
||||
format = '[$duration]($style) '
|
||||
|
||||
[time]
|
||||
disabled = false
|
||||
format = "[$time]($style)"
|
||||
style = "green"
|
||||
|
||||
[character]
|
||||
success_symbol = "[➤](green)"
|
||||
error_symbol = "[➤](red)"
|
||||
EOF
|
||||
# search from prefix
|
||||
zinit light zsh-users/zsh-history-substring-search
|
||||
[[ -n ${key[Up]} ]] && bindkey ${key[Up]} history-substring-search-up
|
||||
[[ -n ${key[Down]} ]] && bindkey ${key[Down]} history-substring-search-down
|
||||
|
||||
# starship prompt
|
||||
export STARSHIP_CONFIG=~/.starship.toml
|
||||
zinit ice as"command" from"gh-r" \
|
||||
atclone"./starship init zsh > init.zsh; ./starship completions zsh > _starship" \
|
||||
atpull"%atclone" src"init.zsh"
|
||||
@@ -131,6 +96,17 @@ path=(
|
||||
$path
|
||||
)
|
||||
|
||||
# fzf (if available)
|
||||
if (( $+commands[fzf] )); then
|
||||
source <(fzf --zsh 2>/dev/null) || {
|
||||
# fallback for older fzf versions
|
||||
[[ -f ~/.fzf.zsh ]] && source ~/.fzf.zsh
|
||||
[[ -f /usr/share/fzf/key-bindings.zsh ]] && source /usr/share/fzf/key-bindings.zsh
|
||||
[[ -f /usr/share/fzf/completion.zsh ]] && source /usr/share/fzf/completion.zsh
|
||||
}
|
||||
export FZF_DEFAULT_OPTS='--height 40% --reverse'
|
||||
fi
|
||||
|
||||
# aliases: git
|
||||
alias g="git"
|
||||
alias a="git add --all :/"
|
||||
|
||||
Reference in New Issue
Block a user