summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam T. Carpenter <atc@53hor.net>2020-11-24 08:11:46 -0500
committerAdam T. Carpenter <atc@53hor.net>2020-11-24 08:11:46 -0500
commit208ecf206edaa6426128d9999563af5c3e18fadd (patch)
treea2cbb6d09a5a6a5caa0f6a7ac99826f30283b775
downloaddotfiles-208ecf206edaa6426128d9999563af5c3e18fadd.tar.xz
dotfiles-208ecf206edaa6426128d9999563af5c3e18fadd.zip
Init
l---------.Xresources1
-rw-r--r--.aliases31
-rw-r--r--.config/alacritty/alacritty.yml569
-rw-r--r--.config/fontconfig/fonts.conf28
-rw-r--r--.config/gtk-3.0/settings.ini3
-rw-r--r--.config/i3blocks/config69
-rw-r--r--.config/mbsync/mbsyncrc22
-rw-r--r--.config/mpv/mpv.conf141
-rw-r--r--.config/mutt/mailcap1
-rw-r--r--.config/mutt/muttrc6379
-rw-r--r--.config/newsboat/config71
-rw-r--r--.config/picom/picom.conf423
-rw-r--r--.config/rofi/config27
-rw-r--r--.config/vifm/colors/Default.vifm65
-rw-r--r--.config/vifm/colors/Default.vifm.bak80
-rw-r--r--.config/vifm/scripts/README6
-rw-r--r--.config/vifm/vifm-help.txt5902
-rw-r--r--.config/vifm/vifminfo920
-rw-r--r--.config/vifm/vifminfo.json1
-rw-r--r--.config/vifm/vifmrc455
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_115dab7e67478ed72666493964b133792a269c020fecac5b5570d3f73b5dfc25_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_1aeee27d230bb230e49dbea0df799a71f96480a284753c233375da776f44ca3f_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_20190803_203423_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_20190811_100649_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_20190811_203810_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_582c32a3ac08159d0ce653b659dce10a8fd5c4591e1a3713e50f14c0527f9ed6_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_5ce2f33a2e13419a0e4ded7673d2295218816e2c724a97c9c71319b516958838_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_60802e82b71465039b01474aa1fc4da5f7800b5e067b0748a3d6b6aa93fbbe63_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_6392ba1aa98b0c3b01fb33c4b79f3703c5f607af556a9e2b65841760256c4e0d_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_6b4ac55c7739aa68c991ad207e49ff629df73f5f7c91e364e3a23f930f5faf2b_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_86c209d61b31fc880f6d665213c6c6b8f8f3f2f834c2dcda25fc06a9c7820597_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_8aaf6106230640d0f815ccf163ecb621485a51ae469f50f2af8aa80809f6043f_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_99ada981b672e71ffa477c37977b1d1ee1a900b9bdc6990392e1e36981d7747e_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_9bba3fb9b7bd856c7cf4b7e662b6c5b5e86897ff56344a0312f31393a469e60a_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_acceptance_of_the_void-thatgamecompany_journey_art1600_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-233rd-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-amateria-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-channelwood-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-earth-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-edanna-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-haven-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-jnanin-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-mechanical-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-myst-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-narayan-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-rime-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-riven-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-selenitic-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-serenia-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-spire-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-stoneship-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-tay-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-voltaic-1920x1200_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_arch_of_stone-thatgamecompany_journey_art1600_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_back-to-the-future-science-fiction-delorean-movies-time-travel-artwork-humor-minimalism-1359785_png_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_channelwood_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_channelwood_pano2_png_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_channelwood_sirrus_alt_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_chnanelwood_alt_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_clocktower_alt_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_clu_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_creature_of_the_ruins-thatgamecompany-journey_art1600_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_desperation-thatgamecompany-journey_art1600_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0004_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0045_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0060_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0094_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0115_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0117_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_01_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_02_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_03_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_04_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_05_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_07_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_11_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_20_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_f95d77bd3a51ff3f35d147b8da2d1b15e1601cd2e0b5b35dd05825bb0299f1ae_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_flynn_png_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image1_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image2_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image3_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image4_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image5_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_img_3276_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_in-the-distance-journey-thatgamecompany_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_journey-2019_that-game-company_1920_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_journey-art1600_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mag_lev_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mechanical_achenar_cache_alt_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mechanical_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mountain_in_the_sky-thatgamecompany-journey_art1600_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_myst_island_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_myst_screen_35_1920x1080_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_myst_sunrise_pano_png_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_prison_island_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_rebel_hive_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_rms-olympic-at-southampton-xl_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_selenitic_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_shadows-of-a-lost-civilization-journey-1920_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_stoneship_alt_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_stoneship_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_stoneship_lighthouse_alt_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_sunner_lagoon_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_temple_dome_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_the-desert-tower-thatgamecompany-journey-art1600_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_tomahna-sky_auto_x2_colored_toned_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_tomahna_auto_x2_colored_toned_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_travelling-together-journey-thatgamecompany_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_uss-macon-airship-1600x928_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_wallpaper-realmyst---masterpiece-edition_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_world-myth-journey-art1600_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/schemes/_home_atc__config_wpg_wallpapers_worthpoint-illustration-james-flood_jpg_dark_wal__1.1.0.json28
-rw-r--r--.config/wpg/sequences1
l---------.config/wpg/templates/dunstrc1
-rw-r--r--.config/wpg/templates/dunstrc.base92
l---------.config/wpg/templates/gtk21
-rw-r--r--.config/wpg/templates/gtk2.base797
l---------.config/wpg/templates/gtk3.01
-rw-r--r--.config/wpg/templates/gtk3.0.base93
l---------.config/wpg/templates/gtk3.201
-rw-r--r--.config/wpg/templates/gtk3.20.base108
l---------.config/wpg/templates/i31
-rw-r--r--.config/wpg/templates/i3.base229
l---------.config/wpg/templates/rofi1
-rw-r--r--.config/wpg/templates/rofi.base27
-rw-r--r--.config/wpg/wpg.conf16
-rw-r--r--.pkglist96
-rw-r--r--.pkgunlist12
-rw-r--r--.urlview32
-rw-r--r--.vimrc92
-rw-r--r--.xinitrc7
-rw-r--r--.zprofile2
-rw-r--r--.zshenv34
-rw-r--r--.zshrc136
135 files changed, 19578 insertions, 0 deletions
diff --git a/.Xresources b/.Xresources
new file mode 120000
index 0000000..fb407bb
--- /dev/null
+++ b/.Xresources
@@ -0,0 +1 @@
+.Xdefaults \ No newline at end of file
diff --git a/.aliases b/.aliases
new file mode 100644
index 0000000..e843779
--- /dev/null
+++ b/.aliases
@@ -0,0 +1,31 @@
+alias 6cord='6cord.sh'
+alias chats.sh='exec qutebrowser messenger.com discord.com'
+alias cp="cp -i"
+alias define="dict -d gcide"
+alias df="df -h"
+alias doom2="chocolate-doom -iwad ~/games/doom/DOOM2.WAD"
+alias doom="chocolate-doom -iwad ~/games/doom/DOOM.WAD"
+alias dosbox="timidity -iA & dosbox && killall timidity"
+alias du="du -h -c"
+alias e="$EDITOR"
+alias ffmpeg ffmpeg -hide_banner
+alias ffprobe ffprobe -hide_banner
+alias free="free -h"
+alias gitu="git add -A && git commit && git push"
+alias grep="grep --color=auto"
+alias gs='git status -s'
+alias gu='git add -A && git commit && git push'
+alias handbook="w3m /usr/local/share/doc/freebsd/handbook/index.html"
+alias l="ls --color=auto"
+alias la="ls -lah --color=auto"
+alias ll="ls -lh --color=auto"
+alias ln="ln -v"
+alias ls="ls --color=auto"
+alias mbsync='mbsync -c ~/.config/mbsync/mbsyncrc'
+alias sigil="chocolate-doom -iwad ~/games/doom/DOOM.WAD -file ~/games/doom/SIGIL_COMPAT.wad"
+alias sudo='doas'
+alias synonym="dict -d moby-thesaurus"
+alias tar='tar -v'
+alias watch="cmdwatch"
+alias weather="curl wttr.in"
+alias youpick="shuf .restaurants | head"
diff --git a/.config/alacritty/alacritty.yml b/.config/alacritty/alacritty.yml
new file mode 100644
index 0000000..9237dae
--- /dev/null
+++ b/.config/alacritty/alacritty.yml
@@ -0,0 +1,569 @@
+# Configuration for Alacritty, the GPU enhanced terminal emulator.
+
+# Any items in the `env` entry below will be added as
+# environment variables. Some entries may override variables
+# set by alacritty itself.
+env:
+ # TERM variable
+ #
+ # This value is used to set the `$TERM` environment variable for
+ # each instance of Alacritty. If it is not present, alacritty will
+ # check the local terminfo database and use `alacritty` if it is
+ # available, otherwise `xterm-256color` is used.
+ TERM: xterm-256color
+
+window:
+ # Window dimensions (changes require restart)
+ #
+ # Specified in number of columns/lines, not pixels.
+ # If both are `0`, this setting is ignored.
+ #dimensions:
+ columns: 24
+ lines: 80
+
+ # Window position (changes require restart)
+ #
+ # Specified in number of pixels.
+ # If the position is not set, the window manager will handle the placement.
+ #position:
+ # x: 0
+ # y: 0
+
+ # Window padding (changes require restart)
+ #
+ # Blank space added around the window in pixels. This padding is scaled
+ # by DPI and the specified value is always added at both opposing sides.
+ #padding:
+ # x: 0
+ # y: 0
+
+ # Spread additional padding evenly around the terminal content.
+ #dynamic_padding: false
+
+ # Window decorations
+ #
+ # Values for `decorations`:
+ # - full: Borders and title bar
+ # - none: Neither borders nor title bar
+ #
+ # Values for `decorations` (macOS only):
+ # - transparent: Title bar, transparent background and title bar buttons
+ # - buttonless: Title bar, transparent background, but no title bar buttons
+ #decorations: full
+
+ # Startup Mode (changes require restart)
+ #
+ # Values for `startup_mode`:
+ # - Windowed
+ # - Maximized
+ # - Fullscreen
+ #
+ # Values for `startup_mode` (macOS only):
+ # - SimpleFullscreen
+ #startup_mode: Windowed
+
+ # Window title
+ #title: Alacritty
+
+ # Window class (Linux/BSD only):
+ #class:
+ # Application instance name
+ #instance: Alacritty
+ # General application class
+ #general: Alacritty
+
+ # GTK theme variant (Linux/BSD only)
+ #
+ # Override the variant of the GTK theme. Commonly supported values are `dark` and `light`.
+ # Set this to `None` to use the default theme variant.
+ gtk_theme_variant: dark
+
+#scrolling:
+ # Maximum number of lines in the scrollback buffer.
+ # Specifying '0' will disable scrolling.
+ #history: 10000
+
+ # Number of lines the viewport will move for every line scrolled when
+ # scrollback is enabled (history > 0).
+ #multiplier: 3
+
+ # Scroll to the bottom when new text is written to the terminal.
+ #auto_scroll: false
+
+# Spaces per Tab (changes require restart)
+#
+# This setting defines the width of a tab in cells.
+#
+# Some applications, like Emacs, rely on knowing about the width of a tab.
+# To prevent unexpected behavior in these applications, it's also required to
+# change the `it` value in terminfo when altering this setting.
+# tabspaces: 4
+
+# Font configuration
+font:
+ # Normal (roman) font face
+ normal:
+ # Font family
+ #
+ # Default:
+ # - (macOS) Menlo
+ # - (Linux/BSD) monospace
+ # - (Windows) Consolas
+ family: monospace
+
+ # The `style` can be specified to pick a specific face.
+ #style: Regular
+
+ # Bold font face
+ #bold:
+ # Font family
+ #
+ # If the bold family is not specified, it will fall back to the
+ # value specified for the normal font.
+ #family: monospace
+
+ # The `style` can be specified to pick a specific face.
+ #style: Bold
+
+ # Italic font face
+ #italic:
+ # Font family
+ #
+ # If the italic family is not specified, it will fall back to the
+ # value specified for the normal font.
+ #family: monospace
+
+ # The `style` can be specified to pick a specific face.
+ #style: Italic
+
+ # Bold italic font face
+ #bold_italic:
+ # Font family
+ #
+ # If the bold italic family is not specified, it will fall back to the
+ # value specified for the normal font.
+ #family: monospace
+
+ # The `style` can be specified to pick a specific face.
+ #style: Bold Italic
+
+ # Point size
+ size: 10.0
+
+ # Offset is the extra space around each character. `offset.y` can be thought of
+ # as modifying the line spacing, and `offset.x` as modifying the letter spacing.
+ #offset:
+ # x: 0
+ # y: 0
+
+ # Glyph offset determines the locations of the glyphs within their cells with
+ # the default being at the bottom. Increasing `x` moves the glyph to the right,
+ # increasing `y` moves the glyph upwards.
+ #glyph_offset:
+ # x: 0
+ # y: 0
+
+ # Thin stroke font rendering (macOS only)
+ #
+ # Thin strokes are suitable for retina displays, but for non-retina screens
+ # it is recommended to set `use_thin_strokes` to `false`
+ #
+ # macOS >= 10.14.x:
+ #
+ # If the font quality on non-retina display looks bad then set
+ # `use_thin_strokes` to `true` and enable font smoothing by running the
+ # following command:
+ # `defaults write -g CGFontRenderingFontSmoothingDisabled -bool NO`
+ #
+ # This is a global setting and will require a log out or restart to take
+ # effect.
+ #use_thin_strokes: true
+
+# If `true`, bold text is drawn using the bright color variants.
+#draw_bold_text_with_bright_colors: true
+
+# Colors (Tomorrow Night Bright)
+#colors:
+ # Default colors
+ #primary:
+ # background: '0x000000'
+ # foreground: '0xeaeaea'
+
+ # Bright and dim foreground colors
+ #
+ # The dimmed foreground color is calculated automatically if it is not present.
+ # If the bright foreground color is not set, or `draw_bold_text_with_bright_colors`
+ # is `false`, the normal foreground color will be used.
+ #dim_foreground: '0x9a9a9a'
+ #bright_foreground: '0xffffff'
+
+ # Cursor colors
+ #
+ # Colors which should be used to draw the terminal cursor. If these are unset,
+ # the cursor color will be the inverse of the cell color.
+ #cursor:
+ # text: '0x000000'
+ # cursor: '0xffffff'
+
+ # Selection colors
+ #
+ # Colors which should be used to draw the selection area. If selection
+ # background is unset, selection color will be the inverse of the cell colors.
+ # If only text is unset the cell text color will remain the same.
+ #selection:
+ # text: '0xeaeaea'
+ # background: '0x404040'
+
+ # Normal colors
+ #normal:
+ # black: '0x000000'
+ # red: '0xd54e53'
+ # green: '0xb9ca4a'
+ # yellow: '0xe6c547'
+ # blue: '0x7aa6da'
+ # magenta: '0xc397d8'
+ # cyan: '0x70c0ba'
+ # white: '0xeaeaea'
+
+ # Bright colors
+ #bright:
+ # black: '0x666666'
+ # red: '0xff3334'
+ # green: '0x9ec400'
+ # yellow: '0xe7c547'
+ # blue: '0x7aa6da'
+ # magenta: '0xb77ee0'
+ # cyan: '0x54ced6'
+ # white: '0xffffff'
+
+ # Dim colors
+ #
+ # If the dim colors are not set, they will be calculated automatically based
+ # on the `normal` colors.
+ #dim:
+ # black: '0x000000'
+ # red: '0x8c3336'
+ # green: '0x7a8530'
+ # yellow: '0x97822e'
+ # blue: '0x506d8f'
+ # magenta: '0x80638e'
+ # cyan: '0x497e7a'
+ # white: '0x9a9a9a'
+
+ # Indexed Colors
+ #
+ # The indexed colors include all colors from 16 to 256.
+ # When these are not set, they're filled with sensible defaults.
+ #
+ # Example:
+ # `- { index: 16, color: '0xff00ff' }`
+ #
+ #indexed_colors: []
+
+# Visual Bell
+#
+# Any time the BEL code is received, Alacritty "rings" the visual bell. Once
+# rung, the terminal background will be set to white and transition back to the
+# default background color. You can control the rate of this transition by
+# setting the `duration` property (represented in milliseconds). You can also
+# configure the transition function by setting the `animation` property.
+#
+# Values for `animation`:
+# - Ease
+# - EaseOut
+# - EaseOutSine
+# - EaseOutQuad
+# - EaseOutCubic
+# - EaseOutQuart
+# - EaseOutQuint
+# - EaseOutExpo
+# - EaseOutCirc
+# - Linear
+#
+# Specifying a `duration` of `0` will disable the visual bell.
+#visual_bell:
+# animation: EaseOutExpo
+# duration: 0
+# color: '0xffffff'
+
+# Background opacity
+#
+# Window opacity as a floating point number from `0.0` to `1.0`.
+# The value `0.0` is completely transparent and `1.0` is opaque.
+background_opacity: 0.85
+
+#selection:
+ #semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
+
+ # When set to `true`, selected text will be copied to the primary clipboard.
+ #save_to_clipboard: false
+
+# Allow terminal applications to change Alacritty's window title.
+#dynamic_title: true
+
+cursor:
+ # Cursor style
+ #
+ # Values for `style`:
+ # - ▇ Block
+ # - _ Underline
+ # - | Beam
+ style: Block
+
+ # If this is `true`, the cursor will be rendered as a hollow box when the
+ # window is not focused.
+ unfocused_hollow: true
+
+# Live config reload (changes require restart)
+live_config_reload: true
+
+# Shell
+#
+# You can set `shell.program` to the path of your favorite shell, e.g. `/bin/fish`.
+# Entries in `shell.args` are passed unmodified as arguments to the shell.
+#
+# Default:
+# - (macOS) /bin/bash --login
+# - (Linux/BSD) user login shell
+# - (Windows) powershell
+#shell:
+# program: /bin/bash
+# args:
+# - --login
+
+# Startup directory
+#
+# Directory the shell is started in. If this is unset, or `None`, the working
+# directory of the parent process will be used.
+#working_directory: None
+
+# WinPTY backend (Windows only)
+#
+# Alacritty defaults to using the newer ConPTY backend if it is available,
+# since it resolves a lot of bugs and is quite a bit faster. If it is not
+# available, the the WinPTY backend will be used instead.
+#
+# Setting this option to `true` makes Alacritty use the legacy WinPTY backend,
+# even if the ConPTY backend is available.
+#winpty_backend: false
+
+# Send ESC (\x1b) before characters when alt is pressed.
+#alt_send_esc: true
+
+#debug:
+ # Display the time it takes to redraw each frame.
+ #render_timer: false
+
+ # Keep the log file after quitting Alacritty.
+ #persistent_logging: false
+
+ # Log level
+ #
+ # Values for `log_level`:
+ # - None
+ # - Error
+ # - Warn
+ # - Info
+ # - Debug
+ # - Trace
+ #log_level: Warn
+
+ # Print all received window events.
+ #print_events: false
+
+ # Record all characters and escape sequences as test data.
+ #ref_test: false
+
+mouse:
+ # Click settings
+ #
+ # The `double_click` and `triple_click` settings control the time
+ # alacritty should wait for accepting multiple clicks as one double
+ # or triple click.
+ #double_click: { threshold: 300 }
+ #triple_click: { threshold: 300 }
+
+ # If this is `true`, the cursor is temporarily hidden when typing.
+ hide_when_typing: false
+
+ #url:
+ # URL launcher
+ #
+ # This program is executed when clicking on a text which is recognized as a URL.
+ # The URL is always added to the command as the last parameter.
+ #
+ # When set to `None`, URL launching will be disabled completely.
+ #
+ # Default:
+ # - (macOS) open
+ # - (Linux/BSD) xdg-open
+ # - (Windows) explorer
+ #launcher:
+ # program: xdg-open
+ # args: []
+
+ # URL modifiers
+ #
+ # These are the modifiers that need to be held down for opening URLs when clicking
+ # on them. The available modifiers are documented in the key binding section.
+ #modifiers: None
+
+# Mouse bindings
+#
+# Mouse bindings are specified as a list of objects, much like the key
+# bindings further below.
+#
+# Each mouse binding will specify a:
+#
+# - `mouse`:
+#
+# - Middle
+# - Left
+# - Right
+# - Numeric identifier such as `5`
+#
+# - `action` (see key bindings)
+#
+# And optionally:
+#
+# - `mods` (see key bindings)
+#mouse_bindings:
+# - { mouse: Middle, action: PasteSelection }
+
+# Key bindings
+#
+# Key bindings are specified as a list of objects. For example, this is the
+# default paste binding:
+#
+# `- { key: V, mods: Control|Shift, action: Paste }`
+#
+# Each key binding will specify a:
+#
+# - `key`: Identifier of the key pressed
+#
+# - A-Z
+# - F1-F24
+# - Key0-Key9
+#
+# A full list with available key codes can be found here:
+# https://docs.rs/glutin/*/glutin/event/enum.VirtualKeyCode.html#variants
+#
+# Instead of using the name of the keys, the `key` field also supports using
+# the scancode of the desired key. Scancodes have to be specified as a
+# decimal number. This command will allow you to display the hex scancodes
+# for certain keys:
+#
+# `showkey --scancodes`.
+#
+# Then exactly one of:
+#
+# - `chars`: Send a byte sequence to the running application
+#
+# The `chars` field writes the specified string to the terminal. This makes
+# it possible to pass escape sequences. To find escape codes for bindings
+# like `PageUp` (`"\x1b[5~"`), you can run the command `showkey -a` outside
+# of tmux. Note that applications use terminfo to map escape sequences back
+# to keys. It is therefore required to update the terminfo when changing an
+# escape sequence.
+#
+# - `action`: Execute a predefined action
+#
+# - Copy
+# - Paste
+# - PasteSelection
+# - IncreaseFontSize
+# - DecreaseFontSize
+# - ResetFontSize
+# - ScrollPageUp
+# - ScrollPageDown
+# - ScrollLineUp
+# - ScrollLineDown
+# - ScrollToTop
+# - ScrollToBottom
+# - ClearHistory
+# - Hide
+# - Minimize
+# - Quit
+# - ToggleFullscreen
+# - SpawnNewInstance
+# - ClearLogNotice
+# - ReceiveChar
+# - None
+#
+# (macOS only):
+# - ToggleSimpleFullscreen: Enters fullscreen without occupying another space
+#
+# - `command`: Fork and execute a specified command plus arguments
+#
+# The `command` field must be a map containing a `program` string and an
+# `args` array of command line parameter strings. For example:
+# `{ program: "alacritty", args: ["-e", "vttest"] }`
+#
+# And optionally:
+#
+# - `mods`: Key modifiers to filter binding actions
+#
+# - Command
+# - Control
+# - Option
+# - Super
+# - Shift
+# - Alt
+#
+# Multiple `mods` can be combined using `|` like this:
+# `mods: Control|Shift`.
+# Whitespace and capitalization are relevant and must match the example.
+#
+# - `mode`: Indicate a binding for only specific terminal reported modes
+#
+# This is mainly used to send applications the correct escape sequences
+# when in different modes.
+#
+# - AppCursor
+# - AppKeypad
+# - Alt
+#
+# A `~` operator can be used before a mode to apply the binding whenever
+# the mode is *not* active, e.g. `~Alt`.
+#
+# Bindings are always filled by default, but will be replaced when a new
+# binding with the same triggers is defined. To unset a default binding, it can
+# be mapped to the `ReceiveChar` action. Alternatively, you can use `None` for
+# a no-op if you do not wish to receive input characters for that binding.
+#key_bindings:
+ # (Windows, Linux, and BSD only)
+ #- { key: V, mods: Control|Shift, action: Paste }
+ #- { key: C, mods: Control|Shift, action: Copy }
+ #- { key: Insert, mods: Shift, action: PasteSelection }
+ #- { key: Key0, mods: Control, action: ResetFontSize }
+ #- { key: Equals, mods: Control, action: IncreaseFontSize }
+ #- { key: Add, mods: Control, action: IncreaseFontSize }
+ #- { key: Subtract, mods: Control, action: DecreaseFontSize }
+ #- { key: Minus, mods: Control, action: DecreaseFontSize }
+
+ # (Windows only)
+ #- { key: Return, mods: Alt, action: ToggleFullscreen }
+
+ # (macOS only)
+ #- { key: Key0, mods: Command, action: ResetFontSize }
+ #- { key: Equals, mods: Command, action: IncreaseFontSize }
+ #- { key: Add, mods: Command, action: IncreaseFontSize }
+ #- { key: Minus, mods: Command, action: DecreaseFontSize }
+ #- { key: K, mods: Command, action: ClearHistory }
+ #- { key: K, mods: Command, chars: "\x0c" }
+ #- { key: V, mods: Command, action: Paste }
+ #- { key: C, mods: Command, action: Copy }
+ #- { key: H, mods: Command, action: Hide }
+ #- { key: M, mods: Command, action: Minimize }
+ #- { key: Q, mods: Command, action: Quit }
+ #- { key: W, mods: Command, action: Quit }
+ #- { key: F, mods: Command|Control, action: ToggleFullscreen }
+
+ #- { key: Paste, action: Paste }
+ #- { key: Copy, action: Copy }
+ #- { key: L, mods: Control, action: ClearLogNotice }
+ #- { key: L, mods: Control, chars: "\x0c" }
+ #- { key: PageUp, mods: Shift, action: ScrollPageUp, mode: ~Alt }
+ #- { key: PageDown, mods: Shift, action: ScrollPageDown, mode: ~Alt }
+ #- { key: Home, mods: Shift, action: ScrollToTop, mode: ~Alt }
+ #- { key: End, mods: Shift, action: ScrollToBottom, mode: ~Alt }
diff --git a/.config/fontconfig/fonts.conf b/.config/fontconfig/fonts.conf
new file mode 100644
index 0000000..44b3419
--- /dev/null
+++ b/.config/fontconfig/fonts.conf
@@ -0,0 +1,28 @@
+<?xml version="1.0"?>
+<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
+<fontconfig>
+ <alias>
+ <family>serif</family>
+ <prefer>
+ <family>Lora</family>
+ <family>Noto Color Emoji</family>
+ <family>Material Design Icons Desktop</family>
+ </prefer>
+ </alias>
+ <alias>
+ <family>monospace</family>
+ <prefer>
+ <family>Iosevka Term Slab</family>
+ <family>Noto Color Emoji</family>
+ <family>Material Design Icons Desktop</family>
+ </prefer>
+ </alias>
+ <alias>
+ <family>sans-serif</family>
+ <prefer>
+ <family>Iosevka Etoile</family>
+ <family>Noto Color Emoji</family>
+ <family>Material Design Icons Desktop</family>
+ </prefer>
+ </alias>
+</fontconfig>
diff --git a/.config/gtk-3.0/settings.ini b/.config/gtk-3.0/settings.ini
new file mode 100644
index 0000000..a640e84
--- /dev/null
+++ b/.config/gtk-3.0/settings.ini
@@ -0,0 +1,3 @@
+[Settings]
+gtk-theme-name=FlatColor
+
diff --git a/.config/i3blocks/config b/.config/i3blocks/config
new file mode 100644
index 0000000..3717346
--- /dev/null
+++ b/.config/i3blocks/config
@@ -0,0 +1,69 @@
+# i3blocks configuration file
+#
+# The i3blocks man page describes the usage of the binary,
+# and its website describes the configuration:
+#
+# https://vivien.github.io/i3blocks
+#test=󰣠
+markup=pango
+
+# Global properties
+separator=true
+separator_block_width=15
+
+[packages]
+interval=3600
+command=i3blocks-packages.sh
+
+[news]
+interval=3600
+signal=13
+command=i3blocks-news.sh
+
+[mail]
+interval=1800
+signal=12
+command=i3blocks-mail.sh
+
+[up]
+interval=3600
+interval=10
+command=i3blocks-up.sh
+
+[net]
+interval=10
+command=i3blocks-net.sh
+
+[screencast]
+interval=once
+signal=11
+command=i3blocks-screencast.sh
+
+[audio]
+interval=once
+signal=10
+command=i3blocks-audio.sh
+
+[disk]
+interval=10
+command=i3blocks-disk.sh
+
+[memory]
+interval=5
+command=i3blocks-memory.sh
+
+[load]
+interval=5
+command=i3blocks-cpuload.sh
+
+[temp]
+interval=5
+command=i3blocks-cputemp.sh
+
+[battery]
+interval=10
+command=i3blocks-battery.sh
+
+[date]
+interval=59
+command=i3blocks-date.sh
diff --git a/.config/mbsync/mbsyncrc b/.config/mbsync/mbsyncrc
new file mode 100644
index 0000000..8a03c48
--- /dev/null
+++ b/.config/mbsync/mbsyncrc
@@ -0,0 +1,22 @@
+IMAPAccount gmail
+Host imap.gmail.com
+User 53hornet@gmail.com
+PassCmd "cat ~/.config/mbsync/mbsync_imap_pass"
+SSLType IMAPS
+CertificateFile /etc/ssl/cert.pem
+
+IMAPStore gmail-remote
+Account gmail
+
+MaildirStore gmail-local
+Subfolders Verbatim
+Path ~/.mail/gmail/
+Inbox ~/.mail/gmail/Inbox
+
+Channel gmail
+Master :gmail-remote:
+Slave :gmail-local:
+Patterns * ![Gmail]* "[Gmail]/Sent Mail" "[Gmail]/Starred" "[Gmail]/All Mail" "[Gmail]/Trash"
+Create Both
+CopyArrivalDate yes
+SyncState *
diff --git a/.config/mpv/mpv.conf b/.config/mpv/mpv.conf
new file mode 100644
index 0000000..6033687
--- /dev/null
+++ b/.config/mpv/mpv.conf
@@ -0,0 +1,141 @@
+#
+# Example mpv configuration file
+#
+# Warning:
+#
+# The commented example options usually do _not_ set the default values. Call
+# mpv with --list-options to see the default values for most options. There is
+# no builtin or example mpv.conf with all the defaults.
+#
+#
+# Configuration files are read system-wide from /usr/local/etc/mpv.conf
+# and per-user from ~/.config/mpv/mpv.conf, where per-user settings override
+# system-wide settings, all of which are overridden by the command line.
+#
+# Configuration file settings and the command line options use the same
+# underlying mechanisms. Most options can be put into the configuration file
+# by dropping the preceding '--'. See the man page for a complete list of
+# options.
+#
+# Lines starting with '#' are comments and are ignored.
+#
+# See the CONFIGURATION FILES section in the man page
+# for a detailed description of the syntax.
+#
+# Profiles should be placed at the bottom of the configuration file to ensure
+# that settings wanted as defaults are not restricted to specific profiles.
+
+## ATC
+ytdl-format=bestvideo[height<=?1080]+bestaudio/best
+
+##################
+# video settings #
+##################
+
+# Start in fullscreen mode by default.
+#fs=yes
+
+# force starting with centered window
+#geometry=50%:50%
+
+# don't allow a new window to have a size larger than 90% of the screen size
+#autofit-larger=90%x90%
+
+# Do not close the window on exit.
+#keep-open=yes
+
+# Do not wait with showing the video window until it has loaded. (This will
+# resize the window once video is loaded. Also always shows a window with
+# audio.)
+#force-window=immediate
+
+# Disable the On Screen Controller (OSC).
+#osc=no
+
+# Keep the player window on top of all other windows.
+#ontop=yes
+
+# Specify high quality video rendering preset (for --vo=gpu only)
+# Can cause performance problems with some drivers and GPUs.
+#profile=gpu-hq
+
+# Force video to lock on the display's refresh rate, and change video and audio
+# speed to some degree to ensure synchronous playback - can cause problems
+# with some drivers and desktop environments.
+video-sync=display-resample
+
+# Enable hardware decoding if available. Often, this does not work with all
+# video outputs, but should work well with default settings on most systems.
+# If performance or energy usage is an issue, forcing the vdpau or vaapi VOs
+# may or may not help.
+#hwdec=auto
+
+##################
+# audio settings #
+##################
+
+# Specify default audio device. You can list devices with: --audio-device=help
+# The option takes the device string (the stuff between the '...').
+#audio-device=alsa/default
+
+# Do not filter audio to keep pitch when changing playback speed.
+#audio-pitch-correction=no
+
+# Output 5.1 audio natively, and upmix/downmix audio with a different format.
+#audio-channels=5.1
+# Disable any automatic remix, _if_ the audio output accepts the audio format.
+# of the currently played file. See caveats mentioned in the manpage.
+# (The default is "auto-safe", see manpage.)
+#audio-channels=auto
+
+##################
+# other settings #
+##################
+
+# Pretend to be a web browser. Might fix playback with some streaming sites,
+# but also will break with shoutcast streams.
+#user-agent="Mozilla/5.0"
+
+# cache settings
+#
+# Use a large seekable RAM cache even for local input.
+#cache=yes
+#
+# Use extra large RAM cache (needs cache=yes to make it useful).
+#demuxer-max-bytes=500M
+#demuxer-max-back-bytes=100M
+#
+# Disable the behavior that the player will pause if the cache goes below a
+# certain fill size.
+#cache-pause=no
+#
+# Store cache payload on the hard disk instead of in RAM. (This may negatively
+# impact performance unless used for slow input such as network.)
+#cache-dir=~/.cache/
+#cache-on-disk=yes
+
+# Display English subtitles if available.
+#slang=en
+
+# Play Finnish audio if available, fall back to English otherwise.
+#alang=fi,en
+
+# Change subtitle encoding. For Arabic subtitles use 'cp1256'.
+# If the file seems to be valid UTF-8, prefer UTF-8.
+# (You can add '+' in front of the codepage to force it.)
+#sub-codepage=cp1256
+
+# You can also include other configuration files.
+#include=/path/to/the/file/you/want/to/include
+
+############
+# Profiles #
+############
+
+# The options declared as part of profiles override global default settings,
+# but only take effect when the profile is active.
+
+# The following profile can be enabled on the command line with: --profile=eye-cancer
+
+#[eye-cancer]
+#sharpen=5
diff --git a/.config/mutt/mailcap b/.config/mutt/mailcap
new file mode 100644
index 0000000..8603537
--- /dev/null
+++ b/.config/mutt/mailcap
@@ -0,0 +1 @@
+text/html; w3m -I %{charset} -T text/html; copiousoutput;
diff --git a/.config/mutt/muttrc b/.config/mutt/muttrc
new file mode 100644
index 0000000..d732932
--- /dev/null
+++ b/.config/mutt/muttrc
@@ -0,0 +1,6379 @@
+#
+# System configuration file for Mutt
+#
+
+#mailboxes = +INBOX
+auto_view text/html
+alternative_order text/plain text/html
+
+# Default list of header fields to weed when displaying.
+# Ignore all lines by default...
+ignore *
+
+# ... then allow these through.
+unignore from: subject to cc date x-mailer x-url user-agent
+
+# Display the fields in this order
+hdr_order date from to cc subject
+
+# imitate the old search-body function
+macro index \eb "<search>~b " "search in message bodies"
+
+# simulate the old url menu
+macro index,pager,attach,compose \cb "\
+<enter-command> set my_pipe_decode=\$pipe_decode pipe_decode<Enter>\
+<pipe-message> urlview<Enter>\
+<enter-command> set pipe_decode=\$my_pipe_decode; unset my_pipe_decode<Enter>" \
+"call urlview to extract URLs out of a message"
+
+# Show documentation when pressing F1
+macro generic,pager <F1> "<shell-escape> less /usr/local/share/doc/mutt/manual.txt<Enter>" "show Mutt documentation"
+
+# show the incoming mailboxes list (just like "mutt -y") and back when pressing "y"
+# note: these macros have been subsumed by the <browse-mailboxes> function.
+# macro index y "<change-folder>?<toggle-mailboxes>" "show incoming mailboxes list"
+# macro pager y "<exit><change-folder>?<toggle-mailboxes>" "show incoming mailboxes list"
+bind browser y exit
+
+# Handler for gzip compressed mailboxes
+# open-hook '\.gz$' "gzip -cd '%f' > '%t'"
+# close-hook '\.gz$' "gzip -c '%t' > '%f'"
+# append-hook '\.gz$' "gzip -c '%t' >> '%f'"
+
+# If Mutt is unable to determine your site's domain name correctly, you can
+# set the default here.
+#
+# set hostname=cs.hmc.edu
+
+# If your sendmail supports the -B8BITMIME flag, enable the following
+#
+# set use_8bitmime
+
+# Use mime.types to look up handlers for application/octet-stream. Can
+# be undone with unmime_lookup.
+mime_lookup application/octet-stream
+
+##
+## *** DEFAULT SETTINGS FOR THE ATTACHMENTS PATCH ***
+##
+
+##
+## Please see the manual (section "attachments") for detailed
+## documentation of the "attachments" command.
+##
+## Removing a pattern from a list removes that pattern literally. It
+## does not remove any type matching the pattern.
+##
+## attachments +A */.*
+## attachments +A image/jpeg
+## unattachments +A */.*
+##
+## This leaves "attached" image/jpeg files on the allowed attachments
+## list. It does not remove all items, as you might expect, because the
+## second */.* is not a matching expression at this time.
+##
+## Remember: "unattachments" only undoes what "attachments" has done!
+## It does not trigger any matching on actual messages.
+
+## Qualify any MIME part with an "attachment" disposition, EXCEPT for
+## text/x-vcard and application/pgp parts. (PGP parts are already known
+## to mutt, and can be searched for with ~g, ~G, and ~k.)
+##
+## I've added x-pkcs7 to this, since it functions (for S/MIME)
+## analogously to PGP signature attachments. S/MIME isn't supported
+## in a stock mutt build, but we can still treat it specially here.
+##
+attachments +A */.*
+attachments -A text/x-vcard application/pgp.*
+attachments -A application/x-pkcs7-.*
+
+## Discount all MIME parts with an "inline" disposition, unless they're
+## text/plain. (Why inline a text/plain part unless it's external to the
+## message flow?)
+##
+attachments +I text/plain
+
+## These two lines make Mutt qualify MIME containers. (So, for example,
+## a message/rfc822 forward will count as an attachment.) The first
+## line is unnecessary if you already have "attach-allow */.*", of
+## course. These are off by default! The MIME elements contained
+## within a message/* or multipart/* are still examined, even if the
+## containers themselves don't qualify.
+##
+#attachments +A message/.* multipart/.*
+#attachments +I message/.* multipart/.*
+
+## You probably don't really care to know about deleted attachments.
+attachments -A message/external-body
+attachments -I message/external-body
+
+##
+## More settings
+##
+
+
+# set abort_noattach=no
+#
+# Name: abort_noattach
+# Type: quadoption
+# Default: no
+#
+#
+# When the body of the message matches $abort_noattach_regexp and
+# there are no attachments, this quadoption controls whether to
+# abort sending the message.
+#
+#
+# set abort_noattach_regexp="attach"
+#
+# Name: abort_noattach_regexp
+# Type: regular expression
+# Default: "attach"
+#
+#
+# Specifies a regular expression to match against the body of the
+# message, to determine if an attachment was mentioned but
+# mistakenly forgotten. If it matches, $abort_noattach will be
+# consulted to determine if message sending will be aborted.
+#
+# Like other regular expressions in Mutt, the search is case
+# sensitive if the pattern contains at least one upper case letter,
+# and case insensitive otherwise.
+#
+#
+# set abort_nosubject=ask-yes
+#
+# Name: abort_nosubject
+# Type: quadoption
+# Default: ask-yes
+#
+#
+# If set to yes, when composing messages and no subject is given
+# at the subject prompt, composition will be aborted. If set to
+# no, composing messages with no subject given at the subject
+# prompt will never be aborted.
+#
+#
+set abort_unmodified=yes
+#
+# Name: abort_unmodified
+# Type: quadoption
+# Default: yes
+#
+#
+# If set to yes, composition will automatically abort after
+# editing the message body if no changes are made to the file (this
+# check only happens after the first edit of the file). When set
+# to no, composition will never be aborted.
+#
+#
+# set alias_file="~/.muttrc"
+#
+# Name: alias_file
+# Type: path
+# Default: "~/.muttrc"
+#
+#
+# The default file in which to save aliases created by the
+# <create-alias> function. Entries added to this file are
+# encoded in the character set specified by $config_charset if it
+# is set or the current character set otherwise.
+#
+# Note: Mutt will not automatically source this file; you must
+# explicitly use the ``source'' command for it to be executed in case
+# this option points to a dedicated alias file.
+#
+# The default for this option is the currently used muttrc file, or
+# ``~/.muttrc'' if no user muttrc was found.
+#
+#
+# set alias_format="%4n %2f %t %-10a %r"
+#
+# Name: alias_format
+# Type: string
+# Default: "%4n %2f %t %-10a %r"
+#
+#
+# Specifies the format of the data displayed for the ``alias'' menu. The
+# following printf(3)-style sequences are available:
+# %a alias name
+# %f flags - currently, a ``d'' for an alias marked for deletion
+# %n index number
+# %r address which alias expands to
+# %t character which indicates if the alias is tagged for inclusion
+#
+#
+# set allow_8bit=yes
+#
+# Name: allow_8bit
+# Type: boolean
+# Default: yes
+#
+#
+# Controls whether 8-bit data is converted to 7-bit using either Quoted-
+# Printable or Base64 encoding when sending mail.
+#
+#
+# set allow_ansi=no
+#
+# Name: allow_ansi
+# Type: boolean
+# Default: no
+#
+#
+# Controls whether ANSI color codes in messages (and color tags in
+# rich text messages) are to be interpreted.
+# Messages containing these codes are rare, but if this option is set,
+# their text will be colored accordingly. Note that this may override
+# your color choices, and even present a security problem, since a
+# message could include a line like
+# [-- PGP output follows ...
+#
+# and give it the same color as your attachment color (see also
+# $crypt_timestamp).
+#
+#
+# set arrow_cursor=no
+#
+# Name: arrow_cursor
+# Type: boolean
+# Default: no
+#
+#
+# When set, an arrow (``->'') will be used to indicate the current entry
+# in menus instead of highlighting the whole line. On slow network or modem
+# links this will make response faster because there is less that has to
+# be redrawn on the screen when moving to the next or previous entries
+# in the menu.
+#
+#
+# set ascii_chars=no
+#
+# Name: ascii_chars
+# Type: boolean
+# Default: no
+#
+#
+# If set, Mutt will use plain ASCII characters when displaying thread
+# and attachment trees, instead of the default ACS characters.
+#
+#
+# set askbcc=no
+#
+# Name: askbcc
+# Type: boolean
+# Default: no
+#
+#
+# If set, Mutt will prompt you for blind-carbon-copy (Bcc) recipients
+# before editing an outgoing message.
+#
+#
+# set askcc=no
+#
+# Name: askcc
+# Type: boolean
+# Default: no
+#
+#
+# If set, Mutt will prompt you for carbon-copy (Cc) recipients before
+# editing the body of an outgoing message.
+#
+#
+# set assumed_charset=""
+#
+# Name: assumed_charset
+# Type: string
+# Default: ""
+#
+#
+# This variable is a colon-separated list of character encoding
+# schemes for messages without character encoding indication.
+# Header field values and message body content without character encoding
+# indication would be assumed that they are written in one of this list.
+# By default, all the header fields and message body without any charset
+# indication are assumed to be in ``us-ascii''.
+#
+# For example, Japanese users might prefer this:
+# set assumed_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
+#
+# However, only the first content is valid for the message body.
+#
+#
+# set attach_charset=""
+#
+# Name: attach_charset
+# Type: string
+# Default: ""
+#
+#
+# This variable is a colon-separated list of character encoding
+# schemes for text file attachments. Mutt uses this setting to guess
+# which encoding files being attached are encoded in to convert them to
+# a proper character set given in $send_charset.
+#
+# If unset, the value of $charset will be used instead.
+# For example, the following configuration would work for Japanese
+# text handling:
+# set attach_charset="iso-2022-jp:euc-jp:shift_jis:utf-8"
+#
+# Note: for Japanese users, ``iso-2022-*'' must be put at the head
+# of the value as shown above if included.
+#
+#
+# set attach_format="%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] "
+#
+# Name: attach_format
+# Type: string
+# Default: "%u%D%I %t%4n %T%.40d%> [%.7m/%.10M, %.6e%?C?, %C?, %s] "
+#
+#
+# This variable describes the format of the ``attachment'' menu. The
+# following printf(3)-style sequences are understood:
+# %C charset
+# %c requires charset conversion (``n'' or ``c'')
+# %D deleted flag
+# %d description (if none, falls back to %F)
+# %e MIME content-transfer-encoding
+# %F filename in content-disposition header (if none, falls back to %f)
+# %f filename
+# %I disposition (``I'' for inline, ``A'' for attachment)
+# %m major MIME type
+# %M MIME subtype
+# %n attachment number
+# %Q ``Q'', if MIME part qualifies for attachment counting
+# %s size (see formatstrings-size)
+# %t tagged flag
+# %T graphic tree characters
+# %u unlink (=to delete) flag
+# %X number of qualifying MIME parts in this part and its children
+# (please see the ``attachments'' section for possible speed effects)
+# %>X right justify the rest of the string and pad with character ``X''
+# %|X pad to the end of the line with character ``X''
+# %*X soft-fill with character ``X'' as pad
+#
+#
+# For an explanation of ``soft-fill'', see the $index_format documentation.
+#
+#
+# set attach_sep="\n"
+#
+# Name: attach_sep
+# Type: string
+# Default: "\n"
+#
+#
+# The separator to add between attachments when operating (saving,
+# printing, piping, etc) on a list of tagged attachments.
+#
+#
+# set attach_split=yes
+#
+# Name: attach_split
+# Type: boolean
+# Default: yes
+#
+#
+# If this variable is unset, when operating (saving, printing, piping,
+# etc) on a list of tagged attachments, Mutt will concatenate the
+# attachments and will operate on them as a single attachment. The
+# $attach_sep separator is added after each attachment. When set,
+# Mutt will operate on the attachments one by one.
+#
+#
+# set attribution="On %d, %n wrote:"
+#
+# Name: attribution
+# Type: string
+# Default: "On %d, %n wrote:"
+#
+#
+# This is the string that will precede a message which has been included
+# in a reply. For a full listing of defined printf(3)-like sequences see
+# the section on $index_format.
+#
+#
+# set attribution_locale=""
+#
+# Name: attribution_locale
+# Type: string
+# Default: ""
+#
+#
+# The locale used by strftime(3) to format dates in the
+# attribution string. Legal values are the strings your system
+# accepts for the locale environment variable $LC_TIME.
+#
+# This variable is to allow the attribution date format to be
+# customized by recipient or folder using hooks. By default, Mutt
+# will use your locale environment, so there is no need to set
+# this except to override that default.
+#
+#
+# set auto_subscribe=no
+#
+# Name: auto_subscribe
+# Type: boolean
+# Default: no
+#
+#
+# When set, Mutt assumes the presence of a List-Post header
+# means the recipient is subscribed to the list. Unless the mailing list
+# is in the ``unsubscribe'' or ``unlist'' lists, it will be added
+# to the ``subscribe'' list. Parsing and checking these things slows
+# header reading down, so this option is disabled by default.
+#
+#
+# set auto_tag=no
+#
+# Name: auto_tag
+# Type: boolean
+# Default: no
+#
+#
+# When set, functions in the index menu which affect a message
+# will be applied to all tagged messages (if there are any). When
+# unset, you must first use the <tag-prefix> function (bound to ``;''
+# by default) to make the next function apply to all tagged messages.
+#
+#
+# set autocrypt=no
+#
+# Name: autocrypt
+# Type: boolean
+# Default: no
+#
+#
+# When set, enables autocrypt, which provides
+# passive encryption protection with keys exchanged via headers.
+# See ``autocryptdoc'' for more details.
+# (Autocrypt only)
+#
+#
+# set autocrypt_acct_format="%4n %-30a %20p %10s"
+#
+# Name: autocrypt_acct_format
+# Type: string
+# Default: "%4n %-30a %20p %10s"
+#
+#
+# This variable describes the format of the ``autocrypt account'' menu.
+# The following printf(3)-style sequences are understood
+# %a email address
+# %k gpg keyid
+# %n current entry number
+# %p prefer-encrypt flag
+# %s status flag (active/inactive)
+#
+#
+# (Autocrypt only)
+#
+#
+# set autocrypt_dir="~/.mutt/autocrypt"
+#
+# Name: autocrypt_dir
+# Type: path
+# Default: "~/.mutt/autocrypt"
+#
+#
+# This variable sets where autocrypt files are stored, including the GPG
+# keyring and sqlite database. See ``autocryptdoc'' for more details.
+# (Autocrypt only)
+#
+#
+# set autocrypt_reply=yes
+#
+# Name: autocrypt_reply
+# Type: boolean
+# Default: yes
+#
+#
+# When set, replying to an autocrypt email automatically
+# enables autocrypt in the reply. You may want to unset this if you're using
+# the same key for autocrypt as normal web-of-trust, so that autocrypt
+# isn't forced on for all encrypted replies.
+# (Autocrypt only)
+#
+#
+# set autoedit=no
+#
+# Name: autoedit
+# Type: boolean
+# Default: no
+#
+#
+# When set along with $edit_headers, Mutt will skip the initial
+# send-menu (prompting for subject and recipients) and allow you to
+# immediately begin editing the body of your
+# message. The send-menu may still be accessed once you have finished
+# editing the body of your message.
+#
+# Note: when this option is set, you cannot use send-hooks that depend
+# on the recipients when composing a new (non-reply) message, as the initial
+# list of recipients is empty.
+#
+# Also see $fast_reply.
+#
+#
+# set background_edit=no
+#
+# Name: background_edit
+# Type: boolean
+# Default: no
+#
+#
+# When set, Mutt will run $editor in the background during
+# message composition. A landing page will display, waiting for
+# the $editor to exit. The landing page may be exited, allowing
+# perusal of the mailbox, or even for other messages to be
+# composed. Backgrounded sessions may be returned to via the
+# <background-compose-menu> function.
+#
+# For background editing to work properly, $editor must be set to
+# an editor that does not try to use the Mutt terminal: for example
+# a graphical editor, or a script launching (and waiting for) the
+# editor in another Gnu Screen window.
+#
+# For more details, see ``bgedit'' ("Background Editing" in the manual).
+#
+#
+# set background_confirm_quit=yes
+#
+# Name: background_confirm_quit
+# Type: boolean
+# Default: yes
+#
+#
+# When set, if there are any background edit sessions, you
+# will be prompted to confirm exiting Mutt, in addition to the
+# $quit prompt.
+#
+#
+# set background_format="%10S %7p %s"
+#
+# Name: background_format
+# Type: string
+# Default: "%10S %7p %s"
+#
+#
+# This variable describes the format of the ``background compose''
+# menu. The following printf(3)-style sequences are
+# understood:
+# %i parent message id (for replies and forwarded messages)
+# %n the running number on the menu
+# %p pid of the $editor process
+# %r comma separated list of ``To:'' recipients
+# %R comma separated list of ``Cc:'' recipients
+# %s subject of the message
+# %S status of the $editor process: running/finished
+#
+#
+# set beep=yes
+#
+# Name: beep
+# Type: boolean
+# Default: yes
+#
+#
+# When this variable is set, mutt will beep when an error occurs.
+#
+#
+# set beep_new=no
+#
+# Name: beep_new
+# Type: boolean
+# Default: no
+#
+#
+# When this variable is set, mutt will beep whenever it prints a message
+# notifying you of new mail. This is independent of the setting of the
+# $beep variable.
+#
+#
+# set bounce=ask-yes
+#
+# Name: bounce
+# Type: quadoption
+# Default: ask-yes
+#
+#
+# Controls whether you will be asked to confirm bouncing messages.
+# If set to yes you don't get asked if you want to bounce a
+# message. Setting this variable to no is not generally useful,
+# and thus not recommended, because you are unable to bounce messages.
+#
+#
+# set bounce_delivered=yes
+#
+# Name: bounce_delivered
+# Type: boolean
+# Default: yes
+#
+#
+# When this variable is set, mutt will include Delivered-To headers when
+# bouncing messages. Postfix users may wish to unset this variable.
+#
+#
+# set braille_friendly=no
+#
+# Name: braille_friendly
+# Type: boolean
+# Default: no
+#
+#
+# When this variable is set, mutt will place the cursor at the beginning
+# of the current line in menus, even when the $arrow_cursor variable
+# is unset, making it easier for blind persons using Braille displays to
+# follow these menus. The option is unset by default because many
+# visual terminals don't permit making the cursor invisible.
+#
+#
+# set browser_abbreviate_mailboxes=yes
+#
+# Name: browser_abbreviate_mailboxes
+# Type: boolean
+# Default: yes
+#
+#
+# When this variable is set, mutt will abbreviate mailbox
+# names in the browser mailbox list, using '~' and '='
+# shortcuts.
+#
+# The default "alpha" setting of $sort_browser uses
+# locale-based sorting (using strcoll(3)), which ignores some
+# punctuation. This can lead to some situations where the order
+# doesn't make intuitive sense. In those cases, it may be
+# desirable to unset this variable.
+#
+#
+# set browser_sticky_cursor=yes
+#
+# Name: browser_sticky_cursor
+# Type: boolean
+# Default: yes
+#
+#
+# When this variable is set, the browser will attempt to keep
+# the cursor on the same mailbox when performing various functions.
+# These include moving up a directory, toggling between mailboxes
+# and directory listing, creating/renaming a mailbox, toggling
+# subscribed mailboxes, and entering a new mask.
+#
+#
+# set certificate_file="~/.mutt_certificates"
+#
+# Name: certificate_file
+# Type: path
+# Default: "~/.mutt_certificates"
+#
+#
+# This variable specifies the file where the certificates you trust
+# are saved. When an unknown certificate is encountered, you are asked
+# if you accept it or not. If you accept it, the certificate can also
+# be saved in this file and further connections are automatically
+# accepted.
+#
+# You can also manually add CA certificates in this file. Any server
+# certificate that is signed with one of these CA certificates is
+# also automatically accepted.
+#
+# Example:
+# set certificate_file=~/.mutt/certificates
+#
+#
+# set change_folder_next=no
+#
+# Name: change_folder_next
+# Type: boolean
+# Default: no
+#
+#
+# When this variable is set, the <change-folder> function
+# mailbox suggestion will start at the next folder in your ``mailboxes''
+# list, instead of starting at the first folder in the list.
+#
+#
+# set charset=""
+#
+# Name: charset
+# Type: string
+# Default: ""
+#
+#
+# Character set your terminal uses to display and enter textual data.
+# It is also the fallback for $send_charset.
+#
+# Upon startup Mutt tries to derive this value from environment variables
+# such as $LC_CTYPE or $LANG.
+#
+# Note: It should only be set in case Mutt isn't able to determine the
+# character set used correctly.
+#
+#
+# set check_mbox_size=no
+#
+# Name: check_mbox_size
+# Type: boolean
+# Default: no
+#
+#
+# When this variable is set, mutt will use file size attribute instead of
+# access time when checking for new mail in mbox and mmdf folders.
+#
+# This variable is unset by default and should only be enabled when
+# new mail detection for these folder types is unreliable or doesn't work.
+#
+# Note that enabling this variable should happen before any ``mailboxes''
+# directives occur in configuration files regarding mbox or mmdf folders
+# because mutt needs to determine the initial new mail status of such a
+# mailbox by performing a fast mailbox scan when it is defined.
+# Afterwards the new mail status is tracked by file size changes.
+#
+#
+# set check_new=yes
+#
+# Name: check_new
+# Type: boolean
+# Default: yes
+#
+#
+# Note: this option only affects maildir and MH style
+# mailboxes.
+#
+# When set, Mutt will check for new mail delivered while the
+# mailbox is open. Especially with MH mailboxes, this operation can
+# take quite some time since it involves scanning the directory and
+# checking each file to see if it has already been looked at. If
+# this variable is unset, no check for new mail is performed
+# while the mailbox is open.
+#
+#
+# set collapse_unread=yes
+#
+# Name: collapse_unread
+# Type: boolean
+# Default: yes
+#
+#
+# When unset, Mutt will not collapse a thread if it contains any
+# unread messages.
+#
+#
+# set compose_format="-- Mutt: Compose [Approx. msg size: %l Atts: %a]%>-"
+#
+# Name: compose_format
+# Type: string
+# Default: "-- Mutt: Compose [Approx. msg size: %l Atts: %a]%>-"
+#
+#
+# Controls the format of the status line displayed in the ``compose''
+# menu. This string is similar to $status_format, but has its own
+# set of printf(3)-like sequences:
+# %a total number of attachments
+# %h local hostname
+# %l approximate size (in bytes) of the current message (see formatstrings-size)
+# %v Mutt version string
+#
+#
+# See the text describing the $status_format option for more
+# information on how to set $compose_format.
+#
+#
+# set config_charset=""
+#
+# Name: config_charset
+# Type: string
+# Default: ""
+#
+#
+# When defined, Mutt will recode commands in rc files from this
+# encoding to the current character set as specified by $charset
+# and aliases written to $alias_file from the current character set.
+#
+# Please note that if setting $charset it must be done before
+# setting $config_charset.
+#
+# Recoding should be avoided as it may render unconvertable
+# characters as question marks which can lead to undesired
+# side effects (for example in regular expressions).
+#
+#
+# set confirmappend=yes
+#
+# Name: confirmappend
+# Type: boolean
+# Default: yes
+#
+#
+# When set, Mutt will prompt for confirmation when appending messages to
+# an existing mailbox.
+#
+#
+# set confirmcreate=yes
+#
+# Name: confirmcreate
+# Type: boolean
+# Default: yes
+#
+#
+# When set, Mutt will prompt for confirmation when saving messages to a
+# mailbox which does not yet exist before creating it.
+#
+#
+# set connect_timeout=30
+#
+# Name: connect_timeout
+# Type: number
+# Default: 30
+#
+#
+# Causes Mutt to timeout a network connection (for IMAP, POP or SMTP) after this
+# many seconds if the connection is not able to be established. A negative
+# value causes Mutt to wait indefinitely for the connection attempt to succeed.
+#
+#
+# set content_type="text/plain"
+#
+# Name: content_type
+# Type: string
+# Default: "text/plain"
+#
+#
+# Sets the default Content-Type for the body of newly composed messages.
+#
+#
+# set copy=yes
+#
+# Name: copy
+# Type: quadoption
+# Default: yes
+#
+#
+# This variable controls whether or not copies of your outgoing messages
+# will be saved for later references. Also see $record,
+# $save_name, $force_name and ``fcc-hook''.
+#
+#
+# set count_alternatives=no
+#
+# Name: count_alternatives
+# Type: boolean
+# Default: no
+#
+#
+# When set, Mutt will recurse inside multipart/alternatives while
+# performing attachment searching and counting (see attachments).
+#
+# Traditionally, multipart/alternative parts have simply represented
+# different encodings of the main content of the email. Unfortunately,
+# some mail clients have started to place email attachments inside
+# one of alternatives. Setting this will allow Mutt to find
+# and count matching attachments hidden there, and include them
+# in the index via %X or through ~X pattern matching.
+#
+#
+# set crypt_autoencrypt=no
+#
+# Name: crypt_autoencrypt
+# Type: boolean
+# Default: no
+#
+#
+# Setting this variable will cause Mutt to always attempt to PGP
+# encrypt outgoing messages. This is probably only useful in
+# connection to the ``send-hook'' command. It can be overridden
+# by use of the pgp menu, when encryption is not required or
+# signing is requested as well. If $smime_is_default is set,
+# then OpenSSL is used instead to create S/MIME messages and
+# settings can be overridden by use of the smime menu instead.
+# (Crypto only)
+#
+#
+# set crypt_autopgp=yes
+#
+# Name: crypt_autopgp
+# Type: boolean
+# Default: yes
+#
+#
+# This variable controls whether or not mutt may automatically enable
+# PGP encryption/signing for messages. See also $crypt_autoencrypt,
+# $crypt_replyencrypt,
+# $crypt_autosign, $crypt_replysign and $smime_is_default.
+#
+#
+# set crypt_autosign=no
+#
+# Name: crypt_autosign
+# Type: boolean
+# Default: no
+#
+#
+# Setting this variable will cause Mutt to always attempt to
+# cryptographically sign outgoing messages. This can be overridden
+# by use of the pgp menu, when signing is not required or
+# encryption is requested as well. If $smime_is_default is set,
+# then OpenSSL is used instead to create S/MIME messages and settings can
+# be overridden by use of the smime menu instead of the pgp menu.
+# (Crypto only)
+#
+#
+# set crypt_autosmime=yes
+#
+# Name: crypt_autosmime
+# Type: boolean
+# Default: yes
+#
+#
+# This variable controls whether or not mutt may automatically enable
+# S/MIME encryption/signing for messages. See also $crypt_autoencrypt,
+# $crypt_replyencrypt,
+# $crypt_autosign, $crypt_replysign and $smime_is_default.
+#
+#
+# set crypt_confirmhook=yes
+#
+# Name: crypt_confirmhook
+# Type: boolean
+# Default: yes
+#
+#
+# If set, then you will be prompted for confirmation of keys when using
+# the crypt-hook command. If unset, no such confirmation prompt will
+# be presented. This is generally considered unsafe, especially where
+# typos are concerned.
+#
+#
+# set crypt_opportunistic_encrypt=no
+#
+# Name: crypt_opportunistic_encrypt
+# Type: boolean
+# Default: no
+#
+#
+# Setting this variable will cause Mutt to automatically enable and
+# disable encryption, based on whether all message recipient keys
+# can be located by Mutt.
+#
+# When this option is enabled, Mutt will enable/disable encryption
+# each time the TO, CC, and BCC lists are edited. If
+# $edit_headers is set, Mutt will also do so each time the message
+# is edited.
+#
+# While this is set, encryption can't be manually enabled/disabled.
+# The pgp or smime menus provide a selection to temporarily disable
+# this option for the current message.
+#
+# If $crypt_autoencrypt or $crypt_replyencrypt enable encryption for
+# a message, this option will be disabled for that message. It can
+# be manually re-enabled in the pgp or smime menus.
+# (Crypto only)
+#
+#
+# set crypt_opportunistic_encrypt_strong_keys=no
+#
+# Name: crypt_opportunistic_encrypt_strong_keys
+# Type: boolean
+# Default: no
+#
+#
+# When set, this modifies the behavior of $crypt_opportunistic_encrypt
+# to only search for "strong keys", that is, keys with full validity
+# according to the web-of-trust algorithm. A key with marginal or no
+# validity will not enable opportunistic encryption.
+#
+# For S/MIME, the behavior depends on the backend. Classic S/MIME will
+# filter for certificates with the 't' (trusted) flag in the .index file.
+# The GPGME backend will use the same filters as with OpenPGP, and depends
+# on GPGME's logic for assigning the GPGME_VALIDITY_FULL and
+# GPGME_VALIDITY_ULTIMATE validity flag.
+#
+#
+# set crypt_protected_headers_read=yes
+#
+# Name: crypt_protected_headers_read
+# Type: boolean
+# Default: yes
+#
+#
+# When set, Mutt will display protected headers ("Memory Hole") in the pager,
+# and will update the index and header cache with revised headers.
+# Protected headers are stored inside the encrypted or signed part of an
+# an email, to prevent disclosure or tampering.
+# For more information see https://github.com/autocrypt/memoryhole.
+# Currently Mutt only supports the Subject header.
+#
+# Encrypted messages using protected headers often substitute the exposed
+# Subject header with a dummy value (see $crypt_protected_headers_subject).
+# Mutt will update its concept of the correct subject after the
+# message is opened, i.e. via the <display-message> function.
+# If you reply to a message before opening it, Mutt will end up using
+# the dummy Subject header, so be sure to open such a message first.
+# (Crypto only)
+#
+#
+# set crypt_protected_headers_save=no
+#
+# Name: crypt_protected_headers_save
+# Type: boolean
+# Default: no
+#
+#
+# When $crypt_protected_headers_read is set, and a message with a
+# protected Subject is opened, Mutt will save the updated Subject
+# into the header cache by default. This allows searching/limiting
+# based on the protected Subject header if the mailbox is
+# re-opened, without having to re-open the message each time.
+# However, for mbox/mh mailbox types, or if header caching is not
+# set up, you would need to re-open the message each time the
+# mailbox was reopened before you could see or search/limit on the
+# protected subject again.
+#
+# When this variable is set, Mutt additionally saves the protected
+# Subject back in the clear-text message headers. This
+# provides better usability, but with the tradeoff of reduced
+# security. The protected Subject header, which may have
+# previously been encrypted, is now stored in clear-text in the
+# message headers. Copying the message elsewhere, via Mutt or
+# external tools, could expose this previously encrypted data.
+# Please make sure you understand the consequences of this before
+# you enable this variable.
+# (Crypto only)
+#
+#
+# set crypt_protected_headers_subject="Encrypted subject"
+#
+# Name: crypt_protected_headers_subject
+# Type: string
+# Default: "Encrypted subject"
+#
+#
+# When $crypt_protected_headers_write is set, and the message is marked
+# for encryption, this will be substituted into the Subject field in the
+# message headers.
+# To prevent a subject from being substituted, unset this variable, or set it
+# to the empty string.
+# (Crypto only)
+#
+#
+# set crypt_protected_headers_write=no
+#
+# Name: crypt_protected_headers_write
+# Type: boolean
+# Default: no
+#
+#
+# When set, Mutt will generate protected headers ("Memory Hole") for
+# signed and encrypted emails.
+# Protected headers are stored inside the encrypted or signed part of an
+# an email, to prevent disclosure or tampering.
+# For more information see https://github.com/autocrypt/memoryhole.
+# Currently Mutt only supports the Subject header.
+# (Crypto only)
+#
+#
+# set crypt_replyencrypt=yes
+#
+# Name: crypt_replyencrypt
+# Type: boolean
+# Default: yes
+#
+#
+# If set, automatically PGP or OpenSSL encrypt replies to messages which are
+# encrypted.
+# (Crypto only)
+#
+#
+# set crypt_replysign=no
+#
+# Name: crypt_replysign
+# Type: boolean
+# Default: no
+#
+#
+# If set, automatically PGP or OpenSSL sign replies to messages which are
+# signed.
+#
+# Note: this does not work on messages that are encrypted
+# and signed!
+# (Crypto only)
+#
+#
+# set crypt_replysignencrypted=no
+#
+# Name: crypt_replysignencrypted
+# Type: boolean
+# Default: no
+#
+#
+# If set, automatically PGP or OpenSSL sign replies to messages
+# which are encrypted. This makes sense in combination with
+# $crypt_replyencrypt, because it allows you to sign all
+# messages which are automatically encrypted. This works around
+# the problem noted in $crypt_replysign, that mutt is not able
+# to find out whether an encrypted message is also signed.
+# (Crypto only)
+#
+#
+# set crypt_timestamp=yes
+#
+# Name: crypt_timestamp
+# Type: boolean
+# Default: yes
+#
+#
+# If set, mutt will include a time stamp in the lines surrounding
+# PGP or S/MIME output, so spoofing such lines is more difficult.
+# If you are using colors to mark these lines, and rely on these,
+# you may unset this setting.
+# (Crypto only)
+#
+#
+# set crypt_use_gpgme=no
+#
+# Name: crypt_use_gpgme
+# Type: boolean
+# Default: no
+#
+#
+# This variable controls the use of the GPGME-enabled crypto backends.
+# If it is set and Mutt was built with gpgme support, the gpgme code for
+# S/MIME and PGP will be used instead of the classic code. Note that
+# you need to set this option in .muttrc; it won't have any effect when
+# used interactively.
+#
+# Note that the GPGME backend does not support creating old-style inline
+# (traditional) PGP encrypted or signed messages (see $pgp_autoinline).
+#
+#
+# set crypt_use_pka=no
+#
+# Name: crypt_use_pka
+# Type: boolean
+# Default: no
+#
+#
+# Controls whether mutt uses PKA
+# (see http://www.g10code.de/docs/pka-intro.de.pdf) during signature
+# verification (only supported by the GPGME backend).
+#
+#
+# set crypt_verify_sig=yes
+#
+# Name: crypt_verify_sig
+# Type: quadoption
+# Default: yes
+#
+#
+# If ``yes'', always attempt to verify PGP or S/MIME signatures.
+# If ``ask-*'', ask whether or not to verify the signature.
+# If ``no'', never attempt to verify cryptographic signatures.
+# (Crypto only)
+#
+#
+# set date_format="!%a, %b %d, %Y at %I:%M:%S%p %Z"
+#
+# Name: date_format
+# Type: string
+# Default: "!%a, %b %d, %Y at %I:%M:%S%p %Z"
+#
+#
+# This variable controls the format of the date printed by the ``%d''
+# sequence in $index_format. This is passed to the strftime(3)
+# function to process the date, see the man page for the proper syntax.
+#
+# Unless the first character in the string is a bang (``!''), the month
+# and week day names are expanded according to the locale.
+# If the first character in the string is a
+# bang, the bang is discarded, and the month and week day names in the
+# rest of the string are expanded in the C locale (that is in US
+# English).
+#
+#
+# set default_hook="~f %s !~P | (~P ~C %s)"
+#
+# Name: default_hook
+# Type: string
+# Default: "~f %s !~P | (~P ~C %s)"
+#
+#
+# This variable controls how ``message-hook'', ``reply-hook'', ``send-hook'',
+# ``send2-hook'', ``save-hook'', and ``fcc-hook'' will
+# be interpreted if they are specified with only a simple regexp,
+# instead of a matching pattern. The hooks are expanded when they are
+# declared, so a hook will be interpreted according to the value of this
+# variable at the time the hook is declared.
+#
+# The default value matches
+# if the message is either from a user matching the regular expression
+# given, or if it is from you (if the from address matches
+# ``alternates'') and is to or cc'ed to a user matching the given
+# regular expression.
+#
+#
+# set delete=ask-yes
+#
+# Name: delete
+# Type: quadoption
+# Default: ask-yes
+#
+#
+# Controls whether or not messages are really deleted when closing or
+# synchronizing a mailbox. If set to yes, messages marked for
+# deleting will automatically be purged without prompting. If set to
+# no, messages marked for deletion will be kept in the mailbox.
+#
+#
+# set delete_untag=yes
+#
+# Name: delete_untag
+# Type: boolean
+# Default: yes
+#
+#
+# If this option is set, mutt will untag messages when marking them
+# for deletion. This applies when you either explicitly delete a message,
+# or when you save it to another folder.
+#
+#
+# set digest_collapse=yes
+#
+# Name: digest_collapse
+# Type: boolean
+# Default: yes
+#
+#
+# If this option is set, mutt's received-attachments menu will not show the subparts of
+# individual messages in a multipart/digest. To see these subparts, press ``v'' on that menu.
+#
+#
+# set display_filter=""
+#
+# Name: display_filter
+# Type: path
+# Default: ""
+#
+#
+# When set, specifies a command used to filter messages. When a message
+# is viewed it is passed as standard input to $display_filter, and the
+# filtered message is read from the standard output.
+#
+#
+# set dotlock_program="/usr/local/bin/mutt_dotlock"
+#
+# Name: dotlock_program
+# Type: path
+# Default: "/usr/local/bin/mutt_dotlock"
+#
+#
+# Contains the path of the mutt_dotlock(8) binary to be used by
+# mutt.
+#
+#
+# set dsn_notify=""
+#
+# Name: dsn_notify
+# Type: string
+# Default: ""
+#
+#
+# This variable sets the request for when notification is returned. The
+# string consists of a comma separated list (no spaces!) of one or more
+# of the following: never, to never request notification,
+# failure, to request notification on transmission failure,
+# delay, to be notified of message delays, success, to be
+# notified of successful transmission.
+#
+# Example:
+# set dsn_notify="failure,delay"
+#
+# Note: when using $sendmail for delivery, you should not enable
+# this unless you are either using Sendmail 8.8.x or greater or a MTA
+# providing a sendmail(1)-compatible interface supporting the -N option
+# for DSN. For SMTP delivery, DSN support is auto-detected so that it
+# depends on the server whether DSN will be used or not.
+#
+#
+# set dsn_return=""
+#
+# Name: dsn_return
+# Type: string
+# Default: ""
+#
+#
+# This variable controls how much of your message is returned in DSN
+# messages. It may be set to either hdrs to return just the
+# message header, or full to return the full message.
+#
+# Example:
+# set dsn_return=hdrs
+#
+# Note: when using $sendmail for delivery, you should not enable
+# this unless you are either using Sendmail 8.8.x or greater or a MTA
+# providing a sendmail(1)-compatible interface supporting the -R option
+# for DSN. For SMTP delivery, DSN support is auto-detected so that it
+# depends on the server whether DSN will be used or not.
+#
+#
+# set duplicate_threads=yes
+#
+# Name: duplicate_threads
+# Type: boolean
+# Default: yes
+#
+#
+# This variable controls whether mutt, when $sort is set to threads, threads
+# messages with the same Message-Id together. If it is set, it will indicate
+# that it thinks they are duplicates of each other with an equals sign
+# in the thread tree.
+#
+#
+# set edit_headers=no
+#
+# Name: edit_headers
+# Type: boolean
+# Default: no
+#
+#
+# This option allows you to edit the header of your outgoing messages
+# along with the body of your message.
+#
+# Although the compose menu may have localized header labels, the
+# labels passed to your editor will be standard RFC 2822 headers,
+# (e.g. To:, Cc:, Subject:). Headers added in your editor must
+# also be RFC 2822 headers, or one of the pseudo headers listed in
+# ``edit-header''. Mutt will not understand localized header
+# labels, just as it would not when parsing an actual email.
+#
+# Note that changes made to the References: and Date: headers are
+# ignored for interoperability reasons.
+#
+#
+# set editor=""
+#
+# Name: editor
+# Type: path
+# Default: ""
+#
+#
+# This variable specifies which editor is used by mutt.
+# It defaults to the value of the $VISUAL, or $EDITOR, environment
+# variable, or to the string ``vi'' if neither of those are set.
+#
+# The $editor string may contain a %s escape, which will be replaced by the name
+# of the file to be edited. If the %s escape does not appear in $editor, a
+# space and the name to be edited are appended.
+#
+# The resulting string is then executed by running
+# sh -c 'string'
+#
+# where string is the expansion of $editor described above.
+#
+#
+# set encode_from=no
+#
+# Name: encode_from
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will quoted-printable encode messages when
+# they contain the string ``From '' (note the trailing space) in the beginning of a line.
+# This is useful to avoid the tampering certain mail delivery and transport
+# agents tend to do with messages (in order to prevent tools from
+# misinterpreting the line as a mbox message separator).
+#
+#
+# set entropy_file=""
+#
+# Name: entropy_file
+# Type: path
+# Default: ""
+#
+#
+# The file which includes random data that is used to initialize SSL
+# library functions.
+#
+#
+# set envelope_from_address=""
+#
+# Name: envelope_from_address
+# Type: e-mail address
+# Default: ""
+#
+#
+# Manually sets the envelope sender for outgoing messages.
+# This value is ignored if $use_envelope_from is unset.
+#
+#
+# set error_history=30
+#
+# Name: error_history
+# Type: number
+# Default: 30
+#
+#
+# This variable controls the size (in number of strings remembered)
+# of the error messages displayed by mutt. These can be shown with
+# the <error-history> function. The history is cleared each
+# time this variable is set.
+#
+#
+# set escape="~"
+#
+# Name: escape
+# Type: string
+# Default: "~"
+#
+#
+# Escape character to use for functions in the built-in editor.
+#
+#
+# set fast_reply=no
+#
+# Name: fast_reply
+# Type: boolean
+# Default: no
+#
+#
+# When set, the initial prompt for recipients and subject are skipped
+# when replying to messages, and the initial prompt for subject is
+# skipped when forwarding messages.
+#
+# Note: this variable has no effect when the $autoedit
+# variable is set.
+#
+#
+# set fcc_attach=yes
+#
+# Name: fcc_attach
+# Type: quadoption
+# Default: yes
+#
+#
+# This variable controls whether or not attachments on outgoing messages
+# are saved along with the main body of your message.
+#
+#
+# set fcc_before_send=no
+#
+# Name: fcc_before_send
+# Type: boolean
+# Default: no
+#
+#
+# When this variable is set, FCCs will occur before sending
+# the message. Before sending, the message cannot be manipulated,
+# so it will be stored the exact same as sent:
+# $fcc_attach and $fcc_clear will be ignored (using their default
+# values).
+#
+# When unset, the default, FCCs will occur after sending.
+# Variables $fcc_attach and $fcc_clear will be respected, allowing
+# it to be stored without attachments or encryption/signing if
+# desired.
+#
+#
+# set fcc_clear=no
+#
+# Name: fcc_clear
+# Type: boolean
+# Default: no
+#
+#
+# When this variable is set, FCCs will be stored unencrypted and
+# unsigned, even when the actual message is encrypted and/or
+# signed.
+# (PGP only)
+#
+#
+# set fcc_delimiter=""
+#
+# Name: fcc_delimiter
+# Type: string
+# Default: ""
+#
+#
+# When specified, this allows the ability to Fcc to more than one
+# mailbox. The fcc value will be split by this delimiter and Mutt
+# will evaluate each part as a mailbox separately.
+#
+# See $record, ``fcc-hook'', and ``fcc-save-hook''.
+#
+#
+# set flag_safe=no
+#
+# Name: flag_safe
+# Type: boolean
+# Default: no
+#
+#
+# If set, flagged messages cannot be deleted.
+#
+#
+#set folder="imaps://imap.gmail.com/"
+set folder="~/.mail/gmail/Inbox"
+#
+# Name: folder
+# Type: path
+# Default: "~/Mail"
+#
+#
+# Specifies the default location of your mailboxes. A ``+'' or ``='' at the
+# beginning of a pathname will be expanded to the value of this
+# variable. Note that if you change this variable (from the default)
+# value you need to make sure that the assignment occurs before
+# you use ``+'' or ``='' for any other variables since expansion takes place
+# when handling the ``mailboxes'' command.
+#
+#
+# set folder_format="%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f"
+#
+# Name: folder_format
+# Type: string
+# Default: "%2C %t %N %F %2l %-8.8u %-8.8g %8s %d %f"
+#
+#
+# This variable allows you to customize the file browser display to your
+# personal taste. This string is similar to $index_format, but has
+# its own set of printf(3)-like sequences:
+# %C current file number
+# %d date/time folder was last modified
+# %D date/time folder was last modified using $date_format.
+# %f filename (``/'' is appended to directory names,
+# ``@'' to symbolic links and ``*'' to executable
+# files)
+# %F file permissions
+# %g group name (or numeric gid, if missing)
+# %l number of hard links
+# %m number of messages in the mailbox *
+# %n number of unread messages in the mailbox *
+# %N N if mailbox has new mail, blank otherwise
+# %s size in bytes (see formatstrings-size)
+# %t ``*'' if the file is tagged, blank otherwise
+# %u owner name (or numeric uid, if missing)
+# %>X right justify the rest of the string and pad with character ``X''
+# %|X pad to the end of the line with character ``X''
+# %*X soft-fill with character ``X'' as pad
+#
+#
+# For an explanation of ``soft-fill'', see the $index_format documentation.
+#
+# * = can be optionally printed if nonzero
+#
+# %m, %n, and %N only work for monitored mailboxes.
+# %m requires $mail_check_stats to be set.
+# %n requires $mail_check_stats to be set (except for IMAP mailboxes).
+#
+#
+# set followup_to=yes
+#
+# Name: followup_to
+# Type: boolean
+# Default: yes
+#
+#
+# Controls whether or not the ``Mail-Followup-To:'' header field is
+# generated when sending mail. When set, Mutt will generate this
+# field when you are replying to a known mailing list, specified with
+# the ``subscribe'' or ``lists'' commands.
+#
+# This field has two purposes. First, preventing you from
+# receiving duplicate copies of replies to messages which you send
+# to mailing lists, and second, ensuring that you do get a reply
+# separately for any messages sent to known lists to which you are
+# not subscribed.
+#
+# The header will contain only the list's address
+# for subscribed lists, and both the list address and your own
+# email address for unsubscribed lists. Without this header, a
+# group reply to your message sent to a subscribed list will be
+# sent to both the list and your address, resulting in two copies
+# of the same email for you.
+#
+#
+# set force_name=no
+#
+# Name: force_name
+# Type: boolean
+# Default: no
+#
+#
+# This variable is similar to $save_name, except that Mutt will
+# store a copy of your outgoing message by the username of the address
+# you are sending to even if that mailbox does not exist.
+#
+# Also see the $record variable.
+#
+#
+# set forward_attachments=ask-yes
+#
+# Name: forward_attachments
+# Type: quadoption
+# Default: ask-yes
+#
+#
+# When forwarding inline (i.e. $mime_forward unset or
+# answered with ``no'' and $forward_decode set), attachments
+# which cannot be decoded in a reasonable manner will be attached
+# to the newly composed message if this quadoption is set or
+# answered with ``yes''.
+#
+#
+# set forward_attribution_intro="----- Forwarded message from %f -----"
+#
+# Name: forward_attribution_intro
+# Type: string
+# Default: "----- Forwarded message from %f -----"
+#
+#
+# This is the string that will precede a message which has been forwarded
+# in the main body of a message (when $mime_forward is unset).
+# For a full listing of defined printf(3)-like sequences see
+# the section on $index_format. See also $attribution_locale.
+#
+#
+# set forward_attribution_trailer="----- End forwarded message -----"
+#
+# Name: forward_attribution_trailer
+# Type: string
+# Default: "----- End forwarded message -----"
+#
+#
+# This is the string that will follow a message which has been forwarded
+# in the main body of a message (when $mime_forward is unset).
+# For a full listing of defined printf(3)-like sequences see
+# the section on $index_format. See also $attribution_locale.
+#
+#
+# set forward_decode=yes
+#
+# Name: forward_decode
+# Type: boolean
+# Default: yes
+#
+#
+# Controls the decoding of complex MIME messages into text/plain when
+# forwarding a message. The message header is also RFC2047 decoded.
+# This variable is only used, if $mime_forward is unset,
+# otherwise $mime_forward_decode is used instead.
+#
+#
+# set forward_decrypt=yes
+#
+# Name: forward_decrypt
+# Type: boolean
+# Default: yes
+#
+#
+# Controls the handling of encrypted messages when forwarding a message.
+# When set, the outer layer of encryption is stripped off. This
+# variable is only used if $mime_forward is set and
+# $mime_forward_decode is unset.
+# (PGP only)
+#
+#
+# set forward_edit=yes
+#
+# Name: forward_edit
+# Type: quadoption
+# Default: yes
+#
+#
+# This quadoption controls whether or not the user is automatically
+# placed in the editor when forwarding messages. For those who always want
+# to forward with no modification, use a setting of ``no''.
+#
+#
+# set forward_format="[%a: %s]"
+#
+# Name: forward_format
+# Type: string
+# Default: "[%a: %s]"
+#
+#
+# This variable controls the default subject when forwarding a message.
+# It uses the same format sequences as the $index_format variable.
+#
+#
+# set forward_quote=no
+#
+# Name: forward_quote
+# Type: boolean
+# Default: no
+#
+#
+# When set, forwarded messages included in the main body of the
+# message (when $mime_forward is unset) will be quoted using
+# $indent_string.
+#
+#
+set from="Adam T. Carpenter <atc@53hor.net>"
+#
+# Name: from
+# Type: e-mail address
+# Default: ""
+#
+#
+# When set, this variable contains a default from address. It
+# can be overridden using ``my_hdr'' (including from a ``send-hook'') and
+# $reverse_name. This variable is ignored if $use_from is unset.
+#
+# This setting defaults to the contents of the environment variable $EMAIL.
+#
+#
+# set gecos_mask="^[^,]*"
+#
+# Name: gecos_mask
+# Type: regular expression
+# Default: "^[^,]*"
+#
+#
+# A regular expression used by mutt to parse the GECOS field of a password
+# entry when expanding the alias. The default value
+# will return the string up to the first ``,'' encountered.
+# If the GECOS field contains a string like ``lastname, firstname'' then you
+# should set it to ``.*''.
+#
+# This can be useful if you see the following behavior: you address an e-mail
+# to user ID ``stevef'' whose full name is ``Steve Franklin''. If mutt expands
+# ``stevef'' to ``"Franklin" stevef@foo.bar'' then you should set the $gecos_mask to
+# a regular expression that will match the whole name so mutt will expand
+# ``Franklin'' to ``Franklin, Steve''.
+#
+#
+# set hdrs=yes
+#
+# Name: hdrs
+# Type: boolean
+# Default: yes
+#
+#
+# When unset, the header fields normally added by the ``my_hdr''
+# command are not created. This variable must be unset before
+# composing a new message or replying in order to take effect. If set,
+# the user defined header fields are added to every new message.
+#
+#
+# set header=no
+#
+# Name: header
+# Type: boolean
+# Default: no
+#
+#
+# When set, this variable causes Mutt to include the header
+# of the message you are replying to into the edit buffer.
+# The $weed setting applies.
+#
+#
+set header_cache=~/.cache/mutt
+#
+# Name: header_cache
+# Type: path
+# Default: ""
+#
+#
+# This variable points to the header cache database.
+# If pointing to a directory Mutt will contain a header cache
+# database file per folder, if pointing to a file that file will
+# be a single global header cache. By default it is unset so no header
+# caching will be used.
+#
+# Header caching can greatly improve speed when opening POP, IMAP
+# MH or Maildir folders, see ``caching'' for details.
+#
+#
+# set header_cache_compress=yes
+#
+# Name: header_cache_compress
+# Type: boolean
+# Default: yes
+#
+#
+# When mutt is compiled with qdbm, tokyocabinet, or kyotocabinet as header
+# cache backend, this option determines whether the database will be compressed.
+# Compression results in database files roughly being one fifth
+# of the usual diskspace, but the decompression can result in a
+# slower opening of cached folder(s) which in general is still
+# much faster than opening non header cached folders.
+#
+#
+# set header_cache_pagesize=16384
+#
+# Name: header_cache_pagesize
+# Type: number (long)
+# Default: 16384
+#
+#
+# When mutt is compiled with either gdbm or bdb4 as the header cache backend,
+# this option changes the database page size. Too large or too small
+# values can waste space, memory, or CPU time. The default should be more
+# or less optimal for most use cases.
+#
+#
+# set header_color_partial=no
+#
+# Name: header_color_partial
+# Type: boolean
+# Default: no
+#
+#
+# When set, color header regexps behave like color body regexps:
+# color is applied to the exact text matched by the regexp. When
+# unset, color is applied to the entire header.
+#
+# One use of this option might be to apply color to just the header labels.
+#
+# See ``color'' for more details.
+#
+#
+# set help=yes
+#
+# Name: help
+# Type: boolean
+# Default: yes
+#
+#
+# When set, help lines describing the bindings for the major functions
+# provided by each menu are displayed on the first line of the screen.
+#
+# Note: The binding will not be displayed correctly if the
+# function is bound to a sequence rather than a single keystroke. Also,
+# the help line may not be updated if a binding is changed while Mutt is
+# running. Since this variable is primarily aimed at new users, neither
+# of these should present a major problem.
+#
+#
+# set hidden_host=no
+#
+# Name: hidden_host
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will skip the host name part of $hostname variable
+# when adding the domain part to addresses. This variable does not
+# affect the generation of Message-IDs, and it will not lead to the
+# cut-off of first-level domains.
+#
+#
+# set hide_limited=no
+#
+# Name: hide_limited
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will not show the presence of messages that are hidden
+# by limiting, in the thread tree.
+#
+#
+# set hide_missing=yes
+#
+# Name: hide_missing
+# Type: boolean
+# Default: yes
+#
+#
+# When set, mutt will not show the presence of missing messages in the
+# thread tree.
+#
+#
+# set hide_thread_subject=yes
+#
+# Name: hide_thread_subject
+# Type: boolean
+# Default: yes
+#
+#
+# When set, mutt will not show the subject of messages in the thread
+# tree that have the same subject as their parent or closest previously
+# displayed sibling.
+#
+#
+# set hide_top_limited=no
+#
+# Name: hide_top_limited
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will not show the presence of messages that are hidden
+# by limiting, at the top of threads in the thread tree. Note that when
+# $hide_limited is set, this option will have no effect.
+#
+#
+# set hide_top_missing=yes
+#
+# Name: hide_top_missing
+# Type: boolean
+# Default: yes
+#
+#
+# When set, mutt will not show the presence of missing messages at the
+# top of threads in the thread tree. Note that when $hide_missing is
+# set, this option will have no effect.
+#
+#
+# set history=10
+#
+# Name: history
+# Type: number
+# Default: 10
+#
+#
+# This variable controls the size (in number of strings remembered) of
+# the string history buffer per category. The buffer is cleared each time the
+# variable is set.
+#
+#
+# set history_file="~/.mutthistory"
+#
+# Name: history_file
+# Type: path
+# Default: "~/.mutthistory"
+#
+#
+# The file in which Mutt will save its history.
+#
+# Also see $save_history.
+#
+#
+# set history_remove_dups=no
+#
+# Name: history_remove_dups
+# Type: boolean
+# Default: no
+#
+#
+# When set, all of the string history will be scanned for duplicates
+# when a new entry is added. Duplicate entries in the $history_file will
+# also be removed when it is periodically compacted.
+#
+#
+# set honor_disposition=no
+#
+# Name: honor_disposition
+# Type: boolean
+# Default: no
+#
+#
+# When set, Mutt will not display attachments with a
+# disposition of ``attachment'' inline even if it could
+# render the part to plain text. These MIME parts can only
+# be viewed from the attachment menu.
+#
+# If unset, Mutt will render all MIME parts it can
+# properly transform to plain text.
+#
+#
+# set honor_followup_to=yes
+#
+# Name: honor_followup_to
+# Type: quadoption
+# Default: yes
+#
+#
+# This variable controls whether or not a Mail-Followup-To header is
+# honored when group-replying to a message.
+#
+#
+# set hostname=""
+#
+# Name: hostname
+# Type: string
+# Default: ""
+#
+#
+# Specifies the fully-qualified hostname of the system mutt is running on
+# containing the host's name and the DNS domain it belongs to. It is used
+# as the domain part (after ``@'') for local email addresses as well as
+# Message-Id headers.
+#
+# Its value is determined at startup as follows: the node's
+# hostname is first determined by the uname(3) function. The
+# domain is then looked up using the gethostname(2) and
+# getaddrinfo(3) functions. If those calls are unable to
+# determine the domain, the full value returned by uname is used.
+# Optionally, Mutt can be compiled with a fixed domain name in
+# which case a detected one is not used.
+#
+# Also see $use_domain and $hidden_host.
+#
+#
+# set idn_decode=yes
+#
+# Name: idn_decode
+# Type: boolean
+# Default: yes
+#
+#
+# When set, Mutt will show you international domain names decoded.
+# Note: You can use IDNs for addresses even if this is unset.
+# This variable only affects decoding. (IDN only)
+#
+#
+# set idn_encode=yes
+#
+# Name: idn_encode
+# Type: boolean
+# Default: yes
+#
+#
+# When set, Mutt will encode international domain names using
+# IDN. Unset this if your SMTP server can handle newer (RFC 6531)
+# UTF-8 encoded domains. (IDN only)
+#
+#
+# set ignore_linear_white_space=no
+#
+# Name: ignore_linear_white_space
+# Type: boolean
+# Default: no
+#
+#
+# This option replaces linear-white-space between encoded-word
+# and text to a single space to prevent the display of MIME-encoded
+# ``Subject:'' field from being divided into multiple lines.
+#
+#
+# set ignore_list_reply_to=no
+#
+# Name: ignore_list_reply_to
+# Type: boolean
+# Default: no
+#
+#
+# Affects the behavior of the <reply> function when replying to
+# messages from mailing lists (as defined by the ``subscribe'' or
+# ``lists'' commands). When set, if the ``Reply-To:'' field is
+# set to the same value as the ``To:'' field, Mutt assumes that the
+# ``Reply-To:'' field was set by the mailing list to automate responses
+# to the list, and will ignore this field. To direct a response to the
+# mailing list when this option is set, use the <list-reply>
+# function; <group-reply> will reply to both the sender and the
+# list.
+#
+#
+# set imap_authenticators=""
+#
+# Name: imap_authenticators
+# Type: string
+# Default: ""
+#
+#
+# This is a colon-delimited list of authentication methods mutt may
+# attempt to use to log in to an IMAP server, in the order mutt should
+# try them. Authentication methods are either ``login'' or the right
+# side of an IMAP ``AUTH=xxx'' capability string, e.g. ``digest-md5'', ``gssapi''
+# or ``cram-md5''. This option is case-insensitive. If it's
+# unset (the default) mutt will try all available methods,
+# in order from most-secure to least-secure.
+#
+# Example:
+# set imap_authenticators="gssapi:cram-md5:login"
+#
+# Note: Mutt will only fall back to other authentication methods if
+# the previous methods are unavailable. If a method is available but
+# authentication fails, mutt will not connect to the IMAP server.
+#
+#
+# set imap_check_subscribed=no
+#
+# Name: imap_check_subscribed
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will fetch the set of subscribed folders from
+# your server on connection, and add them to the set of mailboxes
+# it polls for new mail just as if you had issued individual ``mailboxes''
+# commands.
+#
+#
+# set imap_condstore=no
+#
+# Name: imap_condstore
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will use the CONDSTORE extension (RFC 7162)
+# if advertised by the server. Mutt's current implementation is basic,
+# used only for initial message fetching and flag updates.
+#
+# For some IMAP servers, enabling this will slightly speed up
+# downloading initial messages. Unfortunately, Gmail is not one
+# those, and displays worse performance when enabled. Your
+# mileage may vary.
+#
+#
+# set imap_deflate=no
+#
+# Name: imap_deflate
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will use the COMPRESS=DEFLATE extension (RFC
+# 4978) if advertised by the server.
+#
+# In general a good compression efficiency can be achieved, which
+# speeds up reading large mailboxes also on fairly good connections.
+#
+#
+# set imap_delim_chars="/."
+#
+# Name: imap_delim_chars
+# Type: string
+# Default: "/."
+#
+#
+# This contains the list of characters which you would like to treat
+# as folder separators for displaying IMAP paths. In particular it
+# helps in using the ``='' shortcut for your folder variable.
+#
+#
+# set imap_fetch_chunk_size=0
+#
+# Name: imap_fetch_chunk_size
+# Type: number (long)
+# Default: 0
+#
+#
+# When set to a value greater than 0, new headers will be
+# downloaded in groups of this many headers per request. If you
+# have a very large mailbox, this might prevent a timeout and
+# disconnect when opening the mailbox, by sending a FETCH per set
+# of this many headers, instead of a single FETCH for all new
+# headers.
+#
+#
+# set imap_headers=""
+#
+# Name: imap_headers
+# Type: string
+# Default: ""
+#
+#
+# Mutt requests these header fields in addition to the default headers
+# (``Date:'', ``From:'', ``Sender:'', ``Subject:'', ``To:'', ``Cc:'', ``Message-Id:'',
+# ``References:'', ``Content-Type:'', ``Content-Description:'', ``In-Reply-To:'',
+# ``Reply-To:'', ``Lines:'', ``List-Post:'', ``X-Label:'') from IMAP
+# servers before displaying the index menu. You may want to add more
+# headers for spam detection.
+#
+# Note: This is a space separated list, items should be uppercase
+# and not contain the colon, e.g. ``X-BOGOSITY X-SPAM-STATUS'' for the
+# ``X-Bogosity:'' and ``X-Spam-Status:'' header fields.
+#
+#
+# set imap_idle=no
+#
+# Name: imap_idle
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will attempt to use the IMAP IDLE extension
+# to check for new mail in the current mailbox. Some servers
+# (dovecot was the inspiration for this option) react badly
+# to mutt's implementation. If your connection seems to freeze
+# up periodically, try unsetting this.
+#
+#
+set imap_keepalive=300
+#
+# Name: imap_keepalive
+# Type: number
+# Default: 300
+#
+#
+# This variable specifies the maximum amount of time in seconds that mutt
+# will wait before polling open IMAP connections, to prevent the server
+# from closing them before mutt has finished with them. The default is
+# well within the RFC-specified minimum amount of time (30 minutes) before
+# a server is allowed to do this, but in practice the RFC does get
+# violated every now and then. Reduce this number if you find yourself
+# getting disconnected from your IMAP server due to inactivity.
+#
+#
+# set imap_list_subscribed=no
+#
+# Name: imap_list_subscribed
+# Type: boolean
+# Default: no
+#
+#
+# This variable configures whether IMAP folder browsing will look for
+# only subscribed folders or all folders. This can be toggled in the
+# IMAP browser with the <toggle-subscribed> function.
+#
+#
+# set imap_login=""
+#
+# Name: imap_login
+# Type: string
+# Default: ""
+#
+#
+# Your login name on the IMAP server.
+#
+# This variable defaults to the value of $imap_user.
+#
+#
+# set imap_oauth_refresh_command=""
+#
+# Name: imap_oauth_refresh_command
+# Type: string
+# Default: ""
+#
+#
+# The command to run to generate an OAUTH refresh token for
+# authorizing your connection to your IMAP server. This command will be
+# run on every connection attempt that uses the OAUTHBEARER authentication
+# mechanism. See ``oauth'' for details.
+#
+#
+# set imap_pass=""
+#
+# Name: imap_pass
+# Type: string
+# Default: ""
+#
+#
+# Specifies the password for your IMAP account. If unset, Mutt will
+# prompt you for your password when you invoke the <imap-fetch-mail> function
+# or try to open an IMAP folder.
+#
+# Warning: you should only use this option when you are on a
+# fairly secure machine, because the superuser can read your muttrc even
+# if you are the only one who can read the file.
+#
+#
+# set imap_passive=no
+#
+# Name: imap_passive
+# Type: boolean
+# Default: yes
+#
+#
+# When set, mutt will not open new IMAP connections to check for new
+# mail. Mutt will only check for new mail over existing IMAP
+# connections. This is useful if you don't want to be prompted for
+# user/password pairs on mutt invocation, or if opening the connection
+# is slow.
+#
+#
+# set imap_peek=yes
+#
+# Name: imap_peek
+# Type: boolean
+# Default: yes
+#
+#
+# When set, mutt will avoid implicitly marking your mail as read whenever
+# you fetch a message from the server. This is generally a good thing,
+# but can make closing an IMAP folder somewhat slower. This option
+# exists to appease speed freaks.
+#
+#
+# set imap_pipeline_depth=15
+#
+# Name: imap_pipeline_depth
+# Type: number
+# Default: 15
+#
+#
+# Controls the number of IMAP commands that may be queued up before they
+# are sent to the server. A deeper pipeline reduces the amount of time
+# mutt must wait for the server, and can make IMAP servers feel much
+# more responsive. But not all servers correctly handle pipelined commands,
+# so if you have problems you might want to try setting this variable to 0.
+#
+# Note: Changes to this variable have no effect on open connections.
+#
+#
+# set imap_poll_timeout=15
+#
+# Name: imap_poll_timeout
+# Type: number
+# Default: 15
+#
+#
+# This variable specifies the maximum amount of time in seconds
+# that mutt will wait for a response when polling IMAP connections
+# for new mail, before timing out and closing the connection. Set
+# to 0 to disable timing out.
+#
+#
+# set imap_qresync=no
+#
+# Name: imap_qresync
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will use the QRESYNC extension (RFC 7162)
+# if advertised by the server. Mutt's current implementation is basic,
+# used only for initial message fetching and flag updates.
+#
+# Note: this feature is currently experimental. If you experience
+# strange behavior, such as duplicate or missing messages please
+# file a bug report to let us know.
+#
+#
+# set imap_servernoise=yes
+#
+# Name: imap_servernoise
+# Type: boolean
+# Default: yes
+#
+#
+# When set, mutt will display warning messages from the IMAP
+# server as error messages. Since these messages are often
+# harmless, or generated due to configuration problems on the
+# server which are out of the users' hands, you may wish to suppress
+# them at some point.
+#
+#
+# set imap_user=
+#
+# Name: imap_user
+# Type: string
+# Default: ""
+#
+#
+# The name of the user whose mail you intend to access on the IMAP
+# server.
+#
+# This variable defaults to your user name on the local machine.
+#
+#
+# set implicit_autoview=no
+#
+# Name: implicit_autoview
+# Type: boolean
+# Default: no
+#
+#
+# If set to ``yes'', mutt will look for a mailcap entry with the
+# ``copiousoutput'' flag set for every MIME attachment it doesn't have
+# an internal viewer defined for. If such an entry is found, mutt will
+# use the viewer defined in that entry to convert the body part to text
+# form.
+#
+#
+# set include=ask-yes
+#
+# Name: include
+# Type: quadoption
+# Default: ask-yes
+#
+#
+# Controls whether or not a copy of the message(s) you are replying to
+# is included in your reply.
+#
+#
+# set include_encrypted=no
+#
+# Name: include_encrypted
+# Type: boolean
+# Default: no
+#
+#
+# Controls whether or not Mutt includes separately encrypted attachment
+# contents when replying.
+#
+# This variable was added to prevent accidental exposure of encrypted
+# contents when replying to an attacker. If a previously encrypted message
+# were attached by the attacker, they could trick an unwary recipient into
+# decrypting and including the message in their reply.
+#
+#
+# set include_onlyfirst=no
+#
+# Name: include_onlyfirst
+# Type: boolean
+# Default: no
+#
+#
+# Controls whether or not Mutt includes only the first attachment
+# of the message you are replying.
+#
+#
+# set indent_string="> "
+#
+# Name: indent_string
+# Type: string
+# Default: "> "
+#
+#
+# Specifies the string to prepend to each line of text quoted in a
+# message to which you are replying. You are strongly encouraged not to
+# change this value, as it tends to agitate the more fanatical netizens.
+#
+# The value of this option is ignored if $text_flowed is set, because
+# the quoting mechanism is strictly defined for format=flowed.
+#
+# This option is a format string, please see the description of
+# $index_format for supported printf(3)-style sequences.
+#
+#
+# set index_format="%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s"
+#
+# Name: index_format
+# Type: string
+# Default: "%4C %Z %{%b %d} %-15.15L (%?l?%4l&%4c?) %s"
+#
+#
+# This variable allows you to customize the message index display to
+# your personal taste.
+#
+# ``Format strings'' are similar to the strings used in the C
+# function printf(3) to format output (see the man page for more details).
+# For an explanation of the %? construct, see the $status_format description.
+# The following sequences are defined in Mutt:
+# %a address of the author
+# %A reply-to address (if present; otherwise: address of author)
+# %b filename of the original message folder (think mailbox)
+# %B the list to which the letter was sent, or else the folder name (%b).
+# %c number of characters (bytes) in the message (see formatstrings-size)
+# %C current message number
+# %d date and time of the message in the format specified by
+# $date_format converted to sender's time zone
+# %D date and time of the message in the format specified by
+# $date_format converted to the local time zone
+# %e current message number in thread
+# %E number of messages in current thread
+# %f sender (address + real name), either From: or Return-Path:
+# %F author name, or recipient name if the message is from you
+# %H spam attribute(s) of this message
+# %i message-id of the current message
+# %l number of lines in the unprocessed message (may not work with
+# maildir, mh, and IMAP folders)
+# %L If an address in the ``To:'' or ``Cc:'' header field matches an address
+# defined by the users ``subscribe'' command, this displays
+# "To <list-name>", otherwise the same as %F.
+# %m total number of message in the mailbox
+# %M number of hidden messages if the thread is collapsed.
+# %N message score
+# %n author's real name (or address if missing)
+# %O original save folder where mutt would formerly have
+# stashed the message: list name or recipient name
+# if not sent to a list
+# %P progress indicator for the built-in pager (how much of the file has been displayed)
+# %r comma separated list of ``To:'' recipients
+# %R comma separated list of ``Cc:'' recipients
+# %s subject of the message
+# %S single character status of the message (``N''/``O''/``D''/``d''/``!''/``r''/``*'')
+# %t ``To:'' field (recipients)
+# %T the appropriate character from the $to_chars string
+# %u user (login) name of the author
+# %v first name of the author, or the recipient if the message is from you
+# %X number of attachments
+# (please see the ``attachments'' section for possible speed effects)
+# %y ``X-Label:'' field, if present
+# %Y ``X-Label:'' field, if present, and (1) not at part of a thread tree,
+# (2) at the top of a thread, or (3) ``X-Label:'' is different from
+# preceding message's ``X-Label:''.
+# %Z a three character set of message status flags.
+# the first character is new/read/replied flags (``n''/``o''/``r''/``O''/``N'').
+# the second is deleted or encryption flags (``D''/``d''/``S''/``P''/``s''/``K'').
+# the third is either tagged/flagged (``*''/``!''), or one of the characters
+# listed in $to_chars.
+# %@name@ insert and evaluate format-string from the matching
+# ``index-format-hook'' command
+# %{fmt} the date and time of the message is converted to sender's
+# time zone, and ``fmt'' is expanded by the library function
+# strftime(3); a leading bang disables locales
+# %[fmt] the date and time of the message is converted to the local
+# time zone, and ``fmt'' is expanded by the library function
+# strftime(3); a leading bang disables locales
+# %(fmt) the local date and time when the message was received.
+# ``fmt'' is expanded by the library function strftime(3);
+# a leading bang disables locales
+# %<fmt> the current local time. ``fmt'' is expanded by the library
+# function strftime(3); a leading bang disables locales.
+# %>X right justify the rest of the string and pad with character ``X''
+# %|X pad to the end of the line with character ``X''
+# %*X soft-fill with character ``X'' as pad
+#
+#
+# Note that for mbox/mmdf, ``%l'' applies to the unprocessed message, and
+# for maildir/mh, the value comes from the ``Lines:'' header field when
+# present (the meaning is normally the same). Thus the value depends on
+# the encodings used in the different parts of the message and has little
+# meaning in practice.
+#
+# ``Soft-fill'' deserves some explanation: Normal right-justification
+# will print everything to the left of the ``%>'', displaying padding and
+# whatever lies to the right only if there's room. By contrast,
+# soft-fill gives priority to the right-hand side, guaranteeing space
+# to display it and showing padding only if there's still room. If
+# necessary, soft-fill will eat text leftwards to make room for
+# rightward text.
+#
+# Note that these expandos are supported in
+# ``save-hook'', ``fcc-hook'', ``fcc-save-hook'', and
+# ``index-format-hook''.
+#
+# They are also supported in the configuration variables $attribution,
+# $forward_attribution_intro, $forward_attribution_trailer,
+# $forward_format, $indent_string, $message_format, $pager_format,
+# and $post_indent_string.
+#
+#
+# set ispell="ispell"
+#
+# Name: ispell
+# Type: path
+# Default: "ispell"
+#
+#
+# How to invoke ispell (GNU's spell-checking software).
+#
+#
+# set keep_flagged=no
+#
+# Name: keep_flagged
+# Type: boolean
+# Default: no
+#
+#
+# If set, read messages marked as flagged will not be moved
+# from your spool mailbox to your $mbox mailbox, or as a result of
+# a ``mbox-hook'' command.
+#
+#
+# set mail_check=30
+#
+# Name: mail_check
+# Type: number
+# Default: 5
+#
+#
+# This variable configures how often (in seconds) mutt should look for
+# new mail. Also see the $timeout variable.
+#
+#
+# set mail_check_recent=yes
+#
+# Name: mail_check_recent
+# Type: boolean
+# Default: yes
+#
+#
+# When set, Mutt will only notify you about new mail that has been received
+# since the last time you opened the mailbox. When unset, Mutt will notify you
+# if any new mail exists in the mailbox, regardless of whether you have visited it
+# recently.
+#
+# When $mark_old is set, Mutt does not consider the mailbox to contain new
+# mail if only old messages exist.
+#
+#
+# set mail_check_stats=no
+#
+# Name: mail_check_stats
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will periodically calculate message
+# statistics of a mailbox while polling for new mail. It will
+# check for unread, flagged, and total message counts. Because
+# this operation is more performance intensive, it defaults to
+# unset, and has a separate option, $mail_check_stats_interval, to
+# control how often to update these counts.
+#
+# Message statistics can also be explicitly calculated by invoking the
+# <check-stats>
+# function.
+#
+#
+# set mail_check_stats_interval=60
+#
+# Name: mail_check_stats_interval
+# Type: number
+# Default: 60
+#
+#
+# When $mail_check_stats is set, this variable configures
+# how often (in seconds) mutt will update message counts.
+#
+#
+set mailcap_path=~/.config/mutt/mailcap
+#
+# Name: mailcap_path
+# Type: string
+# Default: ""
+#
+#
+# This variable specifies which files to consult when attempting to
+# display MIME bodies not directly supported by Mutt. The default value
+# is generated during startup: see the ``mailcap'' section of the manual.
+#
+#
+# set mailcap_sanitize=yes
+#
+# Name: mailcap_sanitize
+# Type: boolean
+# Default: yes
+#
+#
+# If set, mutt will restrict possible characters in mailcap % expandos
+# to a well-defined set of safe characters. This is the safe setting,
+# but we are not sure it doesn't break some more advanced MIME stuff.
+#
+# DON'T CHANGE THIS SETTING UNLESS YOU ARE REALLY SURE WHAT YOU ARE
+# DOING!
+#
+#
+# set maildir_header_cache_verify=yes
+#
+# Name: maildir_header_cache_verify
+# Type: boolean
+# Default: yes
+#
+#
+# Check for Maildir unaware programs other than mutt having modified maildir
+# files when the header cache is in use. This incurs one stat(2) per
+# message every time the folder is opened (which can be very slow for NFS
+# folders).
+#
+#
+# set maildir_trash=no
+#
+# Name: maildir_trash
+# Type: boolean
+# Default: no
+#
+#
+# If set, messages marked as deleted will be saved with the maildir
+# trashed flag instead of unlinked. Note: this only applies
+# to maildir-style mailboxes. Setting it will have no effect on other
+# mailbox types.
+#
+#
+# set maildir_check_cur=no
+#
+# Name: maildir_check_cur
+# Type: boolean
+# Default: no
+#
+#
+# If set, mutt will poll both the new and cur directories of
+# a maildir folder for new messages. This might be useful if other
+# programs interacting with the folder (e.g. dovecot) are moving new
+# messages to the cur directory. Note that setting this option may
+# slow down polling for new messages in large folders, since mutt has
+# to scan all cur messages.
+#
+#
+# set mark_macro_prefix="'"
+#
+# Name: mark_macro_prefix
+# Type: string
+# Default: "'"
+#
+#
+# Prefix for macros created using mark-message. A new macro
+# automatically generated with <mark-message>a will be composed
+# from this prefix and the letter a.
+#
+#
+# set mark_old=yes
+#
+# Name: mark_old
+# Type: boolean
+# Default: yes
+#
+#
+# Controls whether or not mutt marks new unread
+# messages as old if you exit a mailbox without reading them.
+# With this option set, the next time you start mutt, the messages
+# will show up with an ``O'' next to them in the index menu,
+# indicating that they are old.
+#
+#
+# set markers=yes
+#
+# Name: markers
+# Type: boolean
+# Default: yes
+#
+#
+# Controls the display of wrapped lines in the internal pager. If set, a
+# ``+'' marker is displayed at the beginning of wrapped lines.
+#
+# Also see the $smart_wrap variable.
+#
+#
+# set mask="!^\\.[^.]"
+#
+# Name: mask
+# Type: regular expression
+# Default: "!^\\.[^.]"
+#
+#
+# A regular expression used in the file browser, optionally preceded by
+# the not operator ``!''. Only files whose names match this mask
+# will be shown. The match is always case-sensitive.
+#
+#
+# set mbox="~/mbox"
+#
+# Name: mbox
+# Type: path
+# Default: "~/mbox"
+#
+#
+# This specifies the folder into which read mail in your $spoolfile
+# folder will be appended.
+#
+# Also see the $move variable.
+#
+#
+set mbox_type=Maildir
+#
+# Name: mbox_type
+# Type: folder magic
+# Default: mbox
+#
+#
+# The default mailbox type used when creating new folders. May be any of
+# ``mbox'', ``MMDF'', ``MH'' and ``Maildir''. This is overridden by the
+# -m command-line option.
+#
+#
+# set menu_context=0
+#
+# Name: menu_context
+# Type: number
+# Default: 0
+#
+#
+# This variable controls the number of lines of context that are given
+# when scrolling through menus. (Similar to $pager_context.)
+#
+#
+# set menu_move_off=yes
+#
+# Name: menu_move_off
+# Type: boolean
+# Default: yes
+#
+#
+# When unset, the bottom entry of menus will never scroll up past
+# the bottom of the screen, unless there are less entries than lines.
+# When set, the bottom entry may move off the bottom.
+#
+#
+# set menu_scroll=no
+#
+# Name: menu_scroll
+# Type: boolean
+# Default: no
+#
+#
+# When set, menus will be scrolled up or down one line when you
+# attempt to move across a screen boundary. If unset, the screen
+# is cleared and the next or previous page of the menu is displayed
+# (useful for slow links to avoid many redraws).
+#
+#
+# set message_cache_clean=no
+#
+# Name: message_cache_clean
+# Type: boolean
+# Default: no
+#
+#
+# If set, mutt will clean out obsolete entries from the message cache when
+# the mailbox is synchronized. You probably only want to set it
+# every once in a while, since it can be a little slow
+# (especially for large folders).
+#
+#
+set message_cachedir=~/.cache/mutt
+#
+# Name: message_cachedir
+# Type: path
+# Default: ""
+#
+#
+# Set this to a directory and mutt will cache copies of messages from
+# your IMAP and POP servers here. You are free to remove entries at any
+# time.
+#
+# When setting this variable to a directory, mutt needs to fetch every
+# remote message only once and can perform regular expression searches
+# as fast as for local folders.
+#
+# Also see the $message_cache_clean variable.
+#
+#
+# set message_format="%s"
+#
+# Name: message_format
+# Type: string
+# Default: "%s"
+#
+#
+# This is the string displayed in the ``attachment'' menu for
+# attachments of type message/rfc822. For a full listing of defined
+# printf(3)-like sequences see the section on $index_format.
+#
+#
+# set meta_key=no
+#
+# Name: meta_key
+# Type: boolean
+# Default: no
+#
+#
+# If set, forces Mutt to interpret keystrokes with the high bit (bit 8)
+# set as if the user had pressed the Esc key and whatever key remains
+# after having the high bit removed. For example, if the key pressed
+# has an ASCII value of 0xf8, then this is treated as if the user had
+# pressed Esc then ``x''. This is because the result of removing the
+# high bit from 0xf8 is 0x78, which is the ASCII character
+# ``x''.
+#
+#
+# set metoo=no
+#
+# Name: metoo
+# Type: boolean
+# Default: no
+#
+#
+# If unset, Mutt will remove your address (see the ``alternates''
+# command) from the list of recipients when replying to a message.
+#
+#
+# set mh_purge=no
+#
+# Name: mh_purge
+# Type: boolean
+# Default: no
+#
+#
+# When unset, mutt will mimic mh's behavior and rename deleted messages
+# to ,<old file name> in mh folders instead of really deleting
+# them. This leaves the message on disk but makes programs reading the folder
+# ignore it. If the variable is set, the message files will simply be
+# deleted.
+#
+# This option is similar to $maildir_trash for Maildir folders.
+#
+#
+# set mh_seq_flagged="flagged"
+#
+# Name: mh_seq_flagged
+# Type: string
+# Default: "flagged"
+#
+#
+# The name of the MH sequence used for flagged messages.
+#
+#
+# set mh_seq_replied="replied"
+#
+# Name: mh_seq_replied
+# Type: string
+# Default: "replied"
+#
+#
+# The name of the MH sequence used to tag replied messages.
+#
+#
+# set mh_seq_unseen="unseen"
+#
+# Name: mh_seq_unseen
+# Type: string
+# Default: "unseen"
+#
+#
+# The name of the MH sequence used for unseen messages.
+#
+#
+# set mime_forward=no
+#
+# Name: mime_forward
+# Type: quadoption
+# Default: no
+#
+#
+# When set, the message you are forwarding will be attached as a
+# separate message/rfc822 MIME part instead of included in the main body of the
+# message. This is useful for forwarding MIME messages so the receiver
+# can properly view the message as it was delivered to you. If you like
+# to switch between MIME and not MIME from mail to mail, set this
+# variable to ``ask-no'' or ``ask-yes''.
+#
+# Also see $forward_decode and $mime_forward_decode.
+#
+#
+# set mime_forward_decode=no
+#
+# Name: mime_forward_decode
+# Type: boolean
+# Default: no
+#
+#
+# Controls the decoding of complex MIME messages into text/plain when
+# forwarding a message while $mime_forward is set. Otherwise
+# $forward_decode is used instead.
+#
+#
+# set mime_forward_rest=yes
+#
+# Name: mime_forward_rest
+# Type: quadoption
+# Default: yes
+#
+#
+# When forwarding multiple attachments of a MIME message from the attachment
+# menu, attachments which cannot be decoded in a reasonable manner will
+# be attached to the newly composed message if this option is set.
+#
+#
+# set mime_type_query_command=""
+#
+# Name: mime_type_query_command
+# Type: string
+# Default: ""
+#
+#
+# This specifies a command to run, to determine the mime type of a
+# new attachment when composing a message. Unless
+# $mime_type_query_first is set, this will only be run if the
+# attachment's extension is not found in the mime.types file.
+#
+# The string may contain a ``%s'', which will be substituted with the
+# attachment filename. Mutt will add quotes around the string substituted
+# for ``%s'' automatically according to shell quoting rules, so you should
+# avoid adding your own. If no ``%s'' is found in the string, Mutt will
+# append the attachment filename to the end of the string.
+#
+# The command should output a single line containing the
+# attachment's mime type.
+#
+# Suggested values are ``xdg-mime query filetype'' or
+# ``file -bi''.
+#
+#
+# set mime_type_query_first=no
+#
+# Name: mime_type_query_first
+# Type: boolean
+# Default: no
+#
+#
+# When set, the $mime_type_query_command will be run before the
+# mime.types lookup.
+#
+#
+# set mix_entry_format="%4n %c %-16s %a"
+#
+# Name: mix_entry_format
+# Type: string
+# Default: "%4n %c %-16s %a"
+#
+#
+# This variable describes the format of a remailer line on the mixmaster
+# chain selection screen. The following printf(3)-like sequences are
+# supported:
+# %n The running number on the menu.
+# %c Remailer capabilities.
+# %s The remailer's short name.
+# %a The remailer's e-mail address.
+#
+#
+# set mixmaster="mixmaster"
+#
+# Name: mixmaster
+# Type: path
+# Default: "mixmaster"
+#
+#
+# This variable contains the path to the Mixmaster binary on your
+# system. It is used with various sets of parameters to gather the
+# list of known remailers, and to finally send a message through the
+# mixmaster chain.
+#
+#
+# set move=no
+#
+# Name: move
+# Type: quadoption
+# Default: no
+#
+#
+# Controls whether or not Mutt will move read messages
+# from your spool mailbox to your $mbox mailbox, or as a result of
+# a ``mbox-hook'' command.
+#
+#
+# set narrow_tree=no
+#
+# Name: narrow_tree
+# Type: boolean
+# Default: no
+#
+#
+# This variable, when set, makes the thread tree narrower, allowing
+# deeper threads to fit on the screen.
+#
+#
+# set net_inc=10
+#
+# Name: net_inc
+# Type: number
+# Default: 10
+#
+#
+# Operations that expect to transfer a large amount of data over the
+# network will update their progress every $net_inc kilobytes.
+# If set to 0, no progress messages will be displayed.
+#
+# See also $read_inc, $write_inc and $net_inc.
+#
+#
+# set new_mail_command=""
+#
+# Name: new_mail_command
+# Type: path
+# Default: ""
+#
+#
+# If set, Mutt will call this command after a new message is received.
+# See the $status_format documentation for the values that can be formatted
+# into this command.
+#
+#
+# set pager="builtin"
+#
+# Name: pager
+# Type: path
+# Default: "builtin"
+#
+#
+# This variable specifies which pager you would like to use to view
+# messages. The value ``builtin'' means to use the built-in pager, otherwise this
+# variable should specify the pathname of the external pager you would
+# like to use.
+#
+# Using an external pager may have some disadvantages: Additional
+# keystrokes are necessary because you can't call mutt functions
+# directly from the pager, and screen resizes cause lines longer than
+# the screen width to be badly formatted in the help menu.
+#
+# When using an external pager, also see $prompt_after which defaults
+# set.
+#
+#
+# set pager_context=0
+#
+# Name: pager_context
+# Type: number
+# Default: 0
+#
+#
+# This variable controls the number of lines of context that are given
+# when displaying the next or previous page in the internal pager. By
+# default, Mutt will display the line after the last one on the screen
+# at the top of the next page (0 lines of context).
+#
+# This variable also specifies the amount of context given for search
+# results. If positive, this many lines will be given before a match,
+# if 0, the match will be top-aligned.
+#
+#
+# set pager_format="-%Z- %C/%m: %-20.20n %s%* -- (%P)"
+#
+# Name: pager_format
+# Type: string
+# Default: "-%Z- %C/%m: %-20.20n %s%* -- (%P)"
+#
+#
+# This variable controls the format of the one-line message ``status''
+# displayed before each message in either the internal or an external
+# pager. The valid sequences are listed in the $index_format
+# section.
+#
+#
+# set pager_index_lines=0
+#
+# Name: pager_index_lines
+# Type: number
+# Default: 0
+#
+#
+# Determines the number of lines of a mini-index which is shown when in
+# the pager. The current message, unless near the top or bottom of the
+# folder, will be roughly one third of the way down this mini-index,
+# giving the reader the context of a few messages before and after the
+# message. This is useful, for example, to determine how many messages
+# remain to be read in the current thread. One of the lines is reserved
+# for the status bar from the index, so a setting of 6
+# will only show 5 lines of the actual index. A value of 0 results in
+# no index being shown. If the number of messages in the current folder
+# is less than $pager_index_lines, then the index will only use as
+# many lines as it needs.
+#
+#
+# set pager_stop=no
+#
+# Name: pager_stop
+# Type: boolean
+# Default: no
+#
+#
+# When set, the internal-pager will not move to the next message
+# when you are at the end of a message and invoke the <next-page>
+# function.
+#
+#
+# set pgp_auto_decode=no
+#
+# Name: pgp_auto_decode
+# Type: boolean
+# Default: no
+#
+#
+# If set, mutt will automatically attempt to decrypt traditional PGP
+# messages whenever the user performs an operation which ordinarily would
+# result in the contents of the message being operated on. For example,
+# if the user displays a pgp-traditional message which has not been manually
+# checked with the <check-traditional-pgp> function, mutt will automatically
+# check the message for traditional pgp.
+#
+#
+# set pgp_autoinline=no
+#
+# Name: pgp_autoinline
+# Type: boolean
+# Default: no
+#
+#
+# This option controls whether Mutt generates old-style inline
+# (traditional) PGP encrypted or signed messages under certain
+# circumstances. This can be overridden by use of the pgp menu,
+# when inline is not required. The GPGME backend does not support
+# this option.
+#
+# Note that Mutt might automatically use PGP/MIME for messages
+# which consist of more than a single MIME part. Mutt can be
+# configured to ask before sending PGP/MIME messages when inline
+# (traditional) would not work.
+#
+# Also see the $pgp_mime_auto variable.
+#
+# Also note that using the old-style PGP message format is strongly
+# deprecated.
+# (PGP only)
+#
+#
+# set pgp_check_exit=yes
+#
+# Name: pgp_check_exit
+# Type: boolean
+# Default: yes
+#
+#
+# If set, mutt will check the exit code of the PGP subprocess when
+# signing or encrypting. A non-zero exit code means that the
+# subprocess failed.
+# (PGP only)
+#
+#
+# set pgp_check_gpg_decrypt_status_fd=yes
+#
+# Name: pgp_check_gpg_decrypt_status_fd
+# Type: boolean
+# Default: yes
+#
+#
+# If set, mutt will check the status file descriptor output
+# of $pgp_decrypt_command and $pgp_decode_command for GnuPG status codes
+# indicating successful decryption. This will check for the presence of
+# DECRYPTION_OKAY, absence of DECRYPTION_FAILED, and that all
+# PLAINTEXT occurs between the BEGIN_DECRYPTION and END_DECRYPTION
+# status codes.
+#
+# If unset, mutt will instead match the status fd output
+# against $pgp_decryption_okay.
+# (PGP only)
+#
+#
+# set pgp_clearsign_command=""
+#
+# Name: pgp_clearsign_command
+# Type: string
+# Default: ""
+#
+#
+# This format is used to create an old-style ``clearsigned'' PGP
+# message. Note that the use of this format is strongly
+# deprecated.
+#
+# This is a format string, see the $pgp_decode_command command for
+# possible printf(3)-like sequences.
+# (PGP only)
+#
+#
+# set pgp_decode_command=""
+#
+# Name: pgp_decode_command
+# Type: string
+# Default: ""
+#
+#
+# This format strings specifies a command which is used to decode
+# application/pgp attachments.
+#
+# The PGP command formats have their own set of printf(3)-like sequences:
+# %p Expands to PGPPASSFD=0 when a pass phrase is needed, to an empty
+# string otherwise. Note: This may be used with a %? construct.
+# %f Expands to the name of a file containing a message.
+# %s Expands to the name of a file containing the signature part
+# of a multipart/signed attachment when verifying it.
+# %a The value of $pgp_sign_as if set, otherwise the value
+# of $pgp_default_key.
+# %r One or more key IDs (or fingerprints if available).
+#
+#
+# For examples on how to configure these formats for the various versions
+# of PGP which are floating around, see the pgp and gpg sample configuration files in
+# the share/examples/mutt subdirectory which has been installed on your system
+# alongside the documentation.
+# (PGP only)
+#
+#
+# set pgp_decrypt_command=""
+#
+# Name: pgp_decrypt_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to decrypt a PGP encrypted message.
+#
+# This is a format string, see the $pgp_decode_command command for
+# possible printf(3)-like sequences.
+# (PGP only)
+#
+#
+# set pgp_decryption_okay=""
+#
+# Name: pgp_decryption_okay
+# Type: regular expression
+# Default: ""
+#
+#
+# If you assign text to this variable, then an encrypted PGP
+# message is only considered successfully decrypted if the output
+# from $pgp_decrypt_command contains the text. This is used to
+# protect against a spoofed encrypted message, with multipart/encrypted
+# headers but containing a block that is not actually encrypted.
+# (e.g. simply signed and ascii armored text).
+#
+# Note that if $pgp_check_gpg_decrypt_status_fd is set, this variable
+# is ignored.
+# (PGP only)
+#
+#
+# set pgp_default_key=""
+#
+# Name: pgp_default_key
+# Type: string
+# Default: ""
+#
+#
+# This is the default key-pair to use for PGP operations. It will be
+# used for encryption (see $postpone_encrypt and $pgp_self_encrypt).
+#
+# It will also be used for signing unless $pgp_sign_as is set.
+#
+# The (now deprecated) pgp_self_encrypt_as is an alias for this
+# variable, and should no longer be used.
+# (PGP only)
+#
+#
+# set pgp_encrypt_only_command=""
+#
+# Name: pgp_encrypt_only_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to encrypt a body part without signing it.
+#
+# This is a format string, see the $pgp_decode_command command for
+# possible printf(3)-like sequences.
+# (PGP only)
+#
+#
+# set pgp_encrypt_sign_command=""
+#
+# Name: pgp_encrypt_sign_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to both sign and encrypt a body part.
+#
+# This is a format string, see the $pgp_decode_command command for
+# possible printf(3)-like sequences.
+# (PGP only)
+#
+#
+# set pgp_entry_format="%4n %t%f %4l/0x%k %-4a %2c %u"
+#
+# Name: pgp_entry_format
+# Type: string
+# Default: "%4n %t%f %4l/0x%k %-4a %2c %u"
+#
+#
+# This variable allows you to customize the PGP key selection menu to
+# your personal taste. This string is similar to $index_format, but
+# has its own set of printf(3)-like sequences:
+# %n number
+# %k key id
+# %u user id
+# %a algorithm
+# %l key length
+# %f flags
+# %c capabilities
+# %t trust/validity of the key-uid association
+# %[<s>] date of the key where <s> is an strftime(3) expression
+#
+#
+# (PGP only)
+#
+#
+# set pgp_export_command=""
+#
+# Name: pgp_export_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to export a public key from the user's
+# key ring.
+#
+# This is a format string, see the $pgp_decode_command command for
+# possible printf(3)-like sequences.
+# (PGP only)
+#
+#
+# set pgp_getkeys_command=""
+#
+# Name: pgp_getkeys_command
+# Type: string
+# Default: ""
+#
+#
+# This command is invoked whenever Mutt needs to fetch the public key associated with
+# an email address. Of the sequences supported by $pgp_decode_command, %r is
+# the only printf(3)-like sequence used with this format. Note that
+# in this case, %r expands to the email address, not the public key ID (the key ID is
+# unknown, which is why Mutt is invoking this command).
+# (PGP only)
+#
+#
+# set pgp_good_sign=""
+#
+# Name: pgp_good_sign
+# Type: regular expression
+# Default: ""
+#
+#
+# If you assign a text to this variable, then a PGP signature is only
+# considered verified if the output from $pgp_verify_command contains
+# the text. Use this variable if the exit code from the command is 0
+# even for bad signatures.
+# (PGP only)
+#
+#
+# set pgp_ignore_subkeys=yes
+#
+# Name: pgp_ignore_subkeys
+# Type: boolean
+# Default: yes
+#
+#
+# Setting this variable will cause Mutt to ignore OpenPGP subkeys. Instead,
+# the principal key will inherit the subkeys' capabilities. Unset this
+# if you want to play interesting key selection games.
+# (PGP only)
+#
+#
+# set pgp_import_command=""
+#
+# Name: pgp_import_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to import a key from a message into
+# the user's public key ring.
+#
+# This is a format string, see the $pgp_decode_command command for
+# possible printf(3)-like sequences.
+# (PGP only)
+#
+#
+# set pgp_list_pubring_command=""
+#
+# Name: pgp_list_pubring_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to list the public key ring's contents. The
+# output format must be analogous to the one used by
+# gpg --list-keys --with-colons --with-fingerprint
+#
+# This format is also generated by the mutt_pgpring utility which comes
+# with mutt.
+#
+# Note: gpg's fixed-list-mode option should not be used. It
+# produces a different date format which may result in mutt showing
+# incorrect key generation dates.
+#
+# This is a format string, see the $pgp_decode_command command for
+# possible printf(3)-like sequences.
+# Note that in this case, %r expands to the search string, which is a list of
+# one or more quoted values such as email address, name, or keyid.
+# (PGP only)
+#
+#
+# set pgp_list_secring_command=""
+#
+# Name: pgp_list_secring_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to list the secret key ring's contents. The
+# output format must be analogous to the one used by:
+# gpg --list-keys --with-colons --with-fingerprint
+#
+# This format is also generated by the mutt_pgpring utility which comes
+# with mutt.
+#
+# Note: gpg's fixed-list-mode option should not be used. It
+# produces a different date format which may result in mutt showing
+# incorrect key generation dates.
+#
+# This is a format string, see the $pgp_decode_command command for
+# possible printf(3)-like sequences.
+# Note that in this case, %r expands to the search string, which is a list of
+# one or more quoted values such as email address, name, or keyid.
+# (PGP only)
+#
+#
+# set pgp_long_ids=yes
+#
+# Name: pgp_long_ids
+# Type: boolean
+# Default: yes
+#
+#
+# If set, use 64 bit PGP key IDs, if unset use the normal 32 bit key IDs.
+# NOTE: Internally, Mutt has transitioned to using fingerprints (or long key IDs
+# as a fallback). This option now only controls the display of key IDs
+# in the key selection menu and a few other places.
+# (PGP only)
+#
+#
+# set pgp_mime_auto=ask-yes
+#
+# Name: pgp_mime_auto
+# Type: quadoption
+# Default: ask-yes
+#
+#
+# This option controls whether Mutt will prompt you for
+# automatically sending a (signed/encrypted) message using
+# PGP/MIME when inline (traditional) fails (for any reason).
+#
+# Also note that using the old-style PGP message format is strongly
+# deprecated.
+# (PGP only)
+#
+#
+# set pgp_replyinline=no
+#
+# Name: pgp_replyinline
+# Type: boolean
+# Default: no
+#
+#
+# Setting this variable will cause Mutt to always attempt to
+# create an inline (traditional) message when replying to a
+# message which is PGP encrypted/signed inline. This can be
+# overridden by use of the pgp menu, when inline is not
+# required. This option does not automatically detect if the
+# (replied-to) message is inline; instead it relies on Mutt
+# internals for previously checked/flagged messages.
+#
+# Note that Mutt might automatically use PGP/MIME for messages
+# which consist of more than a single MIME part. Mutt can be
+# configured to ask before sending PGP/MIME messages when inline
+# (traditional) would not work.
+#
+# Also see the $pgp_mime_auto variable.
+#
+# Also note that using the old-style PGP message format is strongly
+# deprecated.
+# (PGP only)
+#
+#
+# set pgp_retainable_sigs=no
+#
+# Name: pgp_retainable_sigs
+# Type: boolean
+# Default: no
+#
+#
+# If set, signed and encrypted messages will consist of nested
+# multipart/signed and multipart/encrypted body parts.
+#
+# This is useful for applications like encrypted and signed mailing
+# lists, where the outer layer (multipart/encrypted) can be easily
+# removed, while the inner multipart/signed part is retained.
+# (PGP only)
+#
+#
+# set pgp_self_encrypt=yes
+#
+# Name: pgp_self_encrypt
+# Type: boolean
+# Default: yes
+#
+#
+# When set, PGP encrypted messages will also be encrypted
+# using the key in $pgp_default_key.
+# (PGP only)
+#
+#
+# set pgp_show_unusable=yes
+#
+# Name: pgp_show_unusable
+# Type: boolean
+# Default: yes
+#
+#
+# If set, mutt will display non-usable keys on the PGP key selection
+# menu. This includes keys which have been revoked, have expired, or
+# have been marked as ``disabled'' by the user.
+# (PGP only)
+#
+#
+# set pgp_sign_as=""
+#
+# Name: pgp_sign_as
+# Type: string
+# Default: ""
+#
+#
+# If you have a different key pair to use for signing, you should
+# set this to the signing key. Most people will only need to set
+# $pgp_default_key. It is recommended that you use the keyid form
+# to specify your key (e.g. 0x00112233).
+# (PGP only)
+#
+#
+# set pgp_sign_command=""
+#
+# Name: pgp_sign_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to create the detached PGP signature for a
+# multipart/signed PGP/MIME body part.
+#
+# This is a format string, see the $pgp_decode_command command for
+# possible printf(3)-like sequences.
+# (PGP only)
+#
+#
+# set pgp_sort_keys=address
+#
+# Name: pgp_sort_keys
+# Type: sort order
+# Default: address
+#
+#
+# Specifies how the entries in the pgp menu are sorted. The
+# following are legal values:
+# address sort alphabetically by user id
+# keyid sort alphabetically by key id
+# date sort by key creation date
+# trust sort by the trust of the key
+#
+#
+# If you prefer reverse order of the above values, prefix it with
+# ``reverse-''.
+# (PGP only)
+#
+#
+# set pgp_strict_enc=yes
+#
+# Name: pgp_strict_enc
+# Type: boolean
+# Default: yes
+#
+#
+# If set, Mutt will automatically encode PGP/MIME signed messages as
+# quoted-printable. Please note that unsetting this variable may
+# lead to problems with non-verifyable PGP signatures, so only change
+# this if you know what you are doing.
+# (PGP only)
+#
+#
+# set pgp_timeout=300
+#
+# Name: pgp_timeout
+# Type: number (long)
+# Default: 300
+#
+#
+# The number of seconds after which a cached passphrase will expire if
+# not used.
+# (PGP only)
+#
+#
+# set pgp_use_gpg_agent=yes
+#
+# Name: pgp_use_gpg_agent
+# Type: boolean
+# Default: yes
+#
+#
+# If set, mutt expects a gpg-agent(1) process will handle
+# private key passphrase prompts. If unset, mutt will prompt
+# for the passphrase and pass it via stdin to the pgp command.
+#
+# Note that as of version 2.1, GnuPG automatically spawns an agent
+# and requires the agent be used for passphrase management. Since
+# that version is increasingly prevalent, this variable now
+# defaults set.
+#
+# Mutt works with a GUI or curses pinentry program. A TTY pinentry
+# should not be used.
+#
+# If you are using an older version of GnuPG without an agent running,
+# or another encryption program without an agent, you will need to
+# unset this variable.
+# (PGP only)
+#
+#
+# set pgp_verify_command=""
+#
+# Name: pgp_verify_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to verify PGP signatures.
+#
+# This is a format string, see the $pgp_decode_command command for
+# possible printf(3)-like sequences.
+# (PGP only)
+#
+#
+# set pgp_verify_key_command=""
+#
+# Name: pgp_verify_key_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to verify key information from the key selection
+# menu.
+#
+# This is a format string, see the $pgp_decode_command command for
+# possible printf(3)-like sequences.
+# (PGP only)
+#
+#
+# set pipe_decode=no
+#
+# Name: pipe_decode
+# Type: boolean
+# Default: no
+#
+#
+# Used in connection with the <pipe-message> command. When unset,
+# Mutt will pipe the messages without any preprocessing. When set, Mutt
+# will weed headers and will attempt to decode the messages
+# first.
+#
+#
+# set pipe_sep="\n"
+#
+# Name: pipe_sep
+# Type: string
+# Default: "\n"
+#
+#
+# The separator to add between messages when piping a list of tagged
+# messages to an external Unix command.
+#
+#
+# set pipe_split=no
+#
+# Name: pipe_split
+# Type: boolean
+# Default: no
+#
+#
+# Used in connection with the <pipe-message> function following
+# <tag-prefix>. If this variable is unset, when piping a list of
+# tagged messages Mutt will concatenate the messages and will pipe them
+# all concatenated. When set, Mutt will pipe the messages one by one.
+# In both cases the messages are piped in the current sorted order,
+# and the $pipe_sep separator is added after each message.
+#
+#
+# set pop_auth_try_all=yes
+#
+# Name: pop_auth_try_all
+# Type: boolean
+# Default: yes
+#
+#
+# If set, Mutt will try all available authentication methods.
+# When unset, Mutt will only fall back to other authentication
+# methods if the previous methods are unavailable. If a method is
+# available but authentication fails, Mutt will not connect to the POP server.
+#
+#
+# set pop_authenticators=""
+#
+# Name: pop_authenticators
+# Type: string
+# Default: ""
+#
+#
+# This is a colon-delimited list of authentication methods mutt may
+# attempt to use to log in to an POP server, in the order mutt should
+# try them. Authentication methods are either ``user'', ``apop'' or any
+# SASL mechanism, e.g. ``digest-md5'', ``gssapi'' or ``cram-md5''.
+# This option is case-insensitive. If this option is unset
+# (the default) mutt will try all available methods, in order from
+# most-secure to least-secure.
+#
+# Example:
+# set pop_authenticators="digest-md5:apop:user"
+#
+#
+# set pop_checkinterval=60
+#
+# Name: pop_checkinterval
+# Type: number
+# Default: 60
+#
+#
+# This variable configures how often (in seconds) mutt should look for
+# new mail in the currently selected mailbox if it is a POP mailbox.
+#
+#
+# set pop_delete=ask-no
+#
+# Name: pop_delete
+# Type: quadoption
+# Default: ask-no
+#
+#
+# If set, Mutt will delete successfully downloaded messages from the POP
+# server when using the <fetch-mail> function. When unset, Mutt will
+# download messages but also leave them on the POP server.
+#
+#
+# set pop_host=""
+#
+# Name: pop_host
+# Type: string
+# Default: ""
+#
+#
+# The name of your POP server for the <fetch-mail> function. You
+# can also specify an alternative port, username and password, i.e.:
+# [pop[s]://][username[:password]@]popserver[:port]
+#
+# where ``[...]'' denotes an optional part.
+#
+#
+# set pop_last=no
+#
+# Name: pop_last
+# Type: boolean
+# Default: no
+#
+#
+# If this variable is set, mutt will try to use the ``LAST'' POP command
+# for retrieving only unread messages from the POP server when using
+# the <fetch-mail> function.
+#
+#
+# set pop_oauth_refresh_command=""
+#
+# Name: pop_oauth_refresh_command
+# Type: string
+# Default: ""
+#
+#
+# The command to run to generate an OAUTH refresh token for
+# authorizing your connection to your POP server. This command will be
+# run on every connection attempt that uses the OAUTHBEARER authentication
+# mechanism. See ``oauth'' for details.
+#
+#
+# set pop_pass=""
+#
+# Name: pop_pass
+# Type: string
+# Default: ""
+#
+#
+# Specifies the password for your POP account. If unset, Mutt will
+# prompt you for your password when you open a POP mailbox.
+#
+# Warning: you should only use this option when you are on a
+# fairly secure machine, because the superuser can read your muttrc
+# even if you are the only one who can read the file.
+#
+#
+# set pop_reconnect=ask-yes
+#
+# Name: pop_reconnect
+# Type: quadoption
+# Default: ask-yes
+#
+#
+# Controls whether or not Mutt will try to reconnect to the POP server if
+# the connection is lost.
+#
+#
+# set pop_user=""
+#
+# Name: pop_user
+# Type: string
+# Default: ""
+#
+#
+# Your login name on the POP server.
+#
+# This variable defaults to your user name on the local machine.
+#
+#
+# set post_indent_string=""
+#
+# Name: post_indent_string
+# Type: string
+# Default: ""
+#
+#
+# Similar to the $attribution variable, Mutt will append this
+# string after the inclusion of a message which is being replied to.
+# For a full listing of defined printf(3)-like sequences see
+# the section on $index_format.
+#
+#
+# set postpone=ask-yes
+#
+# Name: postpone
+# Type: quadoption
+# Default: ask-yes
+#
+#
+# Controls whether or not messages are saved in the $postponed
+# mailbox when you elect not to send immediately.
+#
+# Also see the $recall variable.
+#
+#
+# set postponed=+[Gmail]/Drafts
+#
+# Name: postponed
+# Type: path
+# Default: "~/postponed"
+#
+#
+# Mutt allows you to indefinitely ``postpone sending a message'' which
+# you are editing. When you choose to postpone a message, Mutt saves it
+# in the mailbox specified by this variable.
+#
+# Also see the $postpone variable.
+#
+#
+# set postpone_encrypt=no
+#
+# Name: postpone_encrypt
+# Type: boolean
+# Default: no
+#
+#
+# When set, postponed messages that are marked for encryption will be
+# self-encrypted. Mutt will first try to encrypt using the value specified
+# in $pgp_default_key or $smime_default_key. If those are not
+# set, it will try the deprecated $postpone_encrypt_as.
+# (Crypto only)
+#
+#
+# set postpone_encrypt_as=""
+#
+# Name: postpone_encrypt_as
+# Type: string
+# Default: ""
+#
+#
+# This is a deprecated fall-back variable for $postpone_encrypt.
+# Please use $pgp_default_key or $smime_default_key.
+# (Crypto only)
+#
+#
+# set preconnect=""
+#
+# Name: preconnect
+# Type: string
+# Default: ""
+#
+#
+# If set, a shell command to be executed if mutt fails to establish
+# a connection to the server. This is useful for setting up secure
+# connections, e.g. with ssh(1). If the command returns a nonzero
+# status, mutt gives up opening the server. Example:
+# set preconnect="ssh -f -q -L 1234:mailhost.net:143 mailhost.net \
+# sleep 20 < /dev/null > /dev/null"
+#
+# Mailbox ``foo'' on ``mailhost.net'' can now be reached
+# as ``{localhost:1234}foo''.
+#
+# Note: For this example to work, you must be able to log in to the
+# remote machine without having to enter a password.
+#
+#
+# set print=ask-no
+#
+# Name: print
+# Type: quadoption
+# Default: ask-no
+#
+#
+# Controls whether or not Mutt really prints messages.
+# This is set to ``ask-no'' by default, because some people
+# accidentally hit ``p'' often.
+#
+#
+# set print_command="lpr"
+#
+# Name: print_command
+# Type: path
+# Default: "lpr"
+#
+#
+# This specifies the command pipe that should be used to print messages.
+#
+#
+# set print_decode=yes
+#
+# Name: print_decode
+# Type: boolean
+# Default: yes
+#
+#
+# Used in connection with the <print-message> command. If this
+# option is set, the message is decoded before it is passed to the
+# external command specified by $print_command. If this option
+# is unset, no processing will be applied to the message when
+# printing it. The latter setting may be useful if you are using
+# some advanced printer filter which is able to properly format
+# e-mail messages for printing.
+#
+#
+# set print_split=no
+#
+# Name: print_split
+# Type: boolean
+# Default: no
+#
+#
+# Used in connection with the <print-message> command. If this option
+# is set, the command specified by $print_command is executed once for
+# each message which is to be printed. If this option is unset,
+# the command specified by $print_command is executed only once, and
+# all the messages are concatenated, with a form feed as the message
+# separator.
+#
+# Those who use the enscript(1) program's mail-printing mode will
+# most likely want to set this option.
+#
+#
+# set prompt_after=yes
+#
+# Name: prompt_after
+# Type: boolean
+# Default: yes
+#
+#
+# If you use an external $pager, setting this variable will
+# cause Mutt to prompt you for a command when the pager exits rather
+# than returning to the index menu. If unset, Mutt will return to the
+# index menu when the external pager exits.
+#
+#
+# set query_command=""
+#
+# Name: query_command
+# Type: path
+# Default: ""
+#
+#
+# This specifies the command Mutt will use to make external address
+# queries. The string may contain a ``%s'', which will be substituted
+# with the query string the user types. Mutt will add quotes around the
+# string substituted for ``%s'' automatically according to shell quoting
+# rules, so you should avoid adding your own. If no ``%s'' is found in
+# the string, Mutt will append the user's query to the end of the string.
+# See ``query'' for more information.
+#
+#
+# set query_format="%4c %t %-25.25a %-25.25n %?e?(%e)?"
+#
+# Name: query_format
+# Type: string
+# Default: "%4c %t %-25.25a %-25.25n %?e?(%e)?"
+#
+#
+# This variable describes the format of the ``query'' menu. The
+# following printf(3)-style sequences are understood:
+# %a destination address
+# %c current entry number
+# %e extra information *
+# %n destination name
+# %t ``*'' if current entry is tagged, a space otherwise
+# %>X right justify the rest of the string and pad with ``X''
+# %|X pad to the end of the line with ``X''
+# %*X soft-fill with character ``X'' as pad
+#
+#
+# For an explanation of ``soft-fill'', see the $index_format documentation.
+#
+# * = can be optionally printed if nonzero, see the $status_format documentation.
+#
+#
+# set quit=yes
+#
+# Name: quit
+# Type: quadoption
+# Default: yes
+#
+#
+# This variable controls whether ``quit'' and ``exit'' actually quit
+# from mutt. If this option is set, they do quit, if it is unset, they
+# have no effect, and if it is set to ask-yes or ask-no, you are
+# prompted for confirmation when you try to quit.
+#
+#
+# set quote_empty=
+#
+# Name: quote_empty
+# Type: boolean
+# Default:
+#
+#
+# Controls whether or not empty lines will be quoted using
+# ``indent_string''.
+#
+#
+# set quote_quoted=
+#
+# Name: quote_quoted
+# Type: boolean
+# Default:
+#
+#
+# Controls how quoted lines will be quoted. If set, one quote
+# character will be added to the end of existing prefix. Otherwise,
+# quoted lines will be prepended by ``indent_string''.
+#
+#
+# set quote_regexp="^([ \t]*[|>:}#])+"
+#
+# Name: quote_regexp
+# Type: regular expression
+# Default: "^([ \t]*[|>:}#])+"
+#
+#
+# A regular expression used in the internal pager to determine quoted
+# sections of text in the body of a message. Quoted text may be filtered
+# out using the <toggle-quoted> command, or colored according to the
+# ``color quoted'' family of directives.
+#
+# Higher levels of quoting may be colored differently (``color quoted1'',
+# ``color quoted2'', etc.). The quoting level is determined by removing
+# the last character from the matched text and recursively reapplying
+# the regular expression until it fails to produce a match.
+#
+# Match detection may be overridden by the $smileys regular expression.
+#
+#
+# set read_inc=10
+#
+# Name: read_inc
+# Type: number
+# Default: 10
+#
+#
+# If set to a value greater than 0, Mutt will display which message it
+# is currently on when reading a mailbox or when performing search actions
+# such as search and limit. The message is printed after
+# this many messages have been read or searched (e.g., if set to 25, Mutt will
+# print a message when it is at message 25, and then again when it gets
+# to message 50). This variable is meant to indicate progress when
+# reading or searching large mailboxes which may take some time.
+# When set to 0, only a single message will appear before the reading
+# the mailbox.
+#
+# Also see the $write_inc, $net_inc and $time_inc variables and the
+# ``tuning'' section of the manual for performance considerations.
+#
+#
+# set read_only=no
+#
+# Name: read_only
+# Type: boolean
+# Default: no
+#
+#
+# If set, all folders are opened in read-only mode.
+#
+#
+# set realname=""
+#
+# Name: realname
+# Type: string
+# Default: ""
+#
+#
+# This variable specifies what ``real'' or ``personal'' name should be used
+# when sending messages.
+#
+# By default, this is the GECOS field from /etc/passwd. Note that this
+# variable will not be used when the user has set a real name
+# in the $from variable.
+#
+#
+# set recall=ask-yes
+#
+# Name: recall
+# Type: quadoption
+# Default: ask-yes
+#
+#
+# Controls whether or not Mutt recalls postponed messages
+# when composing a new message.
+#
+# Setting this variable to yes is not generally useful, and thus not
+# recommended. Note that the <recall-message> function can be used
+# to manually recall postponed messages.
+#
+# Also see $postponed variable.
+#
+#
+# set record="~/sent"
+#
+# Name: record
+# Type: path
+# Default: "~/sent"
+#
+#
+# This specifies the file into which your outgoing messages should be
+# appended. (This is meant as the primary method for saving a copy of
+# your messages, but another way to do this is using the ``my_hdr''
+# command to create a ``Bcc:'' field with your email address in it.)
+#
+# The value of $record is overridden by the $force_name and
+# $save_name variables, and the ``fcc-hook'' command. Also see $copy
+# and $write_bcc.
+#
+# Multiple mailboxes may be specified if $fcc_delimiter is
+# set to a string delimiter.
+#
+#
+# set reflow_space_quotes=yes
+#
+# Name: reflow_space_quotes
+# Type: boolean
+# Default: yes
+#
+#
+# This option controls how quotes from format=flowed messages are displayed
+# in the pager and when replying (with $text_flowed unset).
+# When set, this option adds spaces after each level of quote marks, turning
+# ">>>foo" into "> > > foo".
+#
+# Note: If $reflow_text is unset, this option has no effect.
+# Also, this option does not affect replies when $text_flowed is set.
+#
+#
+# set reflow_text=yes
+#
+# Name: reflow_text
+# Type: boolean
+# Default: yes
+#
+#
+# When set, Mutt will reformat paragraphs in text/plain
+# parts marked format=flowed. If unset, Mutt will display paragraphs
+# unaltered from how they appear in the message body. See RFC3676 for
+# details on the format=flowed format.
+#
+# Also see $reflow_wrap, and $wrap.
+#
+#
+# set reflow_wrap=78
+#
+# Name: reflow_wrap
+# Type: number
+# Default: 78
+#
+#
+# This variable controls the maximum paragraph width when reformatting text/plain
+# parts when $reflow_text is set. When the value is 0, paragraphs will
+# be wrapped at the terminal's right margin. A positive value sets the
+# paragraph width relative to the left margin. A negative value set the
+# paragraph width relative to the right margin.
+#
+# Also see $wrap.
+#
+#
+# set reply_regexp="^(re([\\[0-9\\]+])*|aw):[ \t]*"
+#
+# Name: reply_regexp
+# Type: regular expression
+# Default: "^(re([\\[0-9\\]+])*|aw):[ \t]*"
+#
+#
+# A regular expression used to recognize reply messages when threading
+# and replying. The default value corresponds to the English "Re:" and
+# the German "Aw:".
+#
+#
+# set reply_self=no
+#
+# Name: reply_self
+# Type: boolean
+# Default: no
+#
+#
+# If unset and you are replying to a message sent by you, Mutt will
+# assume that you want to reply to the recipients of that message rather
+# than to yourself.
+#
+# Also see the ``alternates'' command.
+#
+#
+# set reply_to=ask-yes
+#
+# Name: reply_to
+# Type: quadoption
+# Default: ask-yes
+#
+#
+# If set, when replying to a message, Mutt will use the address listed
+# in the Reply-to: header as the recipient of the reply. If unset,
+# it will use the address in the From: header field instead. This
+# option is useful for reading a mailing list that sets the Reply-To:
+# header field to the list address and you want to send a private
+# message to the author of a message.
+#
+#
+# set resolve=yes
+#
+# Name: resolve
+# Type: boolean
+# Default: yes
+#
+#
+# When set, the cursor will be automatically advanced to the next
+# (possibly undeleted) message whenever a command that modifies the
+# current message is executed.
+#
+#
+# set resume_draft_files=no
+#
+# Name: resume_draft_files
+# Type: boolean
+# Default: no
+#
+#
+# If set, draft files (specified by -H on the command
+# line) are processed similarly to when resuming a postponed
+# message. Recipients are not prompted for; send-hooks are not
+# evaluated; no alias expansion takes place; user-defined headers
+# and signatures are not added to the message.
+#
+#
+# set resume_edited_draft_files=yes
+#
+# Name: resume_edited_draft_files
+# Type: boolean
+# Default: yes
+#
+#
+# If set, draft files previously edited (via -E -H on
+# the command line) will have $resume_draft_files automatically
+# set when they are used as a draft file again.
+#
+# The first time a draft file is saved, mutt will add a header,
+# X-Mutt-Resume-Draft to the saved file. The next time the draft
+# file is read in, if mutt sees the header, it will set
+# $resume_draft_files.
+#
+# This option is designed to prevent multiple signatures,
+# user-defined headers, and other processing effects from being
+# made multiple times to the draft file.
+#
+#
+# set reverse_alias=no
+#
+# Name: reverse_alias
+# Type: boolean
+# Default: no
+#
+#
+# This variable controls whether or not Mutt will display the ``personal''
+# name from your aliases in the index menu if it finds an alias that
+# matches the message's sender. For example, if you have the following
+# alias:
+# alias juser abd30425@somewhere.net (Joe User)
+#
+# and then you receive mail which contains the following header:
+# From: abd30425@somewhere.net
+#
+# It would be displayed in the index menu as ``Joe User'' instead of
+# ``abd30425@somewhere.net.'' This is useful when the person's e-mail
+# address is not human friendly.
+#
+#
+# set reverse_name=no
+#
+# Name: reverse_name
+# Type: boolean
+# Default: no
+#
+#
+# It may sometimes arrive that you receive mail to a certain machine,
+# move the messages to another machine, and reply to some the messages
+# from there. If this variable is set, the default From: line of
+# the reply messages is built using the address where you received the
+# messages you are replying to if that address matches your
+# ``alternates''. If the variable is unset, or the address that would be
+# used doesn't match your ``alternates'', the From: line will use
+# your address on the current machine.
+#
+# Also see the ``alternates'' command and $reverse_realname.
+#
+#
+# set reverse_realname=yes
+#
+# Name: reverse_realname
+# Type: boolean
+# Default: yes
+#
+#
+# This variable fine-tunes the behavior of the $reverse_name feature.
+#
+# When it is unset, Mutt will remove the real name part of a
+# matching address. This allows the use of the email address
+# without having to also use what the sender put in the real name
+# field.
+#
+# When it is set, Mutt will use the matching address as-is.
+#
+# In either case, a missing real name will be filled in afterwards
+# using the value of $realname.
+#
+#
+# set reverse_reply=no
+#
+# Name: reverse_reply
+# Type: boolean
+# Default: no
+#
+#
+# When set, this variable uses the name from your aliases in the To and Cc
+# headers of reply mails you send, like reverse_alias does in the index.
+# When unset, the headers taken from the original mail are left unchanged.
+#
+#
+# set rfc2047_parameters=no
+#
+# Name: rfc2047_parameters
+# Type: boolean
+# Default: no
+#
+#
+# When this variable is set, Mutt will decode RFC2047-encoded MIME
+# parameters. You want to set this variable when mutt suggests you
+# to save attachments to files named like:
+# =?iso-8859-1?Q?file=5F=E4=5F991116=2Ezip?=
+#
+# When this variable is set interactively, the change won't be
+# active until you change folders.
+#
+# Note that this use of RFC2047's encoding is explicitly
+# prohibited by the standard, but nevertheless encountered in the
+# wild.
+#
+# Also note that setting this parameter will not have the effect
+# that mutt generates this kind of encoding. Instead, mutt will
+# unconditionally use the encoding specified in RFC2231.
+#
+#
+# set save_address=no
+#
+# Name: save_address
+# Type: boolean
+# Default: no
+#
+#
+# If set, mutt will take the sender's full address when choosing a
+# default folder for saving a mail. If $save_name or $force_name
+# is set too, the selection of the Fcc folder will be changed as well.
+#
+#
+# set save_empty=yes
+#
+# Name: save_empty
+# Type: boolean
+# Default: yes
+#
+#
+# When unset, mailboxes which contain no saved messages will be removed
+# when closed (the exception is $spoolfile which is never removed).
+# If set, mailboxes are never removed.
+#
+# Note: This only applies to mbox and MMDF folders, Mutt does not
+# delete MH and Maildir directories.
+#
+#
+# set save_history=0
+#
+# Name: save_history
+# Type: number
+# Default: 0
+#
+#
+# This variable controls the size of the history (per category) saved in the
+# $history_file file.
+#
+#
+# set save_name=no
+#
+# Name: save_name
+# Type: boolean
+# Default: no
+#
+#
+# This variable controls how copies of outgoing messages are saved.
+# When set, a check is made to see if a mailbox specified by the
+# recipient address exists (this is done by searching for a mailbox in
+# the $folder directory with the username part of the
+# recipient address). If the mailbox exists, the outgoing message will
+# be saved to that mailbox, otherwise the message is saved to the
+# $record mailbox.
+#
+# Also see the $force_name variable.
+#
+#
+# set score=yes
+#
+# Name: score
+# Type: boolean
+# Default: yes
+#
+#
+# When this variable is unset, scoring is turned off. This can
+# be useful to selectively disable scoring for certain folders when the
+# $score_threshold_delete variable and related are used.
+#
+#
+# set score_threshold_delete=-1
+#
+# Name: score_threshold_delete
+# Type: number
+# Default: -1
+#
+#
+# Messages which have been assigned a score equal to or lower than the value
+# of this variable are automatically marked for deletion by mutt. Since
+# mutt scores are always greater than or equal to zero, the default setting
+# of this variable will never mark a message for deletion.
+#
+#
+# set score_threshold_flag=9999
+#
+# Name: score_threshold_flag
+# Type: number
+# Default: 9999
+#
+#
+# Messages which have been assigned a score greater than or equal to this
+# variable's value are automatically marked "flagged".
+#
+#
+# set score_threshold_read=-1
+#
+# Name: score_threshold_read
+# Type: number
+# Default: -1
+#
+#
+# Messages which have been assigned a score equal to or lower than the value
+# of this variable are automatically marked as read by mutt. Since
+# mutt scores are always greater than or equal to zero, the default setting
+# of this variable will never mark a message read.
+#
+#
+# set search_context=0
+#
+# Name: search_context
+# Type: number
+# Default: 0
+#
+#
+# For the pager, this variable specifies the number of lines shown
+# before search results. By default, search results will be top-aligned.
+#
+#
+# set send_charset="us-ascii:iso-8859-1:utf-8"
+#
+# Name: send_charset
+# Type: string
+# Default: "us-ascii:iso-8859-1:utf-8"
+#
+#
+# A colon-delimited list of character sets for outgoing messages. Mutt will use the
+# first character set into which the text can be converted exactly.
+# If your $charset is not ``iso-8859-1'' and recipients may not
+# understand ``UTF-8'', it is advisable to include in the list an
+# appropriate widely used standard character set (such as
+# ``iso-8859-2'', ``koi8-r'' or ``iso-2022-jp'') either instead of or after
+# ``iso-8859-1''.
+#
+# In case the text cannot be converted into one of these exactly,
+# mutt uses $charset as a fallback.
+#
+#
+# set send_multipart_alternative=no
+#
+# Name: send_multipart_alternative
+# Type: quadoption
+# Default: no
+#
+#
+# If set, Mutt will generate a multipart/alternative
+# container and an alternative part using the filter script specified in
+# $send_multipart_alternative_filter.
+# See the section ``MIME Multipart/Alternative'' (alternative-order).
+#
+# Note that enabling multipart/alternative is not compatible with inline
+# PGP encryption. Mutt will prompt to use PGP/MIME in that case.
+#
+#
+# set send_multipart_alternative_filter=""
+#
+# Name: send_multipart_alternative_filter
+# Type: path
+# Default: ""
+#
+#
+# This specifies a filter script, which will convert the main
+# (composed) message of the email to an alternative format. The
+# message will be piped to the filter's stdin. The expected output
+# of the filter is the generated mime type, e.g. text/html,
+# followed by a blank line, and then the converted content.
+# See the section ``MIME Multipart/Alternative'' (alternative-order).
+#
+#
+# set sendmail="/usr/sbin/sendmail -oem -oi"
+#
+# Name: sendmail
+# Type: path
+# Default: "/usr/sbin/sendmail -oem -oi"
+#
+#
+# Specifies the program and arguments used to deliver mail sent by Mutt.
+# Mutt expects that the specified program interprets additional
+# arguments as recipient addresses. Mutt appends all recipients after
+# adding a -- delimiter (if not already present). Additional
+# flags, such as for $use_8bitmime, $use_envelope_from,
+# $dsn_notify, or $dsn_return will be added before the delimiter.
+#
+# See also: $write_bcc.
+#
+#
+# set sendmail_wait=0
+#
+# Name: sendmail_wait
+# Type: number
+# Default: 0
+#
+#
+# Specifies the number of seconds to wait for the $sendmail process
+# to finish before giving up and putting delivery in the background.
+#
+# Mutt interprets the value of this variable as follows:
+# >0 number of seconds to wait for sendmail to finish before continuing
+# 0 wait forever for sendmail to finish
+# <0 always put sendmail in the background without waiting
+#
+#
+# Note that if you specify a value other than 0, the output of the child
+# process will be put in a temporary file. If there is some error, you
+# will be informed as to where to find the output.
+#
+#
+# set shell=""
+#
+# Name: shell
+# Type: path
+# Default: ""
+#
+#
+# Command to use when spawning a subshell. By default, the user's login
+# shell from /etc/passwd is used.
+#
+#
+# set sidebar_delim_chars="/."
+#
+# Name: sidebar_delim_chars
+# Type: string
+# Default: "/."
+#
+#
+# This contains the list of characters which you would like to treat
+# as folder separators for displaying paths in the sidebar.
+#
+# Local mail is often arranged in directories: `dir1/dir2/mailbox'.
+# set sidebar_delim_chars='/'
+#
+# IMAP mailboxes are often named: `folder1.folder2.mailbox'.
+# set sidebar_delim_chars='.'
+#
+# See also: $sidebar_short_path, $sidebar_folder_indent, $sidebar_indent_string.
+#
+#
+# set sidebar_divider_char="|"
+#
+# Name: sidebar_divider_char
+# Type: string
+# Default: "|"
+#
+#
+# This specifies the characters to be drawn between the sidebar (when
+# visible) and the other Mutt panels. ASCII and Unicode line-drawing
+# characters are supported.
+#
+#
+# set sidebar_folder_indent=no
+#
+# Name: sidebar_folder_indent
+# Type: boolean
+# Default: no
+#
+#
+# Set this to indent mailboxes in the sidebar.
+#
+# See also: $sidebar_short_path, $sidebar_indent_string, $sidebar_delim_chars.
+#
+#
+# set sidebar_format="%B%* %n"
+#
+# Name: sidebar_format
+# Type: string
+# Default: "%B%* %n"
+#
+#
+# This variable allows you to customize the sidebar display. This string is
+# similar to $index_format, but has its own set of printf(3)-like
+# sequences:
+# %B Name of the mailbox
+# %S * Size of mailbox (total number of messages)
+# %N * Number of unread messages in the mailbox
+# %n N if mailbox has new mail, blank otherwise
+# %F * Number of Flagged messages in the mailbox
+# %! ``!'' : one flagged message;
+# ``!!'' : two flagged messages;
+# ``n!'' : n flagged messages (for n > 2).
+# Otherwise prints nothing.
+# %d * @ Number of deleted messages
+# %L * @ Number of messages after limiting
+# %t * @ Number of tagged messages
+# %>X right justify the rest of the string and pad with ``X''
+# %|X pad to the end of the line with ``X''
+# %*X soft-fill with character ``X'' as pad
+#
+#
+# * = Can be optionally printed if nonzero
+# @ = Only applicable to the current folder
+#
+# In order to use %S, %N, %F, and %!, $mail_check_stats must
+# be set. When thus set, a suggested value for this option is
+# "%B%?F? [%F]?%* %?N?%N/?%S".
+#
+#
+# set sidebar_indent_string=" "
+#
+# Name: sidebar_indent_string
+# Type: string
+# Default: " "
+#
+#
+# This specifies the string that is used to indent mailboxes in the sidebar.
+# It defaults to two spaces.
+#
+# See also: $sidebar_short_path, $sidebar_folder_indent, $sidebar_delim_chars.
+#
+#
+# set sidebar_new_mail_only=no
+#
+# Name: sidebar_new_mail_only
+# Type: boolean
+# Default: no
+#
+#
+# When set, the sidebar will only display mailboxes containing new, or
+# flagged, mail.
+#
+# See also: sidebar_whitelist.
+#
+#
+# set sidebar_next_new_wrap=no
+#
+# Name: sidebar_next_new_wrap
+# Type: boolean
+# Default: no
+#
+#
+# When set, the <sidebar-next-new> command will not stop and the end of
+# the list of mailboxes, but wrap around to the beginning. The
+# <sidebar-prev-new> command is similarly affected, wrapping around to
+# the end of the list.
+#
+#
+# set sidebar_relative_shortpath_indent=no
+#
+# Name: sidebar_relative_shortpath_indent
+# Type: boolean
+# Default: no
+#
+#
+# When set, this option changes how $sidebar_short_path and
+# $sidebar_folder_indent perform shortening and indentation: both
+# will look at the previous sidebar entries and shorten/indent
+# relative to the most recent parent.
+#
+# An example of this option set/unset for mailboxes listed in this
+# order, with $sidebar_short_path=yes,
+# $sidebar_folder_indent=yes, and $sidebar_indent_string="→":
+# mailbox set unset
+# =a.b =a.b →b
+# =a.b.c.d →c.d →→→d
+# =a.b.e →e →→e
+#
+#
+# The second line illustrates most clearly. With this option set,
+# =a.b.c.d is shortened relative to =a.b, becoming
+# c.d; it is also indented one place relative to =a.b.
+# With this option unset =a.b.c.d is always shortened to the
+# last part of the mailbox, d and is indented three places,
+# with respect to $folder (represented by '=').
+#
+# When set, the third line will also be indented and shortened
+# relative to the first line.
+#
+#
+# set sidebar_short_path=no
+#
+# Name: sidebar_short_path
+# Type: boolean
+# Default: no
+#
+#
+# By default the sidebar will show the mailbox's path, relative to the
+# $folder variable. Setting sidebar_shortpath=yes will shorten the
+# names relative to the previous name. Here's an example:
+# shortpath=no shortpath=yes shortpath=yes, folderindent=yes, indentstr=".."
+# fruit fruit fruit
+# fruit.apple apple ..apple
+# fruit.banana banana ..banana
+# fruit.cherry cherry ..cherry
+#
+#
+# See also: $sidebar_delim_chars, $sidebar_folder_indent, $sidebar_indent_string.
+#
+#
+# set sidebar_sort_method=order
+#
+# Name: sidebar_sort_method
+# Type: sort order
+# Default: order
+#
+#
+# Specifies how to sort entries in the file browser. By default, the
+# entries are sorted alphabetically. Valid values:
+# - alpha (alphabetically)
+# - count (all message count)
+# - flagged (flagged message count)
+# - name (alphabetically)
+# - new (unread message count)
+# - path (alphabetically)
+# - unread (unread message count)
+# - unsorted
+#
+#
+# You may optionally use the ``reverse-'' prefix to specify reverse sorting
+# order (example: ``set sort_browser=reverse-date'').
+#
+#
+# set sidebar_use_mailbox_shortcuts=no
+#
+# Name: sidebar_use_mailbox_shortcuts
+# Type: boolean
+# Default: no
+#
+#
+# When set, sidebar mailboxes will be displayed with mailbox shortcut prefixes
+# "=" or "~".
+#
+# When unset, the sidebar will trim off a matching $folder prefix
+# but otherwise not use mailbox shortcuts.
+#
+#
+# set sidebar_visible=no
+#
+# Name: sidebar_visible
+# Type: boolean
+# Default: no
+#
+#
+# This specifies whether or not to show sidebar. The sidebar shows a list of
+# all your mailboxes.
+#
+# See also: $sidebar_format, $sidebar_width
+#
+#
+# set sidebar_width=30
+#
+# Name: sidebar_width
+# Type: number
+# Default: 30
+#
+#
+# This controls the width of the sidebar. It is measured in screen columns.
+# For example: sidebar_width=20 could display 20 ASCII characters, or 10
+# Chinese characters.
+#
+#
+# set sig_dashes=yes
+#
+# Name: sig_dashes
+# Type: boolean
+# Default: yes
+#
+#
+# If set, a line containing ``-- '' (note the trailing space) will be inserted before your
+# $signature. It is strongly recommended that you not unset
+# this variable unless your signature contains just your name. The
+# reason for this is because many software packages use ``-- \n'' to
+# detect your signature. For example, Mutt has the ability to highlight
+# the signature in a different color in the built-in pager.
+#
+#
+# set sig_on_top=no
+#
+# Name: sig_on_top
+# Type: boolean
+# Default: no
+#
+#
+# If set, the signature will be included before any quoted or forwarded
+# text. It is strongly recommended that you do not set this variable
+# unless you really know what you are doing, and are prepared to take
+# some heat from netiquette guardians.
+#
+#
+# set signature="~/.signature"
+#
+# Name: signature
+# Type: path
+# Default: "~/.signature"
+#
+#
+# Specifies the filename of your signature, which is appended to all
+# outgoing messages. If the filename ends with a pipe (``|''), it is
+# assumed that filename is a shell command and input should be read from
+# its standard output.
+#
+#
+# set simple_search="~f %s | ~s %s"
+#
+# Name: simple_search
+# Type: string
+# Default: "~f %s | ~s %s"
+#
+#
+# Specifies how Mutt should expand a simple search into a real search
+# pattern. A simple search is one that does not contain any of the ``~'' pattern
+# operators. See ``patterns'' for more information on search patterns.
+#
+# For example, if you simply type ``joe'' at a search or limit prompt, Mutt
+# will automatically expand it to the value specified by this variable by
+# replacing ``%s'' with the supplied string.
+# For the default value, ``joe'' would be expanded to: ``~f joe | ~s joe''.
+#
+#
+# set size_show_bytes=no
+#
+# Name: size_show_bytes
+# Type: boolean
+# Default: no
+#
+#
+# If set, message sizes will display bytes for values less than
+# 1 kilobyte. See formatstrings-size.
+#
+#
+# set size_show_fractions=yes
+#
+# Name: size_show_fractions
+# Type: boolean
+# Default: yes
+#
+#
+# If set, message sizes will be displayed with a single decimal value
+# for sizes from 0 to 10 kilobytes and 1 to 10 megabytes.
+# See formatstrings-size.
+#
+#
+# set size_show_mb=yes
+#
+# Name: size_show_mb
+# Type: boolean
+# Default: yes
+#
+#
+# If set, message sizes will display megabytes for values greater than
+# or equal to 1 megabyte. See formatstrings-size.
+#
+#
+# set size_units_on_left=no
+#
+# Name: size_units_on_left
+# Type: boolean
+# Default: no
+#
+#
+# If set, message sizes units will be displayed to the left of the number.
+# See formatstrings-size.
+#
+#
+# set sleep_time=1
+#
+# Name: sleep_time
+# Type: number
+# Default: 1
+#
+#
+# Specifies time, in seconds, to pause while displaying certain informational
+# messages, while moving from folder to folder and after expunging
+# messages from the current folder. The default is to pause one second, so
+# a value of zero for this option suppresses the pause.
+#
+#
+# set smart_wrap=yes
+#
+# Name: smart_wrap
+# Type: boolean
+# Default: yes
+#
+#
+# Controls the display of lines longer than the screen width in the
+# internal pager. If set, long lines are wrapped at a word boundary. If
+# unset, lines are simply wrapped at the screen edge. Also see the
+# $markers variable.
+#
+#
+# set smileys="(>From )|(:[-^]?[][)(><}{|/DP])"
+#
+# Name: smileys
+# Type: regular expression
+# Default: "(>From )|(:[-^]?[][)(><}{|/DP])"
+#
+#
+# The pager uses this variable to catch some common false
+# positives of $quote_regexp, most notably smileys and not consider
+# a line quoted text if it also matches $smileys. This mostly
+# happens at the beginning of a line.
+#
+#
+# set smime_ask_cert_label=yes
+#
+# Name: smime_ask_cert_label
+# Type: boolean
+# Default: yes
+#
+#
+# This flag controls whether you want to be asked to enter a label
+# for a certificate about to be added to the database or not. It is
+# set by default.
+# (S/MIME only)
+#
+#
+# set smime_ca_location=""
+#
+# Name: smime_ca_location
+# Type: path
+# Default: ""
+#
+#
+# This variable contains the name of either a directory, or a file which
+# contains trusted certificates for use with OpenSSL.
+# (S/MIME only)
+#
+#
+# set smime_certificates=""
+#
+# Name: smime_certificates
+# Type: path
+# Default: ""
+#
+#
+# Since for S/MIME there is no pubring/secring as with PGP, mutt has to handle
+# storage and retrieval of keys by itself. This is very basic right
+# now, and keys and certificates are stored in two different
+# directories, both named as the hash-value retrieved from
+# OpenSSL. There is an index file which contains mailbox-address
+# keyid pairs, and which can be manually edited. This option points to
+# the location of the certificates.
+# (S/MIME only)
+#
+#
+# set smime_decrypt_command=""
+#
+# Name: smime_decrypt_command
+# Type: string
+# Default: ""
+#
+#
+# This format string specifies a command which is used to decrypt
+# application/x-pkcs7-mime attachments.
+#
+# The OpenSSL command formats have their own set of printf(3)-like sequences
+# similar to PGP's:
+# %f Expands to the name of a file containing a message.
+# %s Expands to the name of a file containing the signature part
+# of a multipart/signed attachment when verifying it.
+# %k The key-pair specified with $smime_default_key
+# %c One or more certificate IDs.
+# %a The algorithm used for encryption.
+# %d The message digest algorithm specified with $smime_sign_digest_alg.
+# %C CA location: Depending on whether $smime_ca_location
+# points to a directory or file, this expands to
+# ``-CApath $smime_ca_location'' or ``-CAfile $smime_ca_location''.
+#
+#
+# For examples on how to configure these formats, see the smime.rc in
+# the share/examples/mutt subdirectory which has been installed on your system
+# alongside the documentation.
+# (S/MIME only)
+#
+#
+# set smime_decrypt_use_default_key=yes
+#
+# Name: smime_decrypt_use_default_key
+# Type: boolean
+# Default: yes
+#
+#
+# If set (default) this tells mutt to use the default key for decryption. Otherwise,
+# if managing multiple certificate-key-pairs, mutt will try to use the mailbox-address
+# to determine the key to use. It will ask you to supply a key, if it can't find one.
+# (S/MIME only)
+#
+#
+# set smime_dont_check_sender=no
+#
+# Name: smime_dont_check_sender
+# Type: boolean
+# Default: no
+#
+#
+# This flag controls wether you want the skip the check for the sender's
+# email address against the email address stored in the certificate.
+# This can be useful if most of your email senders use SMIMEv3 which no
+# longer needs email-addresses as part of the certificates.
+# It is not set by default.
+#
+#
+# set smime_default_key=""
+#
+# Name: smime_default_key
+# Type: string
+# Default: ""
+#
+#
+# This is the default key-pair to use for S/MIME operations, and must be
+# set to the keyid (the hash-value that OpenSSL generates) to work properly.
+#
+# It will be used for encryption (see $postpone_encrypt and
+# $smime_self_encrypt).
+#
+# It will be used for decryption unless $smime_decrypt_use_default_key
+# is unset.
+#
+# It will also be used for signing unless $smime_sign_as is set.
+#
+# The (now deprecated) smime_self_encrypt_as is an alias for this
+# variable, and should no longer be used.
+# (S/MIME only)
+#
+#
+# set smime_encrypt_command=""
+#
+# Name: smime_encrypt_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to create encrypted S/MIME messages.
+#
+# This is a format string, see the $smime_decrypt_command command for
+# possible printf(3)-like sequences.
+# (S/MIME only)
+#
+#
+# set smime_encrypt_with="aes256"
+#
+# Name: smime_encrypt_with
+# Type: string
+# Default: "aes256"
+#
+#
+# This sets the algorithm that should be used for encryption.
+# Valid choices are ``aes128'', ``aes192'', ``aes256'', ``des'', ``des3'', ``rc2-40'', ``rc2-64'', ``rc2-128''.
+# (S/MIME only)
+#
+#
+# set smime_get_cert_command=""
+#
+# Name: smime_get_cert_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to extract X509 certificates from a PKCS7 structure.
+#
+# This is a format string, see the $smime_decrypt_command command for
+# possible printf(3)-like sequences.
+# (S/MIME only)
+#
+#
+# set smime_get_cert_email_command=""
+#
+# Name: smime_get_cert_email_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to extract the mail address(es) used for storing
+# X509 certificates, and for verification purposes (to check whether the
+# certificate was issued for the sender's mailbox).
+#
+# This is a format string, see the $smime_decrypt_command command for
+# possible printf(3)-like sequences.
+# (S/MIME only)
+#
+#
+# set smime_get_signer_cert_command=""
+#
+# Name: smime_get_signer_cert_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to extract only the signers X509 certificate from a S/MIME
+# signature, so that the certificate's owner may get compared to the
+# email's ``From:'' field.
+#
+# This is a format string, see the $smime_decrypt_command command for
+# possible printf(3)-like sequences.
+# (S/MIME only)
+#
+#
+# set smime_import_cert_command=""
+#
+# Name: smime_import_cert_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to import a certificate via smime_keys.
+#
+# This is a format string, see the $smime_decrypt_command command for
+# possible printf(3)-like sequences.
+# (S/MIME only)
+#
+#
+# set smime_is_default=no
+#
+# Name: smime_is_default
+# Type: boolean
+# Default: no
+#
+#
+# The default behavior of mutt is to use PGP on all auto-sign/encryption
+# operations. To override and to use OpenSSL instead this must be set.
+# However, this has no effect while replying, since mutt will automatically
+# select the same application that was used to sign/encrypt the original
+# message. (Note that this variable can be overridden by unsetting $crypt_autosmime.)
+# (S/MIME only)
+#
+#
+# set smime_keys=""
+#
+# Name: smime_keys
+# Type: path
+# Default: ""
+#
+#
+# Since for S/MIME there is no pubring/secring as with PGP, mutt has to handle
+# storage and retrieval of keys/certs by itself. This is very basic right now,
+# and stores keys and certificates in two different directories, both
+# named as the hash-value retrieved from OpenSSL. There is an index file
+# which contains mailbox-address keyid pair, and which can be manually
+# edited. This option points to the location of the private keys.
+# (S/MIME only)
+#
+#
+# set smime_pk7out_command=""
+#
+# Name: smime_pk7out_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to extract PKCS7 structures of S/MIME signatures,
+# in order to extract the public X509 certificate(s).
+#
+# This is a format string, see the $smime_decrypt_command command for
+# possible printf(3)-like sequences.
+# (S/MIME only)
+#
+#
+# set smime_self_encrypt=yes
+#
+# Name: smime_self_encrypt
+# Type: boolean
+# Default: yes
+#
+#
+# When set, S/MIME encrypted messages will also be encrypted
+# using the certificate in $smime_default_key.
+# (S/MIME only)
+#
+#
+# set smime_sign_as=""
+#
+# Name: smime_sign_as
+# Type: string
+# Default: ""
+#
+#
+# If you have a separate key to use for signing, you should set this
+# to the signing key. Most people will only need to set $smime_default_key.
+# (S/MIME only)
+#
+#
+# set smime_sign_command=""
+#
+# Name: smime_sign_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to created S/MIME signatures of type
+# multipart/signed, which can be read by all mail clients.
+#
+# This is a format string, see the $smime_decrypt_command command for
+# possible printf(3)-like sequences. NOTE: %c and %k will default
+# to $smime_sign_as if set, otherwise $smime_default_key.
+# (S/MIME only)
+#
+#
+# set smime_sign_digest_alg="sha256"
+#
+# Name: smime_sign_digest_alg
+# Type: string
+# Default: "sha256"
+#
+#
+# This sets the algorithm that should be used for the signature message digest.
+# Valid choices are ``md5'', ``sha1'', ``sha224'', ``sha256'', ``sha384'', ``sha512''.
+# (S/MIME only)
+#
+#
+# set smime_sign_opaque_command=""
+#
+# Name: smime_sign_opaque_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to created S/MIME signatures of type
+# application/x-pkcs7-signature, which can only be handled by mail
+# clients supporting the S/MIME extension.
+#
+# This is a format string, see the $smime_decrypt_command command for
+# possible printf(3)-like sequences.
+# (S/MIME only)
+#
+#
+# set smime_timeout=300
+#
+# Name: smime_timeout
+# Type: number (long)
+# Default: 300
+#
+#
+# The number of seconds after which a cached passphrase will expire if
+# not used.
+# (S/MIME only)
+#
+#
+# set smime_verify_command=""
+#
+# Name: smime_verify_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to verify S/MIME signatures of type multipart/signed.
+#
+# This is a format string, see the $smime_decrypt_command command for
+# possible printf(3)-like sequences.
+# (S/MIME only)
+#
+#
+# set smime_verify_opaque_command=""
+#
+# Name: smime_verify_opaque_command
+# Type: string
+# Default: ""
+#
+#
+# This command is used to verify S/MIME signatures of type
+# application/x-pkcs7-mime.
+#
+# This is a format string, see the $smime_decrypt_command command for
+# possible printf(3)-like sequences.
+# (S/MIME only)
+#
+#
+# set smtp_authenticators=""
+#
+# Name: smtp_authenticators
+# Type: string
+# Default: ""
+#
+#
+# This is a colon-delimited list of authentication methods mutt may
+# attempt to use to log in to an SMTP server, in the order mutt should
+# try them. Authentication methods are any SASL mechanism, e.g.
+# ``digest-md5'', ``gssapi'' or ``cram-md5''.
+# This option is case-insensitive. If it is ``unset''
+# (the default) mutt will try all available methods, in order from
+# most-secure to least-secure.
+#
+# Example:
+# set smtp_authenticators="digest-md5:cram-md5"
+#
+#
+# set smtp_oauth_refresh_command=""
+#
+# Name: smtp_oauth_refresh_command
+# Type: string
+# Default: ""
+#
+#
+# The command to run to generate an OAUTH refresh token for
+# authorizing your connection to your SMTP server. This command will be
+# run on every connection attempt that uses the OAUTHBEARER authentication
+# mechanism. See ``oauth'' for details.
+#
+#
+# set smtp_pass=""
+#
+# Name: smtp_pass
+# Type: string
+# Default: ""
+#
+#
+# Specifies the password for your SMTP account. If unset, Mutt will
+# prompt you for your password when you first send mail via SMTP.
+# See $smtp_url to configure mutt to send mail via SMTP.
+#
+# Warning: you should only use this option when you are on a
+# fairly secure machine, because the superuser can read your muttrc even
+# if you are the only one who can read the file.
+#
+#
+# set smtp_url=""
+#
+# Name: smtp_url
+# Type: string
+# Default: ""
+#
+#
+# Defines the SMTP smarthost where sent messages should relayed for
+# delivery. This should take the form of an SMTP URL, e.g.:
+# smtp[s]://[user[:pass]@]host[:port]
+#
+# where ``[...]'' denotes an optional part.
+# Setting this variable overrides the value of the $sendmail
+# variable.
+#
+# Also see $write_bcc.
+#
+#
+set sort=reverse-date
+#
+# Name: sort
+# Type: sort order
+# Default: date
+#
+#
+# Specifies how to sort messages in the ``index'' menu. Valid values
+# are:
+# - date or date-sent
+# - date-received
+# - from
+# - mailbox-order (unsorted)
+# - score
+# - size
+# - spam
+# - subject
+# - threads
+# - to
+#
+#
+# You may optionally use the ``reverse-'' prefix to specify reverse sorting
+# order (example: ``set sort=reverse-date-sent'').
+#
+#
+# set sort_alias=alias
+#
+# Name: sort_alias
+# Type: sort order
+# Default: alias
+#
+#
+# Specifies how the entries in the ``alias'' menu are sorted. The
+# following are legal values:
+# - address (sort alphabetically by email address)
+# - alias (sort alphabetically by alias name)
+# - unsorted (leave in order specified in .muttrc)
+#
+#
+# set sort_aux=date
+#
+# Name: sort_aux
+# Type: sort order
+# Default: date
+#
+#
+# This provides a secondary sort for messages in the ``index'' menu, used
+# when the $sort value is equal for two messages.
+#
+# When sorting by threads, this variable controls how threads are sorted
+# in relation to other threads, and how the branches of the thread trees
+# are sorted. This can be set to any value that $sort can, except
+# ``threads'' (in that case, mutt will just use ``date-sent''). You can also
+# specify the ``last-'' prefix in addition to the ``reverse-'' prefix, but ``last-''
+# must come after ``reverse-''. The ``last-'' prefix causes messages to be
+# sorted against its siblings by which has the last descendant, using
+# the rest of $sort_aux as an ordering. For instance,
+# set sort_aux=last-date-received
+#
+# would mean that if a new message is received in a
+# thread, that thread becomes the last one displayed (or the first, if
+# you have ``set sort=reverse-threads''.)
+#
+# Note: For reversed-threads $sort
+# order, $sort_aux is reversed again (which is not the right thing to do,
+# but kept to not break any existing configuration setting).
+#
+#
+# set sort_browser=alpha
+#
+# Name: sort_browser
+# Type: sort order
+# Default: alpha
+#
+#
+# Specifies how to sort entries in the file browser. By default, the
+# entries are sorted alphabetically. Valid values:
+# - alpha (alphabetically)
+# - count
+# - date
+# - size
+# - unread
+# - unsorted
+#
+#
+# You may optionally use the ``reverse-'' prefix to specify reverse sorting
+# order (example: ``set sort_browser=reverse-date'').
+#
+#
+# set sort_re=yes
+#
+# Name: sort_re
+# Type: boolean
+# Default: yes
+#
+#
+# This variable is only useful when sorting by threads with
+# $strict_threads unset. In that case, it changes the heuristic
+# mutt uses to thread messages by subject. With $sort_re set, mutt will
+# only attach a message as the child of another message by subject if
+# the subject of the child message starts with a substring matching the
+# setting of $reply_regexp. With $sort_re unset, mutt will attach
+# the message whether or not this is the case, as long as the
+# non-$reply_regexp parts of both messages are identical.
+#
+#
+# set spam_separator=","
+#
+# Name: spam_separator
+# Type: string
+# Default: ","
+#
+#
+# This variable controls what happens when multiple spam headers
+# are matched: if unset, each successive header will overwrite any
+# previous matches value for the spam label. If set, each successive
+# match will append to the previous, using this variable's value as a
+# separator.
+#
+#
+set spoolfile=+/
+#
+# Name: spoolfile
+# Type: path
+# Default: ""
+#
+#
+# If your spool mailbox is in a non-default place where Mutt cannot find
+# it, you can specify its location with this variable. Mutt will
+# initially set this variable to the value of the environment
+# variable $MAIL or $MAILDIR if either is defined.
+#
+#
+# set ssl_ca_certificates_file=""
+#
+# Name: ssl_ca_certificates_file
+# Type: path
+# Default: ""
+#
+#
+# This variable specifies a file containing trusted CA certificates.
+# Any server certificate that is signed with one of these CA
+# certificates is also automatically accepted. (GnuTLS only)
+#
+# Example:
+# set ssl_ca_certificates_file=/etc/ssl/certs/ca-certificates.crt
+#
+#
+# set ssl_client_cert=""
+#
+# Name: ssl_client_cert
+# Type: path
+# Default: ""
+#
+#
+# The file containing a client certificate and its associated private
+# key.
+#
+#
+# set ssl_force_tls=no
+#
+# Name: ssl_force_tls
+# Type: boolean
+# Default: no
+#
+#
+# If this variable is set, Mutt will require that all connections
+# to remote servers be encrypted. Furthermore it will attempt to
+# negotiate TLS even if the server does not advertise the capability,
+# since it would otherwise have to abort the connection anyway. This
+# option supersedes $ssl_starttls.
+#
+#
+# set ssl_min_dh_prime_bits=0
+#
+# Name: ssl_min_dh_prime_bits
+# Type: number
+# Default: 0
+#
+#
+# This variable specifies the minimum acceptable prime size (in bits)
+# for use in any Diffie-Hellman key exchange. A value of 0 will use
+# the default from the GNUTLS library. (GnuTLS only)
+#
+#
+# set ssl_starttls=yes
+#
+# Name: ssl_starttls
+# Type: quadoption
+# Default: yes
+#
+#
+# If set (the default), mutt will attempt to use STARTTLS on servers
+# advertising the capability. When unset, mutt will not attempt to
+# use STARTTLS regardless of the server's capabilities.
+#
+#
+# set ssl_use_sslv2=no
+#
+# Name: ssl_use_sslv2
+# Type: boolean
+# Default: no
+#
+#
+# If set , Mutt will use SSLv2 when communicating with servers that
+# request it. N.B. As of 2011, SSLv2 is considered insecure, and using
+# is inadvisable. See https://tools.ietf.org/html/rfc6176 .
+# (OpenSSL only)
+#
+#
+# set ssl_use_sslv3=no
+#
+# Name: ssl_use_sslv3
+# Type: boolean
+# Default: no
+#
+#
+# If set , Mutt will use SSLv3 when communicating with servers that
+# request it. N.B. As of 2015, SSLv3 is considered insecure, and using
+# it is inadvisable. See https://tools.ietf.org/html/rfc7525 .
+#
+#
+# set ssl_use_tlsv1=no
+#
+# Name: ssl_use_tlsv1
+# Type: boolean
+# Default: no
+#
+#
+# If set , Mutt will use TLSv1.0 when communicating with servers that
+# request it. N.B. As of 2015, TLSv1.0 is considered insecure, and using
+# it is inadvisable. See https://tools.ietf.org/html/rfc7525 .
+#
+#
+# set ssl_use_tlsv1_1=no
+#
+# Name: ssl_use_tlsv1_1
+# Type: boolean
+# Default: no
+#
+#
+# If set , Mutt will use TLSv1.1 when communicating with servers that
+# request it. N.B. As of 2015, TLSv1.1 is considered insecure, and using
+# it is inadvisable. See https://tools.ietf.org/html/rfc7525 .
+#
+#
+# set ssl_use_tlsv1_2=yes
+#
+# Name: ssl_use_tlsv1_2
+# Type: boolean
+# Default: yes
+#
+#
+# If set , Mutt will use TLSv1.2 when communicating with servers that
+# request it.
+#
+#
+# set ssl_use_tlsv1_3=yes
+#
+# Name: ssl_use_tlsv1_3
+# Type: boolean
+# Default: yes
+#
+#
+# If set , Mutt will use TLSv1.3 when communicating with servers that
+# request it.
+#
+#
+# set ssl_usesystemcerts=yes
+#
+# Name: ssl_usesystemcerts
+# Type: boolean
+# Default: yes
+#
+#
+# If set to yes, mutt will use CA certificates in the
+# system-wide certificate store when checking if a server certificate
+# is signed by a trusted CA. (OpenSSL only)
+#
+#
+# set ssl_verify_dates=yes
+#
+# Name: ssl_verify_dates
+# Type: boolean
+# Default: yes
+#
+#
+# If set (the default), mutt will not automatically accept a server
+# certificate that is either not yet valid or already expired. You should
+# only unset this for particular known hosts, using the
+# <account-hook> function.
+#
+#
+# set ssl_verify_host=yes
+#
+# Name: ssl_verify_host
+# Type: boolean
+# Default: yes
+#
+#
+# If set (the default), mutt will not automatically accept a server
+# certificate whose host name does not match the host used in your folder
+# URL. You should only unset this for particular known hosts, using
+# the <account-hook> function.
+#
+#
+# set ssl_verify_partial_chains=no
+#
+# Name: ssl_verify_partial_chains
+# Type: boolean
+# Default: no
+#
+#
+# This option should not be changed from the default unless you understand
+# what you are doing.
+#
+# Setting this variable to yes will permit verifying partial
+# certification chains, i. e. a certificate chain where not the root,
+# but an intermediate certificate CA, or the host certificate, are
+# marked trusted (in $certificate_file), without marking the root
+# signing CA as trusted.
+#
+# (OpenSSL 1.0.2b and newer only).
+#
+#
+# set ssl_ciphers=""
+#
+# Name: ssl_ciphers
+# Type: string
+# Default: ""
+#
+#
+# Contains a colon-seperated list of ciphers to use when using SSL.
+# For OpenSSL, see ciphers(1) for the syntax of the string.
+#
+# For GnuTLS, this option will be used in place of "NORMAL" at the
+# start of the priority string. See gnutls_priority_init(3) for the
+# syntax and more details. (Note: GnuTLS version 2.1.7 or higher is
+# required.)
+#
+#
+# set status_chars="-*%A"
+#
+# Name: status_chars
+# Type: string
+# Default: "-*%A"
+#
+#
+# Controls the characters used by the ``%r'' indicator in
+# $status_format. The first character is used when the mailbox is
+# unchanged. The second is used when the mailbox has been changed, and
+# it needs to be resynchronized. The third is used if the mailbox is in
+# read-only mode, or if the mailbox will not be written when exiting
+# that mailbox (You can toggle whether to write changes to a mailbox
+# with the <toggle-write> operation, bound by default to ``%''). The fourth
+# is used to indicate that the current folder has been opened in attach-
+# message mode (Certain operations like composing a new mail, replying,
+# forwarding, etc. are not permitted in this mode).
+#
+#
+# set status_format="-%r-Mutt: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?B? Back:%B?%?l? %l?]---(%s/%S)-%>-(%P)---"
+#
+# Name: status_format
+# Type: string
+# Default: "-%r-Mutt: %f [Msgs:%?M?%M/?%m%?n? New:%n?%?o? Old:%o?%?d? Del:%d?%?F? Flag:%F?%?t? Tag:%t?%?p? Post:%p?%?b? Inc:%b?%?B? Back:%B?%?l? %l?]---(%s/%S)-%>-(%P)---"
+#
+#
+# Controls the format of the status line displayed in the ``index''
+# menu. This string is similar to $index_format, but has its own
+# set of printf(3)-like sequences:
+# %b number of mailboxes with new mail *
+# %B number of backgrounded editing sessions *
+# %d number of deleted messages *
+# %f the full pathname of the current mailbox
+# %F number of flagged messages *
+# %h local hostname
+# %l size (in bytes) of the current mailbox (see formatstrings-size) *
+# %L size (in bytes) of the messages shown
+# (i.e., which match the current limit) (see formatstrings-size) *
+# %m the number of messages in the mailbox *
+# %M the number of messages shown (i.e., which match the current limit) *
+# %n number of new messages in the mailbox *
+# %o number of old unread messages *
+# %p number of postponed messages *
+# %P percentage of the way through the index
+# %r modified/read-only/won't-write/attach-message indicator,
+# according to $status_chars
+# %R number of read messages *
+# %s current sorting mode ($sort)
+# %S current aux sorting method ($sort_aux)
+# %t number of tagged messages *
+# %u number of unread messages *
+# %v Mutt version string
+# %V currently active limit pattern, if any *
+# %>X right justify the rest of the string and pad with ``X''
+# %|X pad to the end of the line with ``X''
+# %*X soft-fill with character ``X'' as pad
+#
+#
+# For an explanation of ``soft-fill'', see the $index_format documentation.
+#
+# * = can be optionally printed if nonzero
+#
+# Some of the above sequences can be used to optionally print a string
+# if their value is nonzero. For example, you may only want to see the
+# number of flagged messages if such messages exist, since zero is not
+# particularly meaningful. To optionally print a string based upon one
+# of the above sequences, the following construct is used:
+#
+# %?<sequence_char>?<optional_string>?
+#
+# where sequence_char is a character from the table above, and
+# optional_string is the string you would like printed if
+# sequence_char is nonzero. optional_string may contain
+# other sequences as well as normal text, but you may not nest
+# optional strings.
+#
+# Here is an example illustrating how to optionally print the number of
+# new messages in a mailbox:
+#
+# %?n?%n new messages.?
+#
+# You can also switch between two strings using the following construct:
+#
+# %?<sequence_char>?<if_string>&<else_string>?
+#
+# If the value of sequence_char is non-zero, if_string will
+# be expanded, otherwise else_string will be expanded.
+#
+# You can force the result of any printf(3)-like sequence to be lowercase
+# by prefixing the sequence character with an underscore (``_'') sign.
+# For example, if you want to display the local hostname in lowercase,
+# you would use: ``%_h''.
+#
+# If you prefix the sequence character with a colon (``:'') character, mutt
+# will replace any dots in the expansion by underscores. This might be helpful
+# with IMAP folders that don't like dots in folder names.
+#
+#
+# set status_on_top=no
+#
+# Name: status_on_top
+# Type: boolean
+# Default: no
+#
+#
+# Setting this variable causes the ``status bar'' to be displayed on
+# the first line of the screen rather than near the bottom. If $help
+# is set, too it'll be placed at the bottom.
+#
+#
+# set strict_threads=no
+#
+# Name: strict_threads
+# Type: boolean
+# Default: no
+#
+#
+# If set, threading will only make use of the ``In-Reply-To'' and
+# ``References:'' fields when you $sort by message threads. By
+# default, messages with the same subject are grouped together in
+# ``pseudo threads.''. This may not always be desirable, such as in a
+# personal mailbox where you might have several unrelated messages with
+# the subjects like ``hi'' which will get grouped together. See also
+# $sort_re for a less drastic way of controlling this
+# behavior.
+#
+#
+# set suspend=yes
+#
+# Name: suspend
+# Type: boolean
+# Default: yes
+#
+#
+# When unset, mutt won't stop when the user presses the terminal's
+# susp key, usually ``^Z''. This is useful if you run mutt
+# inside an xterm using a command like ``xterm -e mutt''.
+#
+#
+# set text_flowed=no
+#
+# Name: text_flowed
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will generate ``format=flowed'' bodies with a content type
+# of ``text/plain; format=flowed''.
+# This format is easier to handle for some mailing software, and generally
+# just looks like ordinary text. To actually make use of this format's
+# features, you'll need support in your editor.
+#
+# The option only controls newly composed messages. Postponed messages,
+# resent messages, and draft messages (via -H on the command line) will
+# use the content-type of the source message.
+#
+# Note that $indent_string is ignored when this option is set.
+#
+#
+# set thorough_search=yes
+#
+# Name: thorough_search
+# Type: boolean
+# Default: yes
+#
+#
+# Affects the ~b and ~h search operations described in
+# section ``patterns''. If set, the headers and body/attachments of
+# messages to be searched are decoded before searching. If unset,
+# messages are searched as they appear in the folder.
+#
+# Users searching attachments or for non-ASCII characters should set
+# this value because decoding also includes MIME parsing/decoding and possible
+# character set conversions. Otherwise mutt will attempt to match against the
+# raw message received (for example quoted-printable encoded or with encoded
+# headers) which may lead to incorrect search results.
+#
+#
+# set thread_received=no
+#
+# Name: thread_received
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt uses the date received rather than the date sent
+# to thread messages by subject.
+#
+#
+# set tilde=no
+#
+# Name: tilde
+# Type: boolean
+# Default: no
+#
+#
+# When set, the internal-pager will pad blank lines to the bottom of the
+# screen with a tilde (``~'').
+#
+#
+# set time_inc=0
+#
+# Name: time_inc
+# Type: number
+# Default: 0
+#
+#
+# Along with $read_inc, $write_inc, and $net_inc, this
+# variable controls the frequency with which progress updates are
+# displayed. It suppresses updates less than $time_inc milliseconds
+# apart. This can improve throughput on systems with slow terminals,
+# or when running mutt on a remote system.
+#
+# Also see the ``tuning'' section of the manual for performance considerations.
+#
+#
+# set timeout=600
+#
+# Name: timeout
+# Type: number
+# Default: 600
+#
+#
+# When Mutt is waiting for user input either idling in menus or
+# in an interactive prompt, Mutt would block until input is
+# present. Depending on the context, this would prevent certain
+# operations from working, like checking for new mail or keeping
+# an IMAP connection alive.
+#
+# This variable controls how many seconds Mutt will at most wait
+# until it aborts waiting for input, performs these operations and
+# continues to wait for input.
+#
+# A value of zero or less will cause Mutt to never time out.
+#
+#
+# set tmpdir=""
+#
+# Name: tmpdir
+# Type: path
+# Default: ""
+#
+#
+# This variable allows you to specify where Mutt will place its
+# temporary files needed for displaying and composing messages. If
+# this variable is not set, the environment variable $TMPDIR is
+# used. If $TMPDIR is not set then ``/tmp'' is used.
+#
+#
+# set to_chars=" +TCFL"
+#
+# Name: to_chars
+# Type: string
+# Default: " +TCFL"
+#
+#
+# Controls the character used to indicate mail addressed to you. The
+# first character is the one used when the mail is not addressed to your
+# address. The second is used when you are the only
+# recipient of the message. The third is when your address
+# appears in the ``To:'' header field, but you are not the only recipient of
+# the message. The fourth character is used when your
+# address is specified in the ``Cc:'' header field, but you are not the only
+# recipient. The fifth character is used to indicate mail that was sent
+# by you. The sixth character is used to indicate when a mail
+# was sent to a mailing-list you subscribe to.
+#
+#
+# set trash=""
+#
+# Name: trash
+# Type: path
+# Default: ""
+#
+#
+# If set, this variable specifies the path of the trash folder where the
+# mails marked for deletion will be moved, instead of being irremediably
+# purged.
+#
+# NOTE: When you delete a message in the trash folder, it is really
+# deleted, so that you have a way to clean the trash.
+#
+#
+# set ts_icon_format="M%?n?AIL&ail?"
+#
+# Name: ts_icon_format
+# Type: string
+# Default: "M%?n?AIL&ail?"
+#
+#
+# Controls the format of the icon title, as long as ``$ts_enabled'' is set.
+# This string is identical in formatting to the one used by
+# ``$status_format''.
+#
+#
+# set ts_enabled=no
+#
+# Name: ts_enabled
+# Type: boolean
+# Default: no
+#
+#
+# Controls whether mutt tries to set the terminal status line and icon name.
+# Most terminal emulators emulate the status line in the window title.
+#
+#
+# set ts_status_format="Mutt with %?m?%m messages&no messages?%?n? [%n NEW]?"
+#
+# Name: ts_status_format
+# Type: string
+# Default: "Mutt with %?m?%m messages&no messages?%?n? [%n NEW]?"
+#
+#
+# Controls the format of the terminal status line (or window title),
+# provided that ``$ts_enabled'' has been set. This string is identical in
+# formatting to the one used by ``$status_format''.
+#
+#
+# set tunnel=""
+#
+# Name: tunnel
+# Type: string
+# Default: ""
+#
+#
+# Setting this variable will cause mutt to open a pipe to a command
+# instead of a raw socket. You may be able to use this to set up
+# preauthenticated connections to your IMAP/POP3/SMTP server. Example:
+# set tunnel="ssh -q mailhost.net /usr/local/libexec/imapd"
+#
+# Note: For this example to work you must be able to log in to the remote
+# machine without having to enter a password.
+#
+# When set, Mutt uses the tunnel for all remote connections.
+# Please see ``account-hook'' in the manual for how to use different
+# tunnel commands per connection.
+#
+#
+# set uncollapse_jump=no
+#
+# Name: uncollapse_jump
+# Type: boolean
+# Default: no
+#
+#
+# When set, Mutt will jump to the next unread message, if any,
+# when the current thread is uncollapsed.
+#
+#
+# set uncollapse_new=yes
+#
+# Name: uncollapse_new
+# Type: boolean
+# Default: yes
+#
+#
+# When set, Mutt will automatically uncollapse any collapsed thread
+# that receives a new message. When unset, collapsed threads will
+# remain collapsed. the presence of the new message will still affect
+# index sorting, though.
+#
+#
+# set use_8bitmime=no
+#
+# Name: use_8bitmime
+# Type: boolean
+# Default: no
+#
+#
+# Warning: do not set this variable unless you are using a version
+# of sendmail which supports the -B8BITMIME flag (such as sendmail
+# 8.8.x) or you may not be able to send mail.
+#
+# When set, Mutt will invoke $sendmail with the -B8BITMIME
+# flag when sending 8-bit messages to enable ESMTP negotiation.
+#
+#
+# set use_domain=yes
+#
+# Name: use_domain
+# Type: boolean
+# Default: yes
+#
+#
+# When set, Mutt will qualify all local addresses (ones without the
+# ``@host'' portion) with the value of $hostname. If unset, no
+# addresses will be qualified.
+#
+#
+# set use_envelope_from=no
+#
+# Name: use_envelope_from
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will set the envelope sender of the message.
+# If $envelope_from_address is set, it will be used as the sender
+# address. If unset, mutt will attempt to derive the sender from the
+# ``From:'' header.
+#
+# Note that this information is passed to sendmail command using the
+# -f command line switch. Therefore setting this option is not useful
+# if the $sendmail variable already contains -f or if the
+# executable pointed to by $sendmail doesn't support the -f switch.
+#
+#
+# set use_from=yes
+#
+# Name: use_from
+# Type: boolean
+# Default: yes
+#
+#
+# When set, Mutt will generate the ``From:'' header field when
+# sending messages. If unset, no ``From:'' header field will be
+# generated unless the user explicitly sets one using the ``my_hdr''
+# command.
+#
+#
+# set use_ipv6=yes
+#
+# Name: use_ipv6
+# Type: boolean
+# Default: yes
+#
+#
+# When set, Mutt will look for IPv6 addresses of hosts it tries to
+# contact. If this option is unset, Mutt will restrict itself to IPv4 addresses.
+# Normally, the default should work.
+#
+#
+# set user_agent=no
+#
+# Name: user_agent
+# Type: boolean
+# Default: no
+#
+#
+# When set, mutt will add a ``User-Agent:'' header to outgoing
+# messages, indicating which version of mutt was used for composing
+# them.
+#
+#
+# set visual=""
+#
+# Name: visual
+# Type: path
+# Default: ""
+#
+#
+# Specifies the visual editor to invoke when the ``~v'' command is
+# given in the built-in editor.
+#
+#
+# set wait_key=yes
+#
+# Name: wait_key
+# Type: boolean
+# Default: yes
+#
+#
+# Controls whether Mutt will ask you to press a key after an external command
+# has been invoked by these functions: <shell-escape>,
+# <pipe-message>, <pipe-entry>, <print-message>,
+# and <print-entry> commands.
+#
+# It is also used when viewing attachments with ``auto_view'', provided
+# that the corresponding mailcap entry has a needsterminal flag,
+# and the external program is interactive.
+#
+# When set, Mutt will always ask for a key. When unset, Mutt will wait
+# for a key only if the external command returned a non-zero status.
+#
+#
+# set weed=yes
+#
+# Name: weed
+# Type: boolean
+# Default: yes
+#
+#
+# When set, mutt will weed headers when displaying, forwarding,
+# printing, or replying to messages.
+#
+#
+# set wrap=0
+#
+# Name: wrap
+# Type: number
+# Default: 0
+#
+#
+# When set to a positive value, mutt will wrap text at $wrap characters.
+# When set to a negative value, mutt will wrap text so that there are $wrap
+# characters of empty space on the right side of the terminal. Setting it
+# to zero makes mutt wrap at the terminal width.
+#
+# Also see $reflow_wrap.
+#
+#
+# set wrap_headers=78
+#
+# Name: wrap_headers
+# Type: number
+# Default: 78
+#
+#
+# This option specifies the number of characters to use for wrapping
+# an outgoing message's headers. Allowed values are between 78 and 998
+# inclusive.
+#
+# Note: This option usually shouldn't be changed. RFC5233
+# recommends a line length of 78 (the default), so please only change
+# this setting when you know what you're doing.
+#
+#
+# set wrap_search=yes
+#
+# Name: wrap_search
+# Type: boolean
+# Default: yes
+#
+#
+# Controls whether searches wrap around the end.
+#
+# When set, searches will wrap around the first (or last) item. When
+# unset, incremental searches will not wrap.
+#
+#
+# set wrapmargin=0
+#
+# Name: wrapmargin
+# Type: number
+# Default: 0
+#
+#
+# (DEPRECATED) Equivalent to setting $wrap with a negative value.
+#
+#
+# set write_bcc=no
+#
+# Name: write_bcc
+# Type: boolean
+# Default: no
+#
+#
+# Controls whether mutt writes out the ``Bcc:'' header when
+# preparing messages to be sent. Some MTAs, such as Exim and
+# Courier, do not strip the ``Bcc:'' header; so it is advisable to
+# leave this unset unless you have a particular need for the header
+# to be in the sent message.
+#
+# If mutt is set to deliver directly via SMTP (see $smtp_url),
+# this option does nothing: mutt will never write out the ``Bcc:''
+# header in this case.
+#
+# Note this option only affects the sending of messages. Fcc'ed
+# copies of a message will always contain the ``Bcc:'' header if
+# one exists.
+#
+#
+# set write_inc=10
+#
+# Name: write_inc
+# Type: number
+# Default: 10
+#
+#
+# When writing a mailbox, a message will be printed every
+# $write_inc messages to indicate progress. If set to 0, only a
+# single message will be displayed before writing a mailbox.
+#
+# Also see the $read_inc, $net_inc and $time_inc variables and the
+# ``tuning'' section of the manual for performance considerations.
+#
+#
diff --git a/.config/newsboat/config b/.config/newsboat/config
new file mode 100644
index 0000000..93c773b
--- /dev/null
+++ b/.config/newsboat/config
@@ -0,0 +1,71 @@
+prepopulate-query-feeds yes
+
+urls-source "ocnews"
+ocnews-url "https://nextcloud.53hor.net"
+ocnews-login "adam"
+ocnews-passwordfile "~/.config/newsboat/ocnews-password"
+
+# -- display -------------------------------------------------------------------
+
+show-read-feeds yes
+feed-sort-order unreadarticlecount-asc
+
+color info default default reverse
+color listnormal_unread cyan default
+color listfocus blue default reverse bold
+color listfocus_unread blue default reverse bold
+color article cyan default
+color listnormal yellow default
+
+text-width 80
+
+articlelist-format "%4i %f %D %?T?|%-17T| ?%t"
+
+highlight feedlist "^ *[0-9]+ *N " magenta magenta
+highlight articlelist "^ *[0-9]+ *N " magenta magenta
+
+highlight article "(^Feed:.*|^Title:.*|^Author:.*)" red default
+highlight article "(^Link:.*|^Date:.*)" white default
+highlight article "^Podcast Download URL:.*" cyan default
+highlight article "^Links:" magenta black underline
+highlight article "https?://[^ ]+" green default
+highlight article "^(Title):.*$" blue default
+highlight article "\\[[0-9][0-9]*\\]" magenta default bold
+highlight article "\\[image\\ [0-9]+\\]" green default bold
+highlight article "\\[embedded flash: [0-9][0-9]*\\]" green default bold
+highlight article ":.*\\(link\\)$" cyan default
+highlight article ":.*\\(image\\)$" blue default
+highlight article ":.*\\(embedded flash\\)$" magenta default
+
+
+# -- navigation ----------------------------------------------------------------
+
+goto-next-feed no
+
+#browser "xdg-open" # This will open the browser defined by xdg-settings
+browser "firefox"
+
+# Below bindings apply vim like keybindings in most places
+
+bind-key h quit articlelist
+bind-key h quit article
+bind-key h quit tagselection
+bind-key h quit feedlist
+bind-key j down feedlist
+bind-key j down tagselection
+bind-key j next articlelist
+bind-key j down article
+bind-key J next-feed articlelist
+bind-key k up feedlist
+bind-key k prev articlelist
+bind-key k up tagselection
+bind-key K prev-feed articlelist
+bind-key k up article
+bind-key l open articlelist
+bind-key l open feedlist
+bind-key l open tagselection
+bind-key G end
+bind-key g home
+bind-key d pagedown
+bind-key u pageup
+bind-key s toggle-show-read-feeds
diff --git a/.config/picom/picom.conf b/.config/picom/picom.conf
new file mode 100644
index 0000000..2c39f5d
--- /dev/null
+++ b/.config/picom/picom.conf
@@ -0,0 +1,423 @@
+#################################
+# Shadows #
+#################################
+
+
+# Enabled client-side shadows on windows. Note desktop windows
+# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
+# unless explicitly requested using the wintypes option.
+#
+# shadow = false
+shadow = true;
+
+# The blur radius for shadows, in pixels. (defaults to 12)
+# shadow-radius = 12
+#shadow-radius = 7;
+
+# The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
+# shadow-opacity = .75
+
+# The left offset for shadows, in pixels. (defaults to -15)
+# shadow-offset-x = -15
+#shadow-offset-x = -7;
+
+# The top offset for shadows, in pixels. (defaults to -15)
+# shadow-offset-y = -15
+#shadow-offset-y = -7;
+
+# Avoid drawing shadows on dock/panel windows. This option is deprecated,
+# you should use the *wintypes* option in your config file instead.
+#
+# no-dock-shadow = false
+
+# Don't draw shadows on drag-and-drop windows. This option is deprecated,
+# you should use the *wintypes* option in your config file instead.
+#
+# no-dnd-shadow = false
+
+# Red color value of shadow (0.0 - 1.0, defaults to 0).
+# shadow-red = 0
+
+# Green color value of shadow (0.0 - 1.0, defaults to 0).
+# shadow-green = 0
+
+# Blue color value of shadow (0.0 - 1.0, defaults to 0).
+# shadow-blue = 0
+
+# Do not paint shadows on shaped windows. Note shaped windows
+# here means windows setting its shape through X Shape extension.
+# Those using ARGB background is beyond our control.
+# Deprecated, use
+# shadow-exclude = 'bounding_shaped'
+# or
+# shadow-exclude = 'bounding_shaped && !rounded_corners'
+# instead.
+#
+# shadow-ignore-shaped = ''
+
+# Specify a list of conditions of windows that should have no shadow.
+#
+# examples:
+# shadow-exclude = "n:e:Notification";
+#
+# shadow-exclude = []
+shadow-exclude = [
+ "name = 'Notification'",
+ "class_g ?= 'Notify-osd'",
+ "_GTK_FRAME_EXTENTS@:c"
+];
+
+# Specify a X geometry that describes the region in which shadow should not
+# be painted in, such as a dock window region. Use
+# shadow-exclude-reg = "x10+0+0"
+# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on.
+#
+# shadow-exclude-reg = ""
+
+# Crop shadow of a window fully on a particular Xinerama screen to the screen.
+# xinerama-shadow-crop = false
+
+
+#################################
+# Fading #
+#################################
+
+
+# Fade windows in/out when opening/closing and when opacity changes,
+# unless no-fading-openclose is used.
+# fading = false
+fading = true
+
+# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
+# fade-in-step = 0.028
+fade-in-step = 0.05;
+
+# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
+# fade-out-step = 0.03
+fade-out-step = 0.05;
+
+# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
+# fade-delta = 10
+
+# Specify a list of conditions of windows that should not be faded.
+fade-exclude = [
+ "class_g = 'Rofi'"
+]
+
+# Do not fade on window open/close.
+# no-fading-openclose = false
+
+# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
+# no-fading-destroyed-argb = false
+
+
+#################################
+# Transparency / Opacity #
+#################################
+
+
+# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
+# inactive-opacity = 1
+inactive-opacity = 0.8;
+
+# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
+# frame-opacity = 1.0
+frame-opacity = 0.7;
+
+# Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0)
+# menu-opacity = 1.0
+
+# Let inactive opacity set by -i override the '_NET_WM_OPACITY' values of windows.
+# inactive-opacity-override = true
+inactive-opacity-override = false;
+
+# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
+#active-opacity = 1.0
+
+# Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
+# inactive-dim = 0.0
+
+# Specify a list of conditions of windows that should always be considered focused.
+# focus-exclude = []
+focus-exclude = [
+ "class_g = 'Firefox'"
+];
+
+# Use fixed inactive dim value, instead of adjusting according to window opacity.
+# inactive-dim-fixed = 1.0
+
+# Specify a list of opacity rules, in the format `PERCENT:PATTERN`,
+# like `50:name *= "Firefox"`. picom-trans is recommended over this.
+# Note we don't make any guarantee about possible conflicts with other
+# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows.
+# example:
+# opacity-rule = [ "80:class_g = 'URxvt'" ];
+#
+#opacity-rule = ["5:name = 'i3lock'"]
+
+
+#################################
+# Background-Blurring #
+#################################
+
+
+# Parameters for background blurring, see the *BLUR* section for more information.
+# blur-method = "gaussian"
+# blur-size = 12
+#
+# blur-deviation = false
+
+# Blur background of semi-transparent / ARGB windows.
+# Bad in performance, with driver-dependent behavior.
+# The name of the switch may change without prior notifications.
+#
+# blur-background = false
+
+# Blur background of windows when the window frame is not opaque.
+# Implies:
+# blur-background
+# Bad in performance, with driver-dependent behavior. The name may change.
+#
+# blur-background-frame = false
+
+
+# Use fixed blur strength rather than adjusting according to window opacity.
+# blur-background-fixed = false
+
+
+# Specify the blur convolution kernel, with the following format:
+# example:
+# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
+#
+# blur-kern = ''
+blur-kern = "3x3box";
+
+
+# Exclude conditions for background blur.
+# blur-background-exclude = []
+blur-background-exclude = [
+ "window_type = 'dock'",
+ "window_type = 'desktop'",
+ "_GTK_FRAME_EXTENTS@:c"
+];
+
+#################################
+# General Settings #
+#################################
+
+# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
+# daemon = false
+
+# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
+# `xrender` is the default one.
+#backend = "glx";
+
+# Enable/disable VSync.
+# vsync = false
+vsync = true
+
+# Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
+# dbus = false
+
+# Try to detect WM windows (a non-override-redirect window with no
+# child that has 'WM_STATE') and mark them as active.
+#
+# mark-wmwin-focused = false
+mark-wmwin-focused = true;
+
+# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
+# mark-ovredir-focused = false
+mark-ovredir-focused = true;
+
+# Try to detect windows with rounded corners and don't consider them
+# shaped windows. The accuracy is not very high, unfortunately.
+#
+# detect-rounded-corners = false
+detect-rounded-corners = true;
+
+# Detect '_NET_WM_OPACITY' on client windows, useful for window managers
+# not passing '_NET_WM_OPACITY' of client windows to frame windows.
+#
+# detect-client-opacity = false
+detect-client-opacity = true;
+
+# Specify refresh rate of the screen. If not specified or 0, picom will
+# try detecting this with X RandR extension.
+#
+# refresh-rate = 60
+refresh-rate = 0
+
+# Limit picom to repaint at most once every 1 / 'refresh_rate' second to
+# boost performance. This should not be used with
+# vsync drm/opengl/opengl-oml
+# as they essentially does sw-opti's job already,
+# unless you wish to specify a lower refresh rate than the actual value.
+#
+# sw-opti =
+
+# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
+# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy,
+# provided that the WM supports it.
+#
+# use-ewmh-active-win = false
+
+# Unredirect all windows if a full-screen opaque window is detected,
+# to maximize performance for full-screen windows. Known to cause flickering
+# when redirecting/unredirecting windows.
+#
+# unredir-if-possible = false
+
+# Delay before unredirecting the window, in milliseconds. Defaults to 0.
+# unredir-if-possible-delay = 0
+
+# Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
+# unredir-if-possible-exclude = []
+
+# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
+# in the same group focused at the same time.
+#
+# detect-transient = false
+detect-transient = true
+
+# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
+# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if
+# detect-transient is enabled, too.
+#
+# detect-client-leader = false
+detect-client-leader = true
+
+# Resize damaged region by a specific number of pixels.
+# A positive value enlarges it while a negative one shrinks it.
+# If the value is positive, those additional pixels will not be actually painted
+# to screen, only used in blur calculation, and such. (Due to technical limitations,
+# with use-damage, those pixels will still be incorrectly painted to screen.)
+# Primarily used to fix the line corruption issues of blur,
+# in which case you should use the blur radius value here
+# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`,
+# with a 5x5 one you use `--resize-damage 2`, and so on).
+# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly.
+#
+# resize-damage = 1
+
+# Specify a list of conditions of windows that should be painted with inverted color.
+# Resource-hogging, and is not well tested.
+#
+# invert-color-include = []
+
+# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
+# Might cause incorrect opacity when rendering transparent content (but never
+# practically happened) and may not work with blur-background.
+# My tests show a 15% performance boost. Recommended.
+#
+# glx-no-stencil = false
+
+# GLX backend: Avoid rebinding pixmap on window damage.
+# Probably could improve performance on rapid window content changes,
+# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
+# Recommended if it works.
+#
+# glx-no-rebind-pixmap = false
+
+# Disable the use of damage information.
+# This cause the whole screen to be redrawn everytime, instead of the part of the screen
+# has actually changed. Potentially degrades the performance, but might fix some artifacts.
+# The opposing option is use-damage
+#
+# no-use-damage = false
+use-damage = true
+
+# Use X Sync fence to sync clients' draw calls, to make sure all draw
+# calls are finished before picom starts drawing. Needed on nvidia-drivers
+# with GLX backend for some users.
+#
+# xrender-sync-fence = false
+
+# GLX backend: Use specified GLSL fragment shader for rendering window contents.
+# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl`
+# in the source tree for examples.
+#
+# glx-fshader-win = ''
+
+# Force all windows to be painted with blending. Useful if you
+# have a glx-fshader-win that could turn opaque pixels transparent.
+#
+# force-win-blend = false
+
+# Do not use EWMH to detect fullscreen windows.
+# Reverts to checking if a window is fullscreen based only on its size and coordinates.
+#
+# no-ewmh-fullscreen = false
+
+# Dimming bright windows so their brightness doesn't exceed this set value.
+# Brightness of a window is estimated by averaging all pixels in the window,
+# so this could comes with a performance hit.
+# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0)
+#
+# max-brightness = 1.0
+
+# Make transparent windows clip other windows like non-transparent windows do,
+# instead of blending on top of them.
+#
+# transparent-clipping = false
+
+# Set the log level. Possible values are:
+# "trace", "debug", "info", "warn", "error"
+# in increasing level of importance. Case doesn't matter.
+# If using the "TRACE" log level, it's better to log into a file
+# using *--log-file*, since it can generate a huge stream of logs.
+#
+# log-level = "debug"
+log-level = "warn";
+
+# Set the log file.
+# If *--log-file* is never specified, logs will be written to stderr.
+# Otherwise, logs will to written to the given file, though some of the early
+# logs might still be written to the stderr.
+# When setting this option from the config file, it is recommended to use an absolute path.
+#
+# log-file = '/path/to/your/log/file'
+
+# Show all X errors (for debugging)
+# show-all-xerrors = false
+
+# Write process ID to a file.
+# write-pid-path = '/path/to/your/log/file'
+
+# Window type settings
+#
+# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
+# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
+# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
+# "tooltip", "notification", "combo", and "dnd".
+#
+# Following per window-type options are available: ::
+#
+# fade, shadow:::
+# Controls window-type-specific shadow and fade settings.
+#
+# opacity:::
+# Controls default opacity of the window type.
+#
+# focus:::
+# Controls whether the window of this type is to be always considered focused.
+# (By default, all window types except "normal" and "dialog" has this on.)
+#
+# full-shadow:::
+# Controls whether shadow is drawn under the parts of the window that you
+# normally won't be able to see. Useful when the window has parts of it
+# transparent, and you want shadows in those areas.
+#
+# redir-ignore:::
+# Controls whether this type of windows should cause screen to become
+# redirected again after been unredirected. If you have unredir-if-possible
+# set, and doesn't want certain window to cause unnecessary screen redirection,
+# you can set this to `true`.
+#
+wintypes:
+{
+ tooltip = { fade = true; shadow = true; opacity = 0.9; focus = true; full-shadow = false; };
+ dock = { shadow = false; }
+ dnd = { shadow = false; }
+ popup_menu = { fade = false; opacity = 0.9; }
+ dropdown_menu = { fade = false; opacity = 0.9; }
+};
diff --git a/.config/rofi/config b/.config/rofi/config
new file mode 100644
index 0000000..e2080b8
--- /dev/null
+++ b/.config/rofi/config
@@ -0,0 +1,27 @@
+rofi.modi: run,window,ssh
+rofi.width: 25
+rofi.lines: 25
+rofi.columns: 1
+rofi.font: Iosevka Etoile 14
+rofi.color-normal: #0c0c09, #fcffff, #0c0c09, #96b9cb, #fcffff
+rofi.color-urgent: #0c0c09, #d6b48d, #22231D, #d6b48d, #fcffff
+rofi.color-active: #0c0c09, #7ebaff, #0c0c09, #7ebaff, #0c0c09
+rofi.color-window: #0c0c09, #96b9cb, #677f8c
+rofi.bw: 5
+rofi.location: 0
+rofi.padding: 5
+rofi.yoffset: 0
+rofi.xoffset: 0
+rofi.fixed-num-lines: true
+rofi.terminal: rofi-sensible-terminal
+rofi.ssh-client: ssh
+rofi.ssh-command: {terminal} -e {ssh-client} {host}
+rofi.run-command: {cmd}
+rofi.parse-hosts: true
+rofi.matching: normal
+rofi.separator-style: none
+rofi.scrollbar-width: 0
+rofi.kb-mode-next: Shift+Right,Control+Tab,Alt+l
+rofi.kb-mode-previous: Shift+Left,Control+Shift+Tab,Alt+h
+rofi.kb-row-up: Up,Control+p,Shift+Tab,Shift+ISO_Left_Tab,Alt+k
+rofi.kb-row-down: Down,Control+n,Alt+j
diff --git a/.config/vifm/colors/Default.vifm b/.config/vifm/colors/Default.vifm
new file mode 100644
index 0000000..fa715ae
--- /dev/null
+++ b/.config/vifm/colors/Default.vifm
@@ -0,0 +1,65 @@
+" You can edit this file by hand.
+" The " character at the beginning of a line comments out the line.
+" Blank lines are ignored.
+
+" The Default color scheme is used for any directory that does not have
+" a specified scheme and for parts of user interface like menus. A
+" color scheme set for a base directory will also
+" be used for the sub directories.
+
+" The standard ncurses colors are:
+" Default = -1 = None, can be used for transparency or default color
+" Black = 0
+" Red = 1
+" Green = 2
+" Yellow = 3
+" Blue = 4
+" Magenta = 5
+" Cyan = 6
+" White = 7
+
+" Light versions of colors are also available (set bold attribute):
+" LightBlack
+" LightRed
+" LightGreen
+" LightYellow
+" LightBlue
+" LightMagenta
+" LightCyan
+" LightWhite
+
+" Available attributes (some of them can be combined):
+" bold
+" underline
+" reverse or inverse
+" standout
+" none
+
+" Vifm supports 256 colors you can use color numbers 0-255
+" (requires properly set up terminal: set your TERM environment variable
+" (directly or using resources) to some color terminal name (e.g.
+" xterm-256color) from /usr/lib/terminfo/; you can check current number
+" of colors in your terminal with tput colors command)
+
+" highlight group cterm=attrs ctermfg=foreground_color ctermbg=background_color
+
+highlight clear
+
+highlight Win cterm=none ctermfg=white ctermbg=black
+highlight Directory cterm=bold ctermfg=cyan ctermbg=default
+highlight Link cterm=bold ctermfg=yellow ctermbg=default
+highlight BrokenLink cterm=bold ctermfg=red ctermbg=default
+highlight Socket cterm=bold ctermfg=magenta ctermbg=default
+highlight Device cterm=bold ctermfg=red ctermbg=default
+highlight Fifo cterm=bold ctermfg=cyan ctermbg=default
+highlight Executable cterm=bold ctermfg=green ctermbg=default
+highlight Selected cterm=bold ctermfg=magenta ctermbg=default
+highlight CurrLine cterm=bold ctermfg=default ctermbg=blue
+highlight TopLine cterm=none ctermfg=black ctermbg=white
+highlight TopLineSel cterm=bold ctermfg=black ctermbg=default
+highlight StatusLine cterm=bold ctermfg=black ctermbg=white
+highlight WildMenu cterm=underline,reverse ctermfg=white ctermbg=black
+highlight CmdLine cterm=none ctermfg=white ctermbg=black
+highlight ErrorMsg cterm=none ctermfg=red ctermbg=black
+highlight Border cterm=none ctermfg=black ctermbg=white
+highlight JobLine cterm=bold,reverse ctermfg=black ctermbg=white
diff --git a/.config/vifm/colors/Default.vifm.bak b/.config/vifm/colors/Default.vifm.bak
new file mode 100644
index 0000000..7434b36
--- /dev/null
+++ b/.config/vifm/colors/Default.vifm.bak
@@ -0,0 +1,80 @@
+" You can edit this file by hand.
+" The " character at the beginning of a line comments out the line.
+" Blank lines are ignored.
+
+" The Default color scheme is used for any directory that does not have
+" a specified scheme and for parts of user interface like menus. A
+" color scheme set for a base directory will also
+" be used for the sub directories.
+
+" The standard ncurses colors are:
+" Default = -1 = None, can be used for transparency or default color
+" Black = 0
+" Red = 1
+" Green = 2
+" Yellow = 3
+" Blue = 4
+" Magenta = 5
+" Cyan = 6
+" White = 7
+
+" Light versions of colors are also available (set bold attribute):
+" LightBlack
+" LightRed
+" LightGreen
+" LightYellow
+" LightBlue
+" LightMagenta
+" LightCyan
+" LightWhite
+
+" Available attributes (some of them can be combined):
+" bold
+" underline
+" reverse or inverse
+" standout
+" italic (on unsupported systems becomes reverse)
+" none
+
+" Vifm supports 256 colors you can use color numbers 0-255
+" (requires properly set up terminal: set your TERM environment variable
+" (directly or using resources) to some color terminal name (e.g.
+" xterm-256color) from /usr/lib/terminfo/; you can check current number
+" of colors in your terminal with tput colors command)
+
+" highlight group cterm=attrs ctermfg=foreground_color ctermbg=background_color
+
+highlight clear
+
+highlight Win cterm=none ctermfg=white ctermbg=black
+highlight Directory cterm=bold ctermfg=cyan ctermbg=default
+highlight Link cterm=bold ctermfg=yellow ctermbg=default
+highlight BrokenLink cterm=bold ctermfg=red ctermbg=default
+highlight Socket cterm=bold ctermfg=magenta ctermbg=default
+highlight Device cterm=bold ctermfg=red ctermbg=default
+highlight Fifo cterm=bold ctermfg=cyan ctermbg=default
+highlight Executable cterm=bold ctermfg=green ctermbg=default
+highlight Selected cterm=bold ctermfg=magenta ctermbg=default
+highlight CurrLine cterm=bold,reverse ctermfg=default ctermbg=default
+highlight TopLine cterm=none ctermfg=black ctermbg=white
+highlight TopLineSel cterm=bold ctermfg=black ctermbg=default
+highlight StatusLine cterm=bold ctermfg=black ctermbg=white
+highlight WildMenu cterm=underline,reverse ctermfg=white ctermbg=black
+highlight CmdLine cterm=none ctermfg=white ctermbg=black
+highlight ErrorMsg cterm=none ctermfg=red ctermbg=black
+highlight Border cterm=none ctermfg=black ctermbg=white
+highlight JobLine cterm=bold,reverse ctermfg=black ctermbg=white
+highlight SuggestBox cterm=bold ctermfg=default ctermbg=default
+highlight CmpMismatch cterm=bold ctermfg=white ctermbg=red
+highlight AuxWin cterm=bold,underline,reverse,standout,italic ctermfg=default ctermbg=default
+highlight TabLine cterm=none ctermfg=white ctermbg=black
+highlight TabLineSel cterm=bold,reverse ctermfg=default ctermbg=default
+highlight User1 cterm=bold,underline,reverse,standout,italic ctermfg=default ctermbg=default
+highlight User2 cterm=bold,underline,reverse,standout,italic ctermfg=default ctermbg=default
+highlight User3 cterm=bold,underline,reverse,standout,italic ctermfg=default ctermbg=default
+highlight User4 cterm=bold,underline,reverse,standout,italic ctermfg=default ctermbg=default
+highlight User5 cterm=bold,underline,reverse,standout,italic ctermfg=default ctermbg=default
+highlight User6 cterm=bold,underline,reverse,standout,italic ctermfg=default ctermbg=default
+highlight User7 cterm=bold,underline,reverse,standout,italic ctermfg=default ctermbg=default
+highlight User8 cterm=bold,underline,reverse,standout,italic ctermfg=default ctermbg=default
+highlight User9 cterm=bold,underline,reverse,standout,italic ctermfg=default ctermbg=default
diff --git a/.config/vifm/scripts/README b/.config/vifm/scripts/README
new file mode 100644
index 0000000..7694952
--- /dev/null
+++ b/.config/vifm/scripts/README
@@ -0,0 +1,6 @@
+This directory is dedicated for user-supplied scripts/executables.
+vifm modifies its PATH environment variable to let user run those
+scripts without specifying full path. All subdirectories are added
+as well. File in a subdirectory overrules file with the same name
+in parent directories. Restart might be needed to recognize files
+in newly created or renamed subdirectories. \ No newline at end of file
diff --git a/.config/vifm/vifm-help.txt b/.config/vifm/vifm-help.txt
new file mode 100644
index 0000000..1343fe6
--- /dev/null
+++ b/.config/vifm/vifm-help.txt
@@ -0,0 +1,5902 @@
+VIFM(1) FreeBSD General Commands Manual VIFM(1)
+
+
+
+NAME
+ vifm - vi file manager
+
+SYNOPSIS
+ vifm [OPTION]...
+ vifm [OPTION]... path
+ vifm [OPTION]... path path
+
+DESCRIPTION
+ Vifm is an ncurses based file manager with vi like keybindings. If you
+ use vi, vifm gives you complete keyboard control over your files
+ without having to learn a new set of commands.
+
+OPTIONS
+ vifm starts in the current directory unless it is given a different
+ directory on the command line or 'vifminfo' option includes "savedirs"
+ (in which case last visited directories are used as defaults).
+
+ - Read list of files from standard input stream and compose custom
+ view out of them (see "Custom views" section). Current working
+ directory is used as a base for relative paths.
+
+ <path> Starts Vifm in the specified path.
+
+ <path> <path>
+ Starts Vifm in the specified paths.
+
+ Specifying two directories triggers split view even when vifm was in
+ single-view mode on finishing previous session. To suppress this
+ behaviour :only command can be put in the vifmrc file.
+
+ When only one path argument is found on command-line, the left/top pane
+ is automatically set as the current view.
+
+ Paths to files are also allowed in case you want vifm to start with
+ some archive opened.
+
+ --select <path>
+ Open parent directory of the given path and select specified
+ file in it.
+
+ -f Makes vifm instead of opening files write selection to
+ $VIFM/vimfiles and quit.
+
+ --choose-files <path>|-
+ Sets output file to write selection into on exit instead of
+ opening files. "-" means standard output. Use empty value to
+ disable it.
+
+ --choose-dir <path>|-
+ Sets output file to write last visited directory into on exit.
+ "-" means standard output. Use empty value to disable it.
+
+ --delimiter <delimiter>
+ Sets separator for list of file paths written out by vifm.
+ Empty value means null character. Default is new line
+ character.
+
+ --on-choose <command>
+ Sets command to be executed on selected files instead of opening
+ them. The command may use any of macros described in "Command
+ macros" section below. The command is executed once for whole
+ selection.
+
+ --logging[=<startup log path>]
+ Log some operational details $VIFM/log. If the optional startup
+ log path is specified and permissions allow to open it for
+ writing, then logging of early initialization (before value of
+ $VIFM is determined) is put there.
+
+ --server-list
+ List available server names and exit.
+
+ --server-name <name>
+ Name of target or this instance (sequential numbers are appended
+ on name conflict).
+
+ --remote
+ Sends the rest of the command line to another instance of vifm,
+ --server-name is treated just like any other argument and should
+ precede --remote on the command line. When there is no server,
+ quits silently. There is no limit on how many arguments can be
+ processed. One can combine --remote with -c <command> or
+ +<command> to execute commands in already running instance of
+ vifm. See also "Client-Server" section below.
+
+ --remote-expr
+ passes expression to vifm server and prints result. See also
+ "Client-Server" section below.
+
+ -c <command> or +<command>
+ Run command-line mode <command> on startup. Commands in such
+ arguments are executed in the order they appear in command line.
+ Commands with spaces or special symbols must be enclosed in
+ double or single quotes or all special symbols should be escaped
+ (the exact syntax strongly depends on shell). "+" argument is
+ equivalent to "$" and thus picks last item of of the view.
+
+ --help, -h
+ Show a brief command summary and exit vifm.
+
+ --version, -v
+ Show version information and quit.
+
+ --no-configs
+ Skip reading vifmrc and vifminfo.
+
+
+ See "Startup" section below for the explanations on $VIFM.
+
+General keys
+ Ctrl-C or Escape
+ cancel most operations (see "Cancellation" section below), clear
+ all selected files.
+
+ Ctrl-L clear and redraw the screen.
+
+Basic Movement
+ The basic vi key bindings are used to move through the files and pop-up
+ windows.
+
+ k, gk, or Ctrl-P
+ move cursor up one line.
+
+ j, gj or Ctrl-N
+ move cursor down one line.
+
+ h when 'lsview' is off move up one directory (moves to parent
+ directory node in tree view), otherwise move left one file.
+
+ l when 'lsview' is off move into a directory or launches a file,
+ otherwise move right one file.
+
+ gg move to the first line of the file list.
+
+ G move to the last line in the file list.
+
+ gh go up one directory regardless of view representation (regular,
+ ls-like). Also can be used to leave custom views including tree
+ view.
+
+ gl or Enter
+ enter directory or launch a file.
+
+ H move to the first file in the window.
+
+ M move to the file in the middle of the window.
+
+ L move to the last file in the window.
+
+ Ctrl-F or Page Down
+ move forward one page.
+
+ Ctrl-B or Page Up
+ move back one page.
+
+ Ctrl-D jump back one half page.
+
+ Ctrl-U jump forward one half page.
+
+ n% move to the file that is n percent from the top of the list (for
+ example 25%).
+
+ 0 or ^ move cursor to the first column. See 'lsview' option
+ description.
+
+ $ move cursor to the last column. See 'lsview' option
+ description.
+
+ Space switch file lists.
+
+ gt switch to the next tab (wrapping around).
+
+ {n}gt switch to the tab number {n} (wrapping around).
+
+ gT switch to the previous tab (wrapping around).
+
+ {n}gT switch to {n}-th previous tab.
+
+Movement with Count
+ Most movement commands also accept a count, 12j would move down 12
+ files.
+
+ [count]%
+ move to percent of the file list.
+
+ [count]j
+ move down [count] files.
+
+ [count]k
+ move up [count] files.
+
+ [count]G or [count]gg
+ move to list position [count].
+
+ [count]h
+ go up [count] directories.
+
+Scrolling panes
+ zt redraw pane with file in top of list.
+
+ zz redraw pane with file in center of list.
+
+ zb redraw pane with file in bottom of list.
+
+ Ctrl-E scroll pane one line down.
+
+ Ctrl-Y scroll pane one line up.
+
+Pane manipulation
+ Second character can be entered with or without Control key.
+
+ Ctrl-W H
+ move the pane to the far left.
+
+ Ctrl-W J
+ move the pane to the very bottom.
+
+ Ctrl-W K
+ move the pane to the very top.
+
+ Ctrl-W L
+ move the pane to the far right.
+
+
+ Ctrl-W h
+ switch to the left pane.
+
+ Ctrl-W j
+ switch to the pane below.
+
+ Ctrl-W k
+ switch to the pane above.
+
+ Ctrl-W l
+ switch to the right pane.
+
+
+ Ctrl-W b
+ switch to bottom-right window.
+
+ Ctrl-W t
+ switch to top-left window.
+
+
+ Ctrl-W p
+ switch to previous window.
+
+ Ctrl-W w
+ switch to other pane.
+
+
+ Ctrl-W o
+ leave only one pane.
+
+ Ctrl-W s
+ split window horizontally.
+
+ Ctrl-W v
+ split window vertically.
+
+
+ Ctrl-W x
+ exchange panes.
+
+ Ctrl-W z
+ quit preview pane or view modes.
+
+
+ Ctrl-W -
+ decrease size of the view by count.
+
+ Ctrl-W +
+ increase size of the view by count.
+
+ Ctrl-W <
+ decrease size of the view by count.
+
+ Ctrl-W >
+ increase size of the view by count.
+
+
+ Ctrl-W |
+ set current view size to count.
+
+ Ctrl-W _
+ set current view size to count.
+
+ Ctrl-W =
+ make size of two views equal.
+
+ For Ctrl-W +, Ctrl-W -, Ctrl-W <, Ctrl-W >, Ctrl-W | and Ctrl-W _
+ commands count can be given before and/or after Ctrl-W. The resulting
+ count is a multiplication of those two. So "2 Ctrl-W 2 -" decreases
+ window size by 4 lines or columns.
+
+ Ctrl-W | and Ctrl-W _ maximise current view by default.
+
+Marks
+ Marks are set the same way as they are in vi.
+
+ You can use these characters for marks [a-z][A-Z][0-9].
+
+ m[a-z][A-Z][0-9]
+ set a mark for the file at the current cursor position.
+
+ '[a-z][A-Z][0-9]
+ navigate to the file set for the mark.
+
+
+ There are also several special marks that can't be set manually:
+
+ - ' (single quote) - previously visited directory of the view, thus
+ hitting '' allows switching between two last locations
+
+ - < - the first file of the last visually selected block
+
+ - > - the last file of the last visually selected block
+
+Searching
+ /regular expression pattern
+ search for files matching regular expression in forward
+ direction and advance cursor to next match.
+
+ / perform forward search with top item of search pattern history.
+
+ ?regular expression pattern
+ search for files matching regular expression in backward
+ direction and advance cursor to previous match.
+
+ ? perform backward search with top item of search pattern history.
+
+ Trailing slash for directories is taken into account, so /\/ searches
+ for directories and symbolic links to directories. At the moment //
+ works too, but this can change in the future, so consider escaping the
+ slash if not typing pattern by hand.
+
+ Matches are automatically selected if 'hlsearch' is set. Enabling
+ 'incsearch' makes search interactive. 'ignorecase' and 'smartcase'
+ options affect case sensitivity of search queries.
+
+
+ [count]n
+ go to the next file matching last search pattern. Takes last
+ search direction into account.
+
+ [count]N
+ go to the previous file matching last search pattern. Takes
+ last search direction into account.
+
+ If 'hlsearch' option is set, hitting n/N to perform search and go to
+ the first matching item resets current selection in normal mode. It is
+ not the case if search was already performed on files in the directory,
+ thus selection is not reset after clearing selection with escape key
+ and hitting n/N key again.
+
+ Note: vifm uses extended regular expressions for / and ?.
+
+
+ [count]f[character]
+ search forward for file with [character] as first character in
+ name. Search wraps around the end of the list.
+
+ [count]F[character]
+ search backward for file with [character] as first character in
+ name. Search wraps around the end of the list.
+
+ [count];
+ find the next match of f or F.
+
+ [count],
+ find the previous match of f or F.
+
+ Note: f, F, ; and , wrap around list beginning and end when they are
+ used alone and they don't wrap when they are used as selectors.
+
+File Filters
+ There are three basic file filters:
+
+ - dot files filter (excluding "." and ".." special directories, whose
+ appearance is controlled by the 'dotdirs' option);
+
+ - manual filter for file names;
+
+ - automatic filter for file names;
+
+ - local filter for file names (see description of the "=" normal mode
+ command).
+
+ Performing operations on manual filter for file names automatically
+ does the same on automatic one. The file name filter is separated
+ mainly for convenience purpose and to get more deterministic behaviour.
+
+ The basic vim folding key bindings are used for filtering files.
+
+ Each file list has its own copy of each filter.
+
+ Filtered files are not checked in / search or :commands.
+
+ Files and directories are filtered separately. For this a slash is
+ appended to a directory name before testing whether it matches the
+ filter. Examples:
+
+
+ " filter directories which names end with '.files'
+ :filter /^.*\.files\/$/
+
+ " filter files which names end with '.d'
+ :filter /^.*\.d$/
+
+ " filter files and directories which names end with '.o'
+ :filter /^.*\.o\/?$/
+
+ Note: vifm uses extended regular expressions.
+
+ za toggle visibility of dot files.
+
+ zo show dot files.
+
+ zm hide dot files.
+
+ zf add selected files to file name filter.
+
+ zO show files hidden by file name filter.
+
+ zM restore all filters.
+
+ zR remove all filters.
+
+ zr remove local filter.
+
+ zd exclude selection or current file from a custom view. Does
+ nothing for regular view. For tree view excluding directory
+ excludes that sub-tree. For compare views zd hides group of
+ adjacent identical files, count can be specified as 1 to exclude
+ just single file or selected items instead. Files excluded this
+ way are not counted as filtered out and can't be returned unless
+ view is reloaded.
+
+ =regular expression pattern
+ filter out files that don't match regular expression. Whether
+ view is updated as regular expression is changed depends on the
+ value of the 'incsearch' option. This kind of filter is
+ automatically reset when directory is changed.
+
+Other Normal Mode Keys
+ [count]:
+ enter command line mode. [count] generates range.
+
+ q: open external editor to prompt for command-line command. See
+ "Command line editing" section for details.
+
+ q/ open external editor to prompt for search pattern to be searched
+ in forward direction. See "Command line editing" section for
+ details.
+
+ q? open external editor to prompt for search pattern to be searched
+ in backward direction. See "Command line editing" section for
+ details.
+
+ q= open external editor to prompt for filter pattern. See "Command
+ line editing" section for details. Unlike other q{x} commands
+ this one doesn't work in Visual mode.
+
+ [count]!! and [count]!<selector>
+ enter command line mode with entered ! command. [count]
+ modifies range.
+
+ Ctrl-O go backwards through directory history of current view.
+ Nonexistent directories are automatically skipped.
+
+ Ctrl-I if 'cpoptions' contains "t" flag, <tab> and <c-i> switch active
+ pane just like <space> does, otherwise it goes forward through
+ directory history of current view. Nonexistent directories are
+ automatically skipped.
+
+ Ctrl-G create a window showing detailed information about the current
+ file.
+
+ Shift-Tab
+ enters view mode (works only after activating view pane with
+ :view command).
+
+ ga calculate directory size. Uses cached directory sizes when
+ possible for better performance. As a special case calculating
+ size of ".." entry results in calculation of size of current
+ directory.
+
+ gA like ga, but force update. Ignores old values of directory
+ sizes.
+
+ If file under cursor is selected, each selected item is processed,
+ otherwise only current file is updated.
+
+ gf find link destination (like l with 'followlinks' off, but also
+ finds directories).
+
+ gr only for MS-Windows
+ same as l key, but tries to run program with administrative
+ privileges.
+
+ av go to visual mode into selection amending state preserving
+ current selection.
+
+ gv go to visual mode restoring last selection.
+
+ [reg]gs
+ when no register is specified, restore last t selection (similar
+ to what gv does for visual mode selection). If register is
+ present, then all files listed in that register and which are
+ visible in current view are selected.
+
+ gu<selector>
+ make names of selected files lowercase.
+
+ [count]guu and [count]gugu
+ make names of [count] files starting from the current one
+ lowercase. Without [count] only current file is affected.
+
+ gU<selector>
+ make names of selected files uppercase.
+
+ [count]gUU and [count]gUgU
+ make names of [count] files starting from the current one
+ uppercase. Without [count] only current file is affected.
+
+ e explore file in the current pane.
+
+ i handle file (even if it's an executable and 'runexec' option is
+ set).
+
+ cw change word is used to rename a file or files.
+
+ cW change WORD is used to change only name of file (without
+ extension).
+
+ cl change link target.
+
+ co only for *nix
+ change file owner.
+
+ cg only for *nix
+ change file group.
+
+ [count]cp
+ change file attributes (permission on *nix and properties on
+ Windows). If [count] is specified, it's treated as numerical
+ argument for non-recursive `chmod` command (of the form
+ [0-7]{3,4}).
+
+ [count]C
+ clone file [count] times.
+
+ [count]dd or d[count]selector
+ move selected file or files to trash directory (if 'trash'
+ option is set, otherwise delete). See "Trash directory" section
+ below.
+
+ [count]DD or D[count]selector
+ like dd and d<selector>, but omitting trash directory (even when
+ 'trash' option is set).
+
+ Y, [count]yy or y[count]selector
+ yank selected files.
+
+ p copy yanked files to the current directory or move the files to
+ the current directory if they were deleted with dd or :d[elete]
+ or if the files were yanked from trash directory. See "Trash
+ directory" section below.
+
+ P move the last yanked files. The advantage of using P instead of
+ d followed by p is that P moves files only once. This isn't
+ important in case you're moving files in the same file system
+ where your home directory is, but using P to move files on some
+ other file system (or file systems, in case you want to move
+ files from fs1 to fs2 and your home is on fs3) can save your
+ time.
+
+ al put symbolic links with absolute paths.
+
+ rl put symbolic links with relative paths.
+
+ t select or unselect (tag) the current file.
+
+ u undo last change.
+
+ Ctrl-R redo last change.
+
+ dp in compare view of "ofboth grouppaths" kind, makes corresponding
+ entry of the other pane equal to the current one. The semantics
+ is as follows:
+ - nothing done for identical entries
+ - if file is missing in current view, its pair gets removed
+ - if file is missing or differs in other view, it's replaced
+ - file pairs are defined by matching relative paths
+ File removal obeys 'trash' option. When the option is enabled,
+ the operation can be undone/redone (although results won't be
+ visible automatically).
+ Unlike in Vim, this operation is performed on a single line
+ rather than a set of adjacent changes.
+
+ do same as dp, but applies changes in the opposite direction.
+
+ v or V enter visual mode, clears current selection.
+
+ [count]Ctrl-A
+ increment first number in file name by [count] (1 by default).
+
+ [count]Ctrl-X
+ decrement first number in file name by [count] (1 by default).
+
+ ZQ same as :quit!.
+
+ ZZ same as :quit.
+
+ . repeat last command-line command (not normal mode command) of
+ this session (does nothing right after startup or :restart
+ command). The command doesn't depend on command-line history
+ and can be used with completely disabled history.
+
+ ( go to previous group. Groups are defined by primary sorting
+ key. For name and iname members of each group have same first
+ letter, for all other sorting keys vifm uses size, uid, ...
+
+ ) go to next group. See ( key description above.
+
+ { speeds up navigation to closest previous entry of the opposite
+ type by moving to the first file backwards when cursor is on a
+ directory and to the first directory backwards when cursor is on
+ a file. This is essentially a special case of ( that is locked
+ on "dirs".
+
+ } same as {, but in forward direction.
+
+ [c go to previous mismatched entry in directory comparison view or
+ do nothing.
+
+ ]c go to next mismatched entry in directory comparison view or do
+ nothing.
+
+ [d go to previous directory entry or do nothing.
+
+ ]d go to next directory entry or do nothing.
+
+ [r same as :siblprev.
+
+ ]r same as :siblnext.
+
+ [R same as :siblprev!.
+
+ ]R same as :siblnext!.
+
+ [s go to previous selected entry or do nothing.
+
+ ]s go to next selected entry or do nothing.
+
+ [z go to first sibling of current entry.
+
+ ]z go to last sibling of current entry.
+
+ zj go to next directory sibling of current entry or do nothing.
+
+ zk go to previous directory sibling of current entry or do nothing.
+
+Using Count
+ You can use count with commands like yy.
+
+ [count]yy
+ yank count files starting from current cursor position downward.
+
+ Or you can use count with motions passed to y, d or D.
+
+ d[count]j
+ delete (count + 1) files starting from current cursor position
+ upward.
+
+Registers
+ vifm supports multiple registers for temporary storing list of yanked
+ or deleted files.
+
+ Registers should be specified by hitting double quote key followed by a
+ register name. Count is specified after register name. By default
+ commands use unnamed register, which has double quote as its name.
+
+ Though all commands accept registers, most of commands ignores them
+ (for example H or Ctrl-U). Other commands can fill register or append
+ new files to it.
+
+ Presently vifm supports ", _, a-z and A-Z characters as register names.
+
+ As mentioned above " is unnamed register and has special meaning of the
+ default register. Every time when you use named registers (a-z and A-
+ Z) unnamed register is updated to contain same list of files as the
+ last used register.
+
+ _ is black hole register. It can be used for writing, but its list is
+ always empty.
+
+ Registers with names from a to z and from A to Z are named ones.
+ Lowercase registers are cleared before adding new files, while
+ uppercase aren't and should be used to append new files to the existing
+ file list of appropriate lowercase register (A for a, B for b, ...).
+
+ Registers can be changed on :empty command if they contain files under
+ trash directory (see "Trash directory" section below).
+
+ Registers do not contain one file more than once.
+
+ Example:
+
+ "a2yy
+
+ puts names of two files to register a (and to the unnamed register),
+
+ "Ad
+
+ removes one file and append its name to register a (and to the unnamed
+ register),
+
+ p or "ap or "Ap
+
+ inserts previously yanked and deleted files into current directory.
+
+Selectors
+ y, d, D, !, gu and gU commands accept selectors. You can combine them
+ with any of selectors below to quickly remove or yank several files.
+
+ Most of selectors are like vi motions: j, k, gg, G, H, L, M, %, f, F,
+ ;, comma, ', ^, 0 and $. But there are some additional ones.
+
+ a all files in current view.
+
+ s selected files.
+
+ S all files except selected.
+
+ Examples:
+
+ - dj - delete file under cursor and one below;
+
+ - d2j - delete file under cursor and two below;
+
+ - y6gg - yank all files from cursor position to 6th file in the list.
+
+ When you pass a count to whole command and its selector they are
+ multiplied. So:
+
+ - 2d2j - delete file under cursor and four below;
+
+ - 2dj - delete file under cursor and two below;
+
+ - 2y6gg - yank all files from cursor position to 12th file in the
+ list.
+
+Visual Mode
+ Visual mode has to generic operating submodes:
+
+ - plain selection as it is in Vim;
+
+ - selection editing submode.
+
+ Both modes select files in range from cursor position at which visual
+ mode was entered to current cursor position (let's call it "selection
+ region"). Each of two borders can be adjusted by swapping them via "o"
+ or "O" keys and updating cursor position with regular cursor motion
+ keys. Obviously, once initial cursor position is altered this way,
+ real start position becomes unavailable.
+
+ Plain Vim-like visual mode starts with cleared selection, which is not
+ restored on rejecting selection ("Escape", "Ctrl-C", "v", "V").
+ Contrary to it, selection editing doesn't clear previously selected
+ files and restores them after reject. Accepting selection by
+ performing an operation on selected items (e.g. yanking them via "y")
+ moves cursor to the top of current selection region (not to the top
+ most selected file of the view).
+
+ In turn, selection editing supports three types of editing (look at
+ statusbar to know which one is currently active):
+
+ - append - amend selection by selecting elements in selection region;
+
+ - remove - amend selection by deselecting elements in selection
+ region;
+
+ - invert - amend selection by inverting selection of elements in
+ selection region.
+
+ No matter how you activate selection editing it starts in "append".
+ One can switch type of operation (in the order given above) via "Ctrl-
+ G" key.
+
+ Almost all normal mode keys work in visual mode, but instead of
+ accepting selectors they operate on selected items.
+
+ Enter save selection and go back to normal mode not moving cursor.
+
+ av leave visual mode if in amending mode (restores previous
+ selection), otherwise switch to amending selection mode.
+
+ gv restore previous visual selection.
+
+ v, V, Ctrl-C or Escape
+ leave visual mode if not in amending mode, otherwise switch to
+ normal visual selection.
+
+ Ctrl-G switch type of amending by round robin scheme: append -> remove
+ -> invert.
+
+ : enter command line mode. Selection is cleared on leaving the
+ mode.
+
+ o switch active selection bound.
+
+ O switch active selection bound.
+
+ gu, u make names of selected files lowercase.
+
+ gU, U make names of selected files uppercase.
+
+View Mode
+ This mode tries to imitate the less program. List of builtin shortcuts
+ can be found below. Shortcuts can be customized using :qmap, :qnoremap
+ and :qunmap command-line commands.
+
+ Shift-Tab, Tab, q, Q, ZZ
+ return to normal mode.
+
+ [count]e, [count]Ctrl-E, [count]j, [count]Ctrl-N, [count]Enter
+ scroll forward one line (or [count] lines).
+
+ [count]y, [count]Ctrl-Y, [count]k, [count]Ctrl-K, [count]Ctrl-P
+ scroll backward one line (or [count] lines).
+
+ [count]f, [count]Ctrl-F, [count]Ctrl-V, [count]Space
+ scroll forward one window (or [count] lines).
+
+ [count]b, [count]Ctrl-B, [count]Alt-V
+ scroll backward one window (or [count] lines).
+
+ [count]z
+ scroll forward one window (and set window to [count]).
+
+ [count]w
+ scroll backward one window (and set window to [count]).
+
+ [count]Alt-Space
+ scroll forward one window, but don't stop at end-of-file.
+
+ [count]d, [count]Ctrl-D
+ scroll forward one half-window (and set half-window to [count]).
+
+ [count]u, [count]Ctrl-U
+ scroll backward one half-window (and set half-window to
+ [count]).
+
+ r, Ctrl-R, Ctrl-L
+ repaint screen.
+
+ R reload view preserving scroll position.
+
+ F toggle automatic forwarding. Roughly equivalent to periodic
+ file reload and scrolling to the bottom. The behaviour is
+ similar to `tail -F` or F key in less.
+
+ [count]/pattern
+ search forward for ([count]-th) matching line.
+
+ [count]?pattern
+ search backward for ([count]-th) matching line.
+
+ [count]n
+ repeat previous search (for [count]-th occurrence).
+
+ [count]N
+ repeat previous search in reverse direction (for [count]-th
+ occurrence).
+
+ [count]g, [count]<, [count]Alt-<
+ scroll to the first line of the file (or line [count]).
+
+ [count]G, [count]>, [count]Alt->
+ scroll to the last line of the file (or line [count]).
+
+ [count]p, [count]%
+ scroll to the beginning of the file (or N percent into file).
+
+ v invoke an editor to edit the current file being viewed. The
+ command for editing is taken from the 'vicmd'/'vixcmd' option
+ value and extended with middle line number prepended by a plus
+ sign and name of the current file.
+
+ All "Ctrl-W x" keys work the same was as in Normal mode. Active mode
+ is automatically changed on navigating among windows. When less-like
+ mode activated on file preview is left using one by "Ctrl-W x" keys,
+ its state is stored until another file is displayed using preview (it's
+ possible to leave the mode, hide preview pane, do something else, then
+ get back to the file and show preview pane again with previously stored
+ state in it).
+
+Command line Mode
+ These keys are available in all submodes of the command line mode:
+ command, search, prompt and filtering.
+
+ Down, Up, Left, Right, Home, End and Delete are extended keys and they
+ are not available if vifm is compiled with --disable-extended-keys
+ option.
+
+ Esc, Ctrl-C
+ leave command line mode, cancels input. Cancelled input is
+ saved into appropriate history and can be recalled later.
+
+ Ctrl-M, Enter
+ execute command and leave command line mode.
+
+ Ctrl-I, Tab
+ complete command or its argument.
+
+ Shift-Tab
+ complete in reverse order.
+
+ Ctrl-_ stop completion and return original input.
+
+ Ctrl-B, Left
+ move cursor to the left.
+
+ Ctrl-F, Right
+ move cursor to the right.
+
+ Ctrl-A, Home
+ go to line beginning.
+
+ Ctrl-E, End
+ go to line end.
+
+ Alt-B go to the beginning of previous word.
+
+ Alt-F go to the end of next word.
+
+ Ctrl-U remove characters from cursor position till the beginning of
+ line.
+
+ Ctrl-K remove characters from cursor position till the end of line.
+
+ Ctrl-H, Backspace
+ remove character before the cursor.
+
+ Ctrl-D, Delete
+ remove character under the cursor.
+
+ Ctrl-W remove characters from cursor position till the beginning of
+ previous word.
+
+ Alt-D remove characters from cursor position till the beginning of
+ next word.
+
+ Ctrl-T swap the order of current and previous character and move cursor
+ forward or, if cursor past the end of line, swap the order of
+ two last characters in the line.
+
+ Alt-. insert last part of previous command to current cursor position.
+ Each next call will insert last part of older command.
+
+ Ctrl-G edit command-line content in external editor. See "Command line
+ editing" section for details.
+
+ Ctrl-N recall more recent command-line from history.
+
+ Ctrl-P recall older command-line from history.
+
+ Up recall more recent command-line from history, that begins as the
+ current command-line.
+
+ Down recall older command-line from history, that begins as the
+ current command-line.
+
+ Ctrl-] trigger abbreviation expansion.
+
+Pasting special values
+ The shortcuts listed below insert specified values into current cursor
+ position. Last key of every shortcut references value that it inserts:
+ - c - [c]urrent file
+ - d - [d]irectory path
+ - e - [e]xtension of a file name
+ - r - [r]oot part of a file name
+ - t - [t]ail part of directory path
+
+ - a - [a]utomatic filter
+ - m - [m]anual filter
+ - = - local filter, which is bound to "=" in normal mode
+
+ Values related to filelist in current pane are available through Ctrl-X
+ prefix, while values from the other pane have doubled Ctrl-X key as
+ their prefix (doubled Ctrl-X is presumably easier to type than
+ uppercase letters; it's still easy to remap the keys to correspond to
+ names of similar macros).
+
+ Ctrl-X c
+ name of the current file of the active pane.
+
+ Ctrl-X d
+ path to the current directory of the active pane.
+
+ Ctrl-X e
+ extension of the current file of the active pane.
+
+ Ctrl-X r
+ name root of current file of the active pane.
+
+ Ctrl-X t
+ the last component of path to the current directory of the
+ active pane.
+
+ Ctrl-X Ctrl-X c
+ name of the current file of the inactive pane.
+
+ Ctrl-X Ctrl-X d
+ path to the current directory of the inactive pane.
+
+ Ctrl-X Ctrl-X e
+ extension of the current file of the inactive pane.
+
+ Ctrl-X Ctrl-X r
+ name root of current file of the inactive pane.
+
+ Ctrl-X Ctrl-X t
+ the last component of path to the current directory of the
+ inactive pane.
+
+
+ Ctrl-X a
+ value of automatic filter of the active pane.
+
+ Ctrl-X m
+ value of manual filter of the active pane.
+
+ Ctrl-X =
+ value of local filter of the active pane.
+
+
+ Ctrl-X /
+ last pattern from search history.
+
+Command line editing
+ vifm provides a facility to edit several kinds of data, that is usually
+ edited in command-line mode, in external editor (using command
+ specified by 'vicmd' or 'vixcmd' option). This has at least two
+ advantages over built-in command-line mode:
+ - one can use full power of Vim to edit text;
+ - finding and reusing history entries becomes possible.
+
+ The facility is supported by four input submodes of the command-line:
+ - command;
+ - forward search;
+ - backward search;
+ - file rename (see description of cw and cW normal mode keys).
+
+ Editing command-line using external editor is activated by the Ctrl-G
+ shortcut. It's also possible to do almost the same from Normal and
+ Visual modes using q:, q/ and q? commands.
+
+ Temporary file created for the purpose of editing the line has the
+ following structure:
+
+ 1. First line, which is either empty or contains text already entered
+ in command-line.
+
+ 2. 2nd and all other lines with history items starting with the most
+ recent one. Altering this lines in any way won't change history
+ items stored by vifm.
+
+ After editing application is finished the first line of the file is
+ taken as the result of operation, when the application returns zero
+ exit code. If the application returns an error (see :cquit command in
+ Vim), all the edits made to the file are ignored, but the initial value
+ of the first line is saved in appropriate history.
+
+More Mode
+ This is the mode that appears when status bar content is so big that it
+ doesn't fit on the screen. One can identify the mode by "-- More --"
+ message at the bottom.
+
+ The following keys are handled in this mode:
+
+
+ Enter, Ctrl-J, j or Down
+ scroll one line down.
+
+ Backspace, k or Up
+ scroll one line up.
+
+
+ d scroll one page (half of a screen) down.
+
+ u scroll one page (half of a screen) up.
+
+
+ Space, f or PageDown
+ scroll down a screen.
+
+ b or PageUp
+ scroll up a screen.
+
+
+ G scroll to the bottom.
+
+ g scroll to the top.
+
+
+ q, Escape or Ctrl-C
+ quit the mode.
+
+ : switch to command-line mode.
+
+Commands
+ Commands are executed with :command_name<Enter>
+
+ Commented out lines should start with the double quote symbol ("),
+ which may be preceded by whitespace characters intermixed with colons.
+ Inline comments can be added at the end of the line after double quote
+ symbol, only last line of a multi-line command can contain such
+ comment. Not all commands support inline comments as their syntax
+ conflicts with names of registers and fields where double quotes are
+ allowed.
+
+ Most of the commands have two forms: complete and the short one.
+ Example:
+
+ :noh[lsearch]
+
+ This means the complete command is nohlsearch, and the short one is
+ noh.
+
+ Most of command-line commands completely reset selection in the current
+ view. However, there are several exceptions:
+
+ - `:invert s` most likely leaves some files selected;
+
+ - :normal command (when it doesn't leave command-line mode);
+
+ - :if and :else commands don't affect selection on successful
+ execution.
+
+ '|' can be used to separate commands, so you can give multiple commands
+ in one line. If you want to use '|' in an argument, precede it with
+ '\'.
+
+ These commands see '|' as part of their arguments even when it's
+ escaped:
+
+ :[range]!
+ :autocmd
+ :cabbrev
+ :cmap
+ :cnoreabbrev
+ :cnoremap
+ :command
+ :dmap
+ :dnoremap
+ :filetype
+ :fileviewer
+ :filextype
+ :map
+ :mmap
+ :mnoremap
+ :nmap
+ :nnoremap
+ :noremap
+ :normal
+ :qmap
+ :qnoremap
+ :vmap
+ :vnoremap
+ :wincmd
+ :windo
+ :winrun
+
+ To be able to use another command after one of these, wrap it with the
+ :execute command. An example:
+
+ if filetype('.') == 'reg' | execute '!!echo regular file' | endif
+
+ :[count]
+
+ :number
+ move to the file number.
+ :12 would move to the 12th file in the list.
+ :0 move to the top of the list.
+ :$ move to the bottom of the list.
+
+ :[count]command
+ The only builtin :[count]command are :[count]d[elete] and
+ :[count]y[ank].
+
+ :d3 would delete three files starting at the current file position
+ moving down.
+
+ :3d would delete one file at the third line in the list.
+
+ :command [args]
+
+ :[range]!program
+ execute command via shell. Accepts macros.
+
+ :[range]!command &
+
+ same as above, but the command is run in the background using vifm's
+ means.
+
+ Programs that write to stdout like "ls" create an error message showing
+ partial output of the command.
+
+ Note the space before ampersand symbol, if you omit it, command will be
+ run in the background using job control of your shell.
+
+ Accepts macros.
+
+ :!!
+
+ :[range]!!command
+ same as :!, but pauses before returning.
+
+ :!! repeat the last command.
+
+ :alink
+
+ :[range]alink[!?]
+ create absolute symbolic links to files in directory of inactive
+ view. With "?" prompts for destination file names in an editor.
+ "!" forces overwrite.
+
+ :[range]alink[!] path
+ create absolute symbolic links to files in directory specified
+ by the path (absolute or relative to directory of inactive
+ view).
+
+ :[range]alink[!] name1 name2...
+ create absolute symbolic links of files in directory of other
+ view giving each next link a corresponding name from the
+ argument list.
+
+ :apropos
+
+ :apropos keyword...
+ create a menu of items returned by the apropos command.
+ Selecting an item in the menu opens corresponding man page. By
+ default the command relies on the external "apropos" utility,
+ which can be customized by altering value of the 'aproposprg'
+ option.
+
+ :autocmd
+
+ :au[tocmd] {event} {pat} {cmd}
+ register autocommand for the {event}, which can be:
+ - DirEnter - performed on entering a directory
+ Event name is case insensitive.
+
+ {pat} is a comma-separated list of modified globs patterns,
+ which can contain tilde or environment variables. All paths use
+ slash ('/') as directory separator. The pattern can start with
+ a '!', which negates it. Patterns that do not contain slashes
+ are matched against the last item of the path only (e.g. "dir"
+ in "/path/dir"). Literal comma can be entered by doubling it.
+ Two modifications to globs matching are as follows:
+ - * - never matches a slash (i.e., can signify single
+ directory level)
+ - ** - matches any character (i.e., can match path of
+ arbitrary depth)
+
+ {cmd} is a :command or several of them separated with '|'.
+
+ Examples of patterns:
+ - conf.d - matches conf.d directory anywhere
+ - *.d - matches directories ending with ".d" anywhere
+ - **.git - matches something.git, but not .git anywhere
+ - **/.git/** - matches /path/.git/objects, but not /path/.git
+ - **/.git/**/ - matches /path/.git/ only (because of trailing
+ slash)
+ - /etc/* - matches /etc/conf.d/, /etc/X11, but not
+ /etc/X11/fs
+ - /etc/**/*.d - matches /etc/conf.d, /etc/X11/conf.d, etc.
+ - /etc/**/* - matches /etc/ itself and any file below it
+ - /etc/**/** - matches /etc/ itself and any file below it
+
+ :au[tocmd] [{event}] [{pat}]
+ list those autocommands that match given event-pattern
+ combination.
+ {event} and {pat} can be omitted to list all autocommands. To
+ list any autocommands for specific pattern one can use *
+ placeholder in place of {event}.
+
+ :au[tocmd]! [{event}] [{pat}]
+ remove autocommands that match given event-pattern combination.
+ Syntax is the same as for listing above.
+
+ :apropos
+ repeat last :apropos command.
+
+ :bmark
+
+ :bmark tag1 [tag2 [tag3...]]
+ bookmark current directory with specified tags.
+
+ :bmark! path tag1 [tag2 [tag3...]]
+ same as :bmark, but allows bookmarking specific path instead of
+ current directory. This is for use in vifmrc and for
+ bookmarking files.
+
+ Path can contain macros that expand to single path (%c, %C, %d,
+ %D) or those that can expand to multiple paths, but contain only
+ one (%f, %F, %rx). The latter is done for convenience on using
+ the command interactively. Complex macros that include spaces
+ (e.g. "%c:gs/ /_") should be escaped.
+
+ :bmarks
+
+ :bmarks
+ display all bookmarks in a menu.
+
+ :bmarks [tag1 [tag2...]]
+ display menu of bookmarks that include all of the specified
+ tags.
+
+ :bmgo
+
+ :bmgo [tag1 [tag2...]]
+ when there are more than one match acts exactly like :bmarks,
+ otherwise navigates to single match immediately (and fails if
+ there is no match).
+
+ :cabbrev
+
+ :ca[bbrev]
+ display menu of command-line mode abbreviations.
+
+ :ca[bbrev] lhs-prefix
+ display command-line mode abbreviations which left-hand side
+ starts with specified prefix.
+
+ :ca[bbrev] lhs rhs
+ register new or overwrites existing abbreviation for command-
+ line mode. rhs can contain spaces and any special sequences
+ accepted in rhs of mappings (see "Mappings" section below).
+ Abbreviations are expanded non-recursively.
+
+ :cnoreabbrev
+
+ :cnorea[bbrev]
+ display menu of command-line mode abbreviations.
+
+ :cnorea[bbrev] lhs-prefix
+ display command-line mode abbreviations which left-hand side
+ starts with specified prefix.
+
+ :cnorea[bbrev] lhs rhs
+ same as :cabbrev, but mappings in rhs are ignored during
+ expansion.
+
+ :cd
+
+ :cd or :cd ~ or :cd $HOME
+ change to home directory.
+
+ :cd - go to the last visited directory.
+
+ :cd ~/dir
+ change directory to ~/dir.
+
+ :cd /curr/dir /other/dir
+ change directory of the current pane to /curr/dir and directory
+ of the other pane to /other/dir. Relative paths are assumed to
+ be relative to directory of current view. Command won't fail if
+ one of directories is invalid. All forms of the command accept
+ macros.
+
+ :cd! /dir
+ same as :cd /dir /dir.
+
+ :change
+
+ :c[hange]
+ create a menu window to alter a files properties.
+
+ :chmod
+
+ :[range]chmod
+ display file attributes (permission on *nix and properties on
+ Windows) change dialog.
+
+ :[range]chmod[!] arg...
+ only for *nix
+ change permissions for files. See `man 1 chmod` for arg format.
+ "!" means set permissions recursively.
+
+ :chown
+
+ :[range]chown
+ only for *nix
+ same as co key in normal mode.
+
+ :[range]chown [user][:][group]
+ only for *nix
+ change owner and/or group of files. Operates on directories
+ recursively.
+
+ :clone
+
+ :[range]clone[!?]
+ clones files in current directory. With "?" vifm will open vi
+ to edit file names. "!" forces overwrite. Macros are expanded.
+
+ :[range]clone[!] path
+ clones files to directory specified with the path (absolute or
+ relative to current directory). "!" forces overwrite. Macros
+ are expanded.
+
+ :[range]clone[!] name1 name2...
+ clones files in current directory giving each next clone a
+ corresponding name from the argument list. "!" forces
+ overwrite. Macros are expanded.
+
+ :colorscheme
+
+ :colo[rscheme]?
+ print current color scheme name on the status bar.
+
+ :colo[rscheme]
+ display a menu with a list of available color schemes. You can
+ choose primary color scheme here. It is used for view if no
+ directory specific colorscheme fits current path. It's also
+ used to set border color (except view titles) and colors in
+ menus and dialogs.
+
+ :colo[rscheme] color_scheme_name
+ change primary color scheme to color_scheme_name. In case of
+ errors (e.g. some colors are not supported by terminal) either
+ nothing is changed or color scheme is reset to builtin colors to
+ ensure that TUI is left in a usable state.
+
+ :colo[rscheme] color_scheme_name directory
+ associate directory with the color scheme. The directory
+ argument can be either absolute or relative path when
+ :colorscheme command is executed from command line, but
+ mandatory should be an absolute path when the command is
+ executed in scripts loaded at startup (until vifm is completely
+ loaded).
+
+ :comclear
+
+ :comc[lear]
+ remove all user defined commands.
+
+ :command
+
+ :com[mand]
+ display a menu of user commands.
+
+ :com[mand] beginning
+ display user defined commands that start with the beginning.
+
+ :com[mand] name action
+ set a new user command.
+ Trying to use a reserved command name will result in an error
+ message.
+ Use :com[mand]! to overwrite a previously set command.
+ Unlike vim user commands do not have to start with a capital
+ letter. User commands are run in a shell by default. To run a
+ command in the background you must set it as a background
+ command with & at the end of the commands action (:com rm rm %f
+ &). Command name cannot contain numbers or special symbols
+ (except '?' and '!').
+
+ :com[mand] name /pattern
+ set search pattern.
+
+ :com[mand] name =pattern
+ set local filter value.
+
+ :com[mand] name filter{:filter args}
+ set file name filter (see :filter command description). For
+ example:
+
+ " display only audio files
+ :command onlyaudio filter/.+.\(mp3|wav|mp3|flac|ogg|m4a|wma|ape\)$/i
+ " display everything except audio files
+ :command noaudio filter!/.+.\(mp3|wav|mp3|flac|ogg|m4a|wma|ape\)$/i
+
+ :com[mand] cmd :commands
+ set kind of an alias for internal command (like in a shell).
+ Passes range given to alias to an aliased command, so running
+ :%cp after
+ :command cp :copy %a
+ equals
+ :%copy
+
+ :compare
+
+ :compare [byname | bysize | bycontents | listall | listunique |
+ listdups | ofboth | ofone | groupids | grouppaths | skipempty]...
+ compare files in one or two views according the arguments. The
+ default is "bycontents listall ofboth grouppaths". See "Compare
+ views" section below for details. Tree structure is
+ incompatible with alternative representations, so values of
+ 'lsview' and 'millerview' options are ignored.
+
+ :copen
+
+ :cope[n]
+ opens menu with contents of the last displayed menu with
+ navigation to files by default, if any.
+
+ :copy
+
+ :[range]co[py][!?][ &]
+ copy files to directory of other view. With "?" prompts for
+ destination file names in an editor. "!" forces overwrite.
+
+ :[range]co[py][!] path[ &]
+ copy files to directory specified with the path (absolute or
+ relative to directory of other view). "!" forces overwrite.
+
+ :[range]co[py][!] name1 name2...[ &]
+ copy files to directory of other view giving each next file a
+ corresponding name from the argument list. "!" forces
+ overwrite.
+
+ :cquit
+
+ :cq[uit][!]
+ same as :quit, but also aborts directory choosing via
+ --choose-dir (empties output file) and returns non-zero exit
+ code.
+
+ :cunabbrev
+
+ :cuna[bbrev] lhs
+ unregister command-line mode abbreviation by its lhs.
+
+ :cuna[bbrev] rhs
+ unregister command-line mode abbreviation by its rhs, so that
+ abbreviation could be removed even after expansion.
+
+ :delbmarks
+
+ :delbmarks
+ remove bookmarks from current directory.
+
+ :delbmarks tag1 [tag2 [tag3...]]
+ remove set of bookmarks that include all of the specified tags.
+
+ :delbmarks!
+ remove all bookmarks.
+
+ :delbmarks! path1 [path2 [path3...]]
+ remove bookmarks of listed paths.
+
+ :delcommand
+
+ :delc[ommand] user_command
+ remove user defined command named user_command.
+
+ :delete
+
+ :[range]d[elete][!][ &]
+ delete selected file or files. "!" means complete removal
+ (omitting trash).
+
+ :[range]d[elete][!] [reg] [count][ &]
+ delete selected or [count] files to the reg register. "!" means
+ complete removal (omitting trash).
+
+ :delmarks
+
+ :delm[arks]!
+ delete all marks.
+
+ :delm[arks] marks ...
+ delete specified marks, each argument is treated as a set of
+ marks.
+
+ :display
+
+ :di[splay]
+ display menu with registers content.
+
+ :di[splay] list ...
+ display the contents of the numbered and named registers that
+ are mentioned in list (for example "az to display "", "a and "z
+ content).
+
+ :dirs
+
+ :dirs display directory stack.
+
+ :echo
+
+ :ec[ho] [<expr>...]
+ evaluate each argument as an expression and output them
+ separated with a space. See help on :let command for a
+ definition of <expr>.
+
+ :edit
+
+ :[range]e[dit] [file...]
+ open selected or passed file(s) in editor. Macros and
+ environment variables are expanded.
+
+ :else
+
+ :el[se]
+ execute commands until next matching :endif if all other
+ conditions didn't match. See also help on :if and :endif
+ commands.
+
+ :elseif
+
+ :elsei[f] {expr1}
+ execute commands until next matching :elseif, :else or :endif if
+ conditions of previous :if and :elseif branches were evaluated
+ to zero. See also help on :if and :endif commands.
+
+ :empty
+
+ :empty permanently remove files from all existing non-empty trash
+ directories (see "Trash directory" section below). Trash
+ directories which are specified via %r and/or %u also get
+ deleted completely. Also remove all operations from undolist
+ that have no sense after :empty and remove all records about
+ files located inside directories from all registers. Removal is
+ performed as background task with undetermined amount of work
+ and can be checked via :jobs menu.
+
+ :endif
+
+ :en[dif]
+ end conditional block. See also help on :if and :else commands.
+
+ :execute
+
+ :exe[cute] [<expr>...]
+ evaluate each argument as an expression and join results
+ separated by a space to get a single string which is then
+ executed as a command-line command. See help on :let command
+ for a definition of <expr>.
+
+ :exit
+
+ :exi[t][!]
+ same as :quit.
+
+ :file
+
+ :f[ile][ &]
+ display menu of programs set for the file type of the current
+ file. " &" forces running associated program in background.
+
+ :f[ile] arg[ &]
+ run associated command that begins with the arg skipping opening
+ menu. " &" forces running associated program in background.
+
+ :filetype
+
+ :filet[ype] pattern-list [{descr}]def_prog[ &],[{descr}]prog2[ &],...
+ associate given program list to each of the patterns.
+ Associated program (command) is used by handlers of l and Enter
+ keys (and also in the :file menu). If you need to insert comma
+ into command just double it (",,"). Space followed by an
+ ampersand as two last characters of a command means running of
+ the command in the background. Optional description can be
+ given to each command to ease understanding of what command will
+ do in the :file menu. Vifm will try the rest of the programs
+ for an association when the default isn't found. When program
+ entry doesn't contain any of vifm macros, name of current file
+ is appended as if program entry ended with %c macro on *nix and
+ %"c on Windows. On Windows path to executables containing
+ spaces can (and should be for correct work with such paths) be
+ double quoted. See "Patterns" section below for pattern
+ definition. See also "Automatic FUSE mounts" section below.
+ Example for zip archives and several actions:
+
+ filetype *.zip,*.jar,*.war,*.ear
+ \ {Mount with fuse-zip}
+ \ FUSE_MOUNT|fuse-zip %SOURCE_FILE %DESTINATION_DIR,
+ \ {View contents}
+ \ zip -sf %c | less,
+ \ {Extract here}
+ \ tar -xf %c,
+
+ Note that on OS X when `open` is used to call an app, vifm is
+ unable to check whether that app is actually available. So if
+ automatic skipping of programs that aren't there is desirable,
+ `open` should be replaced with an actual command.
+
+ :filet[ype] filename
+ list (in menu mode) currently registered patterns that match
+ specified file name. Same as ":filextype filename".
+
+ :filextype
+
+ :filex[type] pattern-list [{ description }] def_program,program2,...
+ same as :filetype, but this command is ignored if not running in
+ X. In X :filextype is equal to :filetype. See "Patterns"
+ section below for pattern definition. See also "Automatic FUSE
+ mounts" section below.
+
+ For example, consider the following settings (the order might
+ seem strange, but it's for the demonstration purpose):
+
+ filetype *.html,*.htm
+ \ {View in lynx}
+ \ lynx
+ filextype *.html,*.htm
+ \ {Open with dwb}
+ \ dwb %f %i &,
+ filetype *.html,*.htm
+ \ {View in links}
+ \ links
+ filextype *.html,*.htm
+ \ {Open with firefox}
+ \ firefox %f &,
+ \ {Open with uzbl}
+ \ uzbl-browser %f %i &,
+
+ If you're using vifm inside a terminal emulator that is running
+ in graphical environment (when X is used on *nix; always on
+ Windows), vifm attempts to run application in this order:
+
+ 1. lynx
+ 2. dwb
+ 3. links
+ 4. firefox
+ 5. uzbl
+
+ If there is no graphical environment (checked presence of
+ $DISPLAY environment variable on *nix; never happens on
+ Windows), the list will look like:
+
+ 1. lynx
+ 2. links
+
+ Just as if all :filextype commands were not there.
+
+ The purpose of such differentiation is to allow comfortable use
+ of vifm with same settings in desktop environment/through remote
+ connection (SSH)/in native console.
+
+ Note that on OS X $DISPLAY isn't defined unless you define it,
+ so :filextype should be used only if you set $DISPLAY in some
+ way.
+
+ :filext[ype] filename
+ list (in menu mode) currently registered patterns that match
+ specified file name. Same as ":filetype filename".
+
+ :fileviewer
+
+ :filev[iewer] pattern-list command1,command2,...
+ register specified list of commands as viewers for each of the
+ patterns. Viewer is a command which output is captured and
+ displayed in one of the panes of vifm after pressing "e" or
+ running :view command. When the command doesn't contain any of
+ vifm macros, name of current file is appended as if command
+ ended with %c macro. Comma escaping and missing commands
+ processing rules as for :filetype apply to this command. See
+ "Patterns" section below for pattern definition.
+
+ Example for zip archives:
+
+ fileviewer *.zip,*.jar,*.war,*.ear zip -sf %c, echo "No zip to preview:"
+
+ :filev[iewer] filename
+ list (in menu mode) currently registered patterns that match
+ specified filename.
+
+ :filter
+
+ :filter[!] {pattern}
+ filter files matching the pattern out of directory listings.
+ '!' controls state of filter inversion after updating filter
+ value (see also 'cpoptions' description). Filter is matched
+ case sensitively on *nix and case insensitively on Windows. See
+ "File Filters" and "Patterns" sections.
+
+ Example:
+
+ " filter all files ending in .o from the filelist.
+ :filter /.o$/
+
+
+ :filter[!] {empty-pattern}
+ same as above, but use last search pattern as pattern value.
+
+ Example:
+
+ :filter //I
+
+
+ :filter
+ reset filter (set it to an empty string) and show all files.
+
+ :filter!
+ same as :invert.
+
+ :filter?
+ show information on local, name and auto filters.
+
+ :find
+
+ :[range]fin[d] pattern
+ display results of find command in the menu. Searches among
+ selected files if any. Accepts macros. By default the command
+ relies on the external "find" utility, which can be customized
+ by altering value of the 'findprg' option.
+
+ :[range]fin[d] -opt...
+ same as :find above, but user defines all find arguments.
+ Searches among selected files if any.
+
+ :[range]fin[d] path -opt...
+ same as :find above, but user defines all find arguments.
+ Ignores selection and range.
+
+ :[range]fin[d]
+ repeat last :find command.
+
+ :finish
+
+ :fini[sh]
+ stop sourcing a script. Can only be used in a vifm script file.
+ This is a quick way to skip the rest of the file.
+
+ :goto
+
+ :go[to]
+ change directory if necessary and put specified path under the
+ cursor. The path should be existing non-root path. Macros and
+ environment variables are expanded.
+
+ :grep
+
+ :[range]gr[ep][!] pattern
+ will show results of grep command in the menu. Add "!" to
+ request inversion of search (look for lines that do not match
+ pattern). Searches among selected files if any and no range
+ given. Ignores binary files by default. By default the command
+ relies on the external "grep" utility, which can be customized
+ by altering value of the 'grepprg' option.
+
+ :[range]gr[ep][!] -opt...
+ same as :grep above, but user defines all grep arguments, which
+ are not escaped. Searches among selected files if any.
+
+ :[range]gr[ep][!]
+ repeats last :grep command. "!" of this command inverts "!" in
+ repeated command.
+
+ :help
+
+ :h[elp]
+ show the help file.
+
+ :h[elp] argument
+ is the same as using ':h argument' in vim. Use vifm-<something>
+ to get help on vifm (tab completion works). This form of the
+ command doesn't work when 'vimhelp' option is off.
+
+ :highlight
+
+ :hi[ghlight]
+ display information about all highlight groups active at the
+ moment.
+
+ :hi[ghlight] clear
+ reset all highlighting to builtin defaults and removed all
+ filename-specific rules.
+
+ :hi[ghlight] clear ( {pat1,pat2,...} | /regexp/ )
+ removes specified rule.
+
+ :hi[ghlight] ( group-name | {pat1,pat2,...} | /regexp/ )
+ display information on given highlight group or file name
+ pattern of color scheme used in the active view.
+
+ :hi[ghlight] ( group-name | {pat1,pat2,...} | /regexp/[iI] )
+ cterm=style | ctermfg=color | ctermbg=color
+ set style (cterm), foreground (ctermfg) or/and background
+ (ctermbg) parameters of highlight group or file name pattern for
+ color scheme used in the active view.
+
+ All style values as well as color names are case insensitive.
+
+ Available style values (some of them can be combined):
+ - bold
+ - underline
+ - reverse or inverse
+ - standout
+ - italic (on unsupported systems becomes reverse)
+ - none
+
+ Available group-name values:
+ - Win - color of all windows (views, dialogs, menus) and default color
+ for their content (e.g. regular files in views)
+ - AuxWin - color of auxiliary areas of windows
+ - Border - color of vertical parts of the border
+ - TabLine - tab line color
+ - TabLineSel - color of the tip of selected tab
+ - TopLineSel - top line color of the current pane
+ - TopLine - top line color of the other pane
+ - CmdLine - the command line/status bar color
+ - ErrorMsg - color of error messages in the status bar
+ - StatusLine - color of the line above the status bar
+ - JobLine - color of job line that appears above the status line
+ - WildMenu - color of the wild menu items
+ - SuggestBox - color of key suggestion box
+ - CurrLine - line at cursor position in active view
+ - OtherLine - line at cursor position in inactive view
+ - Selected - color of selected files
+ - Directory - color of directories
+ - Link - color of symbolic links in the views
+ - BrokenLink - color of broken symbolic links
+ - Socket - color of sockets
+ - Device - color of block and character devices
+ - Executable - color of executable files
+ - Fifo - color of fifo pipes
+ - CmpMismatch - color of mismatched files in side-by-side comparison
+ by path
+ - User1..User9 - 9 colors which can be used via %* 'statusline' macro
+
+ Available colors:
+ - -1 or default or none - default or transparent
+ - black and lightblack
+ - red and lightred
+ - green and lightgreen
+ - yellow and lightyellow
+ - blue and lightblue
+ - magenta and lightmagenta
+ - cyan and lightcyan
+ - white and lightwhite
+ - 0-255 - corresponding colors from 256-color palette
+
+ Light versions of colors are regular colors with bold attribute set.
+ So order of arguments of :highlight command is important and it's
+ better to put "cterm" in front of others to prevent it from overwriting
+ attributes set by "ctermfg" or "ctermbg" arguments.
+
+ For convenience of color scheme authors xterm-like names for 256 color
+ palette is also supported. The mapping is taken from
+ http://vim.wikia.com/wiki/Xterm256_color_names_for_console_Vim
+ Duplicated entries were altered by adding an underscore followed by
+ numerical suffix.
+
+ 0 Black 86 Aquamarine1 172 Orange3
+ 1 Red 87 DarkSlateGray2 173 LightSalmon3_2
+ 2 Green 88 DarkRed_2 174 LightPink3
+ 3 Yellow 89 DeepPink4_2 175 Pink3
+ 4 Blue 90 DarkMagenta 176 Plum3
+ 5 Magenta 91 DarkMagenta_2 177 Violet
+ 6 Cyan 92 DarkViolet 178 Gold3_2
+ 7 White 93 Purple 179 LightGoldenrod3
+ 8 LightBlack 94 Orange4_2 180 Tan
+ 9 LightRed 95 LightPink4 181 MistyRose3
+ 10 LightGreen 96 Plum4 182 Thistle3
+ 11 LightYellow 97 MediumPurple3 183 Plum2
+ 12 LightBlue 98 MediumPurple3_2 184 Yellow3_2
+ 13 LightMagenta 99 SlateBlue1 185 Khaki3
+ 14 LightCyan 100 Yellow4 186 LightGoldenrod2
+ 15 LightWhite 101 Wheat4 187 LightYellow3
+ 16 Grey0 102 Grey53 188 Grey84
+ 17 NavyBlue 103 LightSlateGrey 189 LightSteelBlue1
+ 18 DarkBlue 104 MediumPurple 190 Yellow2
+ 19 Blue3 105 LightSlateBlue 191 DarkOliveGreen1
+ 20 Blue3_2 106 Yellow4_2 192
+ DarkOliveGreen1_2
+ 21 Blue1 107 DarkOliveGreen3 193 DarkSeaGreen1_2
+ 22 DarkGreen 108 DarkSeaGreen 194 Honeydew2
+ 23 DeepSkyBlue4 109 LightSkyBlue3 195 LightCyan1
+ 24 DeepSkyBlue4_2 110 LightSkyBlue3_2 196 Red1
+ 25 DeepSkyBlue4_3 111 SkyBlue2 197 DeepPink2
+ 26 DodgerBlue3 112 Chartreuse2_2 198 DeepPink1
+ 27 DodgerBlue2 113 DarkOliveGreen3_2 199 DeepPink1_2
+ 28 Green4 114 PaleGreen3_2 200 Magenta2_2
+ 29 SpringGreen4 115 DarkSeaGreen3 201 Magenta1
+ 30 Turquoise4 116 DarkSlateGray3 202 OrangeRed1
+ 31 DeepSkyBlue3 117 SkyBlue1 203 IndianRed1
+ 32 DeepSkyBlue3_2 118 Chartreuse1 204 IndianRed1_2
+ 33 DodgerBlue1 119 LightGreen_2 205 HotPink
+ 34 Green3 120 LightGreen_3 206 HotPink_2
+ 35 SpringGreen3 121 PaleGreen1 207 MediumOrchid1_2
+ 36 DarkCyan 122 Aquamarine1_2 208 DarkOrange
+ 37 LightSeaGreen 123 DarkSlateGray1 209 Salmon1
+ 38 DeepSkyBlue2 124 Red3 210 LightCoral
+ 39 DeepSkyBlue1 125 DeepPink4_3 211 PaleVioletRed1
+ 40 Green3_2 126 MediumVioletRed 212 Orchid2
+ 41 SpringGreen3_2 127 Magenta3 213 Orchid1
+ 42 SpringGreen2 128 DarkViolet_2 214 Orange1
+ 43 Cyan3 129 Purple_2 215 SandyBrown
+ 44 DarkTurquoise 130 DarkOrange3 216 LightSalmon1
+ 45 Turquoise2 131 IndianRed 217 LightPink1
+ 46 Green1 132 HotPink3 218 Pink1
+ 47 SpringGreen2_2 133 MediumOrchid3 219 Plum1
+ 48 SpringGreen1 134 MediumOrchid 220 Gold1
+ 49 MediumSpringGreen 135 MediumPurple2 221
+ LightGoldenrod2_2
+ 50 Cyan2 136 DarkGoldenrod 222
+ LightGoldenrod2_3
+ 51 Cyan1 137 LightSalmon3 223 NavajoWhite1
+ 52 DarkRed 138 RosyBrown 224 MistyRose1
+ 53 DeepPink4 139 Grey63 225 Thistle1
+ 54 Purple4 140 MediumPurple2_2 226 Yellow1
+ 55 Purple4_2 141 MediumPurple1 227 LightGoldenrod1
+ 56 Purple3 142 Gold3 228 Khaki1
+ 57 BlueViolet 143 DarkKhaki 229 Wheat1
+ 58 Orange4 144 NavajoWhite3 230 Cornsilk1
+ 59 Grey37 145 Grey69 231 Grey100
+ 60 MediumPurple4 146 LightSteelBlue3 232 Grey3
+ 61 SlateBlue3 147 LightSteelBlue 233 Grey7
+ 62 SlateBlue3_2 148 Yellow3 234 Grey11
+ 63 RoyalBlue1 149 DarkOliveGreen3_3 235 Grey15
+ 64 Chartreuse4 150 DarkSeaGreen3_2 236 Grey19
+ 65 DarkSeaGreen4 151 DarkSeaGreen2 237 Grey23
+ 66 PaleTurquoise4 152 LightCyan3 238 Grey27
+ 67 SteelBlue 153 LightSkyBlue1 239 Grey30
+ 68 SteelBlue3 154 GreenYellow 240 Grey35
+ 69 CornflowerBlue 155 DarkOliveGreen2 241 Grey39
+ 70 Chartreuse3 156 PaleGreen1_2 242 Grey42
+ 71 DarkSeaGreen4_2 157 DarkSeaGreen2_2 243 Grey46
+ 72 CadetBlue 158 DarkSeaGreen1 244 Grey50
+ 73 CadetBlue_2 159 PaleTurquoise1 245 Grey54
+ 74 SkyBlue3 160 Red3_2 246 Grey58
+ 75 SteelBlue1 161 DeepPink3 247 Grey62
+ 76 Chartreuse3_2 162 DeepPink3_2 248 Grey66
+ 77 PaleGreen3 163 Magenta3_2 249 Grey70
+ 78 SeaGreen3 164 Magenta3_3 250 Grey74
+ 79 Aquamarine3 165 Magenta2 251 Grey78
+ 80 MediumTurquoise 166 DarkOrange3_2 252 Grey82
+ 81 SteelBlue1_2 167 IndianRed_2 253 Grey85
+ 82 Chartreuse2 168 HotPink3_2 254 Grey89
+ 83 SeaGreen2 169 HotPink2 255 Grey93
+ 84 SeaGreen1 170 Orchid
+ 85 SeaGreen1_2 171 MediumOrchid1
+
+ There are two colors (foreground and background) and only one bold
+ attribute. Thus single bold attribute affects both colors when
+ "reverse" attribute is used in vifm run inside terminal emulator. At
+ the same time linux native console can handle boldness of foreground
+ and background colors independently, but for consistency with terminal
+ emulators this is available only implicitly by using light versions of
+ colors. This behaviour might be changed in the future.
+
+ Although vifm supports 256 colors in a sense they are supported by UI
+ drawing library, whether you will be able to use all of them highly
+ depends on your terminal. To set up terminal properly, make sure that
+ $TERM in the environment you run vifm is set to name of 256-color
+ terminal (on *nixes it can also be set via X resources), e.g.
+ xterm-256color. One can find list of available terminal names by
+ listing /usr/lib/terminfo/. Number of colors supported by terminal
+ with current settings can be checked via "tput colors" command.
+
+ Here is the hierarchy of highlight groups, which you need to know for
+ using transparency:
+ JobLine
+ SuggestBox
+ StatusLine
+ WildMenu
+ User1..User9
+ Border
+ CmdLine
+ ErrorMsg
+ Win
+ AuxWin
+ File name specific highlights
+ Directory
+ Link
+ BrokenLink
+ Socket
+ Device
+ Fifo
+ Executable
+ Selected
+ CurrLine
+ OtherLine
+ TopLine
+ TopLineSel
+ TabLine
+ TabLineSel
+
+ "none" means default terminal color for highlight groups at the first
+ level of the hierarchy and transparency for all others.
+
+ Here file name specific highlights mean those configured via globs ({})
+ or regular expressions (//). At most one of them is applied per file
+ entry, namely the first that matches file name, hence order of
+ :highlight commands might be important in certain cases.
+
+ :history
+
+ :his[tory]
+ creates a pop-up menu of directories visited.
+
+ :his[tory] x
+ x can be:
+ d[ir] or . show directory history.
+ c[md] or : show command line history.
+ s[earch] or / show search history and search forward on l key.
+ f[search] or / show search history and search forward on l key.
+ b[search] or ? show search history and search backward on l key.
+ i[nput] or @ show prompt history (e.g. on one file renaming).
+ fi[lter] or = show filter history (see description of the "="
+ normal mode command).
+
+ :histnext
+
+ :histnext
+ same as <c-i>. The main use case for this command is to work
+ around the common pain point of <tab> and <c-i> being the same
+ ASCII character: one could alter the terminal emulator settings
+ to emit, for example, the `F1` keycode when Ctrl-I is pressed,
+ then `:noremap <f1> :histnext<cr>` in vifm, add "t" flag to the
+ 'cpoptions', and thus have both <c-i> and <tab> working as
+ expected.
+
+ :histprev
+
+ :histprev
+ same as <c-o>.
+
+ :if
+
+ :if {expr1}
+ starts conditional block. Commands are executed until next
+ matching :elseif, :else or :endif command if {expr1} evaluates
+ to non-zero, otherwise they are ignored. See also help on :else
+ and :endif commands.
+
+ Example:
+
+ if $TERM == 'screen.linux'
+ highlight CurrLine ctermfg=lightwhite ctermbg=lightblack
+ elseif $TERM == 'tmux'
+ highlight CurrLine cterm=reverse ctermfg=black ctermbg=white
+ else
+ highlight CurrLine cterm=bold,reverse ctermfg=black ctermbg=white
+ endif
+
+ :invert
+
+ :invert [f]
+ invert file name filter.
+
+ :invert? [f]
+ show current filter state.
+
+ :invert s
+ invert selection.
+
+ :invert o
+ invert sorting order of the primary sorting key.
+
+ :invert? o
+ show sorting order of the primary sorting key.
+
+ :jobs
+
+ :jobs shows menu of current backgrounded processes.
+
+ :let
+
+ :let $ENV_VAR = <expr>
+ sets environment variable. Warning: setting environment
+ variable to an empty string on Windows removes it.
+
+ :let $ENV_VAR .= <expr>
+ append value to environment variable.
+
+ :let &[l:|g:]opt = <expr>
+ sets option value.
+
+ :let &[l:|g:]opt .= <expr>
+ append value to string option.
+
+ :let &[l:|g:]opt += <expr>
+ increasing option value, adding sub-values.
+
+ :let &[l:|g:]opt -= <expr>
+ decreasing option value, removing sub-values.
+
+ Where <expr> could be a single-quoted string, double-quoted string, an
+ environment variable, function call or a concatanation of any of them
+ in any order using the '.' operator. Any whitespace is ignored.
+
+ :locate
+
+ :locate filename
+ use "locate" command to create a menu of filenames. Selecting a
+ file from the menu will reload the current file list in vifm to
+ show the selected file. By default the command relies on the
+ external "locate" utility (it's assumed that its database is
+ already built), which can be customized by altering value of the
+ 'locateprg' option.
+
+ :locate
+ repeats last :locate command.
+
+ :ls
+
+ :ls lists windows of active terminal multiplexer (only when terminal
+ multiplexer is used). This is achieved by issuing proper
+ command for active terminal multiplexer, thus the list is not
+ handled by vifm.
+
+ :lstrash
+
+ :lstrash
+ displays a menu with list of files in trash. Each element of
+ the list is original path of a deleted file, thus the list can
+ contain duplicates.
+
+ :mark
+
+ :[range]ma[rk][?] x [/full/path] [filename]
+ Set mark x (a-zA-Z0-9) at /full/path and filename. By default
+ current directory is being used. If no filename was given and
+ /full/path is current directory then last file in [range] is
+ used. Using of macros is allowed. Question mark will stop
+ command from overwriting existing marks.
+
+ :marks
+
+ :marks create a pop-up menu of marks.
+
+ :marks list ...
+ display the contents of the marks that are mentioned in list.
+
+ :media
+
+ :media only for *nix
+ display media management menu. See also 'mediaprg' option.
+
+ :messages
+
+ :mes[sages]
+ shows previously given messages (up to 50).
+
+ :mkdir
+
+ :[line]mkdir[!] dir ...
+ create directories at specified paths. The [line] can be used
+ to pick node in a tree-view. "!" means make parent directories
+ as needed. Macros are expanded.
+
+ :move
+
+ :[range]m[ove][!?][ &]
+ move files to directory of other view. With "?" prompts for
+ destination file names in an editor. "!" forces overwrite.
+
+ :[range]m[ove][!] path[ &]
+ move files to directory specified with the path (absolute or
+ relative to directory of other view). "!" forces overwrite.
+
+ :[range]m[ove][!] name1 name2...[ &]
+ move files to directory of other view giving each next file a
+ corresponding name from the argument list. "!" forces
+ overwrite.
+
+ :nohlsearch
+
+ :noh[lsearch]
+ clear selection in current pane.
+
+ :normal
+
+ :norm[al][!] commands
+ execute normal mode commands. If "!" is used, user defined
+ mappings are ignored. Unfinished last command is aborted as if
+ <esc> or <c-c> was typed. A ":" should be completed as well.
+ Commands can't start with a space, so put a count of 1 (one)
+ before it.
+
+ :only
+
+ :on[ly]
+ switch to a one window view.
+
+ :popd
+
+ :popd remove pane directories from stack.
+
+ :pushd
+
+ :pushd[!] /curr/dir [/other/dir]
+ add pane directories to stack and process arguments like :cd
+ command.
+
+ :pushd exchange the top two items of the directory stack.
+
+ :put
+
+ :[line]pu[t][!] [reg] [ &]
+ puts files from specified register (" by default) into current
+ directory. The [line] can be used to pick node in a tree-view.
+ "!" moves files "!" moves files from their original location
+ instead of copying them. During this operation no confirmation
+ dialogs will be shown, all checks are performed beforehand.
+
+ :pwd
+
+ :pw[d] show the present working directory.
+
+ :qall
+
+ :qa[ll][!]
+ exit vifm (add ! to skip saving changes and checking for active
+ backgrounded commands).
+
+ :quit
+
+ :q[uit][!]
+ if there is more than one tab, close the current one, otherwise
+ exit vifm (add ! to skip saving changes and checking for active
+ backgrounded commands).
+
+ :redraw
+
+ :redr[aw]
+ redraw the screen immediately.
+
+ :registers
+
+ :reg[isters]
+ display menu with registers content.
+
+ :reg[isters] list ...
+ display the contents of the numbered and named registers that
+ are mentioned in list (for example "az to display "", "a and "z
+ content).
+
+ :regular
+
+ :regular
+
+ switch to regular view leaving custom view.
+ :rename
+
+ :[range]rename[!]
+ rename files using vi to edit names. ! means go recursively
+ through directories.
+
+ :[range]rename name1 name2...
+ rename each of selected files to a corresponding name.
+
+ :restart
+
+ :restart
+ free a lot of things (histories, commands, etc.), reread
+ vifminfo and vifmrc files and run startup commands passed in the
+ argument list, thus losing all unsaved changes (e.g. recent
+ history or keys mapped in current session).
+
+ :restore
+
+ :[range]restore
+ restore file from trash directory, doesn't work outside one of
+ trash directories. See "Trash directory" section below.
+
+ :rlink
+
+ :[range]rlink[!?]
+ create relative symbolic links to files in directory of other
+ view. With "?" prompts for destination file names in an editor.
+ "!" forces overwrite.
+
+ :[range]rlink[!] path
+ create relative symbolic links of files in directory specified
+ with the path (absolute or relative to directory of other view).
+ "!" forces overwrite.
+
+ :[range]rlink[!] name1 name2...
+ create relative symbolic links of files in directory of other
+ view giving each next link a corresponding name from the
+ argument list. "!" forces overwrite.
+
+ :screen
+
+ :screen
+ toggle whether to use the terminal multiplexer or not.
+ A terminal multiplexer uses pseudo terminals to allow multiple
+ windows to be used in the console or in a single xterm.
+ Starting vifm from terminal multiplexer with appropriate support
+ turned on will cause vifm to open a new terminal multiplexer
+ window for each new file edited or program launched from vifm.
+ This requires screen version 3.9.9 or newer for the screen -X
+ argument or tmux (1.8 version or newer is recommended).
+
+ :screen!
+ enable integration with terminal multiplexers.
+
+ :screen?
+ display whether integration with terminal multiplexers is
+ enabled.
+
+ Note: the command is called screen for historical reasons (when tmux
+ wasn't yet supported) and might be changed in future releases, or get
+ an alias.
+
+ :select
+
+ :[range]select
+ select files in the given range (current file if no range is
+ given).
+
+ :select {pattern}
+ select files that match specified pattern. Possible {pattern}
+ forms are described in "Patterns" section below. Trailing slash
+ for directories is taken into account, so `:select! */ | invert
+ s` selects only files.
+
+ :select //[iI]
+ same as item above, but reuses last search pattern.
+
+ :select !{external command}
+ select files from the list supplied by external command. Files
+ are matched by full paths, relative paths are converted to
+ absolute ones beforehand.
+
+ :[range]select! [{pattern}]
+ same as above, but resets previously selected items before
+ proceeding.
+
+ :set
+
+ :se[t] display all options that differ from their default value.
+
+ :se[t] all
+ display all options.
+
+ :se[t] opt1=val1 opt2='val2' opt3="val3" ...
+ sets given options. For local options both values are set.
+ You can use following syntax:
+ - for all options - option, option? and option&
+ - for boolean options - nooption, invoption and option!
+ - for integer options - option=x, option+=x and option-=x
+ - for string options - option=x and option+=x
+ - for string list options - option=x, option+=x and option-=x
+ - for enumeration options - option=x, option+=x and option-=x
+ - for set options - option=x, option+=x and option-=x
+ - for charset options - option=x, option+=x, option-=x and
+ option^=x
+
+ the meaning:
+ - option - turn option on (for boolean) or print its value (for
+ all others)
+ - nooption - turn option off
+ - invoption - invert option state
+ - option! - invert option state
+ - option? - print option value
+ - option& - reset option to its default value
+ - option=x or option:x - set option to x
+ - option+=x - add/append x to option
+ - option-=x - remove (or subtract) x from option
+ - option^=x - toggle x presence among values of the option
+
+ Option name can be prepended and appended by any number of
+ whitespace characters.
+
+ :setglobal
+
+ :setg[lobal]
+ display all global options that differ from their default value.
+
+ :setg[lobal] all
+ display all global options.
+
+ :setg[lobal] opt1=val1 opt2='val2' opt3="val3" ...
+ same as :set, but changes/prints only global options or global
+ values of local options. Changes to the latter might be not
+ visible until directory is changed.
+
+ :setlocal
+
+ :setl[ocal]
+ display all local options that differ from their default value.
+
+ :setl[ocal] all
+ display all local options.
+
+ :setl[ocal] opt1=val1 opt2='val2' opt3="val3" ...
+ same as :set, but changes/prints only local values of local
+ options.
+
+ :shell
+
+ :sh[ell][!]
+ start a shell in current directory. "!" suppresses spawning
+ dedicated window of terminal multiplexer for a shell. To make
+ vifm adaptive to environment it uses $SHELL if it's defined,
+ otherwise 'shell' value is used.
+
+
+ :siblnext
+
+ :[count]siblnext[!]
+
+ change directory to [count]th next sibling directory after
+ current path using value of global sort option of current pane.
+ "!" enables wrapping.
+
+ For example, say, you're at /boot and root listing starts like
+ this:
+
+ bin/
+ boot/
+ dev/
+ ...
+
+ Issuing :siblnext will navigate to /dev.
+
+
+ :siblprev
+
+ :[count]siblprev[!]
+ same as :siblnext, but in the opposite direction.
+
+ :sort
+
+ :sor[t]
+ display dialog with different sorting methods, when one can
+ select primary sorting key. When 'viewcolumns' options is empty
+ and 'lsview' is off, changing primary sorting key will also
+ affect view look (in particular the second column of the view
+ will be changed).
+
+ :source
+
+ :so[urce] file
+ read command-line commands from the file.
+
+ :split
+
+ :sp[lit]
+ switch to a two window horizontal view.
+
+ :sp[lit]!
+ toggle horizontal window splitting.
+
+ :sp[lit] path
+ splits the window horizontally to show both file directories.
+ Also changes other pane to path (absolute or relative to current
+ directory of active pane).
+
+ :substitute
+
+ :[range]s[ubstitute]/pattern/string/[flags]
+ for each file in range replace a match of pattern with string.
+
+ String can contain \0...\9 to link to capture groups (\0 - all match,
+ \1 - first group, etc.).
+
+ Pattern is stored in search history.
+
+ Available flags:
+
+ - i - ignore case (the 'ignorecase' and 'smartcase' options are not
+ used)
+
+ - I - don't ignore case (the 'ignorecase' and 'smartcase' options are
+ not used)
+
+ - g - substitute all matches in each file name (each g toggles this)
+
+ :[range]s[ubstitute]/pattern
+ substitute pattern with an empty string.
+
+ :[range]s[ubstitute]//string/[flags]
+ use last pattern from search history.
+
+ :[range]s[ubstitute]
+ repeat previous substitution command.
+
+ :sync
+
+ :sync [relative path]
+ change the other pane to the current pane directory or to some
+ path relative to the current directory. Using macros is
+ allowed.
+
+ :sync! change the other pane to the current pane directory and
+ synchronize cursor position. If current pane displays custom
+ list of files, position before entering it is used (current one
+ might not make any sense).
+
+
+ :sync! [location | cursorpos | localopts | filters | filelist | tree |
+ all]...
+ change enumerated properties of the other pane to match
+ corresponding properties of the current pane. Arguments have
+ the following meanings:
+
+ - location - current directory of the pane;
+
+ - cursorpos - cursor position (doesn't make sense without
+ "location");
+
+ - localopts - all local options;
+
+ - filters - all filters;
+
+ - filelist - list of files for custom view (implies
+ "location");
+
+ - tree - tree structure for tree view (implies "location");
+
+ - all - all of the above.
+
+ :tabclose
+
+ :tabc[lose]
+ close current tab, unless it's the only one open at current
+ scope.
+
+ :tabmove
+
+ :tabm[ove] [N]
+ without the argument or with `$` as the argument, current tab
+ becomes the last tab. With the argument, current tab is moved
+ after the tab with the specified number. Argument of `0` moves
+ current tab to the first position.
+
+ :tabname
+
+ :tabname [name]
+ set, update or reset (when no argument is provided) name of the
+ current tab.
+
+ :tabnew
+
+ :tabnew [path]
+ create new tab. Accepts optional path for the new tab. Macros
+ and environment variables are expanded.
+
+ :tabnext
+
+ :tabn[ext]
+ switch to the next tab (wrapping around).
+
+ :tabn[ext] {n}
+ go to the tab number {n}. Tab numeration starts with 1.
+
+ :tabprevious
+
+ :tabp[revious]
+ switch to the previous tab (wrapping around).
+
+ :tabp[revious] {n}
+ go to the {n}-th previous tab. Note that :tabnext handles its
+ argument differently.
+
+ :touch
+
+ :[line]touch file...
+ create files at specified paths. Aborts on errors. Doesn't
+ update time of existing files. The [line] can be used to pick
+ node in a tree-view. Macros are expanded.
+
+ :tr
+
+ :[range]tr/pattern/string/
+ for each file in range transliterate the characters which appear
+ in pattern to the corresponding character in string. When
+ string is shorter than pattern, it's padded with its last
+ character.
+
+ :trashes
+
+ :trashes
+ lists all valid trash directories in a menu. Only non-empty and
+ writable trash directories are shown. This is exactly the list
+ of directories that are cleared when :empty command is executed.
+
+ :trashes?
+ same as :trashes, but also displays size of each trash
+ directory.
+
+ :tree
+
+ :tree turn pane into tree view with current directory as its root.
+ The tree view is implemented on top of a custom view, but is
+ automatically kept in sync with file system state and considers
+ all the filters. Thus the structure corresponds to what one
+ would see on visiting the directories manually. As a special
+ case for trees built out of custom view file-system tracking
+ isn't performed.
+
+ To leave tree view go up from its root or use gh at any level of
+ the tree. Any command that changes directory will also do, in
+ particular, `:cd ..`.
+
+ Tree structure is incompatible with alternative representations,
+ so values of 'lsview' and 'millerview' options are ignored.
+
+ :tree! toggle current view in and out of tree mode.
+
+ :undolist
+
+ :undol[ist]
+ display list of latest changes. Use "!" to see actual commands.
+
+ :unlet
+
+ :unl[et][!] $ENV_VAR1 $ENV_VAR2 ...
+ remove environment variables. Add ! to omit displaying of
+ warnings about nonexistent variables.
+
+ :unselect
+
+ :[range]unselect
+ unselect files in the given range (current file if no range is
+ given).
+
+ :unselect {pattern}
+ unselect files that match specified pattern. Possible {pattern}
+ forms are described in "Patterns" section below. Trailing slash
+ for directories is taken into account, so `:unselect */`
+ unselects directories.
+
+ :unselect !{external command}
+ unselect files from the list supplied by external command.
+ Files are matched by full paths, relative paths are converted to
+ absolute ones beforehand.
+
+ :unselect //[iI]
+ same as item above, but reuses last search pattern.
+
+ :version
+
+ :ve[rsion]
+ show menu with version information.
+
+ :vifm
+
+ :vifm same as :version.
+
+ :view
+
+ :vie[w]
+ toggle on and off the quick file view. See also 'quickview'
+ option.
+
+ :vie[w]!
+ turn on quick file view if it's off.
+
+ :volumes
+
+ :volumes
+ only for MS-Windows
+ display menu with volume list. Hitting l (or Enter) key opens
+ appropriate volume in the current pane.
+
+ :vsplit
+
+ :vs[plit]
+ switch to a two window vertical view.
+
+ :vs[plit]!
+ toggle window vertical splitting.
+
+ :vs[plit] path
+ split the window vertically to show both file directories. And
+ changes other pane to path (absolute or relative to current
+ directory of active pane).
+
+ :wincmd
+
+ :[count]winc[md] {arg}
+ same as running Ctrl-W [count] {arg}.
+
+ :windo
+
+ :windo [command...]
+ execute command for each pane (same as :winrun % command).
+
+ :winrun
+
+ :winrun type [command...]
+ execute command for pane(s), which is determined by type
+ argument:
+ - ^ - top-left pane
+ - $ - bottom-right pane
+ - % - all panes
+ - . - current pane
+ - , - other pane
+
+ :write
+
+ :w[rite]
+ write vifminfo file.
+
+ :wq
+
+ :wq[!] same as :quit, but ! only disables check of backgrounded
+ commands. :wqall
+
+ :wqa[ll][!]
+ same as :qall, but ! only disables check of backgrounded
+ commands.
+
+ :xall
+
+ :xa[ll][!]
+ same as :qall.
+
+ :xit
+
+ :x[it][!]
+ same as :quit.
+
+ :yank
+
+ :[range]y[ank] [reg] [count]
+ will yank files to the reg register.
+
+ :map lhs rhs
+
+ :map lhs rhs
+ map lhs key sequence to rhs in normal and visual modes.
+
+ :map! lhs rhs
+ map lhs key sequence to rhs in command line mode.
+
+
+ :cmap :dmap :mmap :nmap :qmap
+ :vmap
+
+ :cm[ap] lhs rhs
+ map lhs to rhs in command line mode.
+
+ :dm[ap] lhs rhs
+ map lhs to rhs in dialog modes.
+
+ :mm[ap] lhs rhs
+ map lhs to rhs in menu mode.
+
+ :nm[ap] lhs rhs
+ map lhs to rhs in normal mode.
+
+ :qm[ap] lhs rhs
+ map lhs to rhs in view mode.
+
+ :vm[ap] lhs rhs
+ map lhs to rhs in visual mode.
+
+
+ :*map
+
+ :cm[ap]
+ list all maps in command line mode.
+
+ :dm[ap]
+ list all maps in dialog modes.
+
+ :mm[ap]
+ list all maps in menu mode.
+
+ :nm[ap]
+ list all maps in normal mode.
+
+ :qm[ap]
+ list all maps in view mode.
+
+ :vm[ap]
+ list all maps in visual mode.
+
+ :*map beginning
+
+ :cm[ap] beginning
+ list all maps in command line mode that start with the
+ beginning.
+
+ :dm[ap] beginning
+ list all maps in dialog modes that start with the beginning.
+
+ :mm[ap] beginning
+ list all maps in menu mode that start with the beginning.
+
+ :nm[ap] beginning
+ list all maps in normal mode that start with the beginning.
+
+ :qm[ap] beginning
+ list all maps in view mode that start with the beginning.
+
+ :vm[ap] beginning
+ list all maps in visual mode that start with the beginning.
+
+ :noremap
+
+ :no[remap] lhs rhs
+ map the key sequence lhs to rhs for normal and visual modes, but
+ disallow mapping of rhs.
+
+ :no[remap]! lhs rhs
+ map the key sequence lhs to rhs for command line mode, but
+ disallow mapping of rhs.
+
+ :cnoremap :dnoremap :mnoremap :nnoremap :qnoremap
+ :vnoremap
+
+ :cno[remap] lhs rhs
+ map the key sequence lhs to rhs for command line mode, but
+ disallow mapping of rhs.
+
+ :dn[oremap] lhs rhs
+ map the key sequence lhs to rhs for dialog modes, but disallow
+ mapping of rhs.
+
+ :mn[oremap] lhs rhs
+ map the key sequence lhs to rhs for menu mode, but disallow
+ mapping of rhs.
+
+ :nn[oremap] lhs rhs
+ map the key sequence lhs to rhs for normal mode, but disallow
+ mapping of rhs.
+
+ :qn[oremap] lhs rhs
+ map the key sequence lhs to rhs for view mode, but disallow
+ mapping of rhs.
+
+ :vn[oremap] lhs rhs
+ map the key sequence lhs to rhs for visual mode, but disallow
+ mapping of rhs.
+
+ :unmap
+
+ :unm[ap] lhs
+ remove the mapping of lhs from normal and visual modes.
+
+ :unm[ap]! lhs
+ remove the mapping of lhs from command line mode.
+
+ :cunmap :dunmap :munmap :nunmap :qunmap
+ :vunmap
+
+ :cu[nmap] lhs
+ remove the mapping of lhs from command line mode.
+
+ :du[nmap] lhs
+ remove the mapping of lhs from dialog modes.
+
+ :mu[nmap] lhs
+ remove the mapping of lhs from menu mode.
+
+ :nun[map] lhs
+ remove the mapping of lhs from normal mode.
+
+ :qun[map] lhs
+ remove the mapping of lhs from view mode.
+
+ :vu[nmap] lhs
+ remove the mapping of lhs from visual mode.
+
+Ranges
+ The ranges implemented include:
+ 2,3 - from second to third file in the list (including it)
+ % - the entire directory.
+ . - the current position in the filelist.
+ $ - the end of the filelist.
+ 't - the mark position t.
+
+ Examples:
+
+ :%delete
+
+ would delete all files in the directory.
+
+ :2,4delete
+
+ would delete the files in the list positions 2 through 4.
+
+ :.,$delete
+
+ would delete the files from the current position to the end of the
+ filelist.
+
+ :3delete4
+
+ would delete the files in the list positions 3, 4, 5, 6.
+
+ If a backward range is given :4,2delete - an query message is given and
+ user can chose what to do next.
+
+ The builtin commands that accept a range are :d[elete] and :y[ank].
+
+Command macros
+ The command macros may be used in user commands.
+
+ %a User arguments. When user arguments contain macros, they are
+ expanded before preforming substitution of %a.
+
+ %c %"c The current file under the cursor.
+
+ %C %"C The current file under the cursor in the other directory.
+
+ %f %"f All of the selected files.
+
+ %F %"F All of the selected files in the other directory list.
+
+ %b %"b Same as %f %F.
+
+ %d %"d Full path to current directory.
+
+ %D %"D Full path to other file list directory.
+
+ %rx %"rx
+ Full paths to files in the register {x}. In case of invalid
+ symbol in place of {x}, it's processed with the rest of the line
+ and default register is used.
+
+ %m Show command output in a menu.
+
+ %M Same as %m, but l (or Enter) key is handled like for :locate and
+ :find commands.
+
+ %u Process command output as list of paths and compose custom view
+ out of it.
+
+ %U Same as %u, but implies less list updates inside vifm, which is
+ absence of sorting at the moment.
+
+ %Iu same as %u, but gives up terminal before running external
+ command.
+
+ %IU same as %U, but gives up terminal before running external
+ command.
+
+ %S Show command output in the status bar.
+
+ %q redirect command output to quick view, which is activated if
+ disabled.
+
+ %s Execute command in split window of active terminal multiplexer
+ (ignored if not running inside one).
+
+ %n Forbid using of terminal multiplexer to run the command.
+
+ %i Completely ignore command output.
+
+
+ %pc Marks end of the main command and beginning of the clear command
+ for graphical preview, which is invoked on closing preview of a
+ file.
+
+ The following dimensions and coordinates are in characters:
+
+ %px x coordinate of top-left corner of preview area.
+
+ %py y coordinate of top-left corner of preview area.
+
+ %pw width of preview area.
+
+ %ph height of preview area.
+
+
+ Use %% if you need to put a percent sign in your command.
+
+ Note that %m, %M, %s, %S, %i, %u and %U macros are mutually exclusive.
+ Only the last one of them on the command will take effect.
+
+ You can use file name modifiers after %c, %C, %f, %F, %b, %d and %D
+ macros. Supported modifiers are:
+
+ - :p - full path
+
+ - :u - UNC name of path (e.g. "\\server" in
+ "\\server\share"), Windows only. Expands to current computer name
+ for not UNC paths.
+
+ - :~ - relative to the home directory
+
+ - :. - relative to current directory
+
+ - :h - head of the file name
+
+ - :t - tail of the file name
+
+ - :r - root of the file name (without last extension)
+
+ - :e - extension of the file name (last one)
+
+ - :s?pat?sub? - substitute the first occurrence of pat with sub.
+ You can use any character for '?', but it must not occur in pat or
+ sub.
+
+ - :gs?pat?sub? - like :s, but substitutes all occurrences of pat with
+ sub.
+
+ See ':h filename-modifiers' in Vim's documentation for the detailed
+ description.
+
+ Using %x means expand corresponding macro escaping all characters that
+ have special meaning. And %"x means using of double quotes and escape
+ only backslash and double quote characters, which is more useful on
+ Windows systems.
+
+ Position and quantity (if there is any) of %m, %M, %S or %s macros in
+ the command is unimportant. All their occurrences are removed from the
+ resulting command.
+
+ %c and %f macros are expanded to file names only, when %C and %F are
+ expanded to full paths. %f and %F follow this in %b too.
+
+ :com move mv %f %D
+ set the :move command to move all of the files selected in the
+ current directory to the other directory.
+
+ The %a macro is replaced with any arguments given to an alias command.
+ All arguments are considered optional.
+ :com lsl !!ls -l %a - set the lsl command to execute ls -l with
+ or without an argument.
+
+ :lsl<Enter>
+ will list the directory contents of the current directory.
+
+ :lsl filename<Enter>
+ will list only the given filename.
+
+ The macros can also be used in directly executing commands. ":!mv %f
+ %D" would move the current directory selected files to the other
+ directory.
+
+ Appending & to the end of a command causes it to be executed in the
+ background. Typically you want to run two kinds of external commands
+ in the background:
+
+ - GUI applications that doesn't fork thus block vifm (:!sxiv %f &);
+
+ - console tools that do not work with terminal (:!mv %f %D &).
+
+ You don't want to run terminal commands, which require terminal input
+ or output something in background because they will mess up vifm's TUI.
+ Anyway, if you did run such a command, you can use Ctrl-L key to update
+ vifm's TUI.
+
+ Rewriting the example command with macros given above with
+ backgrounding:
+
+ %m, %M, %s, %S, %u and %U macros cannot be combined with background
+ mark (" &") as it doesn't make much sense.
+
+Command backgrounding
+ Copy and move operation can take a lot of time to proceed. That's why
+ vifm supports backgrounding of this two operations. To run :copy,
+ :move or :delete command in the background just add " &" at the end of
+ a command.
+
+ For each background operation a new thread is created. Currently job
+ cannot be stopped or paused.
+
+ You can see if command is still running in the :jobs menu.
+ Backgrounded commands have progress instead of process id at the line
+ beginning.
+
+ Background operations cannot be undone.
+
+Cancellation
+ Note that cancellation works somewhat different on Windows platform due
+ to different mechanism of break signal propagation. One also might
+ need to use Ctrl-Break shortcut instead of Ctrl-C.
+
+ There are two types of operations that can be cancelled:
+
+ - file system operations;
+
+ - mounting with FUSE (but not unmounting as it can cause loss of
+ data);
+
+ - calls of external applications.
+
+ Note that vifm never terminates applications, it sends SIGINT signal
+ and lets the application quit normally.
+
+ When one of set of operations is cancelled (e.g. copying of 5th file of
+ 10 files), further operations are cancelled too. In this case undo
+ history will contain only actually performed operations.
+
+ Cancelled operations are indicated by "(cancelled)" suffix appended to
+ information message on statusbar.
+
+ File system operations
+
+ Currently the following commands can be cancelled: :alink, :chmod,
+ :chown, :clone, :copy, :delete, :mkdir, :move, :restore, :rlink,
+ :touch. File putting (on p/P key) can be cancelled as well. It's not
+ hard to see that these are mainly long-running operations.
+
+ Cancelling commands when they are repeated for undo/redo operations is
+ allowed for convenience, but is not recommended as further undo/redo
+ operations might get blocked by side-effects of partially cancelled
+ group of operations.
+
+ These commands can't be cancelled: :empty, :rename, :substitute, :tr.
+
+ Mounting with FUSE
+
+ It's not considered to be an error, so only notification on the status
+ bar is shown.
+
+ External application calls
+
+ Each of this operations can be cancelled: :apropos, :find, :grep,
+ :locate.
+
+Patterns
+ :highlight, :filetype, :filextype, :fileviewer commands and 'classify'
+ option support globs, regular expressions and mime types to match file
+ names or their paths.
+
+ There are six possible ways to write a single pattern:
+
+ 1. [!]{comma-separated-name-globs}
+
+ 2. [!]{{comma-separated-path-globs}}
+
+ 3. [!]/name-regular-expression/[iI]
+
+ 4. [!]//path-regular-expression//[iI]
+
+ 5. [!]<comma-separated-mime-type-globs>
+
+ 6. undecorated-pattern
+
+ Flags of regular expressions mean the following:
+ - "i" makes filter case insensitive;
+ - "I" makes filter case sensitive. They can be repeated multiple
+ times, but the later one takes precedence (e.g. "iiiI" is equivalent
+ to "I" and "IiIi" is the same as "i").
+
+ To combine several patterns (AND them), make sure you're using one of
+ the first five forms and write patterns one after another, like this:
+ <text/plain>{*.vifm}
+ Mind that if you make a mistake the whole string will be treated as the
+ sixth form.
+
+ :filetype, :filextype and :fileviewer commands accept comma-separated
+ list of patterns instead of a single pattern, thus effectively handling
+ OR operation on them:
+ <text/plain>{*.vifm},<application/pdf>{*.pdf}
+
+ Five first forms can include leading exclamation mark that negates
+ pattern matching.
+
+ The last form is implicitly refers to one of others. :highlight does
+ not accept undecorated form, while :filetype, :filextype, :fileviewer,
+ :select, :unselect and 'classify' treat it as list of name globs.
+
+ Regular expression patterns are case insensitive by default, see
+ description of commands, which might override default behaviour.
+
+ "Globs" section below provides short overview of globs and some
+ important points that one needs to know about them.
+
+ Mime type matching is essentially globs matching applied to mime type
+ of a file instead of its name/path. Note: mime types aren't detected
+ on Windows.
+
+Globs
+ Globs are always case insensitive as it makes sense in general case.
+
+ *, ?, [ and ] are treated as special symbols in the pattern. E.g.
+
+ :filetype * less %c
+
+ matches all files. One can use character classes for escaping, so
+
+ :filetype [*] less %c
+
+ matches only one file name, the one which contains only asterisk
+ symbol.
+
+ * means any number of any characters (possibly an empty substring),
+ with one exception: asterisk at the pattern beginning doesn't match dot
+ in the first position. E.g.
+
+ :fileviewer *.zip,*.jar zip -sf %c
+
+ associates using of zip program to preview all files with zip or jar
+ extensions as listing of their content.
+
+ ? means any character at this position. E.g.
+
+ :fileviewer ?.out file %c
+
+ calls file tool for all files which has exactly one character before
+ their extension (e.g. a.out, b.out).
+
+ Square brackets designate character class, which means that whole
+ character class matches against any of characters listed in it. For
+ example
+
+ :fileviewer *.[ch] highlight -O xterm256 -s dante --syntax c %c
+
+ makes vifm call highlight program to colorize source and header files
+ in C language for a 256-color terminal. Equal command would be
+
+ :fileviewer *.c,*.h highlight -O xterm256 -s dante --syntax c %c
+
+
+ Inside square brackets ^ or ! can be used for symbol class negotiation
+ and the - symbol to set a range. ^ and ! should appear right after the
+ opening square bracket. For example
+
+ :filetype *.[!d]/ inspect_dir
+
+ associates inspect_dir as additional handler for all directories that
+ have one character extension unless it's "d" letter. And
+
+ :filetype [0-9].jpg sxiv
+
+ associates sxiv picture viewer only for JPEG-files that contain single
+ digit in their name.
+
+:set options
+ Local options
+ These are kind of options that are local to a specific view. So
+ you can set ascending sorting order for left pane and descending
+ order for right pane.
+
+ In addition to being local to views, each such option also has
+ two values:
+
+ - local to current directory (value associated with current
+ location);
+
+ - global to current directory (value associated with the
+ pane).
+
+ The idea is that current directory can be made a temporary
+ exception to regular configuration of the view, until directory
+ change. Use :setlocal for that. :setglobal changes view value
+ not affecting settings until directory change. :set applies
+ changes immediately to all values.
+
+
+ 'aproposprg'
+ type: string
+ default: "apropos %a"
+ Specifies format for an external command to be invoked by the
+ :apropos command. The format supports expanding of macros,
+ specific for a particular *prg option, and %% sequence for
+ inserting percent sign literally. This option should include
+ the %a macro to specify placement of arguments passed to the
+ :apropos command. If the macro is not used, it will be
+ implicitly added after a space to the value of this option.
+
+ 'autochpos'
+ type: boolean
+ default: true
+ When disabled vifm will set cursor to the first line in the view
+ after :cd and :pushd commands instead of saved cursor position.
+ Disabling this will also make vifm clear information about
+ cursor position in the view history on :cd and :pushd commands
+ (and on startup if 'autochpos' is disabled in the vifmrc). l
+ key in the ":history ." and ":trashes" menus are treated like
+ :cd command. This option also affects marks so that navigating
+ to a mark doesn't restore cursor position.
+
+ When this option is enabled, more fine grained control over
+ cursor position is available via 'histcursor' option.
+
+ 'columns' 'co'
+ type: integer
+ default: terminal width on startup
+ Terminal width in characters.
+
+ 'caseoptions'
+ type: charset
+ default: ""
+ This option gives additional control over case sensitivity by
+ allowing overriding default behaviour to either always be case
+ sensitive or always be case insensitive. Possible values form
+ pairs of lower and upper case letters that configure specific
+ aspect of behaviour:
+ p - always ignore case of paths during completion.
+ P - always match case of paths during completion.
+ g - always ignore case of characters for f/F/;/,.
+ G - always match case of characters for f/F/;/,.
+
+ At most one item of each pair takes affect, if both or more are
+ present, only the last one matters. When none of pair's
+ elements are present, the behaviour is default (depends on
+ operating system for path completion and on values of
+ 'ignorecase' and 'smartcase' options for file navigation).
+
+ 'cdpath' 'cd'
+ type: string list
+ default: value of $CDPATH with commas instead of colons
+ Specifies locations to check on changing directory with relative
+ path that doesn't start with "./" or "../". When non-empty,
+ current directory is examined after directories listed in the
+ option.
+
+ This option doesn't affect completion of :cd command.
+
+ Example:
+
+ set cdpath=~
+
+ This way ":cd bin" will switch to "~/bin" even if directory
+ named "bin" exists in current directory, while ":cd ./bin"
+ command will ignore value of 'cdpath'.
+
+ 'chaselinks'
+ type: boolean
+ default: false
+ When enabled path of view is always resolved to real path (with
+ all symbolic links expanded).
+
+ 'classify'
+ type: string list
+ default: ":dir:/"
+ Specifies file name prefixes and suffixes depending on file type
+ or name. The format is either of:
+ - [{prefix}]:{filetype}:[{suffix}]
+ - [{prefix}]::{pattern}::[{suffix}]
+ Possible {pattern} forms are described in "Patterns" section
+ above.
+
+ Priority rules:
+ - file name patterns have priority over type patterns
+ - file name patterns are matched in left-to-right order of
+ their appearance in this option
+
+ Either {prefix} or {suffix} or both can be omitted (which is the
+ default for all unspecified file types), this means empty
+ {prefix} and/or {suffix}. {prefix} and {suffix} should consist
+ of at most eight characters. Elements are separated by commas.
+ Neither prefixes nor suffixes are part of file names, so they
+ don't affect commands which operate on file names in any way.
+ Comma (',') character can be inserted by doubling it. List of
+ file type names can be found in the description of filetype()
+ function.
+
+ 'confirm' 'cf'
+ type: set
+ default: delete,permdelete
+ Defines which operations require confirmation:
+ - delete - moving files to trash (on d or :delete);
+ - permdelete - permanent deletion of files (on D or :delete!
+ command or on undo/redo operation).
+
+ 'cpoptions' 'cpo'
+ type: charset
+ default: "fst"
+ Contains a sequence of single-character flags. Each flag
+ enables behaviour of older versions of vifm. Flags:
+ - f - when included, running :filter command results in not
+ inverted (matching files are filtered out) and :filter! in
+ inverted (matching files are left) filter, when omitted, meaning
+ of the exclamation mark changes to the opposite;
+ - s - when included, yy, dd and DD normal mode commands act on
+ selection, otherwise they operate on current file only;
+ - t - when included, <tab> (thus <c-i>) behave as <space> and
+ switches active pane, otherwise <tab> and <c-i> go forward in
+ the view history. It's possible to make both <tab> and <c-i> to
+ work as expected by setting up the terminal to emit a custom
+ sequence when <c-i> is pressed; see :histnext for details.
+
+ 'cvoptions'
+ type: set
+ default:
+ Specifies whether entering/leaving custom views triggers events
+ that normally happen on entering/leaving directories:
+ - autocmds - trigger autocommands on entering/leaving custom
+ views;
+ - localopts - reset local options on entering/leaving custom
+ views;
+ - localfilter - reset local filter on entering/leaving custom
+ views.
+
+ 'deleteprg'
+ type: string
+ default: ""
+ Specifies program to run on files that are permanently removed.
+ When empty, files are removed as usual, otherwise this command
+ is invoked on each file by appending its name. If the command
+ doesn't remove files, they will remain on the file system.
+
+ 'dirsize'
+ type: enumeration
+ default: size
+ Controls how size of directories is displayed in file views.
+ The following values are possible:
+ - size - size of directory (i.e., size used to store list of
+ files)
+ - nitems - number of entries in the directory (excluding . and
+ ..)
+
+ Size obtained via ga/gA overwrites this setting so seeing count
+ of files and occasionally size of directories is possible.
+
+ 'dotdirs'
+ type: set
+ default: nonrootparent
+ Controls displaying of dot directories. The following values
+ are possible:
+ - rootparent - show "../" in root directory of file system
+ - nonrootparent - show "../" in non-root directories of file
+ system
+
+ Note that empty directories always contain "../" entry
+ regardless of value of this option. "../" disappears at the
+ moment at least one file is created.
+
+ 'dotfiles'
+ type: boolean
+ default: false
+ Whether dot files are shown in the view. Can be controlled with
+ z* bindings.
+
+ 'fastrun'
+ type: boolean
+ default: false
+ With this option turned on you can run partially entered
+ commands with unambiguous beginning using :! (e.g. :!Te instead
+ of :!Terminal or :!Te<tab>).
+
+ 'fillchars' 'fcs'
+ type: string list
+ default: ""
+ Sets characters used to fill borders.
+
+ item default used for
+ vborder:c ' ' left, middle and right vertical
+ borders
+
+ If value is omitted, its default value is used. Example:
+
+ set fillchars=vborder:.
+
+ 'findprg'
+ type: string
+ default: "find %s %a -print , -type d \( ! -readable -o !
+ -executable \) -prune"
+ Specifies format for an external command to be invoked by the
+ :find command. The format supports expanding of macros,
+ specific for a particular *prg option, and %% sequence for
+ inserting percent sign literally. This option should include
+ the %s macro to specify placement of list of paths to search in
+ and %a or %A macro to specify placement of arguments passed to
+ the :find command. If some of the macros are not used, they
+ will be implicitly added after a space to the value of the
+ option in the following order: %s, %a. Note that when neither
+ %a nor %A are specified, it's %a which is added implicitly.
+
+ The macros can slightly change their meaning depending on :find
+ command arguments. When the first argument points to an
+ existing directory, %s is assigned all arguments and %a/%A are
+ left empty. Otherwise, %s is assigned a dot (".") meaning
+ current directory or list of selected file names, if any. %a/%A
+ are assigned arguments when first argument starts with a dash
+ ("-"), otherwise %a gets an escaped version of arguments,
+ prepended by "-name" (on *nix) or "-iname" (on Windows)
+ predicate.
+
+ %a and %A macros contain almost the same value, the difference
+ is that %a can be escaped and %A is never escaped. %A is to be
+ used mainly on Windows, where shell escaping is a mess and can
+ break command execution.
+
+ Optional %u or %U macro could be used (if both specified %U is
+ chosen) to force redirection to custom or unsorted custom view
+ respectively.
+
+ Starting from Windows Server 2003 a where command is available,
+ one can configure vifm to use it in the following way:
+
+ set findprg="where /R %s %A"
+
+ As the syntax of this command is rather limited, one can't use
+ :find command with selection of more than one item in this case.
+ The command looks for files only completely ignoring
+ directories.
+
+ When using find port on Windows, another option is to setup
+ 'findprg' like this:
+
+ set findprg="find %s %a"
+
+ 'followlinks'
+ type: boolean
+ default: true
+ Follow links on l or Enter. That is navigate to destination
+ file instead of treating the link as if it were target file.
+ Doesn't affects links to directories, which are always entered
+ (use gf key for directories).
+
+ 'fusehome'
+ type: string
+ default: "($XDG_DATA_HOME/.local/share | $VIFM)/fuse/"
+ Directory to be used as a root dir for FUSE mounts. Value of
+ the option can contain environment variables (in form
+ "$envname"), which will be expanded (prepend it with a slash to
+ prevent expansion). The value should expand to an absolute
+ path.
+
+ If you change this option, vifm won't remount anything. It
+ affects future mounts only. See "Automatic FUSE mounts" section
+ below for more information.
+
+ 'gdefault' 'gd'
+ type: boolean
+ default: false
+ When on, 'g' flag is on for :substitute by default.
+
+ 'grepprg'
+ type: string
+ default: "grep -n -H -I -r %i %a %s"
+ Specifies format for an external command to be invoked by the
+ :grep command. The format supports expanding of macros,
+ specific for a particular *prg option, and %% sequence for
+ inserting percent sign literally. This option should include
+ the %i macro to specify placement of "-v" string when inversion
+ of results is requested, %a or %A macro to specify placement of
+ arguments passed to the :grep command and the %s macro to
+ specify placement of list of files to search in. If some of the
+ macros are not used, they will be implicitly added after a space
+ to the value of the 'grepprg' option in the following order: %i,
+ %a, %s. Note that when neither %a nor %A are specified, it's %a
+ which is added implicitly.
+
+ Optional %u or %U macro could be used (if both specified %U is
+ chosen) to force redirection to custom or unsorted custom view
+ respectively.
+
+ See 'findprg' option for description of difference between %a
+ and %A.
+
+ Example of setup to use ack (http://beyondgrep.com/) instead of
+ grep:
+
+ set grepprg='ack -H -r %i %a %s'
+
+ or The Silver Searcher
+ (https://github.com/ggreer/the_silver_searcher):
+
+ set grepprg='ag --line-numbers %i %a %s'
+
+
+
+ 'histcursor'
+ type: set
+ default: startup,dirmark,direnter
+ Defines situations when cursor should be moved according to
+ directory history:
+ - startup - on loading file lists during startup
+ - dirmark - after navigating to a mark that doesn't specify
+ file
+ - direnter - on opening directory from a file list
+
+ This option has no effect when 'autochpos' is disabled.
+
+ Note that the list is not exhaustive and there are other
+ situations when cursor is positioned automatically.
+
+ 'history' 'hi'
+ type: integer
+ default: 15
+ Maximum number of stored items in all histories.
+
+ 'hlsearch' 'hls'
+ type: boolean
+ default: true
+ Highlight all matches of search pattern.
+
+ 'iec' type: boolean
+ default: false
+ Use KiB, MiB, ... suffixes instead of K, M, ... when printing
+ size in human-friendly format.
+
+ 'ignorecase' 'ic'
+ type: boolean
+ default: false
+ Ignore case in search patterns (:substitute, / and ? commands)
+ and characters after f and F commands. It doesn't affect file
+ filtering.
+
+ 'incsearch' 'is'
+ type: boolean
+ default: false
+ When this option is set, search and view update for local filter
+ is be performed starting from initial cursor position each time
+ search pattern is changed.
+
+ 'iooptions'
+ type: set
+ default:
+ Controls details of file operations. The following values are
+ available:
+ - fastfilecloning - perform fast file cloning (copy-on-write),
+ when available
+ (available on Linux and btrfs file system).
+
+ 'laststatus' 'ls'
+ type: boolean
+ default: true
+ Controls if status bar is visible.
+
+ 'lines'
+ type: integer
+ default: terminal height on startup
+ Terminal height in lines.
+
+ 'locateprg'
+ type: string
+ default: "locate %a"
+ Specifies format for an external command to be invoked by the
+ :locate command. The format supports expanding of macros,
+ specific for a particular *prg option, and %% sequence for
+ inserting percent sign literally. This option should include
+ the %a macro to specify placement of arguments passed to the
+ :locate command. If the macro is not used, it will be
+ implicitly added after a space to the value of this option.
+
+ Optional %u or %U macro could be used (if both specified %U is
+ chosen) to force redirection to custom or unsorted custom view
+ respectively.
+
+ 'mediaprg'
+ type: string
+ default: path to bundled script that supports udevil and udisks
+ {only for *nix}
+ Specifies command to be used to manage media devices. Used by
+ :media command.
+
+ The command can be passed the following parameters:
+ - list -- list media
+ - mount {device} -- mount a device
+ - unmount {path} -- unmount given mount point
+
+ The output of `list` subcommand is parsed in search of lines
+ that start with one of the following prefixes:
+ - device= - specifies device path (e.g., "/dev/sde")
+ - label= - specifies optional device label (e.g., "Memory
+ card")
+ - mount-point= - specifies a mount point (can be absent or
+ appear more than once)
+
+ All other lines are ignored. Each `device=` starts a new
+ section describing a device which should include two other
+ possible prefixes.
+
+ `list` subcommand is assumed to always succeed, while error
+ stream and exit code of `mount` and `unmount` is taken into
+ account to determine whether operation was performed
+ successfully.
+
+ 'lsoptions'
+ type: string list
+ default: ""
+ scope: local
+
+ Configures ls-like view.
+
+ item used for
+ transposed filling view grid by columns rather than by
+ lines
+
+
+ 'lsview'
+ type: boolean
+ default: false
+ scope: local
+ When this option is set, directory view will be displayed in
+ multiple columns with file names similar to output of `ls -x`
+ command. See "ls-like view" section below for format
+ description. This option has no effect if 'millerview' is on.
+
+ 'milleroptions'
+ type: string list
+ default: "lsize:1,csize:1,rsize:1"
+ scope: local
+
+ Configures miller view.
+
+ item default used for
+ lsize:num 0 left column
+ csize:num 1 center column (can't be disabled)
+ rsize:num 0 right column
+
+ *size specifies ratios of columns. Each ratio is in the range
+ from 0 to 100 and values are adjusted to fit the limits. Zero
+ disables a column, but central (main) column can't be disabled.
+
+ Example of two-column mode which is useful in combination with
+ :view command:
+
+ set milleroptions=lsize:1,csize:2
+
+
+ 'millerview'
+ type: boolean
+ default: false
+ scope: local
+ When this option is set, directory view will be displayed in
+ multiple cascading columns. Ignores 'lsview'.
+
+ 'mintimeoutlen'
+ type: integer
+ default: 150
+ The fracture of 'timeoutlen' in milliseconds that is waited
+ between subsequent input polls, which affects various
+ asynchronous operations (detecting changes made by external
+ applications, monitoring background jobs, redrawing UI). There
+ are no strict guarantees, however the higher this value is, the
+ less is CPU load in idle mode.
+
+ 'number' 'nu'
+ type: boolean
+ default: false
+ scope: local
+ Print line number in front of each file name when 'lsview'
+ option is turned off. Use 'numberwidth' to control width of
+ line number. Also see 'relativenumber'.
+
+ 'numberwidth' 'nuw'
+ type: integer
+ default: 4
+ scope: local
+ Minimal number of characters for line number field.
+
+ 'previewprg'
+ type: string
+ default: ""
+ scope: local
+
+ External command to be used instead of preview programs
+ configured via :fileviewer command.
+
+ Example:
+
+ " always show git log in preview of files inside some repository
+ au DirEnter '~/git-repo/**/*' setl previewprg='git log --color -- %c 2>&1'
+
+ 'quickview'
+ type: boolean
+ default: false
+ Whether quick view (:view) is currently active or not.
+
+ 'relativenumber' 'rnu'
+ type: boolean
+ default: false
+ scope: local
+ Print relative line number in front of each file name when
+ 'lsview' option is turned off. Use 'numberwidth' to control
+ width of line number. Various combinations of 'number' and
+ 'relativenumber' lead to such results:
+
+ nonumber number
+
+ norelativenumber | first | 1 first
+ | second | 2 second
+ | third | 3 third
+
+ relativenumber | 1 first | 1 first
+ | 0 second |2 second
+ | 1 third | 1 third
+
+
+ 'rulerformat' 'ruf'
+ type: string
+ default: "%l/%S "
+ Determines the content of the ruler. Its minimal width is 13
+ characters and it's right aligned. Following macros are
+ supported:
+ %= - separation point between left and right aligned halves of
+ the line
+ %l - file number
+ %L - total number of files in view (including filtered out
+ ones)
+ %x - number of files excluded by filters
+ %0- - old name for %x macro
+ %S - number of displayed files
+ %= - separation point between left and right align items
+ %% - percent sign
+ %[ - designates beginning of an optional block
+ %] - designates end of an optional block
+
+ Percent sign can be followed by optional minimum field width.
+ Add '-' before minimum field width if you want field to be right
+ aligned.
+
+ Example:
+
+ set rulerformat='%2l-%S%[ +%x%]'
+
+ 'runexec'
+ type: boolean
+ default: false
+ Run executable file on Enter or l.
+
+ 'scrollbind' 'scb'
+ type: boolean
+ default: false
+ When this option is set, vifm will try to keep difference of
+ scrolling positions of two windows constant.
+
+ 'scrolloff' 'so'
+ type: integer
+ default: 0
+ Minimal number of screen lines to keep above and below the
+ cursor. If you want cursor line to always be in the middle of
+ the view (except at the beginning or end of the file list), set
+ this option to some large value (e.g. 999).
+
+ 'shell' 'sh'
+ type: string
+ default: $SHELL or "/bin/sh" or "cmd" (on MS-Windows)
+ Full path to the shell to use to run external commands. On *nix
+ a shell argument can be supplied.
+
+ 'shortmess' 'shm'
+ type: charset
+ default: "p"
+ Contains a sequence of single-character flags. Each flag
+ enables shortening of some message displayed by vifm in the TUI.
+ Flags:
+ - M - shorten titles in windows of terminal multiplexers
+ created by vifm down to file name instead of using full path.
+ - T - truncate status-bar messages in the middle if they are
+ too long to fit on the command line. "..." will appear in the
+ middle.
+ - p - use tilde shortening in view titles.
+
+
+ 'showtabline' 'stal'
+ type: enumeration
+ default: multiple
+ Specifies when tab line should be displayed. Possible values:
+ - never - never display tab line
+ - multiple - show tab line only when there are at least two
+ tabs
+ - always - display tab line always
+
+ Alternatively 0, 1 and 2 Vim-like values are also accepted and
+ correspond to "never", "multiple" and "always" respectively.
+
+ 'sizefmt'
+ type: string list
+ default: "units:iec"
+ Configures the way size is formatted in human-friendly way.
+
+ item value meaning
+ units: iec Use 1024 byte units (K or KiB,
+ etc.).
+ See 'iec' option.
+ si Use 1000 byte units (KB, etc.).
+ precision: i > 0 How many fraction digits to
+ consider.
+ {not set} Precision of 1 for integer part
+ < 10,
+ 0 otherwise (provides old
+ behaviour).
+
+ Numbers are rounded from zero. Trailing zeros are dropped.
+
+ Example:
+
+ set sizefmt=units:iec,precision:2
+
+
+ 'slowfs'
+ type: string list
+ default: ""
+ only for *nix
+ A list of mounter fs name beginnings (first column in /etc/mtab
+ or /proc/mounts) or paths prefixes for fs/directories that work
+ too slow for you. This option can be used to stop vifm from
+ making some requests to particular kinds of file systems that
+ can slow down file browsing. Currently this means don't check
+ if directory has changed, skip check if target of symbolic links
+ exists, assume that link target located on slow fs to be a
+ directory (allows entering directories and navigating to files
+ via gf). If you set the option to "*", it means all the systems
+ are considered slow (useful for cygwin, where all the checks
+ might render vifm very slow if there are network mounts).
+
+ Example for autofs root /mnt/autofs:
+
+ set slowfs+=/mnt/autofs
+
+ 'smartcase' 'scs'
+ type: boolean
+ default: false
+ Overrides the ignorecase option if the search pattern contains
+ at least one upper case character. Only used when ignorecase
+ option is enabled. It doesn't affect file filtering.
+
+ 'sort' type: string list
+ default: +name on *nix and +iname on Windows
+ scope: local
+ Sets list of sorting keys (first item is primary key, second is
+ secondary key, etc.):
+ [+-]ext - extension of files and directories
+ [+-]fileext - extension of files only
+ [+-]name - name (including extension)
+ [+-]iname - name (including extension, ignores case)
+ [+-]type - file type
+ (dir/reg/exe/link/char/block/sock/fifo)
+ [+-]dir - directory grouping (directory < file)
+ [+-]gid - group id (*nix only)
+ [+-]gname - group name (*nix only)
+ [+-]mode - file type derived from its mode (*nix only)
+ [+-]perms - permissions string (*nix only)
+ [+-]uid - owner id (*nix only)
+ [+-]uname - owner name (*nix only)
+ [+-]nlinks - number of hard links (*nix only)
+ [+-]inode - inode number (*nix only)
+ [+-]size - size
+ [+-]nitems - number of items in a directory (zero for files)
+ [+-]groups - groups extracted via regexps from 'sortgroups'
+ [+-]target - symbolic link target (empty for other file
+ types)
+ [+-]atime - time accessed (e.g. read, executed)
+ [+-]ctime - time changed (changes in metadata, e.g. mode)
+ [+-]mtime - time modified (when file contents is changed)
+
+ Note: look for st_atime, st_ctime and st_mtime in "man 2 stat"
+ for more information on time keys.
+
+ '+' means ascending sort for this key, and '-' means descending
+ sort.
+
+ "dir" key is somewhat similar in this regard but it's added
+ implicitly: when "dir" is not specified, sorting behaves as if
+ it was the first key in the list. That's why if one wants
+ sorting algorithm to mix directories and files, "dir" should be
+ appended to sorting option, for example like this:
+
+ set sort+=dir
+
+ or
+
+ set sort=-size,dir
+
+ Value of the option is checked to include dir key and default
+ sorting key (name on *nix, iname on Windows). Here is what
+ happens if one of them is missing:
+
+ - type key is added at the beginning;
+
+ - default key is added at the end;
+
+ all other keys are left untouched (at most they are moved).
+
+ This option also changes view columns according to primary
+ sorting key set, unless 'viewcolumns' option is not empty.
+
+ 'sortnumbers'
+ type: boolean
+ default: false
+ scope: local
+ Natural sort of (version) numbers within text.
+
+ 'sortgroups'
+ type: string
+ default: ""
+ scope: local
+ Sets comma-separated list of regular expressions to use for
+ group sorting, double comma is literal comma. Each expression
+ should contain at least one group or its value will be
+ considered to be always empty. Only first match of each regular
+ expression is considered. Groups are considered from right to
+ first similar to 'sort', first group divides list of files into
+ sub-groups, each of which is sorted by the second group and so
+ on.
+
+ Example:
+ set sortgroups=-(done|todo).*
+ this would put files with "-done" in their names above all files
+ with "-todo".
+
+ 'sortorder'
+ type: enumeration
+ default: ascending
+ Sets sort order for primary key: ascending, descending.
+
+ 'statusline' 'stl'
+ type: string
+ default: ""
+ Determines the content of the status line (the line right above
+ command-line). Empty string means use same format like in
+ previous versions. Following macros are supported:
+
+ - %t - file name (considering value of the 'classify' option)
+
+ - %T - symbolic link target (empty for other filetypes)
+
+ - %f - file name relative to current directory (considers
+ 'classify')
+
+ - %A - file attributes (permissions on *nix or properties on
+ Windows) %u - user name or uid (if it cannot be resolved)
+
+ - %g - group name or gid (if it cannot be resolved)
+
+ - %s - file size in human readable format
+
+ - %E - size of selected files in human readable format, same as
+ %s when no files are selected, except that it will never show
+ size of ../ in visual mode, since it cannot be selected
+
+ - %d - file modification date (uses 'timefmt' option)
+
+ - %D - path of the other pane for single-pane layout
+
+ - %a - amount of free space available at current partition
+
+ - %z - short tips/tricks/hints that chosen randomly after one
+ minute period
+
+ - %{<expr>} - evaluate arbitrary vifm expression '<expr>', e.g.
+ '&sort'
+
+ - %* - resets or applies one of User1..User9 highlight groups;
+ reset happens when width field is 0 or not specified, one of
+ groups gets picked when width field is in the range from 1 to
+ 9
+
+ - all 'rulerformat' macros
+
+ Percent sign can be followed by optional minimum field width.
+ Add '-' before minimum field width if you want field to be right
+ aligned.
+
+ On Windows file properties include the following flags (upper
+ case means flag is on):
+ A - archive
+ H - hidden
+ I - content isn't indexed
+ R - readonly
+ S - system
+ C - compressed
+ D - directory
+ E - encrypted
+ P - reparse point (e.g. symbolic link)
+ Z - sparse file
+
+ Example without colors:
+
+ set statusline=" %t%= %A %10u:%-7g %15s %20d %{&sort} "
+
+ Example with colors:
+
+ highlight User1 ctermbg=yellow
+ highlight User2 ctermbg=blue ctermfg=white cterm=bold
+ set statusline="%1* %-26t %2* %= %1* %A %2* %7u:%-7g %1* %-5s %2* %d "
+
+
+ 'suggestoptions'
+ type: string list
+ default:
+ Controls when, for what and how suggestions are displayed. The
+ following values are available:
+ - normal - in normal mode;
+ - visual - in visual mode;
+ - view - in view mode;
+ - otherpane - use other pane to display suggestions, when
+ available;
+ - delay[:num] - display suggestions after a small delay (to
+ do not annoy if you just want to type a fast shortcut consisting
+ of multiple keys), num specifies the delay in ms (500 by
+ default), 'timeoutlen' at most;
+ - keys - include shortcuts (commands and selectors);
+ - foldsubkeys - fold multiple keys with common prefix;
+ - marks - include marks;
+ - registers[:num] - include registers, at most num files (5 by
+ default).
+
+ 'syncregs'
+ type: string
+ default:
+ Specifies identifier of group of instances that share registers
+ between each other. When several instances of vifm have this
+ option set to identical value, they automatically synchronize
+ contents of their registers on operations which use them.
+
+ 'syscalls'
+ type: boolean
+ default: false
+ When disabled, vifm will rely on external applications to
+ perform file-system operations, otherwise system calls are used
+ instead (much faster and supports progress tracking). The
+ option should eventually be removed. Mostly *nix-like systems
+ are affected.
+
+ 'tabscope'
+ type: enumeration
+ default: global
+ Picks style of tabs, which defines what a single tab contains.
+ Possible values:
+ - global - tab describes complete UI of two views and how they
+ are arranged
+ - pane - tab is located "inside" a pane and manages it and
+ quick view
+
+ 'tabstop' 'ts'
+ type: integer
+ default: value from curses library
+ Number of spaces that a Tab in the file counts for.
+
+ 'timefmt'
+ type: string
+ default: "%m/%d %H:%M"
+ Format of time in file list. See "man 1 date" or "man 3
+ strftime" for details.
+
+ 'timeoutlen' 'tm'
+ type: integer
+ default: 1000
+ The time in milliseconds that is waited for a mapped key in case
+ of already typed key sequence is ambiguous.
+
+ 'title'
+ type: boolean
+ default: true when title can be restored, false otherwise
+ When enabled title of the terminal or terminal multiplexer's
+ window is updated according to current location.
+
+ 'trash'
+ type: boolean
+ default: true
+ Use trash directory. See "Trash directory" section below.
+
+ 'trashdir'
+ type: string
+ default: on *nix:
+ "%r/.vifm-Trash-%u,$VIFM/Trash,%r/.vifm-Trash"
+ or if $VIFM/Trash doesn't exist
+ "%r/.vifm-Trash-%u,$XDG_DATA_HOME/vifm/Trash,%r/.vifm-Trash"
+ on Windows:
+ "%r/.vifm-Trash,$XDG_DATA_HOME/vifm/Trash"
+ List of trash directory path specifications, separated with
+ commas. Each list item either defines an absolute path to trash
+ directory or a path relative to a mount point root when list
+ element starts with "%r/". Value of the option can contain
+ environment variables (of form "$envname"), which will be
+ expanded (prepend $ with a slash to prevent expansion).
+ Environment variables are expanded when the option is set.
+
+ On *nix, if element ends with "%u", the mark is replaced with
+ real user ID and permissions are set so that only that only
+ owner is able to use it.
+ Note that even this setup is not completely secure when combined
+ with "%r/" and it's overall safer to keep files in home
+ directory, but that implies cost of copying files between
+ partitions.
+
+ When new file gets cut (deleted) vifm traverses each element of
+ the option in the order of their appearance and uses first trash
+ directory that it was able to create or that is already
+ writable.
+
+ Default value tries to use trash directory per mount point and
+ falls back to ~/.vifm/Trash on failure.
+
+ Will attempt to create the directory if it does not exist. See
+ "Trash directory" section below.
+
+ 'tuioptions' 'to'
+ type: charset
+ default: "ps"
+ Each flag configures some aspect of TUI appearance. The flags
+ are:
+ p - when included:
+ * file list inside a pane gets additional single character
+ padding on left and right sides;
+ * quick view and view mode get single character padding.
+ s - when included, left and right borders (side borders, hence
+ "s" character) are visible.
+ u - use Unicode characters in the TUI (Unicode ellipsis instead
+ of "...").
+
+ 'undolevels' 'ul'
+ type: integer
+ default: 100
+ Maximum number of changes that can be undone. Note that here
+ single file operation is used as a unit, not operation, i.e.
+ deletion of 101 files will exceed default limit.
+
+ 'vicmd'
+ type: string
+ default: "vim"
+ The actual command used to start vi. Ampersand sign at the end
+ (regardless whether it's preceded by space or not) means
+ backgrounding of command.
+
+ Background flag is ignored in certain context where vifm waits
+ for the editor to finish. Such contexts include any command
+ that spawns editor to change list of file names or a command,
+ with :rename being one example. `-f` is also appended to
+ prevent forking in such cases, so the command needs to handle
+ the flag.
+
+ Additionally `+{num}` and `+'call cursor()'` arguments are used
+ to position cursor when location is known.
+
+ 'viewcolumns'
+ type: string
+ default: ""
+ scope: local
+ Format string containing list of columns in the view. When this
+ option is empty, view columns to show are chosen automatically
+ using sorting keys (see 'sort') as a base. Value of this option
+ is ignored if 'lsview' is set. See "Column view" section below
+ for format description.
+
+ An example of setting the options for both panes (note :windo
+ command):
+
+ windo set viewcolumns=-{name}..,6{size},11{perms}
+
+ 'vixcmd'
+ type: string
+ default: value of 'vicmd'
+ Same as 'vicmd', but takes precedence over it when running in X.
+
+ 'vifminfo'
+ type: set
+ default: bookmarks,bmarks
+ Controls what will be saved in the $VIFM/vifminfo file.
+
+ bmarks - named bookmarks
+ bookmarks - marks, except special ones like '< and '>
+ tui - state of the user interface (sorting, number of
+ windows, quick
+ view state, active view)
+ dhistory - directory history
+ state - file name and dot filters and terminal
+ multiplexers integration
+ state
+ cs - primary color scheme
+ savedirs - save last visited directory (requires dhistory)
+ chistory - command line history
+ shistory - search history (/ and ? commands)
+ phistory - prompt history
+ fhistory - history of local filter (see description of the
+ "=" normal mode
+ command)
+ dirstack - directory stack overwrites previous stack, unless
+ stack of
+ current session is empty
+ registers - registers content
+ options - all options that can be set with the :set command
+ (obsolete)
+ filetypes - associated programs and viewers (obsolete)
+ commands - user defined commands (see :command description)
+ (obsolete)
+
+ 'vimhelp'
+ type: boolean
+ default: false
+ Use vim help format.
+
+ 'wildmenu' 'wmnu'
+ type: boolean
+ default: false
+ Controls whether possible matches of completion will be shown
+ above the command line.
+
+ 'wildstyle'
+ type: enumeration
+ default: bar
+ Picks presentation style of wild menu. Possible values:
+ - bar - one-line with left-to-right cursor
+ - popup - multi-line with top-to-bottom cursor
+
+ 'wordchars'
+ type: string list
+ default: "1-8,14-31,33-255" (that is all non-whitespace
+ characters)
+ Specifies which characters in command-line mode should be
+ considered as part of a word. Value of the option is comma-
+ separated list of ranges. If both endpoints of a range match,
+ single endpoint is enough (e.g. "a" = "a-a"). Both endpoints
+ are inclusive. There are two accepted forms: character
+ representing itself or number encoding character according to
+ ASCII table. In case of ambiguous characters (dash, comma,
+ digit) use numeric form. Accepted characters are in the range
+ from 0 to 255. Any Unicode character with code greater than 255
+ is considered to be part of a word.
+
+ The option affects Alt-D, Alt-B and Alt-F, but not Ctrl-W. This
+ is intentionally to allow two use cases:
+
+ - Moving by WORDS and deletion by words.
+ - Moving by words and deletion by WORDS.
+
+ To get the latter use the following mapping:
+
+ cnoremap <c-w> <a-b><a-d>
+
+ Also used for abbreviations.
+
+ 'wrap' type: boolean
+ default: true
+ Controls whether to wrap text in quick view.
+
+ 'wrapscan' 'ws'
+ type: boolean
+ default: true
+ Searches wrap around end of the list.
+
+Mappings
+ Map arguments
+
+ LHS of mappings can be preceded by arguments which take the form of
+ special sequences:
+
+ <silent>
+ Postpone UI updates until RHS is completely processed.
+
+ <wait> In case of builtin mapping causing conflict for a user-defined
+ mapping (e.g., `t` builtin to a partially typed `ta` user-
+ defined mapping), ignore the builtin mapping and wait for input
+ indefinitely as opposed to default behaviour of triggering the
+ builtin mapping after a delay defined by 'timeoutlen'. Example:
+
+ nnoremap <wait> tw :set wrap!<cr>
+ nnoremap <wait> tn :set number!<cr>
+ nnoremap <wait> tr :set relativenumber!<cr>
+
+ Special sequences
+
+ Since it's not easy to enter special characters there are several
+ special sequences that can be used in place of them. They are:
+
+ <cr> Enter key.
+
+ <esc> Escape key.
+
+ <space>
+ Space key.
+
+ <lt> Less-than character (<).
+
+ <nop> provides a way to disable a mapping (by mapping it to <nop>).
+
+ <bs> Backspace key (see key conflict description below).
+
+ <tab> <s-tab>
+ Tabulation and Shift+Tabulation keys.
+
+ <home> <end>
+ Home/End.
+
+ <left> <right> <up> <down>
+ Arrow keys.
+
+ <pageup> <pagedown>
+ PageUp/PageDown.
+
+ <del> <delete>
+ Delete key. <del> and <delete> mean different codes, but
+ <delete> is more common.
+
+ <insert>
+ Insert key.
+
+ <c-a>,<c-b>,...,<c-z>,<c-[>,<c->,<c-]>,<c-^>,<c-_>
+ Control + some key (see key conflict description below).
+
+ <c-@> only for *nix
+ Control + Space.
+
+ <a-a>,<a-b>,...,<a-z>
+ <m-a>,<m-b>,...,<m-z> Alt + some key.
+
+ <a-c-a>,<a-c-b>,...,<a-c-z>
+ <m-c-a>,<m-c-b>,...,<m-c-z> only for *nix
+ Alt + Ctrl + some key.
+
+ <f0> - <f63>
+ Functional keys.
+
+ <c-f1> - <c-f12>
+ only for MS-Windows
+ functional keys with Control key pressed.
+
+ <a-f1> - <a-f12>
+ only for MS-Windows
+ functional keys with Alt key pressed.
+
+ <s-f1> - <s-f12>
+ only for MS-Windows
+ functional keys with Shift key pressed.
+
+ Note that due to the way terminals process their input, several
+ keyboard keys might be mapped to single key code, for example:
+
+ - <cr> and <c-m>;
+
+ - <tab> and <c-i>;
+
+ - <c-h> and <bs>;
+
+ - etc.
+
+ Most of the time they are defined consistently and don't cause
+ surprises, but <c-h> and <bs> are treated differently in different
+ environments (although they match each other all the time), that's why
+ they correspond to different keys in vifm. As a consequence, if you
+ map <c-h> or <bs> be sure to repeat the mapping with the other one so
+ that it works in all environments. Alternatively, provide your mapping
+ in one form and add one of the following:
+
+ " if mappings with <c-h> in the LHS work
+ map <c-h> <bs>
+ " if mappings with <bs> in the LHS work
+ map <bs> <c-h>
+
+ Whitespace
+
+ vifm removes whitespace characters at the beginning and end of
+ commands. That's why you may want to use <space> at the end of rhs in
+ mappings. For example:
+
+ cmap <f1> man<space>
+
+ will put "man " in line when you hit the <f1> key in the command line
+ mode.
+
+Expression syntax
+ Supported expressions is a subset of what VimL provides.
+
+ Expression syntax summary, from least to most significant:
+
+ expr1 expr2
+ expr2 || expr2 .. logical OR
+
+ expr2 expr3
+ expr3 && expr3 .. logical AND
+
+ expr3 expr4
+ expr4 == expr4 equal
+ expr4 != expr4 not equal
+ expr4 > expr4 greater than
+ expr4 >= expr4 greater than or equal
+ expr4 < expr4 smaller than
+ expr4 <= expr4 smaller than or equal
+
+ expr4 expr5
+ expr5 + expr5 .. number addition
+ expr5 - expr5 .. number subtraction
+
+ expr5 expr6
+ expr6 . expr6 .. string concatenation
+
+ expr6 expr7
+ - expr6 unary minus
+ + expr6 unary plus
+ ! expr6 logical NOT
+
+ expr7 number number constant
+ "string" string constant, \ is special
+ 'string' string constant, ' is doubled
+ &option option value
+ $VAR environment variable
+ v:var builtin variable
+ function(expr1, ...) function call
+ (expr1) nested expression
+
+ ".." indicates that the operations in this level can be concatenated.
+
+ expr1
+ -----
+ expr2 || expr2
+
+ Arguments are converted to numbers before evaluation.
+
+ Result is non-zero if at least one of arguments is non-zero.
+
+ It's right associative and with short-circuiting, so sub-expressions
+ are evaluated from left to right until result of whole expression is
+ determined (i.e., until first non-zero) or end of the expression.
+
+ expr2
+ -----
+ expr3 && expr3
+
+ Arguments are converted to numbers before evaluation.
+
+ Result is non-zero only if both arguments are non-zero.
+
+ It's right associative and with short-circuiting, so sub-expressions
+ are evaluated from left to right until result of whole expression is
+ determined (i.e., until first zero) or end of the expression.
+
+ expr3
+ -----
+ expr4 {cmp} expr4
+
+ Compare two expr4 expressions, resulting in a 0 if it evaluates to
+ false or 1 if it evaluates to true.
+
+ equal ==
+ not equal !=
+ greater than >
+ greater than or equal >=
+ smaller than <
+ smaller than or equal <=
+
+ Examples:
+
+ 'a' == 'a' == 1
+ 'a' > 'b' == 1
+ 'a' == 'b' == 0
+ '2' > 'b' == 0
+ 2 > 'b' == 1
+ 2 > '1b' == 1
+ 2 > '9b' == 0
+ -1 == -'1' == 1
+ 0 == '--1' == 1
+
+ expr4
+ -----
+ expr5 + expr5 .. number addition expr5 - expr5 .. number
+ subtraction
+
+ Examples:
+
+ 1 + 3 - 3 == 1
+ 1 + '2' == 3
+
+ expr5
+ -----
+ expr6 . expr6 .. string concatenation
+
+ Examples:
+
+ 'a' . 'b' == 'ab'
+ 'aaa' . '' . 'c' == 'aaac'
+
+ expr6
+ -----
+
+ - expr6 unary minus
+ + expr6 unary plus
+ ! expr6 logical NOT
+
+ For '-' the sign of the number is changed.
+ For '+' the number is unchanged.
+ For '!' non-zero becomes zero, zero becomes one.
+
+ A String will be converted to a Number first.
+
+ These operations can be repeated and mixed. Examples:
+
+ --9 == 9
+ ---9 == -9
+ -+9 == 9
+ !-9 == 0
+ !'' == 1
+ !'x' == 0
+ !!9 == 1
+
+ expr7
+ -----
+
+ number number constant
+ -----
+
+ Decimal number. Examples:
+
+ 0 == 0
+ 0000 == 0
+ 01 == 1
+ 123 == 123
+ 10000 == 10000
+
+ string
+ ------
+ "string" string constant
+
+ Note that double quotes are used.
+
+ A string constant accepts these special characters:
+ \b backspace <bs>
+ \e escape <esc>
+ \n newline
+ \r return <cr>
+ \t tab <tab>
+ \\ backslash
+ \" double quote
+
+ Examples:
+
+ "\"Hello,\tWorld!\""
+ "Hi,\nthere!"
+
+ literal-string
+ --------------
+ 'string' string constant
+
+ Note that single quotes are used.
+
+ This string is taken as it is. No backslashes are removed or have a
+ special meaning. The only exception is that two quotes stand for one
+ quote.
+
+ Examples:
+
+ 'All\slashes\are\saved.'
+ 'This string contains doubled single quotes ''here'''
+
+ option
+ ------
+ &option option value (local one is preferred, if exists)
+ &g:option global option value &l:option local
+ option value
+
+ Examples:
+
+ echo 'Terminal size: '.&columns.'x'.&lines
+ if &columns > 100
+
+ Any valid option name can be used here (note that "all" in ":set all"
+ is a pseudo option). See ":set options" section above.
+
+ environment variable
+ --------------------
+ $VAR environment variable
+
+ The String value of any environment variable. When it is not defined,
+ the result is an empty string.
+
+ Examples:
+
+ 'This is my $PATH env: ' . $PATH
+ 'vifmrc at ' . $MYVIFMRC . ' is used.'
+
+ builtin variable
+ --------------------
+ v:var builtin variable
+
+ Information exposed by vifm for use in scripting.
+
+ v:count
+ count passed to : command, 0 by default. Can be used in mappings to
+ pass
+ count to a different command.
+ v:count1
+ same as v:count, but 1 by default.
+ v:servername
+ See below.
+
+ function call
+ -------------
+ function(expr1, ...) function call
+
+ See "Functions" section below.
+
+ Examples:
+
+ "'" . filetype('.') . "'"
+ filetype('.') == 'reg'
+
+ expression nesting
+ ------------------
+ (expr1) nested expression
+
+ Groups any other expression of arbitrary complexity enforcing order in
+ which operators are applied.
+
+
+Functions
+ USAGE RESULT DESCRIPTION
+
+ chooseopt({opt}) String Queries choose parameters passed on
+ startup.
+ executable({expr}) Integer Checks whether {expr} command
+ available.
+ expand({expr}) String Expands special keywords in {expr}.
+ filetype({fnum} [, {resolve}])
+ String Returns file type from position.
+ fnameescape({expr}) String Escapes {expr} for use in a :command.
+ getpanetype() String Returns type of current pane.
+ has({property}) Integer Checks whether instance has
+ {property}.
+ layoutis({type}) Integer Checks whether layout is of type
+ {type}.
+ paneisat({loc}) Integer Checks whether current pane is at
+ {loc}.
+ system({command}) String Executes shell command and returns
+ its output.
+ tabpagenr([{arg}]) Integer Returns number of current or last
+ tab.
+ term({command}) String Like system(), but for interactive
+ commands.
+
+ chooseopt({opt})
+
+ Retrieves values of options related to file choosing. {opt} can be one
+ of:
+ files returns argument of --choose-files or empty string
+ dir returns argument of --choose-dir or empty string
+ cmd returns argument of --on-choose or empty string
+ delimiter returns argument of --delimiter or the default one (\n)
+
+ executable({expr})
+
+ If {expr} is absolute or relative path, checks whether path destination
+ exists and refers to an executable, otherwise checks whether command
+ named {expr} is present in directories listed in $PATH. Checks for
+ various executable extensions on Windows. Returns boolean value
+ describing result of the check.
+
+ Example:
+
+ " use custom default viewer script if it's available and installed
+ " in predefined system directory, otherwise try to find it elsewhere
+ if executable('/usr/local/bin/defviewer')
+ fileview * /usr/local/bin/defviewer %c
+ else
+ if executable('defviewer')
+ fileview * defviewer %c
+ endif
+ endif
+
+ expand({expr})
+
+ Expands environment variables and macros in {expr} just like it's done
+ for command-line commands. Returns a string. See "Command macros"
+ section above.
+
+ Examples:
+
+ " percent sign
+ :echo expand('%%')
+ " the last part of directory name of the other pane
+ :echo expand('%D:t')
+ " $PATH environment variable (same as `:echo $PATH`)
+ :echo expand('$PATH')
+
+ filetype({fnum}[,{resolve}])
+
+ The result is a string, which represents file type and is one of the
+ list:
+ exe executables
+ reg regular files
+ link symbolic links
+ broken broken symbolic links (appears only when resolving)
+ dir directories
+ char character devices
+ block block devices
+ fifo pipes
+ sock *nix domain sockets
+ ? unknown file type (should not normally appear)
+
+ The result can also be an empty string in case of invalid argument.
+
+ Parameter {fnum} can have following values:
+ - '.' to get type of file under the cursor in the active pane
+ - numerical value base 1 to get type of file on specified line
+ number
+
+ Optional parameter {resolve} is treated as a boolean and specifies
+ whether symbolic links should be resolved.
+
+ fnameescape({expr})
+
+ Escapes parameter to make it suitable for use as an argument of a
+ :command. List of escaped characters includes %, which is doubled.
+
+ Usage example:
+
+ " navigate to most recently modified file in current directory
+ execute 'goto' fnameescape(system('ls -t | head -1'))
+
+ getpanetype()
+
+ Retrieves string describing type of current pane. Possible return
+ values:
+ regular regular file listing of some directory
+ custom custom file list (%u)
+ very-custom very custom file list (%U)
+ tree tree view
+
+ has({property})
+
+ Allows examining internal parameters from scripts to e.g. figure out
+ environment in which application is running. Returns 1 if property is
+ true/present, otherwise 0 is returned. Currently the following
+ properties are supported (anything else will yield 0):
+ unix runs in *nix-like environment (including Cygwin)
+ win runs on Windows
+
+ Usage example:
+
+ " skip user/group on Windows
+ if !has('win')
+ let $RIGHTS = '%10u:%-7g '
+ endif
+
+ execute 'set' 'statusline=" %t%= %A '.$RIGHTS.'%15E %20d "'
+
+ layoutis({type})
+
+ Checks whether current interface layout is {type} or not, where {type}
+ can be:
+ only single-pane mode
+ split double-pane mode (either vertical or horizon split)
+ vsplit vertical split (left and right panes)
+ hsplit horizontal split (top and bottom panes)
+
+ Usage example:
+
+ " automatically split vertically before enabling preview
+ :nnoremap w :if layoutis('only') | vsplit | endif | view!<cr>
+
+ paneisat({loc})
+
+ Checks whether position of active pane in current layout matches one of
+ the following locations:
+ top pane reaches top border
+ bottom pane reaches bottom border
+ left pane reaches left border
+ right pane reaches right border
+
+ system({command})
+
+ Runs the command in shell and returns its output (joined standard
+ output and standard error streams). All trailing newline characters
+ are stripped to allow easy appending to command output. Ctrl-C should
+ interrupt the command.
+
+ Use this function to consume output of external commands that don't
+ require user interaction and term() for interactive commands that make
+ use of terminal and are capable of handling stream redirection.
+
+ Usage example:
+
+ " command to enter .git/ directory of git-repository (when ran inside one)
+ command! cdgit :execute 'cd' system('git rev-parse --git-dir')
+
+ tabpagenr([{arg}])
+
+ When called without arguments returns number of current tab page base
+ one.
+
+ When called with "$" as an argument returns number of the last tab page
+ base one, which is the same as number of tabs.
+
+ term({command})
+
+ Same as system() function, but user interface is shutdown during the
+ execution of the command, which makes sure that external interactive
+ applications won't affect the way terminal is used by vifm.
+
+ Usage example:
+
+ " command to change directory by picking it via fzf
+ command! fzfcd :execute 'cd' "'".term('find -type d | fzf 2> /dev/tty')."'"
+
+Menus and dialogs
+ When navigating to some path from a menu there is a difference in end
+ location depending on whether path has trailing slash or not. Files
+ normally don't have trailing slashes so "file/" won't work and one can
+ only navigate to a file anyway. On the other hand with directories
+ there are two options: navigate to a directory or inside of it. To
+ allow both use cases, the first one is used on paths like "dir" and the
+ second one for "dir/".
+
+ Commands
+
+ :range navigate to a menu line.
+
+ :exi[t][!] :q[uit][!] :x[it][!]
+ leave menu mode.
+
+ :noh[lsearch]
+ reset search match highlighting.
+
+ :w[rite] {dest}
+ write all menu lines into file specified by {dest}.
+
+ General
+
+ j, Ctrl-N - move down.
+ k, Ctrl-P - move up.
+ Enter, l - select and exit the menu.
+ Ctrl-L - redraw the menu.
+
+ Escape, Ctrl-C, ZZ, ZQ, q - quit.
+
+ In all menus
+
+ The following set of keys has the same meaning as in normal mode.
+
+ Ctrl-B, Ctrl-F
+ Ctrl-D, Ctrl-U
+ Ctrl-E, Ctrl-Y
+ /, ?
+ n, N
+ [count]G, [count]gg
+ H, M, L
+ zb, zt, zz
+
+ zh - scroll menu items [count] characters to the right.
+ zl - scroll menu items [count] characters to the left.
+ zH - scroll menu items half of screen width characters to the right.
+ zL - scroll menu items half of screen width characters to the left.
+
+ : - enter command line mode for menus (currently only :exi[t], :q[uit],
+ :x[it] and :{range} are supported).
+
+ b - interpret content of the menu as list of paths and use it to create
+ custom view in place of previously active pane. See "Custom views"
+ section below.
+ B - same as above, but creates unsorted view.
+
+ v - load menu content into quickfix list of the editor (Vim compatible
+ by assumption) or if list doesn't have separators after file names
+ (colons) open each line as a file name.
+
+
+ Below is description of additional commands and reaction on selection
+ in some menus and dialogs.
+
+ Apropos menu
+
+ Selecting menu item runs man on a given topic. Menu won't be closed
+ automatically to allow view several pages one by one.
+
+ Command-line mode abbreviations menu
+
+ Type dd on an abbreviation to remove it.
+
+ c leaves menu preserving file selection and inserts right-hand side of
+ selected command into command-line.
+
+ Color scheme menu
+
+ Selecting name of a color scheme applies it the same way as if
+ ":colorscheme <name>" was executed on the command-line.
+
+ Commands menu
+
+ Selecting command executes it with empty arguments (%a).
+
+ dd on a command to remove.
+
+ Marks menu
+
+ Selecting mark navigates to it.
+
+ dd on a mark to remove it.
+
+ Bookmarks menu
+
+ Selecting a bookmark navigates to it.
+
+ Type dd on a bookmark to remove it.
+
+ gf and e also work to make it more convenient to bookmark files.
+
+ Trash (:lstrash) menu
+
+ r on a file name to restore it from trash.
+
+ dd deletes file under the cursor.
+
+ Trashes menu
+
+ dd empties selected trash in background.
+
+ Directory history and Trashes menus
+
+ Selecting directory name will change directory of the current view as
+ if :cd command was used.
+
+ Directory stack menu
+
+ Selecting directory name will rotate stack to put selected directory
+ pair at the top of the stack.
+
+ Filetype menu
+
+ Commands from vifmrc or typed in command-line are displayed above empty
+ line. All commands below empty line are from .desktop files.
+
+ c leaves menu preserving file selection and inserts command after :! in
+ command-line mode.
+
+ Grep, find, locate, bookmarks and user menu with navigation (%M macro)
+
+ gf - navigate previously active view to currently selected item.
+ Leaves menu mode except for grep menu. Pressing Enter key has the same
+ effect.
+
+ e - open selected path in the editor, stays in menu mode.
+
+ c - leave menu preserving file selection and insert file name after :!
+ in command-line mode.
+
+ User menu without navigation (%m macro)
+
+ c leaves menu preserving file selection and inserts whole line after :!
+ in command-line mode.
+
+ Grep menu
+
+ Selecting file (via Enter or l key) opens it in editor set by 'vicmd'
+ at given line number. Menu won't be closed automatically to allow
+ viewing more than one result.
+
+ See above for "gf" and "e" keys description.
+
+ Command-line history menu
+
+ Selecting an item executes it as command-line command, search query or
+ local filter.
+
+ c leaves menu preserving file selection and inserts line into command-
+ line of appropriate kind.
+
+ Volumes menu
+
+ Selecting a drive navigates previously active pane to the root of that
+ drive.
+
+ Fileinfo dialog
+
+ Enter, q - close dialog
+
+ Sort dialog
+
+ h, Space - switch ascending/descending.
+ q - close dialog
+
+ One shortcut per sorting key (see the dialog).
+
+ Attributes (permissions or properties) dialog
+
+ h, Space - check/uncheck.
+ q - close dialog
+
+ Item states:
+
+ - * - checked flag.
+
+ - X - means that it has different value for files in selection.
+
+ - d (*nix only) - (only for execute flags) means u-x+X, g-x+X or o-x+X
+ argument for the chmod program. If you're not on OS X and want to
+ remove execute permission bit from all files, but preserve it for
+ directories, set all execute flags to 'd' and check 'Set Recursively'
+ flag.
+
+ Jobs menu
+
+ dd requests cancellation of job under cursor. The job won't be removed
+ from the list, but marked as being cancelled (if cancellation was
+ successfully requested). A message will pop up if the job has already
+ stopped. Note that on Windows cancelling external programs like this
+ might not work, because their parent shell doesn't have any windows.
+
+ e key displays errors of selected job if any were collected. They are
+ displayed in a new menu, but you can get back to jobs menu by pressing
+ h.
+
+
+ Undolist menu
+
+ r - reset undo position to group under the cursor.
+
+
+ Media menu
+
+ r - reload the list.
+
+ m - mount/unmount device (cursor should be positioned on lines under
+ device information).
+
+
+Custom views
+ Definition
+
+ Normally file views contain list of files from a single directory, but
+ sometimes it's useful to populate them with list of files that do not
+ belong to the same directory, which is what custom views are for.
+
+ Presentation
+
+ Custom views are still related to directory they were in before custom
+ list was loaded. Path to that directory (original directory) can be
+ seen in the title of a custom view.
+
+ Files in same directory have to be named differently, this doesn't hold
+ for custom views thus seeing just file names might be rather confusing.
+ In order to give an idea where files come from and when possible,
+ relative paths to original directory of the view is displayed,
+ otherwise full path is used instead.
+
+ Custom views normally don't contain any inexistent files.
+
+ Navigation
+
+ Custom views have some differences related to navigation in regular
+ views.
+
+ gf - acts similar to gf on symbolic links and navigates to the file at
+ its real
+ location.
+
+ h - go to closes parent node in tree view, otherwise return to the
+ original directory.
+
+ gh - return to the original directory.
+
+ Opening ".." entry also causes return to the original directory.
+
+ History
+
+ Custom list exists only while it's visible, once left one can't return
+ to it, so there is no appearances of it in any history.
+
+ Filters
+
+ Only local filter affects content of the view. This is intentional,
+ presumably if one loads list, precisely that list should be displayed
+ (except for inexistent paths, which are ignored).
+
+ Search
+
+ Although directory names are visible in listing, they are not
+ searchable. Only file names are taken into account (might be changed
+ in future, searching whole lines seems quite reasonable).
+
+ Sorting
+
+ Contrary to search sorting by name works on whole visible part of file
+ path.
+
+ Highlight
+
+ Whole file name is highlighted as one entity, even if there are
+ directory elements.
+
+ Updates
+
+ Reloads can occur, though they are not automatic due to files being
+ scattered among different places. On a reload, inexistent files are
+ removed and meta-data of all other files is updated.
+
+ Once custom view forgets about the file, it won't add it back even if
+ it's created again. So not seeing file previously affected by an
+ operation, which was undone is normal.
+
+ Operations
+
+ All operations that add files are forbidden for custom views. For
+ example, moving/copying/putting files into a custom view doesn't work,
+ because it doesn't make much sense.
+
+ On the other hand, operations that use files of a custom view as a
+ source (e.g. yanking, copying, moving file from custom view, deletion)
+ and operations that modify names are all allowed.
+
+Compare views
+ Kinds
+
+ :compare can produce four different results depending on arguments:
+ - single compare view (ofone and either listall or listdups);
+ - single custom view (ofone and listunique);
+ - two compare views (ofboth and either listall or listdups);
+ - two custom views (ofboth and listunique).
+
+ The first two display files of one file system tree. Here duplicates
+ are files that have at least one copy in the same tree. The other two
+ kinds of operation compare two trees, in which duplicates are files
+ that are found in both trees.
+
+ Lists of unique files are presented in custom views because there is no
+ file grouping to preserve as all file ids are guaranteed to be
+ distinct.
+
+ Creation
+
+ Arguments passed to :compare form four categories each with its own
+ prefix and is responsible for particular property of operation.
+
+ Which files to compare:
+ - ofboth - compares files of two panes against each other;
+ - ofone - compares files of the same directory.
+
+ How files are compared:
+ - byname - by their name only;
+ - bysize - only by their size;
+ - bycontents - by combination of size and hash of file contents.
+
+ Which files to display:
+ - listall - all files;
+ - listunique - unique files only;
+ - listdups - only duplicated files.
+
+ How results are grouped (has no effect if "ofone" specified):
+ - groupids - files considered identical are always adjacent in
+ output;
+ - grouppaths - file system ordering is preferred (this also enables
+ displaying identically named files as mismatches).
+
+ Which files to omit:
+ - skipempty - ignore empty files.
+
+ Each argument can appear multiple times, the rightmost one of the group
+ is considered. Arguments alter default behaviour instead of
+ substituting it.
+
+ Examples
+
+ The defaults corresponds to probably the most common use case of
+ comparing files in two trees with grouping by paths, so the following
+ are equivalent:
+
+ :compare
+ :compare bycontents grouppaths
+ :compare bycontents listall ofboth grouppaths
+
+ Another use case is to find duplicates in the current sub-tree:
+
+ :compare listdups ofone
+
+ The following command lists files that are unique to each pane:
+
+ :compare listunique
+
+ Look
+
+ The view can't switch to ls-like view as it's unable to display diff-
+ like data.
+
+ Comparison views have second column displaying id of the file, files
+ with same id are considered to be equal. The view columns
+ configuration is predefined.
+
+ Behaviour
+
+ When two views are being compared against each other the following
+ changes to the regular behaviour apply:
+ - views are scrolled synchronously (as if 'scrollbind' was set);
+ - views' cursors are synchronized;
+ - local filtering is disabled (its results wouldn't be meaningful);
+ - zd excludes groups of adjacent identical files, 1zd gives usual
+ behaviour;
+ - sorting is permanently disabled (ordering is fixed);
+ - removed files hide their counter pairs;
+ - exiting one of the views terminates the other immediately;
+ - renaming files isn't blocked, but isn't taken into account and might
+ require regeneration of comparison;
+ - entries which indicate absence of equivalent file have empty names
+ and can be matched as such;
+ - when unique files of both views are listed custom views can be
+ empty, this absence of unique files is stated clearly.
+
+ One compare view has similar properties (those that are applicable for
+ single pane).
+
+ Files are gathered in this way:
+ - recursively starting at current location of the view;
+ - dot files are excluded if view hides them at the moment of
+ comparison;
+ - directories are not taken into account;
+ - symbolic links to directories are ignored.
+
+Startup
+ On startup vifm determines several variables that are used during the
+ session. They are determined in the order they appear below.
+
+ On *nix systems $HOME is normally present and used as is. On Windows
+ systems vifm tries to find correct home directory in the following
+ order:
+ - $HOME variable;
+ - $USERPROFILE variable (on Windows only);
+ - a combination of $HOMEDRIVE and $HOMEPATH variables (on Windows
+ only).
+
+ vifm tries to find correct configuration directory by checking the
+ following places:
+ - $VIFM variable;
+ - parent directory of the executable file (on Windows only);
+ - $HOME/.vifm directory;
+ - $APPDATA/Vifm directory (on Windows only);
+ - $XDG_CONFIG_HOME/vifm directory;
+ - $HOME/.config/vifm directory.
+
+ vifm tries to find correct configuration file by checking the following
+ places:
+ - $MYVIFMRC variable;
+ - vifmrc in parent directory of the executable file (on Windows only);
+ - $VIFM/vifmrc file.
+
+Configure
+ See "Startup" section above for the explanations on $VIFM and
+ $MYVIFMRC.
+
+ The vifmrc file contains commands that will be executed on vifm
+ startup. There are two such files: global and local. Global one is at
+ {prefix}/etc/vifm/vifmrc, see $MYVIFMRC variable description for the
+ search algorithm used to find local vifmrc. Global vifmrc is loaded
+ before the local one, so that the later one can redefine anything
+ configured globally.
+
+ Use vifmrc to set settings, mappings, filetypes etc. To use multi line
+ commands precede each next line with a slash (whitespace before slash
+ is ignored, but all spaces at the end of the lines are saved). For
+ example:
+
+ set
+ \smartcase
+
+ equals "setsmartcase". When
+
+ set<space here>
+ \ smartcase
+
+ equals "set smartcase".
+
+ The $VIFM/vifminfo file contains session settings. You may edit it by
+ hand to change the settings, but it's not recommended to do that, edit
+ vifmrc instead. You can control what settings will be saved in
+ vifminfo by setting 'vifminfo' option. Vifm always writes this file on
+ exit unless 'vifminfo' option is empty. Marks, bookmarks, commands,
+ histories, filetypes, fileviewers and registers in the file are merged
+ with vifm configuration (which has bigger priority).
+
+ Generally, runtime configuration has bigger priority during merging,
+ but there are some exceptions:
+
+ - directory stack stored in the file is not overwritten unless
+ something is changed in vifm session that performs merge;
+
+ - each mark or bookmark is marked with a timestamp, so that newer
+ value is not overwritten by older one, thus no matter from where it
+ comes, the newer one wins.
+
+ The $VIFM/scripts directory can contain shell scripts. vifm modifies
+ its PATH environment variable to let user run those scripts without
+ specifying full path. All subdirectories of the $VIFM/scripts will be
+ added to PATH too. Script in a subdirectory overlaps script with the
+ same name in all its parent directories.
+
+ The $VIFM/colors/ and {prefix}/etc/vifm/colors/ directories contain
+ color schemes. Available color schemes are searched in that order, so
+ on name conflict the one in $VIFM/colors/ wins.
+
+ Each color scheme should have ".vifm" extension. This wasn't the case
+ before and for this reason the following rules apply during lookup:
+
+ - if there is no file with .vifm extension, all regular files are
+ listed;
+
+ - otherwise only files with .vifm extension are listed (with the
+ extension being truncated).
+
+Automatic FUSE mounts
+ vifm has a builtin support of automated FUSE file system mounts. It is
+ implemented using file associations mechanism. To enable automated
+ mounts, one needs to use a specially formatted program line in filetype
+ or filextype commands. Currently two formats are supported:
+
+ 1) FUSE_MOUNT This format should be used in case when all information
+ needed for mounting all files of a particular type is the same. E.g.
+ mounting of tar files don't require any file specific options.
+
+ Format line:
+ FUSE_MOUNT|mounter %SOURCE_FILE %DESTINATION_DIR [%FOREGROUND]
+
+ Example filetype command:
+
+ :filetype FUSE_MOUNT|fuse-zip %SOURCE_FILE %DESTINATION_DIR
+
+ 2) FUSE_MOUNT2 This format allows one to use specially formatted files
+ to perform mounting and is useful for mounting remotes, for example
+ remote file systems over ftp or ssh.
+
+ Format line:
+ FUSE_MOUNT2|mounter %PARAM %DESTINATION_DIR [%FOREGROUND]
+
+ Example filetype command:
+
+ :filetype FUSE_MOUNT2|sshfs %PARAM %DESTINATION_DIR
+
+ Example file content:
+
+ root@127.0.0.1:/
+
+ All % macros are expanded by vifm at runtime and have the following
+ meaning:
+ - %SOURCE_FILE is replaced by full path to selected file;
+ - %DESTINATION_DIR is replaced by full path to mount directory, which
+ is created by vifm basing on the value of 'fusehome' option;
+ - %PARAM value is filled from the first line of file (whole line),
+ though in the future it can be changed to whole file content;
+ - %FOREGROUND means that you want to run mount command as a regular
+ command (required to be able to provide input for communication with
+ mounter in interactive way).
+
+ %FOREGROUND is an optional macro. Other macros are not mandatory, but
+ mount commands likely won't work without them.
+
+ %CLEAR is obsolete name of %FOREGROUND, which is still supported, but
+ might be removed in future. Its use is discouraged.
+
+ The mounted FUSE file systems will be automatically unmounted in two
+ cases:
+
+ - when vifm quits (with ZZ, :q, etc. or when killed by signal);
+
+ - when you explicitly leave mount point going up to its parent
+ directory (with h, Enter on "../" or ":cd ..") and other pane is
+ not in the same directory or its child directories.
+
+View look
+ vifm supports displaying of file list view in two different ways:
+
+ - in a table mode, when multiple columns can be set using
+ 'viewcolumns' option (see "Column view" section below for details);
+
+ - in a multicolumn list manner which looks almost like `ls -x`
+ command output (see "ls-like view" section below for details).
+
+ The look is local for each view and can be chosen by changing value of
+ the 'lsview' boolean option.
+
+ Depending on view look some of keys change their meaning to allow more
+ natural cursor moving. This concerns mainly h, j, k, l and other
+ similar navigation keys.
+
+ Also some of options can be ignored if they don't affect view
+ displaying in selected look. For example value of 'viewcolumns' when
+ 'lsview' is set.
+
+ls-like view
+ When this view look is enabled by setting 'lsview' option on, vifm will
+ display files in multiple columns. Number of columns depends on the
+ length of the longest file name present in current directory of the
+ view. Whole file list is automatically reflowed on directory change,
+ terminal or view resize.
+
+ View looks close to output of `ls -x` command, so files are listed left
+ to right in rows.
+
+ In this mode file manipulation commands (e.g. d) don't work line-wise
+ like they do in Vim, since such operations would be uncommon for file
+ manipulation tasks. Thus, for example, dd will remove only current
+ file.
+
+ By default the view is filled by lines, 'lsoptions' can be used to get
+ filling by columns.
+
+ Note that tree-view and compare view inhibit ls-like view.
+
+Column view
+ View columns are described by a comma-separated list of column
+ descriptions, each of which has the following format
+ [ '-' ] [ fw ( [ '.' tw ] | '%' ) ] '{' type '}' '.'{0,3}
+ where fw stands for full width and tw stands for text width.
+
+ So it basically consists of four parts:
+ 1. Optional alignment specifier
+ 2. Optional width specifier
+ 3. Mandatory column name
+ 4. Optional cropping specifier
+
+ Alignment specifier
+
+ It's an optional minus or asterisk sign as the first symbol of the
+ string.
+
+ Specifies type of text alignment within a column. Three types are
+ supported:
+
+ - left align
+
+ set viewcolumns=-{name}
+
+ - right align (default)
+
+ set viewcolumns={name}
+
+ - dynamic align
+
+ It's like left alignment, but when the text is bigger than the
+ column, the alignment is made at the right (so the part of the field
+ is always visible).
+
+ set viewcolumns=*{name}
+
+ Width specifier
+
+ It's a number followed by a percent sign, two numbers (second one
+ should be less than or equal to the first one) separated with a dot or
+ a single number.
+
+ Specifies column width and its units. There are three size types:
+
+ - absolute size - column width is specified in characters
+
+ set viewcolumns=-100{name},20.15{ext}
+
+ results in two columns with lengths of 100 and 20 and a reserved
+ space of five characters on the left of second column.
+
+ - relative (percent) size - column width is specified in percents of
+ view width
+
+ set viewcolumns=-80%{name},15%{ext},5%{mtime}
+
+ results in three columns with lengths of 80/100, 15/100 and 5/100 of
+ view width.
+
+ - auto size (default) - column width is automatically determined
+
+ set viewcolumns=-{name},{ext},{mtime}
+
+ results in three columns with length of one third of view width.
+ There is no size adjustment to content, since it will slow down
+ rendering.
+
+ Columns of different sizing types can be freely mixed in one view.
+ Though sometimes some of columns can be seen partly or be completely
+ invisible if there is not enough space to display them.
+
+ Column name
+
+ This is just a sort key surrounded with curly braces or {root}, e.g.
+
+ {name},{ext},{mtime}
+
+ {name} and {iname} keys are the same and present both for consistency
+ with 'sort' option.
+
+ Following keys don't have corresponding sorting keys:
+
+ - {root} - display name without extension (as a complement for {ext})
+
+ Empty curly braces ({}) are replaced with the default secondary column
+ for primary sort key. So after the next command view will be displayed
+ almost as if 'viewcolumns' is empty, but adding ellipsis for long file
+ names:
+
+ set viewcolumns=-{name}..,6{}.
+
+ Cropping specifier
+
+ It's from one to three dots after closing curly brace in column format.
+
+ Specifies type of text truncation if it doesn't fit in the column.
+ Currently three types are supported:
+
+ - truncation - text is truncated
+
+ set viewcolumns=-{name}.
+
+ results in truncation of names that are too long too fit in the
+ view.
+
+ - adding of ellipsis - ellipsis on the left or right are added when
+ needed
+
+ set viewcolumns=-{name}..
+
+ results in that ellipsis are added at the end of too long file
+ names.
+
+ - none (default) - text can pass column boundaries
+
+ set viewcolumns=-{name}...,{ext}
+
+ results in that long file names can partially be written on the ext
+ column.
+
+Color schemes
+ The color schemes in vifm can be applied in two different ways:
+
+ - as the primary color scheme;
+
+ - as local to a pane color scheme.
+
+ Both types are set using :colorscheme command, but of different forms:
+
+ - :colorscheme color_scheme_name - for the primary color scheme;
+
+ - :colorscheme color_scheme_name directory - for local color schemes.
+
+ Look of different parts of the TUI (Text User Interface) is determined
+ in this way:
+
+ - Border, TabLine, TabLineSel, TopLineSel, TopLine, CmdLine,
+ ErrorMsg, StatusLine, JobLine, SuggestBox and WildMenu are always
+ determined by the primary color scheme;
+
+ - CurrLine, Selected, Directory, Link, BrokenLink, Socket, Device,
+ Executable, Fifo, CmpMismatch, Win and AuxWin are determined by
+ primary color scheme and a set of local color schemes, which can be
+ empty.
+
+ There might be a set of local color schemes because they are structured
+ hierarchically according to file system structure. For example, having
+ the following piece of file system:
+
+ ~
+ `-- bin
+ |
+ `-- my
+
+ Two color schemes:
+
+ # ~/.vifm/colors/for_bin
+ highlight Win cterm=none ctermfg=white ctermbg=red
+ highlight CurrLine cterm=none ctermfg=red ctermbg=black
+
+ # ~/.vifm/colors/for_bin_my
+ highlight CurrLine cterm=none ctermfg=green ctermbg=black
+
+ And these three commands in the vifmrc file:
+
+ colorscheme Default
+ colorscheme for_bin ~/bin
+ colorscheme for_bin_my ~/bin/my
+
+ File list will look in the following way for each level:
+
+ - ~/ - Default color scheme
+ black background
+ cursor with blue background
+
+ - ~/bin/ - mix of Default and for_bin color schemes
+ red background
+ cursor with black background and red foreground
+
+ - ~/bin/my/ - mix of Default, for_bin and for_bin_my color schemes
+ red background
+ cursor with black background and green foreground
+
+Trash directory
+ vifm has support of trash directory, which is used as temporary storage
+ for deleted files or files that were cut. Using trash is controlled by
+ the 'trash' option, and exact path to the trash can be set with
+ 'trashdir' option. Trash directory in vifm differs from the system-
+ wide one by default, because of possible incompatibilities of storing
+ deleted files among different file managers. But one can set
+ 'trashdir' to "~/.local/share/Trash" to use a "standard" trash
+ directory.
+
+ There are two scenarios of using trash in vifm:
+
+ 1. As a place for storing files that were cut by "d" and may be
+ inserted to some other place in file system.
+
+ 2. As a storage of files, that are deleted but not purged yet.
+
+ The first scenario uses deletion ("d") operations to put files to trash
+ and put ("p") operations to restore files from trash directory. Note
+ that such operations move files to and from trash directory, which can
+ be long term operations in case of different partitions or remote
+ drives mounted locally.
+
+ The second scenario uses deletion ("d") operations for moving files to
+ trash directory and :empty command-line command to purge all previously
+ deleted files.
+
+ Deletion and put operations depend on registers, which can point to
+ files in trash directory. Normally, there are no nonexistent files in
+ registers, but vifm doesn't keep track of modifications under trash
+ directory, so one shouldn't expect value of registers to be absolutely
+ correct if trash directory was modified not by operation that are meant
+ for it. But this won't lead to any issues with operations, since they
+ ignore nonexistent files.
+
+Client-Server
+ vifm supports remote execution of command-line mode commands, remote
+ changing of directories and expression evaluation. This is possible
+ using --remote and --remote-expr command-line arguments.
+
+ To execute a command remotely combine --remote argument with -c
+ <command> or +<command>. For example:
+
+ vifm --remote -c 'cd /'
+ vifm --remote '+cd /'
+
+ To change directory not using command-line mode commands one can
+ specify paths right after --remote argument, like this:
+
+ vifm --remote /
+ vifm --remote ~
+ vifm --remote /usr/bin /tmp
+
+ Evaluating expression remotely might be useful to query information
+ about an instance, for example its location:
+
+ vifm --remote-expr 'expand("%d")'
+
+ If there are several running instances, the target can be specified
+ with --server-name option (otherwise, the first one lexicographically
+ is used):
+
+ vifm --server-name work --remote ~/work/project
+
+ List of names of running instances can be obtained via --server-list
+ option. Name of the current one is available via v:servername.
+
+
+ v:servername
+ server name of the running vifm instance. Empty if client-
+ server feature is disabled.
+
+Plugin
+ Plugin for using vifm in vim as a file selector.
+
+ Commands:
+
+ :EditVifm select a file or files to open in the current buffer.
+ :SplitVifm split buffer and select a file or files to open.
+ :VsplitVifm vertically split buffer and select a file or files to
+ open.
+ :DiffVifm select a file or files to compare to the current file
+ with
+ :vert diffsplit.
+ :TabVifm select a file or files to open in tabs.
+
+ Each command accepts up to two arguments: left pane directory and right
+ pane directory. After arguments are checked, vifm process is spawned
+ in a special "file-picker" mode. To pick files just open them either
+ by pressing l, i or Enter keys, or by running :edit command. If no
+ files are selected, file under the cursor is opened, otherwise whole
+ selection is passed to the plugin and opened in vim.
+
+ The plugin have only two settings. It's a string variable named
+ g:vifm_term to let user specify command to run GUI terminal. By
+ default it's equal to 'xterm -e'. And another string variable named
+ g:vifm_exec, which equals "vifm" by default and specifies path to
+ vifm's executable. To pass arguments to vifm use g:vifm_exec_args,
+ which is empty by default.
+
+ To use the plugin copy the vifm.vim file to either the system wide
+ vim/plugin directory or into ~/.vim/plugin.
+
+ If you would prefer not to use the plugin and it is in the system wide
+ plugin directory add
+
+ let loaded_vifm=1
+
+ to your ~/.vimrc file.
+
+Reserved
+ The following command names are reserved and shouldn't be used for user
+ commands.
+
+ g[lobal]
+ v[global]
+
+ENVIRONMENT
+ VIFM Points to main configuration directory (usually ~/.vifm/).
+
+ MYVIFMRC
+ Points to main configuration file (usually ~/.vifm/vifmrc).
+
+ These environment variables are valid inside vifm and also can be used
+ to configure it by setting some of them before running vifm.
+
+ When $MYVIFMRC isn't set, it's made as $VIFM/vifmrc (exception for
+ Windows: vifmrc in the same directory as vifm.exe has higher priority
+ than $VIFM/vifmrc).
+
+ See "Startup" section above for more details.
+
+ VIFM_FUSE_FILE
+ On execution of external commands this variable is set to the
+ full path of file used to initiate FUSE mount of the closes
+ mount point from current pane directory up. It's not set when
+ outside FUSE mount point. When vifm is used inside terminal
+ multiplexer, it tries to set this variable as well (it doesn't
+ work this way on its own).
+
+SEE ALSO
+ vifm-convert-dircolors(1), vifm-pause(1)
+
+ Website: https://vifm.info/
+ Wiki: https://wiki.vifm.info/
+
+ Esperanto translation of the documentation by Sebastian Cyprych:
+ http://cyprych.neostrada.pl/tekstoj/komputiloj/vifm-help.eo.html
+
+AUTHOR
+ Vifm was written by ksteen <ksteen@users.sourceforge.net>
+ And currently is developed by xaizek <xaizek@posteo.net>
+
+
+
+vifm 0.10 November 11, 2018 VIFM(1)
diff --git a/.config/vifm/vifminfo b/.config/vifm/vifminfo
new file mode 100644
index 0000000..c2e3d4f
--- /dev/null
+++ b/.config/vifm/vifminfo
@@ -0,0 +1,920 @@
+# You can edit this file by hand, but it's recommended not to do that.
+
+# Marks:
+'H
+ /home/atc/downloads
+ Desperation-thatgamecompany-journey_art1600.jpg
+1600976053
+'a
+ /usr/home/atc/pictures/franklin-cruise
+ DSC_0001.JPG
+1603579572
+'b
+ /home/atc/bin/
+ ..
+1589372309
+'h
+ /home/atc/
+ ..
+1589372309
+'v
+ /usr/home/atc/downloads
+ resize:1600:900
+1596298552
+
+# Bookmarks:
+
+# TUI:
+al
+q1
+v2
+ov
+m-1
+l2
+r2
+
+# Left window history (oldest to newest):
+d/mnt/scratch
+ 1
+1
+d/mnt/scratch/1
+ title_t00.mkv
+9
+d/mnt/scratch
+ 2
+2
+d/mnt/scratch/2
+ ..
+0
+d/mnt/scratch
+ 1
+1
+d/mnt/scratch/1
+ title_t00.mkv
+9
+d/mnt/scratch
+ 2
+2
+d/mnt/scratch/2
+ ..
+0
+d/mnt/scratch
+ 3
+3
+d/mnt/scratch/3
+ ..
+0
+d/mnt/scratch
+ 2
+2
+d/mnt/scratch/2
+ ..
+0
+d/mnt/scratch
+ 1
+1
+d/mnt/scratch/1
+ title_t00.mkv
+9
+d/mnt/scratch
+ 1
+1
+d/mnt/scratch/1
+ Avatar: The Last Airbender Book Three: Fire Disc 3-004.mkv
+8
+d/mnt/scratch
+ 2
+2
+d/mnt/scratch/2
+ title_t00.mkv
+1
+d/mnt/scratch
+ 3
+3
+d/mnt/scratch/3
+ ..
+0
+d/mnt/scratch
+ 2
+2
+d/mnt/scratch/2
+ title_t00.mkv
+1
+d/mnt/scratch
+ 3
+3
+d/mnt/scratch/3
+ ..
+0
+d/mnt/scratch
+ 2
+2
+d/mnt/scratch/2
+ ..
+0
+d/mnt/scratch
+ 1
+1
+d/mnt/scratch/1
+ Avatar: The Last Airbender Book Three: Fire Disc 3-004.mkv
+8
+d/mnt/scratch
+ 3
+3
+d/mnt/scratch/3
+ ..
+0
+d/mnt/scratch
+ 1
+1
+d/mnt/scratch/1
+ title_t00.mkv
+9
+d/mnt/scratch
+ 2
+2
+d/mnt/scratch/2
+ ..
+0
+d/mnt/scratch
+ 1
+1
+d/mnt/scratch/1
+ Avatar: The Last Airbender Book Three: Fire Disc 3-004.mkv
+8
+d/mnt/scratch
+ 3
+3
+d/mnt/scratch/3
+ ..
+0
+d/mnt/scratch
+ 2
+2
+d/mnt/scratch/2
+ ..
+0
+d/mnt/scratch
+ 1
+1
+d/mnt/scratch/1
+ Avatar: The Last Airbender Book Three: Fire Disc 3-004.mkv
+8
+d/mnt/scratch
+ 3
+3
+d/mnt/scratch/3
+ ..
+0
+d/mnt/scratch
+ 3
+3
+d/mnt/scratch/3
+ ..
+0
+d/mnt/scratch
+ 2
+2
+d/mnt/scratch/2
+ ..
+0
+d/mnt/scratch
+ 1
+1
+d/mnt/scratch/1
+ Avatar: The Last Airbender Book Three: Fire Disc 3-004.mkv
+8
+d/mnt/scratch
+ 1
+1
+d/mnt/scratch/1
+ Avatar: The Last Airbender Book Three: Fire Disc 3-004.mkv
+8
+d/mnt/scratch
+ 2
+2
+d/mnt/scratch/2
+ ..
+0
+d/mnt/scratch
+ 3
+3
+d/mnt/scratch/3
+ ..
+0
+d/mnt/scratch
+ ..
+0
+d/home/atc
+ downloads
+4
+d/home/atc/downloads
+ amy-policy-changes.txt
+5
+d/home/atc
+ pictures
+8
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/entities
+ mod.rs
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ entities
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/entities
+ ..
+0
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ models
+2
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models
+ new_photo.rs
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ dtos
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/dtos
+ mod.rs
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ ..
+0
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+2
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ models
+3
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models
+ mod.rs
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ entities
+2
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/entities
+ mod.rs
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ entities
+2
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/entities
+ mod.rs
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ models
+3
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models
+ mod.rs
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ handlers.rs
+8
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+2
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ repo
+3
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/repo
+ entities
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ repo
+3
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/repo
+ mod.rs
+2
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ dtos
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/dtos
+ mod.rs
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ dtos
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/dtos
+ mod.rs
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ dtos
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/dtos
+ mod.rs
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ dtos
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+2
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ repo
+3
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/repo
+ entities
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/repo/entities
+ mod.rs
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/repo
+ mod.rs
+2
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+2
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ repo
+3
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/repo
+ entities
+1
+d/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/repo/entities
+ photo_set_form.rs
+3
+d/usr/home/atc/pictures/franklin-cruise
+ DSC_0001.JPG
+1
+d
+
+# Right window history (oldest to newest):
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src
+ assets
+1
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src/assets
+ ..
+0
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src
+ components
+2
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src/components
+ ..
+0
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src
+ models
+3
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src/models
+ category.js
+1
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src
+ views
+6
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src/views
+ About.vue
+1
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src
+ components
+2
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src/components
+ Footer.vue
+1
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src
+ assets
+1
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src/assets
+ ..
+0
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src
+ models
+3
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src/models
+ category.js
+1
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src
+ router
+4
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src/router
+ index.js
+1
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src
+ store
+5
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src/store
+ index.js
+1
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src
+ store
+5
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak
+ public
+2
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/public
+ favicon.ico
+1
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak
+ public
+2
+D/usr/home/atc/src/sites/com/theglassyladies
+ iridescence.bak
+3
+D/usr/home/atc/src/sites/com
+ theglassyladies
+2
+D/usr/home/atc/src/sites/com/theglassyladies
+ dichroism
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ ..
+0
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+1
+D/usr/home/atc/src/sites/com/theglassyladies
+ dichroism
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+1
+D/usr/home/atc/src/sites/com/theglassyladies
+ dichroism
+1
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence
+ src
+3
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence/src
+ components
+3
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence/src/components
+ admin
+1
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence/src/components/admin
+ ..
+0
+D/mnt/scratch
+ ..
+0
+D/mnt
+ scratch
+1
+D/mnt/scratch
+ The Amazing World of War Machines (2017) s01e01.mkv
+19
+D/mnt
+ scratch
+1
+D/
+ mnt
+8
+D/mnt
+ scratch
+1
+D/mnt/scratch
+ ..
+0
+D/mnt
+ scratch
+1
+D/
+ mnt
+8
+D/mnt
+ scratch
+1
+D/home/atc
+ lego
+5
+D/home/atc/lego
+ ..
+0
+D/home/atc
+ pictures
+7
+D/home/atc/pictures
+ ..
+0
+D/home/atc
+ documents
+3
+D/home/atc/documents
+ hudson
+1
+D/home/atc/documents/hudson
+ HUDSON PARTS LIST.xlsx
+1
+D/home/atc/documents
+ hudson
+1
+D/home/atc/documents/hudson
+ HUDSON PARTS LIST.xlsx
+1
+D/home/atc/documents
+ juiz
+2
+D/home/atc/documents/juiz
+ ..
+0
+D/home/atc/documents
+ juiz
+2
+D/home/atc
+ documents
+3
+D/home/atc/documents
+ juiz
+2
+D/home/atc/documents/juiz
+ ..
+0
+D/home/atc/documents
+ juiz
+2
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence/src
+ components
+3
+D/mnt/scratch
+ Be Cool (2005).mkv
+16
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence
+ src
+3
+D/usr/home/atc/src/sites/com/theglassyladies/iridescence/src
+ components
+3
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ main.rs
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ test_uri.txt
+4
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ test
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/test
+ data
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/test/data
+ ..
+0
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/test
+ mod.rs
+2
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ tests
+3
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/tests
+ integration_tests.rs
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+2
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ ..
+0
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+2
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ models
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models
+ mod.rs
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ models
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models
+ mod.rs
+1
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ models
+2
+D/mnt/scratch
+ 1
+1
+D/mnt/scratch/1
+ ..
+0
+D/mnt/scratch
+ 2
+2
+D/mnt/scratch/2
+ ..
+0
+D/mnt/scratch
+ 3
+3
+D/mnt/scratch/3
+ ..
+0
+D/mnt/scratch
+ s06e06.mkv
+32
+D/mnt
+ scratch
+1
+D/mnt/scratch
+ ..
+0
+D/home/atc
+ ..
+0
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models
+ photo.rs
+4
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ models
+2
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism
+ src
+2
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src
+ repo
+4
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/repo
+ ..
+0
+D/usr/home/atc/src/sites/com/theglassyladies/dichroism
+
+0
+D
+
+# Command line history (oldest to newest):
+:!gimp preview
+:!gimp preview*
+:e ~/.config/vifm/vifmrc
+:redraw
+:delbmarks
+:delete
+:cd ~/src/sites/net/53hor/cobalt-site/posts/
+:cd ~ ~
+:!docx
+:!doas move %f
+:unzip
+:!themer.sh Stoneship\ Lighthouse\ Alt.jpg
+:!themer.sh -s Stoneship\ Lighthouse\ Alt.jpg
+:cd ~/downloads/
+:!reset
+:!doas rm -r xp
+:mkdir iridescence
+:cd ~/src/sites/com/theglassyladies/
+:copy!
+:grep sass-loader
+:grep -r sass-loader
+:!rg sass-loader
+:cd ~/pictures/
+:rename
+:!mpv Avatar-\ The\ Last\ Airbender\ Book\ Three-\ Fire\ Disc\ 2_t04.mkv
+:!bzcat
+:!s
+:!mpv f0060832_pid_0.m2ts
+:`
+:movw
+:mo0ve
+:!themer.sh -a clu.jpg
+:!themer.sh -s .
+:!themer.sh -s
+:cd /tmp
+:!toggle-screencast.sh
+:!ffmpeg -i $f -vcodec h264
+:cd /zroot/calibre-test/
+:!chown atc:atc .
+:cd .config/
+:cd .cal
+:ls /var/
+:!rm *
+:copyt
+:!yarn add bulma
+:copy
+:!sxiv %f
+:mkdir services
+:!rg
+:touch test
+:touch Categoryjjj
+:mkdir admin
+:touch
+:touch ProductEditList.vue
+:e
+:e NewProduct.vue
+:e NewProduct
+:e NewProductModal.vue
+:!themer.sh -a .
+:rm *jpg
+:delete *jpg
+:help
+:help mark
+:mkdir
+:mkdir documents
+:mkdir hudson
+:mkdir juiz
+:m
+:e ~/src/sc
+:mkdir test
+:mkdir data
+:mopve
+:mkdir
+:e .gitignore
+:mkdir models
+:reload
+:cd ~/src/dotfiles/
+:touch
+:touch product_image.rs
+:!di
+:!cargo check
+:cd /mnt/scratch/
+:empty
+:cd
+:mkdir dtos
+:e
+:e .
+:!gs
+:mkdir repo
+:move
+:e mod.rs
+:!git status
+:!./serve_debug.sh
+:!cargo run
+:e src/handlers.rs
+:!touch product_form.rs
+:touch photo_set_form.rs
+:!man sxiv
+:Q
+:q
+
+# Search history (oldest to newest):
+/journ
+/scre
+/pic
+/Subar
+/wpg
+/th
+/font
+/down
+/age
+/myst
+/setu
+/stud
+/6
+/lxf
+/mp4
+/atc.tar
+/xcf
+/now
+/atc
+/From
+/Cus
+/cast
+/vid
+/ups
+/jpg
+/lego
+/leg
+/doc
+/sr
+/Be
+/image_a
+/vif
+/sc
+/sch
+/mod
+/dow
+
+# Prompt history (oldest to newest):
+ppreview
+ppreview.xcf
+pShowBillImage.pdf
+pdominion-energy
+presize.png
+punix-system-i-know-this
+piridescence.new
+piridescence
+piridescence.bak
+pPearl Harbor (2001)
+pVictory at Sea (1952) s01e13-16
+pIdentity (2003)
+pThe Shawshank Redemption (1994)
+pThe Green Mile (1999)
+pMunich (2005)
+pBad Boys II (2003)
+pL
+pVictory at Sea (1952) s01e13-e16
+pCrusade in the Pacific (1951) s01e05-e06
+pCrusade in the Pacific (1951) s01e07-e08
+pDirty Rotten Scoundrels (1988)
+pAmerican Gangster (2007)
+pMeet the Parents (2000)
+pBreach (2007)
+pRoad to Perdition (2002)
+pMonster's Ball (2001)
+ps03e09
+ps03e13
+ps03e16
+ps03e12
+ps03e01
+ps03e02
+ps03e03
+ps03e04
+ps03e05
+ps03e06
+ps03e07
+ps03e08
+pe17
+pAvatar The Last Airbender (2006) s03e17
+pe10
+pAvatar The Last Airbender (2006) s03e10
+pThe Whole Nine Yards (2000)
+pPacific Heights (1990)
+pThe Prince And The Pauper The Movie (2007)
+pCharlie's Angels (2000)
+pWe Were Soldiers (2002)
+pMaid in Manhattan (200)
+pMaid in Manhattan (2002)
+pLethal Weapon 4 (1998)
+pSnatch (2000)
+pGangs of New York (2002)
+pWhat Lies Beneath (2000)
+pKiss the Girls (1997)
+pKiss the Girls (1997).mkv
+pThe Hunted (2003)
+pSea of Love (1989)
+pErin Brockovich (2000)
+pLetters from Iwo Jima
+pLetters from Iwo Jima (2006)
+pclu
+pflynn
+pAdmin.vue
+pindex.html.bak
+papi
+pProductCard
+pProductSearch
+pProductFilter
+pProductList
+pCategoryEditor.vue
+pProductEditCard.vue
+pProductEditCard
+pIce Age The Meltdown (2006)
+pTHE BATMAN TRAINING FOR POWER (split into 3 eps)
+pA Fistful of Dollars (1964)
+pHitch (2011)
+pBe Cool (2005)
+pWhite Noise (2005)
+pGood Luck Chuck (2007)
+pCalendar Girls (2003)
+ptest_uri
+pmod
+ptests
+pintegration_tests.rs
+pintegration_tests
+punit_test_data
+pimg_data_uri
+pserve_debug
+pnew_product_images
+pproduct_img.rs
+pproduct_img
+pimage
+pnew_product_set
+pnew_image
+pnew_image_data
+pnew_image_set
+pimage_set
+pHogan's Heroes (1965) s02e31 -- actually s03e05
+pproduct_repo
+prepo
+
+# Local filter history (oldest to newest):
+
+# Registers:
+""/home/atc/.local/share/vifm/Trash/000_product.rs
+
+# Directory stack (oldest to newest):
+
+# Trash content:
+t/home/atc/.local/share/vifm/Trash/000_2
+ /usr/home/atc/src/sites/com/theglassyladies/dichroism/src/entities/2
+t/home/atc/.local/share/vifm/Trash/000_models.rs
+ /usr/home/atc/src/sites/com/theglassyladies/dichroism/src/dtos/models.rs
+t/home/atc/.local/share/vifm/Trash/000_photo_repo.rs
+ /usr/home/atc/src/sites/com/theglassyladies/dichroism/src/photo_repo.rs
+t/home/atc/.local/share/vifm/Trash/000_new_photo.rs
+ /usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models/new_photo.rs
+t/home/atc/.local/share/vifm/Trash/000_new_photo_data.rs
+ /usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models/new_photo_data.rs
+t/home/atc/.local/share/vifm/Trash/000_new_photo_set.rs
+ /usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models/new_photo_set.rs
+t/home/atc/.local/share/vifm/Trash/000_photo.rs
+ /usr/home/atc/src/sites/com/theglassyladies/dichroism/src/entities/photo.rs
+t/home/atc/.local/share/vifm/Trash/000_photo_set.rs
+ /usr/home/atc/src/sites/com/theglassyladies/dichroism/src/entities/photo_set.rs
+t/home/atc/.local/share/vifm/Trash/000_product.rs
+ /usr/home/atc/src/sites/com/theglassyladies/dichroism/src/entities/product.rs
+
+# State:
+f
+i1
+[.1
+[F
+F
+I1
+].1
+]F
+s0
diff --git a/.config/vifm/vifminfo.json b/.config/vifm/vifminfo.json
new file mode 100644
index 0000000..6d952d5
--- /dev/null
+++ b/.config/vifm/vifminfo.json
@@ -0,0 +1 @@
+{"gtabs":[{"panes":[{"ptabs":[{"history":[{"dir":"/mnt/scratch","file":"..","relpos":0,"ts":1604888833},{"dir":"/mnt/scratch/2","file":"..","relpos":0,"ts":1604888833},{"dir":"/mnt/scratch/3","file":"..","relpos":0,"ts":1604888833},{"dir":"/mnt/scratch","file":"2","relpos":2,"ts":1604888833},{"dir":"/mnt/scratch/2","file":"spongebob-something-1.mkv","relpos":1,"ts":1604888833},{"dir":"/mnt/scratch","file":"1","relpos":1,"ts":1604888833},{"dir":"/mnt/scratch/1","file":"mighty mouse and friends cartoon collection.mkv","relpos":9,"ts":1604888833},{"dir":"/mnt/scratch/2","file":"..","relpos":0,"ts":1604888833},{"dir":"/mnt/scratch","file":"3","relpos":3,"ts":1604888833},{"dir":"/mnt","file":"scratch","relpos":4,"ts":1604888833},{"dir":"/mnt/scratch","file":"2","relpos":2,"ts":1604888833},{"dir":"/mnt/scratch/2","file":"..","relpos":0,"ts":1604888833},{"dir":"/mnt/scratch/3","file":"..","relpos":0,"ts":1604888833},{"dir":"/mnt/scratch","file":"1","relpos":1,"ts":1605105480},{"dir":"/mnt/scratch/1","file":"mighty mouse and friends cartoon collection.mkv","relpos":9,"ts":1605105480},{"dir":"/mnt/scratch","file":"2","relpos":2,"ts":1605105480},{"dir":"/mnt/scratch/2","file":"spongebob-something-1.mkv","relpos":1,"ts":1605105480},{"dir":"/mnt/scratch","file":"3","relpos":3,"ts":1605105480},{"dir":"/mnt/scratch/3","file":"..","relpos":0,"ts":1605105480},{"dir":"/mnt/scratch","file":"1","relpos":1,"ts":1605105480},{"dir":"/mnt","file":"scratch","relpos":4,"ts":1605105480},{"dir":"/mnt/scratch","file":"1","relpos":1,"ts":1605105480},{"dir":"/mnt/scratch/1","file":"mighty mouse and friends cartoon collection.mkv","relpos":9,"ts":1605105480},{"dir":"/mnt/scratch","file":"..","relpos":0,"ts":1605105480},{"dir":"/mnt/scratch/1","file":"mighty mouse and friends cartoon collection.mkv","relpos":9,"ts":1605105480},{"dir":"/mnt/scratch","file":"2","relpos":2,"ts":1605105480},{"dir":"/mnt/scratch/2","file":"spongebob-something-1.mkv","relpos":1,"ts":1605105480},{"dir":"/mnt/scratch","file":"3","relpos":3,"ts":1605105480},{"dir":"/mnt/scratch/3","file":"..","relpos":0,"ts":1605105480},{"dir":"/mnt/scratch","file":"1","relpos":1,"ts":1605105480},{"dir":"/mnt/scratch/1","file":"mighty mouse and friends cartoon collection.mkv","relpos":9,"ts":1605105480},{"dir":"/mnt/scratch","file":"3","relpos":3,"ts":1605105480},{"dir":"/mnt/scratch/3","file":"..","relpos":0,"ts":1605105480},{"dir":"/mnt/scratch","file":"2","relpos":2,"ts":1605105480},{"dir":"/mnt/scratch/2","file":"spongebob-something-4.mkv","relpos":4,"ts":1605105480},{"dir":"/mnt/scratch","file":"3","relpos":3,"ts":1605105480},{"dir":"/mnt/scratch/3","file":"..","relpos":0,"ts":1605105480},{"dir":"/mnt/scratch","file":"3","relpos":3,"ts":1605105480},{"dir":"/mnt/scratch/3","file":"..","relpos":0,"ts":1605105480},{"dir":"/home/atc/src/sites/com/theglassyladies/iridescence/src","file":"models","relpos":4,"ts":1605140587},{"dir":"/home/atc/src/sites/com/theglassyladies/iridescence/src/models","file":"product_diff.js","relpos":3,"ts":1605140587},{"dir":"/home/atc/src/sites/com/theglassyladies/iridescence/src","file":"components","relpos":3,"ts":1605140587},{"dir":"/home/atc/src/sites/com/theglassyladies/iridescence/src/components","file":"admin","relpos":1,"ts":1605140587},{"dir":"/home/atc/src/sites/com/theglassyladies/iridescence/src/components/admin","file":"ProductEditCard.vue","relpos":2,"ts":1605140587},{"dir":"/home/atc","file":"src","relpos":11,"ts":1605143269},{"dir":"/home/atc/src","file":"sites","relpos":8,"ts":1605143269},{"dir":"/home/atc/src/sites","file":"net","relpos":2,"ts":1605143269},{"dir":"/home/atc/src/sites/com","file":"carpentertutoring","relpos":1,"ts":1605143269},{"dir":"/home/atc/src/sites/com/carpentertutoring","file":"styles","relpos":11,"ts":1605143269},{"dir":"/home/atc/src/sites/com/carpentertutoring/styles","file":"index.scss","relpos":2,"ts":1605143269},{"dir":"/home/atc","file":"documents","relpos":4,"ts":1605296664},{"dir":"/home/atc/videos","file":"screencasts","relpos":2,"ts":1605296664},{"dir":"/home/atc/videos/screencasts","file":"cast_2020-11-13-14-42-36.mkv","relpos":1,"ts":1605296664},{"dir":"/home/atc/documents","file":"..","relpos":0,"ts":1605452555},{"dir":"/home/atc","file":"downloads","relpos":5,"ts":1605452555},{"dir":"/home/atc/downloads","file":"2021 Vision Plan Benefit Summary.pdf","relpos":7,"ts":1605452555},{"dir":"/home/atc","file":"videos","relpos":13,"ts":1605621097},{"dir":"/home/atc/videos","file":"screencasts","relpos":2,"ts":1605621097},{"dir":"/home/atc/videos/screencasts","file":"..","relpos":0,"ts":1605621097},{"dir":"/home/atc/videos","file":"youtube","relpos":2,"ts":1605621097},{"dir":"/home/atc/videos/youtube","file":"Big Bill Hell's_4sZuN0xXWLc.flac","relpos":1,"ts":1605621097},{"dir":"/home/atc/videos","file":"screencasts","relpos":1,"ts":1605621097},{"dir":"/home/atc","file":"pictures","relpos":9,"ts":1605621097},{"dir":"/home/atc/pictures","file":"boot","relpos":1,"ts":1605621097},{"dir":"/home/atc","file":"My Games","relpos":2,"ts":1605621097},{"dir":"/home/atc/My Games","file":"..","relpos":0,"ts":1605621097},{"dir":"/home/atc","file":"Desktop","relpos":1,"ts":1605621097},{"dir":"/home/atc/Desktop","file":"..","relpos":0,"ts":1605621097},{"dir":"/home/atc","file":"downloads","relpos":5,"ts":1605621097},{"dir":"/home/atc/downloads","file":"movies-1605625994817-4887.jpg","relpos":20,"ts":1605621097},{"dir":"/home/atc","file":"documents","relpos":4,"ts":1605710067},{"dir":"/home/atc/documents","file":"latitude-e6410-e6510-specsheet.pdf","relpos":7,"ts":1605710067},{"dir":"/home/atc","file":"downloads","relpos":5,"ts":1605710067},{"dir":"/home/atc/downloads","file":"Iosevka-4.0.0-beta.2","relpos":4,"ts":1605824302},{"dir":"/home/atc/downloads/Iosevka-4.0.0-beta.2","file":"params","relpos":4,"ts":1605927065},{"dir":"/home/atc/downloads","file":"woff2","relpos":6,"ts":1605927065},{"dir":"/home/atc/downloads/woff2","file":"iosevka-slab-regular.woff2","relpos":30,"ts":1605927324},{"dir":"/home/atc/src/sites/net/53hor","file":"assets","relpos":1,"ts":1606018371},{"dir":"/home/atc/src/sites/net/53hor/assets","file":"..","relpos":0,"ts":1606018371},{"dir":"/home/atc/src/sites/net/53hor","file":"includes","relpos":1,"ts":1606018371},{"dir":"/home/atc/src/sites/net/53hor/includes","file":"stylesheet.css","relpos":2,"ts":1606018371},{"dir":"/home/atc/src/sites/net/53hor","file":"includes","relpos":1,"ts":1606018371},{"dir":"/home/atc/src/sites/net/53hor/includes","file":"rss.xml","relpos":2,"ts":1606018371},{"dir":"/home/atc/src/sites/net/53hor","file":"index.html","relpos":5,"ts":1606018371},{"dir":"/home/atc","file":"pictures","relpos":9,"ts":1606052530},{"dir":"/home/atc/pictures","file":"franklin-cruise","relpos":2,"ts":1606052530},{"dir":"/home/atc/pictures/franklin-cruise","file":"DSC_0001.JPG","relpos":1,"ts":1606052530},{"dir":"/home/atc/src/sites/net/53hor","file":"computing","relpos":1,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor/computing","file":"..","relpos":0,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor","file":"life","relpos":3,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor/life","file":"..","relpos":0,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor","file":"wheels","relpos":4,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor/wheels","file":"..","relpos":0,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor","file":"wheels","relpos":4,"ts":1606143396},{"dir":"/home/atc/src/sites/net","file":"53hor","relpos":1,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor","file":"computing","relpos":1,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor/computing","file":"school-server-closets-are-utopic.md","relpos":2,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor","file":"software.html","relpos":11,"ts":1606143396},{"dir":"/home/atc","file":"downloads","relpos":5,"ts":1606144827},{"dir":"/home/atc/downloads","file":"movies-1605625994817-4887.jpg","relpos":22,"ts":1606144827}],"filters":{"invert":true,"dot":true,"manual":"","auto":""},"last-location":"/home/atc/downloads","sorting":[2],"preview":false}]},{"ptabs":[{"history":[{"dir":"/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak","file":"public","relpos":2,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies","file":"iridescence.bak","relpos":3,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com","file":"theglassyladies","relpos":2,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies","file":"dichroism","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism","file":"src","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src","file":"..","relpos":0,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism","file":"src","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies","file":"dichroism","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism","file":"src","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies","file":"dichroism","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/iridescence","file":"src","relpos":3,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/iridescence/src","file":"components","relpos":3,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/iridescence/src/components","file":"admin","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/iridescence/src/components/admin","file":"..","relpos":0,"ts":1603583383},{"dir":"/mnt/scratch","file":"..","relpos":0,"ts":1603583383},{"dir":"/mnt","file":"scratch","relpos":1,"ts":1603583383},{"dir":"/mnt/scratch","file":"The Amazing World of War Machines (2017) s01e01.mkv","relpos":19,"ts":1603583383},{"dir":"/mnt","file":"scratch","relpos":1,"ts":1603583383},{"dir":"/","file":"mnt","relpos":8,"ts":1603583383},{"dir":"/mnt","file":"scratch","relpos":1,"ts":1603583383},{"dir":"/mnt/scratch","file":"..","relpos":0,"ts":1603583383},{"dir":"/mnt","file":"scratch","relpos":1,"ts":1603583383},{"dir":"/","file":"mnt","relpos":8,"ts":1603583383},{"dir":"/mnt","file":"scratch","relpos":1,"ts":1603583383},{"dir":"/home/atc","file":"lego","relpos":5,"ts":1603583383},{"dir":"/home/atc/lego","file":"..","relpos":0,"ts":1603583383},{"dir":"/home/atc","file":"pictures","relpos":7,"ts":1603583383},{"dir":"/home/atc/pictures","file":"..","relpos":0,"ts":1603583383},{"dir":"/home/atc","file":"documents","relpos":3,"ts":1603583383},{"dir":"/home/atc/documents","file":"hudson","relpos":1,"ts":1603583383},{"dir":"/home/atc/documents/hudson","file":"HUDSON PARTS LIST.xlsx","relpos":1,"ts":1603583383},{"dir":"/home/atc/documents","file":"hudson","relpos":1,"ts":1603583383},{"dir":"/home/atc/documents/hudson","file":"HUDSON PARTS LIST.xlsx","relpos":1,"ts":1603583383},{"dir":"/home/atc/documents","file":"juiz","relpos":2,"ts":1603583383},{"dir":"/home/atc/documents/juiz","file":"..","relpos":0,"ts":1603583383},{"dir":"/home/atc/documents","file":"juiz","relpos":2,"ts":1603583383},{"dir":"/home/atc","file":"documents","relpos":3,"ts":1603583383},{"dir":"/home/atc/documents","file":"juiz","relpos":2,"ts":1603583383},{"dir":"/home/atc/documents/juiz","file":"..","relpos":0,"ts":1603583383},{"dir":"/home/atc/documents","file":"juiz","relpos":2,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/iridescence/src","file":"components","relpos":3,"ts":1603583383},{"dir":"/mnt/scratch","file":"Be Cool (2005).mkv","relpos":16,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/iridescence","file":"src","relpos":3,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/iridescence/src","file":"components","relpos":3,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism","file":"src","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src","file":"main.rs","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism","file":"src","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src","file":"test_uri.txt","relpos":4,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism","file":"src","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src","file":"test","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/test","file":"data","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/test/data","file":"..","relpos":0,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/test","file":"mod.rs","relpos":2,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism","file":"tests","relpos":3,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/tests","file":"integration_tests.rs","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism","file":"src","relpos":2,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src","file":"..","relpos":0,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/iridescence.bak/src/components","file":"..","relpos":0,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src","file":"models","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models","file":"mod.rs","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src","file":"models","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models","file":"mod.rs","relpos":1,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src","file":"models","relpos":2,"ts":1603583383},{"dir":"/mnt/scratch","file":"1","relpos":1,"ts":1603583383},{"dir":"/mnt/scratch/1","file":"..","relpos":0,"ts":1603583383},{"dir":"/mnt/scratch","file":"2","relpos":2,"ts":1603583383},{"dir":"/mnt/scratch/2","file":"..","relpos":0,"ts":1603583383},{"dir":"/mnt/scratch","file":"3","relpos":3,"ts":1603583383},{"dir":"/mnt/scratch/3","file":"..","relpos":0,"ts":1603583383},{"dir":"/mnt/scratch","file":"s06e06.mkv","relpos":32,"ts":1603583383},{"dir":"/mnt","file":"scratch","relpos":4,"ts":1603583383},{"dir":"/mnt/scratch","file":"..","relpos":0,"ts":1603583383},{"dir":"/home/atc","file":"..","relpos":0,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models","file":"photo.rs","relpos":4,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src","file":"models","relpos":2,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism","file":"src","relpos":2,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src","file":"repo","relpos":4,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/repo","file":"..","relpos":0,"ts":1603583383},{"dir":"/usr/home/atc/src/sites/com/theglassyladies/dichroism","file":"","relpos":0,"ts":1603583383},{"dir":"/home/atc","file":"downloads","relpos":5,"ts":1604011148},{"dir":"/mnt/scratch","file":"..","relpos":0,"ts":1604497887},{"dir":"/mnt","file":"scratch","relpos":4,"ts":1604498375},{"dir":"/mnt/scratch","file":"You're Not Elected, Charlie Brown (1972).mkv","relpos":22,"ts":1604629165},{"dir":"/home/atc/downloads","file":"..","relpos":0,"ts":1604702192},{"dir":"/mnt/scratch","file":"..","relpos":0,"ts":1604888833},{"dir":"/home/atc","file":"src","relpos":11,"ts":1605927324},{"dir":"/home/atc/src","file":"sites","relpos":8,"ts":1605927324},{"dir":"/home/atc/src/sites","file":"net","relpos":2,"ts":1605927324},{"dir":"/home/atc/src/sites/net","file":"cobalt-site","relpos":2,"ts":1605927324},{"dir":"/home/atc/src/sites/net/53hor","file":"iosevka-slab-regular.woff2","relpos":2,"ts":1605927324},{"dir":"/home/atc/src/sites/net/cobalt-site/posts","file":"sketchy-looking-gas-stations-aren-t-that-sketchy.md","relpos":20,"ts":1606143396},{"dir":"/home/atc/src/sites/net/cobalt-site","file":"posts","relpos":7,"ts":1606143396},{"dir":"/home/atc/src/sites/net","file":"53hor","relpos":1,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor","file":"programming","relpos":4,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor/programming","file":"..","relpos":0,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor","file":"unix","relpos":5,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor/unix","file":"..","relpos":0,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor","file":"includes","relpos":2,"ts":1606143396},{"dir":"/home/atc/src/sites/net/53hor/includes","file":"icons","relpos":1,"ts":1606144827},{"dir":"/home/atc/src/sites/net/53hor/includes/icons","file":"server.svg","relpos":6,"ts":1606144827}],"filters":{"invert":true,"dot":true,"manual":"","auto":""},"last-location":"/home/atc/src/sites/net/53hor/includes/icons","sorting":[2],"preview":false}]}],"active-pane":1,"preview":false,"splitter":{"pos":-1,"ratio":0.5,"orientation":"v","expanded":false}}],"trash":[{"trashed":"/home/atc/.local/share/vifm/Trash/000_Iosevka-4.0.0-beta.2","original":"/home/atc/downloads/Iosevka-4.0.0-beta.2"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_Iosevka-4.0.0-beta.2.tar.gz","original":"/home/atc/downloads/Iosevka-4.0.0-beta.2.tar.gz"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_iosevka-slab.css","original":"/home/atc/downloads/iosevka-slab.css"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_server.svg","original":"/home/atc/downloads/server.svg"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_webfont-iosevka-slab-4.0.0-beta.2.zip","original":"/home/atc/downloads/webfont-iosevka-slab-4.0.0-beta.2.zip"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_myst-4-revelation","original":"/home/atc/games/myst-4-revelation"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_gl.db","original":"/home/atc/gl.db"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_gl.db.sql","original":"/home/atc/gl.db.sql"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_changed_product.rs","original":"/home/atc/src/sites/com/theglassyladies/dichroism/src/repo/entities/changed_product.rs"},{"trashed":"/home/atc/.local/share/vifm/Trash/001_server.svg","original":"/home/atc/src/sites/net/53hor/includes/icons/server.svg"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_models.rs","original":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/dtos/models.rs"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_2","original":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/entities/2"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_photo.rs","original":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/entities/photo.rs"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_photo_set.rs","original":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/entities/photo_set.rs"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_product.rs","original":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/entities/product.rs"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_new_photo.rs","original":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models/new_photo.rs"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_new_photo_data.rs","original":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models/new_photo_data.rs"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_new_photo_set.rs","original":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/models/new_photo_set.rs"},{"trashed":"/home/atc/.local/share/vifm/Trash/000_photo_repo.rs","original":"/usr/home/atc/src/sites/com/theglassyladies/dichroism/src/photo_repo.rs"}],"marks":{"H":{"dir":"/home/atc/downloads","file":"Desperation-thatgamecompany-journey_art1600.jpg","ts":1600976053},"a":{"dir":"/usr/home/atc/pictures/franklin-cruise","file":"DSC_0001.JPG","ts":1603579572},"b":{"dir":"/home/atc/bin/","file":"..","ts":1589372309},"h":{"dir":"/home/atc/","file":"..","ts":1589372309},"j":{"dir":"/home/atc/downloads","file":"Examples","ts":1604701487},"v":{"dir":"/usr/home/atc/downloads","file":"resize:1600:900","ts":1596298552}},"bmarks":{},"cmd-hist":[{"text":"!docx","ts":1603583383},{"text":"!doas move %f","ts":1603583383},{"text":"unzip","ts":1603583383},{"text":"!themer.sh Stoneship\\ Lighthouse\\ Alt.jpg","ts":1603583383},{"text":"!themer.sh -s Stoneship\\ Lighthouse\\ Alt.jpg","ts":1603583383},{"text":"cd ~/downloads/","ts":1603583383},{"text":"!reset","ts":1603583383},{"text":"!doas rm -r xp","ts":1603583383},{"text":"mkdir iridescence","ts":1603583383},{"text":"cd ~/src/sites/com/theglassyladies/","ts":1603583383},{"text":"copy!","ts":1603583383},{"text":"grep sass-loader","ts":1603583383},{"text":"grep -r sass-loader","ts":1603583383},{"text":"!rg sass-loader","ts":1603583383},{"text":"cd ~/pictures/","ts":1603583383},{"text":"rename","ts":1603583383},{"text":"!mpv Avatar-\\ The\\ Last\\ Airbender\\ Book\\ Three-\\ Fire\\ Disc\\ 2_t04.mkv","ts":1603583383},{"text":"!bzcat","ts":1603583383},{"text":"!s","ts":1603583383},{"text":"!mpv f0060832_pid_0.m2ts","ts":1603583383},{"text":"`","ts":1603583383},{"text":"movw","ts":1603583383},{"text":"mo0ve","ts":1603583383},{"text":"!themer.sh -a clu.jpg","ts":1603583383},{"text":"!themer.sh -s .","ts":1603583383},{"text":"!themer.sh -s","ts":1603583383},{"text":"cd /tmp","ts":1603583383},{"text":"!toggle-screencast.sh","ts":1603583383},{"text":"!ffmpeg -i $f -vcodec h264","ts":1603583383},{"text":"cd /zroot/calibre-test/","ts":1603583383},{"text":"!chown atc:atc .","ts":1603583383},{"text":"cd .config/","ts":1603583383},{"text":"cd .cal","ts":1603583383},{"text":"ls /var/","ts":1603583383},{"text":"!rm *","ts":1603583383},{"text":"copyt","ts":1603583383},{"text":"!yarn add bulma","ts":1603583383},{"text":"!sxiv %f","ts":1603583383},{"text":"mkdir services","ts":1603583383},{"text":"!rg","ts":1603583383},{"text":"touch test","ts":1603583383},{"text":"touch Categoryjjj","ts":1603583383},{"text":"mkdir admin","ts":1603583383},{"text":"touch ","ts":1603583383},{"text":"touch ProductEditList.vue","ts":1603583383},{"text":"e ","ts":1603583383},{"text":"e NewProduct.vue","ts":1603583383},{"text":"e NewProduct","ts":1603583383},{"text":"e NewProductModal.vue","ts":1603583383},{"text":"rm *jpg","ts":1603583383},{"text":"delete *jpg","ts":1603583383},{"text":"help","ts":1603583383},{"text":"help mark","ts":1603583383},{"text":"mkdir","ts":1603583383},{"text":"mkdir documents","ts":1603583383},{"text":"mkdir hudson","ts":1603583383},{"text":"mkdir juiz","ts":1603583383},{"text":"m","ts":1603583383},{"text":"e ~/src/sc","ts":1603583383},{"text":"mkdir test","ts":1603583383},{"text":"mkdir data","ts":1603583383},{"text":"mopve","ts":1603583383},{"text":"mkdir ","ts":1603583383},{"text":"e .gitignore","ts":1603583383},{"text":"mkdir models","ts":1603583383},{"text":"reload","ts":1603583383},{"text":"cd ~/src/dotfiles/","ts":1603583383},{"text":"touch","ts":1603583383},{"text":"touch product_image.rs","ts":1603583383},{"text":"!di","ts":1603583383},{"text":"redraw","ts":1603583383},{"text":"empty","ts":1603583383},{"text":"mkdir dtos","ts":1603583383},{"text":"noh","ts":1603906436},{"text":"cd /zroot/gl/","ts":1604498375},{"text":"cd /zp","ts":1604498375},{"text":"!ffmpeg -f concat -safe 0 -i gone.txt -c copy gone.mkv","ts":1604629165},{"text":"!df","ts":1604629165},{"text":"!touch gwtw.txt","ts":1604629165},{"text":"!df | less","ts":1604629165},{"text":"cd /mnt/scratch/","ts":1604888833},{"text":"e ..","ts":1605140587},{"text":"Cd","ts":1605143269},{"text":"e ~/src/scripts/toggle-screencast.sh","ts":1605296664},{"text":"cd ~/documents/","ts":1605452555},{"text":"!themer.sh -a .","ts":1605620851},{"text":"!tar -xzf Iosevka-4.0.0-beta.2.tar.gz","ts":1605927065},{"text":"mo","ts":1606018371},{"text":"mkdir wheels","ts":1606143396},{"text":"mkdir life","ts":1606143396},{"text":"mkdir computing","ts":1606143396},{"text":"copy","ts":1606143396},{"text":"mkdir programming","ts":1606143396},{"text":"mkdir unix","ts":1606143396},{"text":"cd","ts":1606144827},{"text":"mkdir icons","ts":1606144827},{"text":"move","ts":1606144827},{"text":"e","ts":1606144827},{"text":"!sed -i 's/path/path fill=\"#ffffff\"/' *svg","ts":1606144827},{"text":"q","ts":1606144827}],"search-hist":[{"text":"journ","ts":1603583383},{"text":"scre","ts":1603583383},{"text":"Subar","ts":1603583383},{"text":"wpg","ts":1603583383},{"text":"th","ts":1603583383},{"text":"font","ts":1603583383},{"text":"down","ts":1603583383},{"text":"age","ts":1603583383},{"text":"myst","ts":1603583383},{"text":"setu","ts":1603583383},{"text":"stud","ts":1603583383},{"text":"6","ts":1603583383},{"text":"lxf","ts":1603583383},{"text":"mp4","ts":1603583383},{"text":"atc.tar","ts":1603583383},{"text":"xcf","ts":1603583383},{"text":"now","ts":1603583383},{"text":"atc","ts":1603583383},{"text":"From","ts":1603583383},{"text":"Cus","ts":1603583383},{"text":"cast","ts":1603583383},{"text":"vid","ts":1603583383},{"text":"ups","ts":1603583383},{"text":"jpg","ts":1603583383},{"text":"lego","ts":1603583383},{"text":"leg","ts":1603583383},{"text":"doc","ts":1603583383},{"text":"Be","ts":1603583383},{"text":"image_a","ts":1603583383},{"text":"vif","ts":1603583383},{"text":"sc","ts":1603583383},{"text":"sch","ts":1603583383},{"text":"mod","ts":1603583383},{"text":"dow","ts":1603583383},{"text":"del","ts":1603824523},{"text":"hogan","ts":1603906436},{"text":"core","ts":1603906436},{"text":"mys","ts":1603929982},{"text":"Yo","ts":1604629165},{"text":"st","ts":1605143269},{"text":"vi","ts":1605296664},{"text":"keep","ts":1605626062},{"text":"Keep","ts":1605626062},{"text":"k","ts":1605626062},{"text":"wall","ts":1605626062},{"text":"mov","ts":1605626062},{"text":"dell","ts":1605824302},{"text":"power","ts":1605824302},{"text":"io","ts":1605927065},{"text":"sr","ts":1605927324},{"text":"si","ts":1605927324},{"text":"pic","ts":1606052530},{"text":"iose","ts":1606144827},{"text":"svg","ts":1606144827}],"prompt-hist":[{"text":"flynn","ts":1603583383},{"text":"Admin.vue","ts":1603583383},{"text":"index.html.bak","ts":1603583383},{"text":"api","ts":1603583383},{"text":"ProductCard","ts":1603583383},{"text":"ProductSearch","ts":1603583383},{"text":"ProductFilter","ts":1603583383},{"text":"ProductList","ts":1603583383},{"text":"CategoryEditor.vue","ts":1603583383},{"text":"ProductEditCard.vue","ts":1603583383},{"text":"ProductEditCard","ts":1603583383},{"text":"Ice Age The Meltdown (2006)","ts":1603583383},{"text":"THE BATMAN TRAINING FOR POWER (split into 3 eps)","ts":1603583383},{"text":"A Fistful of Dollars (1964)","ts":1603583383},{"text":"Hitch (2011)","ts":1603583383},{"text":"Be Cool (2005)","ts":1603583383},{"text":"White Noise (2005)","ts":1603583383},{"text":"Good Luck Chuck (2007)","ts":1603583383},{"text":"Calendar Girls (2003)","ts":1603583383},{"text":"test_uri","ts":1603583383},{"text":"mod","ts":1603583383},{"text":"tests","ts":1603583383},{"text":"integration_tests.rs","ts":1603583383},{"text":"integration_tests","ts":1603583383},{"text":"unit_test_data","ts":1603583383},{"text":"img_data_uri","ts":1603583383},{"text":"serve_debug","ts":1603583383},{"text":"new_product_images","ts":1603583383},{"text":"product_img.rs","ts":1603583383},{"text":"product_img","ts":1603583383},{"text":"image","ts":1603583383},{"text":"new_product_set","ts":1603583383},{"text":"new_image","ts":1603583383},{"text":"new_image_data","ts":1603583383},{"text":"new_image_set","ts":1603583383},{"text":"image_set","ts":1603583383},{"text":"Hogan's Heroes (1965) s02e31 -- actually s03e05","ts":1603583383},{"text":"product_repo","ts":1603583383},{"text":"repo","ts":1603583383},{"text":"e10","ts":1603583383},{"text":"Avatar The Last Airbender (2006) s03e10","ts":1603583383},{"text":"Victory at Sea (1952) s01e13-16","ts":1603583383},{"text":"Pacific Heights (1990)","ts":1603583383},{"text":"The Prince And The Pauper The Movie (2007)","ts":1603583383},{"text":"Charlie's Angels (2000)","ts":1603583383},{"text":"We Were Soldiers (2002)","ts":1603583383},{"text":"update_product_form","ts":1604090643},{"text":"new_product_form.rs","ts":1604090643},{"text":"Dreamgirls (2006)","ts":1604497887},{"text":"Hotel Transylvania (2012)","ts":1604497887},{"text":"It's the Easter Beagle, Charlie Brown (1974)","ts":1604497887},{"text":"It's Arbor Day, Charlie Brown (1976)","ts":1604497887},{"text":"The Sandlot (1993)","ts":1604497887},{"text":"gone with the wind p1","ts":1604497887},{"text":"Monster House (2006)","ts":1604497887},{"text":"E.T. the Extra-Terrestrial (1982)","ts":1604497887},{"text":"gone with the wind p2","ts":1604629165},{"text":"It's the Great Pumpkin, Charlie Brown (1966)","ts":1604629165},{"text":"You're Not Elected, Charlie Brown (1972)","ts":1604629165},{"text":"A Charlie Brown Thanksgiving (1973)","ts":1604629165},{"text":"This is America, Charlie Brown (1988)","ts":1604629165},{"text":"The Velveteen Rabbit (2009)","ts":1604629165},{"text":"Jack Frost (1998)","ts":1604629165},{"text":"You're the Greatest, Charlie Brown (1979)","ts":1604629165},{"text":"Belle's Magical World (1998)","ts":1604629165},{"text":"The Princess and the Frog (2009)","ts":1604629165},{"text":"101 Dalmations (1996)","ts":1604629165},{"text":"The Little Mermaid (1989)","ts":1604629165},{"text":"Rango (2011)","ts":1604629165},{"text":"mighty mouse and friends cartoon collection","ts":1604629165},{"text":"Teenage Mutant Ninja Turtles 3","ts":1604629165},{"text":"Fantasia 2000 (1999)","ts":1604629165},{"text":"Mulan (1998)","ts":1604629165},{"text":"Mickey's Twice Upon a Christmas (2004)","ts":1604629165},{"text":"How the Grinch Stole Christmas! (1966)","ts":1604629165},{"text":"How the Grinch Stole Christmas (2000)","ts":1604629165},{"text":"Olive, the Other Reindeer (1999)","ts":1604629165},{"text":"gone1","ts":1604629165},{"text":"gone2","ts":1604629165},{"text":"gone","ts":1604629165},{"text":"Arthur Christmas (2011)","ts":1604629165},{"text":"Legend of Frosty the Snowman (2005)","ts":1604629165},{"text":"Gone with the Wind (1939)","ts":1604629165},{"text":"Hop (2011)","ts":1604629165},{"text":"You're a Good Sport, Charlie Brown (1975)","ts":1604629165},{"text":"One Hundred and One Dalmations (1961)","ts":1604888833},{"text":"Men In Black II (2002)","ts":1605105480},{"text":"TMNT (2007)","ts":1605105480},{"text":"Men in Black II (2002)","ts":1605105480},{"text":"Pinocchio (1940)","ts":1605105480},{"text":"The Little Mermaid II (2000)","ts":1605105480},{"text":"Ratatatouille (2007)","ts":1605105480},{"text":"Scooby Doo and the Witch's Ghost (1999)","ts":1605105480},{"text":"The Fox and the Hound (1981)","ts":1605105480},{"text":"Teenage Mutant Ninja Turtles II The Secret of Ooze (1991)","ts":1605105480},{"text":"Mulan II (2004)","ts":1605105480},{"text":"product_diff","ts":1605140587},{"text":"product_diff.js","ts":1605140587},{"text":".rclone-excludes","ts":1605621097},{"text":"includes","ts":1606018371}],"regs":{"\"":["/home/atc/.local/share/vifm/Trash/001_server.svg"]},"dir-stack":[],"use-term-multiplexer":false} \ No newline at end of file
diff --git a/.config/vifm/vifmrc b/.config/vifm/vifmrc
new file mode 100644
index 0000000..b3e370b
--- /dev/null
+++ b/.config/vifm/vifmrc
@@ -0,0 +1,455 @@
+" vim: filetype=vifm :
+" Sample configuration file for vifm (last updated: 2 June, 2019)
+" You can edit this file by hand.
+" The " character at the beginning of a line comments out the line.
+" Blank lines are ignored.
+" The basic format for each item is shown with an example.
+"
+" **** Modified by ATC ****
+
+" ------------------------------------------------------------------------------
+
+" Command used to edit files in various contexts. The default is vim.
+" If you would like to use another vi clone such as Elvis or Vile
+" you will need to change this setting.
+
+set vicmd=vim
+
+" Miller-style views
+
+set millerview
+
+" This makes vifm perform file operations on its own instead of relying on
+" standard utilities like `cp`. While using `cp` and alike is a more universal
+" solution, it's also much slower when processing large amounts of files and
+" doesn't support progress measuring.
+
+set syscalls
+
+" Trash Directory
+" The default is to move files that are deleted with dd or :d to
+" the trash directory. If you change this you will not be able to move
+" files by deleting them and then using p to put the file in the new location.
+" I recommend not changing this until you are familiar with vifm.
+" This probably shouldn't be an option.
+
+set trash
+
+" This is how many directories to store in the directory history.
+
+set history=100
+
+" Automatically resolve symbolic links on l or Enter.
+
+set nofollowlinks
+
+" With this option turned on you can run partially entered commands with
+" unambiguous beginning using :! (e.g. :!Te instead of :!Terminal or :!Te<tab>).
+
+" set fastrun
+
+" Natural sort of (version) numbers within text.
+
+set sortnumbers
+
+" Maximum number of changes that can be undone.
+
+set undolevels=100
+
+" Use Vim's format of help file (has highlighting and "hyperlinks").
+" If you would rather use a plain text help file set novimhelp.
+
+set vimhelp
+
+" If you would like to run an executable file when you
+" press return on the file name set this.
+
+set norunexec
+
+" Selected color scheme
+
+colorscheme Default
+
+" Format for displaying time in file list. For example:
+" TIME_STAMP_FORMAT=%m/%d-%H:%M
+" See man date or man strftime for details.
+
+set timefmt=%m/%d\ %H:%M
+
+" Show list of matches on tab completion in command-line mode
+
+set wildmenu
+
+" Display completions in a form of popup with descriptions of the matches
+
+set wildstyle=popup
+
+" Display suggestions in normal, visual and view modes for keys, marks and
+" registers (at most 5 files). In other view, when available.
+
+set suggestoptions=normal,visual,view,otherpane,keys,marks,registers
+
+" Ignore case in search patterns unless it contains at least one uppercase
+" letter
+
+set ignorecase
+set smartcase
+
+" Don't highlight search results automatically
+
+set nohlsearch
+
+" Use increment searching (search while typing)
+set incsearch
+
+" Try to leave some space from cursor to upper/lower border in lists
+
+set scrolloff=4
+
+" Don't do too many requests to slow file systems
+
+if !has('win')
+ set slowfs=curlftpfs
+endif
+
+" Set custom status line look
+
+set statusline=" Hint: %z%= %A %10u:%-7g %15s %20d "
+
+" ------------------------------------------------------------------------------
+
+" :mark mark /full/directory/path [filename]
+
+mark b ~/bin/
+mark h ~/
+
+" ------------------------------------------------------------------------------
+
+" :com[mand][!] command_name action
+" The following macros can be used in a command
+" %a is replaced with the user arguments.
+" %c the current file under the cursor.
+" %C the current file under the cursor in the other directory.
+" %f the current selected file, or files.
+" %F the current selected file, or files in the other directory.
+" %b same as %f %F.
+" %d the current directory name.
+" %D the other window directory name.
+" %m run the command in a menu window
+
+command! df df -h %m 2> /dev/null
+command! diff vim -d %f %F
+command! zip zip -r %f.zip %f
+command! run !! ./%f
+command! make !!make %a
+command! mkcd :mkdir %a | cd %a
+command! vgrep vim "+grep %a"
+command! reload :write | restart
+
+" ------------------------------------------------------------------------------
+
+" The file type is for the default programs to be used with
+" a file extension.
+" :filetype pattern1,pattern2 defaultprogram,program2
+" :fileviewer pattern1,pattern2 consoleviewer
+" The other programs for the file type can be accessed with the :file command
+" The command macros %f, %F, %d, %F may be used in the commands.
+" The %a macro is ignored. To use a % you must put %%.
+
+" For automated FUSE mounts, you must register an extension with :file[x]type
+" in one of following formats:
+"
+" :filetype extensions FUSE_MOUNT|some_mount_command using %SOURCE_FILE and %DESTINATION_DIR variables
+" %SOURCE_FILE and %DESTINATION_DIR are filled in by vifm at runtime.
+" A sample line might look like this:
+" :filetype *.zip,*.jar,*.war,*.ear FUSE_MOUNT|fuse-zip %SOURCE_FILE %DESTINATION_DIR
+"
+" :filetype extensions FUSE_MOUNT2|some_mount_command using %PARAM and %DESTINATION_DIR variables
+" %PARAM and %DESTINATION_DIR are filled in by vifm at runtime.
+" A sample line might look like this:
+" :filetype *.ssh FUSE_MOUNT2|sshfs %PARAM %DESTINATION_DIR
+" %PARAM value is filled from the first line of file (whole line).
+" Example first line for SshMount filetype: root@127.0.0.1:/
+"
+" You can also add %CLEAR if you want to clear screen before running FUSE
+" program.
+
+" Pdf
+filextype *.pdf mupdf %c %i &, apvlv %c, xpdf %c
+fileviewer *.pdf mutool draw -F txt %c
+
+" Audio
+filetype *.wav,*.mp3,*.flac,*.m4a,*.wma,*.ape,*.ac3,*.og[agx],*.spx,*.opus
+ \ {Play using mpv}
+ \ mpv %f &
+fileviewer *.mp3 mp3info
+fileviewer *.flac soxi
+
+" Video
+filextype *.avi,*.mp4,*.wmv,*.dat,*.3gp,*.ogv,*.mkv,*.mpg,*.mpeg,*.vob,
+ \*.fl[icv],*.m2v,*.mov,*.webm,*.ts,*.mts,*.m4v,*.r[am],*.qt,*.divx,
+ \*.as[fx]
+ \ {View using mpv}
+ \ mpv %f &
+fileviewer *.avi,*.mp4,*.wmv,*.dat,*.3gp,*.ogv,*.mkv,*.mpg,*.mpeg,*.vob,
+ \*.fl[icv],*.m2v,*.mov,*.webm,*.ts,*.mts,*.m4v,*.r[am],*.qt,*.divx,
+ \*.as[fx]
+ \ ffprobe -hide_banner -pretty %c 2>&1
+
+" Web
+filextype *.html,*.htm
+ \ {Open with Qutebrowser}
+ \ qutebrowser %f &,
+ \ {Open with firefox}
+ \ firefox %f &,
+filetype *.html,*.htm links, lynx
+
+" Object
+filetype *.o nm %f | less
+
+" Man page
+filetype *.[1-8] man ./%c
+fileviewer *.[1-8] man ./%c | col -b
+
+" Images
+filextype *.bmp,*.jpg,*.jpeg,*.png,*.gif,*.xpm,*.webp
+ \ {View in sxiv}
+ \ imager.sh %f,
+fileviewer *.bmp,*.jpg,*.jpeg,*.png,*.gif,*.xpm
+ \ identify %f
+
+" Image editing
+filextype *.xcf
+ \ { Open in Gimp }
+ \ gimp %f 2>/dev/null &
+
+" MD5
+filetype *.md5
+ \ {Check MD5 hash sum}
+ \ md5sum -c %f %S,
+
+" SHA1
+filetype *.sha1
+ \ {Check SHA1 hash sum}
+ \ sha1sum -c %f %S,
+
+" SHA256
+filetype *.sha256
+ \ {Check SHA256 hash sum}
+ \ sha256sum -c %f %S,
+
+" SHA512
+filetype *.sha512
+ \ {Check SHA512 hash sum}
+ \ sha512sum -c %f %S,
+
+" GPG signature
+filetype *.asc
+ \ {Check signature}
+ \ !!gpg --verify %c,
+
+" FuseZipMount
+filetype *.zip,*.jar,*.war,*.ear,*.oxt,*.apkg
+ \ {Extract here}
+ \ unzip -o %c
+fileviewer *.zip,*.jar,*.war,*.ear,*.oxt zip -sf %c
+
+" ArchiveMount
+filetype *.tar,*.tar.bz2,*.tbz2,*.tgz,*.tar.gz,*.tar.xz,*.txz
+ \ {Mount with archivemount}
+ \ FUSE_MOUNT|archivemount %SOURCE_FILE %DESTINATION_DIR,
+fileviewer *.tgz,*.tar.gz tar -tzf %c
+fileviewer *.tar.bz2,*.tbz2 tar -tjf %c
+fileviewer *.tar.txz,*.txz xz --list %c
+fileviewer *.tar tar -tf %c
+
+" Rar2FsMount and rar archives
+filetype *.rar
+ \ {Mount with rar2fs}
+ \ FUSE_MOUNT|rar2fs %SOURCE_FILE %DESTINATION_DIR,
+fileviewer *.rar unrar v %c
+
+" IsoMount
+filetype *.iso
+ \ {Mount with fuseiso}
+ \ FUSE_MOUNT|fuseiso %SOURCE_FILE %DESTINATION_DIR,
+
+" SshMount
+filetype *.ssh
+ \ {Mount with sshfs}
+ \ FUSE_MOUNT2|sshfs %PARAM %DESTINATION_DIR %FOREGROUND,
+
+" FtpMount
+filetype *.ftp
+ \ {Mount with curlftpfs}
+ \ FUSE_MOUNT2|curlftpfs -o ftp_port=-,,disable_eprt %PARAM %DESTINATION_DIR %FOREGROUND,
+
+" Fuse7z and 7z archives
+filetype *.7z
+ \ {Mount with fuse-7z}
+ \ FUSE_MOUNT|fuse-7z %SOURCE_FILE %DESTINATION_DIR,
+fileviewer *.7z 7z l %c
+
+" Word Processing
+filextype *.doc catdoc %c | vim -
+filextype *.docx docx2txt %f | vim -
+fileviewer *.doc catdoc %c
+fileviewer *.docx docx2txt.pl %f -
+
+" Spreadsheets
+filextype *.xls,*.xlsx,*.csv sc-im %f
+
+" LEGO
+filextype *.lcd,*.ldr,*.mpd leocad %f &
+
+" TuDu files
+filetype *.tudu tudu -f %c
+
+" Qt projects
+filextype *.pro qtcreator %f &
+
+" Directories
+filextype */
+ \ {View in thunar}
+ \ Thunar %f &,
+
+" Syntax highlighting in preview
+"
+" Explicitly set highlight type for some extensions
+"
+" 256-color terminal
+" fileviewer *.[ch],*.[ch]pp highlight -O xterm256 -s dante --syntax c %c
+" fileviewer Makefile,Makefile.* highlight -O xterm256 -s dante --syntax make %c
+"
+" 16-color terminal
+" fileviewer *.c,*.h highlight -O ansi -s dante %c
+"
+" Or leave it for automatic detection
+"
+" fileviewer *[^/] pygmentize -O style=monokai -f console256 -g
+
+" Displaying pictures in terminal
+"
+" fileviewer *.jpg,*.png shellpic %c
+
+" Open all other files with default system programs (you can also remove all
+" :file[x]type commands above to ensure they don't interfere with system-wide
+" settings). By default all unknown files are opened with 'vi[x]cmd'
+" uncommenting one of lines below will result in ignoring 'vi[x]cmd' option
+" for unknown file types.
+" For *nix:
+" filetype * xdg-open
+" For OS X:
+" filetype * open
+" For Windows:
+" filetype * start, explorer
+
+" ------------------------------------------------------------------------------
+
+" What should be saved automatically between vifm sessions. Drop "savedirs"
+" value if you don't want vifm to remember last visited directories for you.
+set vifminfo=dhistory,savedirs,chistory,state,tui,shistory,
+ \phistory,fhistory,dirstack,registers,bookmarks,bmarks
+
+" ------------------------------------------------------------------------------
+
+" Examples of configuring both panels
+
+" Customize view columns a bit (enable ellipsis for truncated file names)
+"
+" set viewcolumns=-{name}..,6{}.
+
+" Filter-out build and temporary files
+"
+" filter! /^.*\.(lo|o|d|class|py[co])$|.*~$/
+
+" ------------------------------------------------------------------------------
+
+" Sample mappings
+
+" Start shell in current directory
+nnoremap s :shell<cr>
+
+" Display sorting dialog
+nnoremap S :sort<cr>
+
+" Toggle visibility of preview window
+nnoremap w :view<cr>
+vnoremap w :view<cr>gv
+
+" Open file in existing instance of gvim
+nnoremap o :!gvim --remote-tab-silent %f<cr>
+" Open file in new instance of gvim
+nnoremap O :!gvim %f<cr>
+
+" Open file in the background using its default program
+nnoremap gb :file &<cr>l
+
+" Interaction with system clipboard
+if has('win')
+ " Yank current directory path to Windows clipboard with forward slashes
+ nnoremap yp :!echo %"d:gs!\!/! %i | clip<cr>
+ " Yank path to current file to Windows clipboard with forward slashes
+ nnoremap yf :!echo %"c:gs!\!/! %i | clip<cr>
+elseif executable('xclip')
+ " Yank current directory path into the clipboard
+ nnoremap yd :!echo %d | xclip %i<cr>
+ " Yank current file path into the clipboard
+ nnoremap yf :!echo %c:p | xclip %i<cr>
+elseif executable('xsel')
+ " Yank current directory path into primary and selection clipboards
+ nnoremap yd :!echo -n %d | xsel --input --primary %i &&
+ \ echo -n %d | xsel --clipboard --input %i<cr>
+ " Yank current file path into into primary and selection clipboards
+ nnoremap yf :!echo -n %c:p | xsel --input --primary %i &&
+ \ echo -n %c:p | xsel --clipboard --input %i<cr>
+endif
+
+" Mappings for faster renaming
+nnoremap I cw<c-a>
+nnoremap cc cw<c-u>
+nnoremap A cw
+
+" Open console in current directory
+nnoremap ,t :!xterm &<cr>
+
+" Open editor to edit vifmrc and apply settings after returning to vifm
+nnoremap ,c :write | edit $MYVIFMRC | restart<cr>
+" Open gvim to edit vifmrc
+nnoremap ,C :!gvim --remote-tab-silent $MYVIFMRC &<cr>
+
+" Toggle wrap setting on ,w key
+nnoremap ,w :set wrap!<cr>
+
+" Example of standard two-panel file managers mappings
+nnoremap <f3> :!less %f<cr>
+nnoremap <f4> :edit<cr>
+nnoremap <f5> :copy<cr>
+nnoremap <f6> :move<cr>
+nnoremap <f7> :mkdir<space>
+nnoremap <f8> :delete<cr>
+
+" ------------------------------------------------------------------------------
+
+" Various customization examples
+
+" Use ag (the silver searcher) instead of grep
+"
+" set grepprg='ag --line-numbers %i %a %s'
+
+" Add additional place to look for executables
+"
+" let $PATH = $HOME.'/bin/fuse:'.$PATH
+
+" Block particular shortcut
+"
+" nnoremap <left> <nop>
+
+" Export IPC name of current instance as environment variable and use it to
+" communicate with the instance later.
+"
+" It can be used in some shell script that gets run from inside vifm, for
+" example, like this:
+" vifm --server-name "$VIFM_SERVER_NAME" --remote +"cd '$PWD'"
+"
+" let $VIFM_SERVER_NAME = v:servername
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_115dab7e67478ed72666493964b133792a269c020fecac5b5570d3f73b5dfc25_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_115dab7e67478ed72666493964b133792a269c020fecac5b5570d3f73b5dfc25_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..10472d2
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_115dab7e67478ed72666493964b133792a269c020fecac5b5570d3f73b5dfc25_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/115dab7e67478ed72666493964b133792a269c020fecac5b5570d3f73b5dfc25.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0b0503",
+ "foreground": "#ffffdf",
+ "cursor": "#ffffdf"
+ },
+ "colors": {
+ "color0": "#0b0503",
+ "color1": "#8D6234",
+ "color2": "#756046",
+ "color3": "#AB8E67",
+ "color4": "#6B5030",
+ "color5": "#8F714E",
+ "color6": "#6A4820",
+ "color7": "#dcc8ac",
+ "color8": "#34150b",
+ "color9": "#c37f37",
+ "color10": "#a47e4e",
+ "color11": "#f0bb74",
+ "color12": "#956834",
+ "color13": "#c89457",
+ "color14": "#925e20",
+ "color15": "#ffffdf"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_1aeee27d230bb230e49dbea0df799a71f96480a284753c233375da776f44ca3f_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_1aeee27d230bb230e49dbea0df799a71f96480a284753c233375da776f44ca3f_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..67e2398
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_1aeee27d230bb230e49dbea0df799a71f96480a284753c233375da776f44ca3f_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/1aeee27d230bb230e49dbea0df799a71f96480a284753c233375da776f44ca3f.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0c0c0d",
+ "foreground": "#ffffee",
+ "cursor": "#ffffee"
+ },
+ "colors": {
+ "color0": "#0c0c0d",
+ "color1": "#935944",
+ "color2": "#6E5449",
+ "color3": "#B78F71",
+ "color4": "#827F7C",
+ "color5": "#AB9F92",
+ "color6": "#946755",
+ "color7": "#ddd0c2",
+ "color8": "#232327",
+ "color9": "#cd6d4a",
+ "color10": "#9a6853",
+ "color11": "#ffb77f",
+ "color12": "#b9a590",
+ "color13": "#f2cfa9",
+ "color14": "#cf7f5f",
+ "color15": "#ffffee"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_20190803_203423_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_20190803_203423_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..cf04a82
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_20190803_203423_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/20190803_203423.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0A0507",
+ "foreground": "#ffffd0",
+ "cursor": "#ffffd0"
+ },
+ "colors": {
+ "color0": "#0A0507",
+ "color1": "#E29238",
+ "color2": "#7E8276",
+ "color3": "#DCAC45",
+ "color4": "#CD964E",
+ "color5": "#A69164",
+ "color6": "#B38D53",
+ "color7": "#e7c9a0",
+ "color8": "#2c141e",
+ "color9": "#ffbe36",
+ "color10": "#a9b989",
+ "color11": "#ffe646",
+ "color12": "#ffc552",
+ "color13": "#e9c270",
+ "color14": "#f9ba5a",
+ "color15": "#ffffd0"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_20190811_100649_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_20190811_100649_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..119ca06
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_20190811_100649_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/20190811_100649.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0C120A",
+ "foreground": "#f6ffff",
+ "cursor": "#f6ffff"
+ },
+ "colors": {
+ "color0": "#0C120A",
+ "color1": "#66A1D6",
+ "color2": "#6388A7",
+ "color3": "#6BAADA",
+ "color4": "#4B92D0",
+ "color5": "#98A1A5",
+ "color6": "#58A5DA",
+ "color7": "#ccd5da",
+ "color8": "#21321b",
+ "color9": "#70d2ff",
+ "color10": "#6fb2ea",
+ "color11": "#75dfff",
+ "color12": "#4fbfff",
+ "color13": "#b1d9eb",
+ "color14": "#5edaff",
+ "color15": "#f6ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_20190811_203810_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_20190811_203810_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..a32589a
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_20190811_203810_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/20190811_203810.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0c0a0c",
+ "foreground": "#ffffeb",
+ "cursor": "#ffffeb"
+ },
+ "colors": {
+ "color0": "#0c0a0c",
+ "color1": "#9F8A76",
+ "color2": "#CBB49D",
+ "color3": "#DBA26F",
+ "color4": "#697989",
+ "color5": "#9EA1A1",
+ "color6": "#788691",
+ "color7": "#eee2cd",
+ "color8": "#272027",
+ "color9": "#e0b287",
+ "color10": "#ffeab4",
+ "color11": "#ffd17a",
+ "color12": "#789dc1",
+ "color13": "#b8e5e5",
+ "color14": "#8ab0cd",
+ "color15": "#ffffeb"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_582c32a3ac08159d0ce653b659dce10a8fd5c4591e1a3713e50f14c0527f9ed6_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_582c32a3ac08159d0ce653b659dce10a8fd5c4591e1a3713e50f14c0527f9ed6_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..9335b3f
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_582c32a3ac08159d0ce653b659dce10a8fd5c4591e1a3713e50f14c0527f9ed6_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/582c32a3ac08159d0ce653b659dce10a8fd5c4591e1a3713e50f14c0527f9ed6.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0a0402",
+ "foreground": "#e3ddfa",
+ "cursor": "#e3ddfa"
+ },
+ "colors": {
+ "color0": "#0a0402",
+ "color1": "#A93222",
+ "color2": "#A34930",
+ "color3": "#D8916A",
+ "color4": "#913624",
+ "color5": "#BC6349",
+ "color6": "#8A2E1A",
+ "color7": "#aaa5bb",
+ "color8": "#371307",
+ "color9": "#e8361e",
+ "color10": "#e15730",
+ "color11": "#ffb674",
+ "color12": "#c83e22",
+ "color13": "#ff774d",
+ "color14": "#be3417",
+ "color15": "#e3ddfa"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_5ce2f33a2e13419a0e4ded7673d2295218816e2c724a97c9c71319b516958838_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_5ce2f33a2e13419a0e4ded7673d2295218816e2c724a97c9c71319b516958838_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..43114e8
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_5ce2f33a2e13419a0e4ded7673d2295218816e2c724a97c9c71319b516958838_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/5ce2f33a2e13419a0e4ded7673d2295218816e2c724a97c9c71319b516958838.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0d0a05",
+ "foreground": "#ffffd4",
+ "cursor": "#ffffd4"
+ },
+ "colors": {
+ "color0": "#0d0a05",
+ "color1": "#916F37",
+ "color2": "#6C9972",
+ "color3": "#243653",
+ "color4": "#305367",
+ "color5": "#423E46",
+ "color6": "#4F6261",
+ "color7": "#e1cca2",
+ "color8": "#322611",
+ "color9": "#c9933a",
+ "color10": "#7bd787",
+ "color11": "#274473",
+ "color12": "#346e8f",
+ "color13": "#554863",
+ "color14": "#5b8a88",
+ "color15": "#ffffd4"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_60802e82b71465039b01474aa1fc4da5f7800b5e067b0748a3d6b6aa93fbbe63_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_60802e82b71465039b01474aa1fc4da5f7800b5e067b0748a3d6b6aa93fbbe63_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..2f8ffa2
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_60802e82b71465039b01474aa1fc4da5f7800b5e067b0748a3d6b6aa93fbbe63_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/60802e82b71465039b01474aa1fc4da5f7800b5e067b0748a3d6b6aa93fbbe63.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0d1d31",
+ "foreground": "#d2e7fd",
+ "cursor": "#d2e7fd"
+ },
+ "colors": {
+ "color0": "#0d1d31",
+ "color1": "#986566",
+ "color2": "#38637C",
+ "color3": "#2F5A83",
+ "color4": "#1A4B81",
+ "color5": "#594E68",
+ "color6": "#3B6786",
+ "color7": "#9cacbc",
+ "color8": "#173459",
+ "color9": "#d67274",
+ "color10": "#3d83ac",
+ "color11": "#3175b5",
+ "color12": "#1761b1",
+ "color13": "#715992",
+ "color14": "#4088ba",
+ "color15": "#d2e7fd"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_6392ba1aa98b0c3b01fb33c4b79f3703c5f607af556a9e2b65841760256c4e0d_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_6392ba1aa98b0c3b01fb33c4b79f3703c5f607af556a9e2b65841760256c4e0d_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..58cc57d
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_6392ba1aa98b0c3b01fb33c4b79f3703c5f607af556a9e2b65841760256c4e0d_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/6392ba1aa98b0c3b01fb33c4b79f3703c5f607af556a9e2b65841760256c4e0d.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0B0302",
+ "foreground": "#ffe2d6",
+ "cursor": "#ffe2d6"
+ },
+ "colors": {
+ "color0": "#0B0302",
+ "color1": "#98492E",
+ "color2": "#6A5A54",
+ "color3": "#6F5349",
+ "color4": "#4A3E41",
+ "color5": "#6A463A",
+ "color6": "#5B4338",
+ "color7": "#c0a9a0",
+ "color8": "#380c06",
+ "color9": "#d2582e",
+ "color10": "#966f60",
+ "color11": "#9c6652",
+ "color12": "#684750",
+ "color13": "#945540",
+ "color14": "#7f533f",
+ "color15": "#ffe2d6"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_6b4ac55c7739aa68c991ad207e49ff629df73f5f7c91e364e3a23f930f5faf2b_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_6b4ac55c7739aa68c991ad207e49ff629df73f5f7c91e364e3a23f930f5faf2b_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..3134a1c
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_6b4ac55c7739aa68c991ad207e49ff629df73f5f7c91e364e3a23f930f5faf2b_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/6b4ac55c7739aa68c991ad207e49ff629df73f5f7c91e364e3a23f930f5faf2b.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#150a07",
+ "foreground": "#fff7ec",
+ "cursor": "#fff7ec"
+ },
+ "colors": {
+ "color0": "#150a07",
+ "color1": "#8D6B33",
+ "color2": "#9E7052",
+ "color3": "#A78B36",
+ "color4": "#CC9870",
+ "color5": "#A87F83",
+ "color6": "#B48862",
+ "color7": "#dfcac1",
+ "color8": "#3b1b12",
+ "color9": "#c38e35",
+ "color10": "#dc8e5b",
+ "color11": "#e7bb37",
+ "color12": "#ffc27d",
+ "color13": "#ed919a",
+ "color14": "#fcaf6d",
+ "color15": "#fff7ec"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_86c209d61b31fc880f6d665213c6c6b8f8f3f2f834c2dcda25fc06a9c7820597_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_86c209d61b31fc880f6d665213c6c6b8f8f3f2f834c2dcda25fc06a9c7820597_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..dd4f2d6
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_86c209d61b31fc880f6d665213c6c6b8f8f3f2f834c2dcda25fc06a9c7820597_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/86c209d61b31fc880f6d665213c6c6b8f8f3f2f834c2dcda25fc06a9c7820597.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0e0d07",
+ "foreground": "#fffff2",
+ "cursor": "#fffff2"
+ },
+ "colors": {
+ "color0": "#0e0d07",
+ "color1": "#8F6436",
+ "color2": "#7A8356",
+ "color3": "#C5AA75",
+ "color4": "#897750",
+ "color5": "#BCB191",
+ "color6": "#A29167",
+ "color7": "#e3ddcd",
+ "color8": "#302c16",
+ "color9": "#c68239",
+ "color10": "#a7b861",
+ "color11": "#ffe383",
+ "color12": "#c09f59",
+ "color13": "#fff0a6",
+ "color14": "#e3c374",
+ "color15": "#fffff2"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_8aaf6106230640d0f815ccf163ecb621485a51ae469f50f2af8aa80809f6043f_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_8aaf6106230640d0f815ccf163ecb621485a51ae469f50f2af8aa80809f6043f_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..8299ff9
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_8aaf6106230640d0f815ccf163ecb621485a51ae469f50f2af8aa80809f6043f_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/8aaf6106230640d0f815ccf163ecb621485a51ae469f50f2af8aa80809f6043f.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#1d100c",
+ "foreground": "#fff8fc",
+ "cursor": "#fff8fc"
+ },
+ "colors": {
+ "color0": "#1d100c",
+ "color1": "#9A7D83",
+ "color2": "#D5AD9D",
+ "color3": "#C18E72",
+ "color4": "#E9C6B2",
+ "color5": "#AA9BA6",
+ "color6": "#ADB2C6",
+ "color7": "#e0d5d8",
+ "color8": "#40231a",
+ "color9": "#da909f",
+ "color10": "#ffd6b4",
+ "color11": "#ffb280",
+ "color12": "#ffeec3",
+ "color13": "#f2b4e1",
+ "color14": "#c8d8ff",
+ "color15": "#fff8fc"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_99ada981b672e71ffa477c37977b1d1ee1a900b9bdc6990392e1e36981d7747e_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_99ada981b672e71ffa477c37977b1d1ee1a900b9bdc6990392e1e36981d7747e_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..d9eed70
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_99ada981b672e71ffa477c37977b1d1ee1a900b9bdc6990392e1e36981d7747e_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/99ada981b672e71ffa477c37977b1d1ee1a900b9bdc6990392e1e36981d7747e.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#1f0b08",
+ "foreground": "#ffffeb",
+ "cursor": "#ffffeb"
+ },
+ "colors": {
+ "color0": "#1f0b08",
+ "color1": "#A75D33",
+ "color2": "#8C4F32",
+ "color3": "#DC9B5E",
+ "color4": "#646EA5",
+ "color5": "#B26C44",
+ "color6": "#44355B",
+ "color7": "#eadbc8",
+ "color8": "#471811",
+ "color9": "#e77434",
+ "color10": "#c26234",
+ "color11": "#ffc865",
+ "color12": "#7083e7",
+ "color13": "#f78848",
+ "color14": "#563b7f",
+ "color15": "#ffffeb"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_9bba3fb9b7bd856c7cf4b7e662b6c5b5e86897ff56344a0312f31393a469e60a_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_9bba3fb9b7bd856c7cf4b7e662b6c5b5e86897ff56344a0312f31393a469e60a_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..df22ab2
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_9bba3fb9b7bd856c7cf4b7e662b6c5b5e86897ff56344a0312f31393a469e60a_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/9bba3fb9b7bd856c7cf4b7e662b6c5b5e86897ff56344a0312f31393a469e60a.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#120905",
+ "foreground": "#fde1fe",
+ "cursor": "#fde1fe"
+ },
+ "colors": {
+ "color0": "#120905",
+ "color1": "#8A6E34",
+ "color2": "#715A4A",
+ "color3": "#BF985C",
+ "color4": "#6B2B59",
+ "color5": "#A98A68",
+ "color6": "#917057",
+ "color7": "#bea9bf",
+ "color8": "#3a1c0e",
+ "color9": "#bf9337",
+ "color10": "#9f7254",
+ "color11": "#ffc965",
+ "color12": "#942e77",
+ "color13": "#edb475",
+ "color14": "#cb8f62",
+ "color15": "#fde1fe"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_acceptance_of_the_void-thatgamecompany_journey_art1600_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_acceptance_of_the_void-thatgamecompany_journey_art1600_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..cb8e99b
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_acceptance_of_the_void-thatgamecompany_journey_art1600_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/acceptance_of_the_void-thatgamecompany_journey_art1600.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#1e3a49",
+ "foreground": "#fbffff",
+ "cursor": "#fbffff"
+ },
+ "colors": {
+ "color0": "#1e3a49",
+ "color1": "#B5CBCD",
+ "color2": "#9DBBC4",
+ "color3": "#B2C3BD",
+ "color4": "#8EABB2",
+ "color5": "#9DB3B4",
+ "color6": "#A0C1CA",
+ "color7": "#e1e6e8",
+ "color8": "#2c566c",
+ "color9": "#d2ffff",
+ "color10": "#b5ffff",
+ "color11": "#cffffc",
+ "color12": "#a3eafc",
+ "color13": "#b6fcff",
+ "color14": "#b8ffff",
+ "color15": "#fbffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-233rd-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-233rd-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..01d57fd
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-233rd-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-233rd-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0a0804",
+ "foreground": "#fffff3",
+ "cursor": "#fffff3"
+ },
+ "colors": {
+ "color0": "#0a0804",
+ "color1": "#AB5832",
+ "color2": "#A3592A",
+ "color3": "#C7965E",
+ "color4": "#E9C99A",
+ "color5": "#CEB996",
+ "color6": "#D8CCAA",
+ "color7": "#e4dfd1",
+ "color8": "#2f2510",
+ "color9": "#ec6d32",
+ "color10": "#e17029",
+ "color11": "#ffc467",
+ "color12": "#ffffaf",
+ "color13": "#fff6ab",
+ "color14": "#ffffc3",
+ "color15": "#fffff3"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-amateria-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-amateria-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..fbd7d6b
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-amateria-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-amateria-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0E0C0D",
+ "foreground": "#ffffef",
+ "cursor": "#ffffef"
+ },
+ "colors": {
+ "color0": "#0E0C0D",
+ "color1": "#946034",
+ "color2": "#9A6B54",
+ "color3": "#C39960",
+ "color4": "#727C87",
+ "color5": "#B9B092",
+ "color6": "#DDD2A4",
+ "color7": "#e9e4ce",
+ "color8": "#292226",
+ "color9": "#cd7b36",
+ "color10": "#d7855d",
+ "color11": "#ffc969",
+ "color12": "#84a0bf",
+ "color13": "#fff0a8",
+ "color14": "#ffffbc",
+ "color15": "#ffffef"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-channelwood-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-channelwood-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..94238f4
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-channelwood-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-channelwood-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0B0907",
+ "foreground": "#ffffee",
+ "cursor": "#ffffee"
+ },
+ "colors": {
+ "color0": "#0B0907",
+ "color1": "#A09173",
+ "color2": "#DDCBA4",
+ "color3": "#DDC696",
+ "color4": "#79878A",
+ "color5": "#C0BFAF",
+ "color6": "#97A19F",
+ "color7": "#eae1ce",
+ "color8": "#2a2219",
+ "color9": "#e1c283",
+ "color10": "#ffffbc",
+ "color11": "#ffffaa",
+ "color12": "#8cbac4",
+ "color13": "#ffffcb",
+ "color14": "#b0e5da",
+ "color15": "#ffffee"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-earth-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-earth-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..d10fac5
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-earth-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-earth-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0F0D09",
+ "foreground": "#ffffee",
+ "cursor": "#ffffee"
+ },
+ "colors": {
+ "color0": "#0F0D09",
+ "color1": "#B2AB92",
+ "color2": "#C9B88D",
+ "color3": "#C4AC79",
+ "color4": "#5E72A2",
+ "color5": "#C4BCB3",
+ "color6": "#6B8FAE",
+ "color7": "#e0d9c5",
+ "color8": "#2e281b",
+ "color9": "#fceaa8",
+ "color10": "#fff8a1",
+ "color11": "#ffe788",
+ "color12": "#698de3",
+ "color13": "#fff5d0",
+ "color14": "#78bbf4",
+ "color15": "#ffffee"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-edanna-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-edanna-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..0480722
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-edanna-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-edanna-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0D0C08",
+ "foreground": "#ffffef",
+ "cursor": "#ffffef"
+ },
+ "colors": {
+ "color0": "#0D0C08",
+ "color1": "#857165",
+ "color2": "#E3DAAF",
+ "color3": "#B2AB57",
+ "color4": "#4F5B64",
+ "color5": "#BCB194",
+ "color6": "#D6CB98",
+ "color7": "#e9e4ce",
+ "color8": "#2c281a",
+ "color9": "#bc8f74",
+ "color10": "#ffffc4",
+ "color11": "#f8ec5f",
+ "color12": "#5b778d",
+ "color13": "#ffefaa",
+ "color14": "#ffffad",
+ "color15": "#ffffef"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-haven-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-haven-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..fe1abed
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-haven-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-haven-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#070606",
+ "foreground": "#ffffe8",
+ "cursor": "#ffffe8"
+ },
+ "colors": {
+ "color0": "#070606",
+ "color1": "#AA9459",
+ "color2": "#CBA95C",
+ "color3": "#C7B75A",
+ "color4": "#D2B171",
+ "color5": "#D2B78A",
+ "color6": "#E4CA90",
+ "color7": "#ede5c7",
+ "color8": "#221c1c",
+ "color9": "#edc862",
+ "color10": "#ffe364",
+ "color11": "#fffb62",
+ "color12": "#ffec7d",
+ "color13": "#fff39c",
+ "color14": "#ffffa3",
+ "color15": "#ffffe8"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-jnanin-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-jnanin-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..b63c4df
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-jnanin-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-jnanin-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#090807",
+ "foreground": "#ffffef",
+ "cursor": "#ffffef"
+ },
+ "colors": {
+ "color0": "#090807",
+ "color1": "#A49170",
+ "color2": "#C1B7A9",
+ "color3": "#DDD2A5",
+ "color4": "#6A7695",
+ "color5": "#9C9AA1",
+ "color6": "#77859B",
+ "color7": "#e9e3ce",
+ "color8": "#25211c",
+ "color9": "#e7c17f",
+ "color10": "#fff1c4",
+ "color11": "#ffffbd",
+ "color12": "#7992d2",
+ "color13": "#c2b3e5",
+ "color14": "#88a8db",
+ "color15": "#ffffef"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-mechanical-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-mechanical-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..7af533f
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-mechanical-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-mechanical-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0A0908",
+ "foreground": "#faffff",
+ "cursor": "#faffff"
+ },
+ "colors": {
+ "color0": "#0A0908",
+ "color1": "#DECBA3",
+ "color2": "#E7D6B0",
+ "color3": "#DDC696",
+ "color4": "#A1AECE",
+ "color5": "#839BEB",
+ "color6": "#86A9F1",
+ "color7": "#d3dada",
+ "color8": "#26221d",
+ "color9": "#ffffba",
+ "color10": "#ffffc3",
+ "color11": "#ffffaa",
+ "color12": "#b9d8ff",
+ "color13": "#92bcff",
+ "color14": "#95d3ff",
+ "color15": "#faffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-myst-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-myst-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..c25d76e
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-myst-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-myst-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0B0A07",
+ "foreground": "#f2ffff",
+ "cursor": "#f2ffff"
+ },
+ "colors": {
+ "color0": "#0B0A07",
+ "color1": "#DDCBA3",
+ "color2": "#E7D5AF",
+ "color3": "#DDC697",
+ "color4": "#EDE3C9",
+ "color5": "#9F9E95",
+ "color6": "#C6C7B5",
+ "color7": "#deedf5",
+ "color8": "#2a2619",
+ "color9": "#ffffba",
+ "color10": "#ffffc2",
+ "color11": "#ffffac",
+ "color12": "#ffffd0",
+ "color13": "#e2ddad",
+ "color14": "#ffffd2",
+ "color15": "#f2ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-narayan-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-narayan-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..22b7feb
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-narayan-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-narayan-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#070808",
+ "foreground": "#ffffee",
+ "cursor": "#ffffee"
+ },
+ "colors": {
+ "color0": "#070808",
+ "color1": "#F18566",
+ "color2": "#979572",
+ "color3": "#E58C66",
+ "color4": "#DDD3A5",
+ "color5": "#B4AD8D",
+ "color6": "#7C888B",
+ "color7": "#e9e4cd",
+ "color8": "#1e2222",
+ "color9": "#ffa06e",
+ "color10": "#d5d183",
+ "color11": "#ffad6f",
+ "color12": "#ffffbd",
+ "color13": "#feeea2",
+ "color14": "#90bbc5",
+ "color15": "#ffffee"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-rime-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-rime-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..e1934cd
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-rime-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-rime-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0A1010",
+ "foreground": "#fffff3",
+ "cursor": "#fffff3"
+ },
+ "colors": {
+ "color0": "#0A1010",
+ "color1": "#E1CB9D",
+ "color2": "#E7D5AF",
+ "color3": "#DDC697",
+ "color4": "#6F7686",
+ "color5": "#B7A88C",
+ "color6": "#DACDAF",
+ "color7": "#ede6d8",
+ "color8": "#1c2f2f",
+ "color9": "#ffffb3",
+ "color10": "#ffffc2",
+ "color11": "#ffffac",
+ "color12": "#8093be",
+ "color13": "#ffe0a1",
+ "color14": "#ffffc9",
+ "color15": "#fffff3"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-riven-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-riven-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..37f3aae
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-riven-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-riven-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0a0908",
+ "foreground": "#fffff1",
+ "cursor": "#fffff1"
+ },
+ "colors": {
+ "color0": "#0a0908",
+ "color1": "#A8916C",
+ "color2": "#D7CBAA",
+ "color3": "#C8B998",
+ "color4": "#3F699D",
+ "color5": "#A6A49C",
+ "color6": "#678CAA",
+ "color7": "#e8e2d1",
+ "color8": "#26221d",
+ "color9": "#ecc07a",
+ "color10": "#ffffc4",
+ "color11": "#fff9ae",
+ "color12": "#4386da",
+ "color13": "#ece1b5",
+ "color14": "#74b7ee",
+ "color15": "#fffff1"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-selenitic-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-selenitic-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..7b80d95
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-selenitic-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-selenitic-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#070808",
+ "foreground": "#f2ffff",
+ "cursor": "#f2ffff"
+ },
+ "colors": {
+ "color0": "#070808",
+ "color1": "#D98E6F",
+ "color2": "#DDC89B",
+ "color3": "#B6A361",
+ "color4": "#E7D6B0",
+ "color5": "#E09B76",
+ "color6": "#58A4AA",
+ "color7": "#cbe0d8",
+ "color8": "#1e2222",
+ "color9": "#ffaf7a",
+ "color10": "#ffffb1",
+ "color11": "#fedd6b",
+ "color12": "#ffffc3",
+ "color13": "#ffc283",
+ "color14": "#61e3ed",
+ "color15": "#f2ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-serenia-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-serenia-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..87125fc
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-serenia-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-serenia-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#080706",
+ "foreground": "#f5ffff",
+ "cursor": "#f5ffff"
+ },
+ "colors": {
+ "color0": "#080706",
+ "color1": "#D4BA8F",
+ "color2": "#E2C998",
+ "color3": "#D1AF72",
+ "color4": "#72848F",
+ "color5": "#A09D99",
+ "color6": "#99B1CC",
+ "color7": "#d2dae2",
+ "color8": "#25201a",
+ "color9": "#fff7a2",
+ "color10": "#ffffad",
+ "color11": "#ffe97f",
+ "color12": "#83afca",
+ "color13": "#e4ceb2",
+ "color14": "#afe4ff",
+ "color15": "#f5ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-spire-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-spire-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..671cb9b
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-spire-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-spire-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0C1011",
+ "foreground": "#ffffe6",
+ "cursor": "#ffffe6"
+ },
+ "colors": {
+ "color0": "#0C1011",
+ "color1": "#AF9260",
+ "color2": "#C2C479",
+ "color3": "#D3B072",
+ "color4": "#C89F62",
+ "color5": "#D0BF96",
+ "color6": "#638D8E",
+ "color7": "#e8dbc0",
+ "color8": "#202b2e",
+ "color9": "#f5c26b",
+ "color10": "#ffff88",
+ "color11": "#ffea7f",
+ "color12": "#ffd26c",
+ "color13": "#ffffab",
+ "color14": "#71c6c8",
+ "color15": "#ffffe6"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-stoneship-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-stoneship-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..478a1c9
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-stoneship-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-stoneship-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#090705",
+ "foreground": "#ffffee",
+ "cursor": "#ffffee"
+ },
+ "colors": {
+ "color0": "#090705",
+ "color1": "#857C64",
+ "color2": "#70907F",
+ "color3": "#C8AA71",
+ "color4": "#DDC89B",
+ "color5": "#C1B28F",
+ "color6": "#92886C",
+ "color7": "#eae1ce",
+ "color8": "#2a2015",
+ "color9": "#bba872",
+ "color10": "#81cba4",
+ "color11": "#ffe37e",
+ "color12": "#ffffb1",
+ "color13": "#fff0a4",
+ "color14": "#ceb87b",
+ "color15": "#ffffee"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-tay-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-tay-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..2450219
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-tay-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-tay-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0C0E0E",
+ "foreground": "#fffff7",
+ "cursor": "#fffff7"
+ },
+ "colors": {
+ "color0": "#0C0E0E",
+ "color1": "#A89472",
+ "color2": "#D8CCAB",
+ "color3": "#D4C5A0",
+ "color4": "#5D7076",
+ "color5": "#C8B998",
+ "color6": "#65919C",
+ "color7": "#deddd1",
+ "color8": "#222929",
+ "color9": "#ecc581",
+ "color10": "#ffffc5",
+ "color11": "#ffffb7",
+ "color12": "#6b98a7",
+ "color13": "#fff9ae",
+ "color14": "#72c6db",
+ "color15": "#fffff7"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-voltaic-1920x1200_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-voltaic-1920x1200_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..d487cf5
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_ages-wp-voltaic-1920x1200_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/ages-wp-voltaic-1920x1200.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0E0A08",
+ "foreground": "#edf6ff",
+ "cursor": "#edf6ff"
+ },
+ "colors": {
+ "color0": "#0E0A08",
+ "color1": "#DDD2A4",
+ "color2": "#E5D9AE",
+ "color3": "#C0975C",
+ "color4": "#6A79B8",
+ "color5": "#BCB6AC",
+ "color6": "#7584C1",
+ "color7": "#c4cbe0",
+ "color8": "#2e2019",
+ "color9": "#ffffbc",
+ "color10": "#ffffc2",
+ "color11": "#ffc765",
+ "color12": "#7691ff",
+ "color13": "#fff2c8",
+ "color14": "#839fff",
+ "color15": "#edf6ff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_arch_of_stone-thatgamecompany_journey_art1600_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_arch_of_stone-thatgamecompany_journey_art1600_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..c276955
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_arch_of_stone-thatgamecompany_journey_art1600_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/arch_of_stone-thatgamecompany_journey_art1600.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0C0102",
+ "foreground": "#ffffeb",
+ "cursor": "#ffffeb"
+ },
+ "colors": {
+ "color0": "#0C0102",
+ "color1": "#DC883A",
+ "color2": "#E18D3E",
+ "color3": "#E9984A",
+ "color4": "#F7B56B",
+ "color5": "#EFBD81",
+ "color6": "#F8C378",
+ "color7": "#f3f2d1",
+ "color8": "#3e0106",
+ "color9": "#ffb039",
+ "color10": "#ffb63d",
+ "color11": "#ffc54c",
+ "color12": "#ffec74",
+ "color13": "#fff78f",
+ "color14": "#ffff84",
+ "color15": "#ffffeb"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_back-to-the-future-science-fiction-delorean-movies-time-travel-artwork-humor-minimalism-1359785_png_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_back-to-the-future-science-fiction-delorean-movies-time-travel-artwork-humor-minimalism-1359785_png_dark_wal__1.1.0.json
new file mode 100644
index 0000000..0da9768
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_back-to-the-future-science-fiction-delorean-movies-time-travel-artwork-humor-minimalism-1359785_png_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/back-to-the-future-science-fiction-delorean-movies-time-travel-artwork-humor-minimalism-1359785.png",
+ "alpha": "90",
+
+ "special": {
+ "background": "#192622",
+ "foreground": "#ffffdd",
+ "cursor": "#ffffdd"
+ },
+ "colors": {
+ "color0": "#192622",
+ "color1": "#59C7C7",
+ "color2": "#57B0A7",
+ "color3": "#F5B764",
+ "color4": "#25A2A3",
+ "color5": "#A4BAAF",
+ "color6": "#3EC2C2",
+ "color7": "#f5dcbc",
+ "color8": "#2c443d",
+ "color9": "#60ffff",
+ "color10": "#60f5e6",
+ "color11": "#fff16b",
+ "color12": "#23dfe0",
+ "color13": "#beffe3",
+ "color14": "#3fffff",
+ "color15": "#ffffdd"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_channelwood_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_channelwood_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..d16c7b6
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_channelwood_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/channelwood.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0a0705",
+ "foreground": "#f8ffff",
+ "cursor": "#f8ffff"
+ },
+ "colors": {
+ "color0": "#0a0705",
+ "color1": "#8E7051",
+ "color2": "#7A858C",
+ "color3": "#9D896D",
+ "color4": "#737D83",
+ "color5": "#959FA5",
+ "color6": "#B4C2CD",
+ "color7": "#e3eaee",
+ "color8": "#2c1e14",
+ "color9": "#c7915a",
+ "color10": "#8db0c6",
+ "color11": "#ddb47c",
+ "color12": "#85a6ba",
+ "color13": "#add3ea",
+ "color14": "#d1ffff",
+ "color15": "#f8ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_channelwood_pano2_png_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_channelwood_pano2_png_dark_wal__1.1.0.json
new file mode 100644
index 0000000..06d1d64
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_channelwood_pano2_png_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/channelwood_pano2.png",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0E0E05",
+ "foreground": "#fffada",
+ "cursor": "#fffada"
+ },
+ "colors": {
+ "color0": "#0E0E05",
+ "color1": "#8D7436",
+ "color2": "#7B8229",
+ "color3": "#B8993F",
+ "color4": "#5F5E3A",
+ "color5": "#877A4D",
+ "color6": "#625727",
+ "color7": "#c4bca4",
+ "color8": "#343410",
+ "color9": "#c49c39",
+ "color10": "#a9b42a",
+ "color11": "#ffce41",
+ "color12": "#858341",
+ "color13": "#bda656",
+ "color14": "#887629",
+ "color15": "#fffada"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_channelwood_sirrus_alt_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_channelwood_sirrus_alt_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..4484869
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_channelwood_sirrus_alt_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/channelwood_sirrus_alt.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0E0F03",
+ "foreground": "#eef4f4",
+ "cursor": "#eef4f4"
+ },
+ "colors": {
+ "color0": "#0E0F03",
+ "color1": "#9B6731",
+ "color2": "#AF7541",
+ "color3": "#FAAB51",
+ "color4": "#ED9337",
+ "color5": "#E59F56",
+ "color6": "#C09954",
+ "color7": "#b3b8b8",
+ "color8": "#363a09",
+ "color9": "#d68632",
+ "color10": "#f39744",
+ "color11": "#ffdf53",
+ "color12": "#ffbf34",
+ "color13": "#ffcf5b",
+ "color14": "#ffcb5b",
+ "color15": "#eef4f4"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_chnanelwood_alt_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_chnanelwood_alt_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..58be6b2
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_chnanelwood_alt_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/chnanelwood_alt.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0F0904",
+ "foreground": "#f2ffff",
+ "cursor": "#f2ffff"
+ },
+ "colors": {
+ "color0": "#0F0904",
+ "color1": "#8E6734",
+ "color2": "#6D8B5A",
+ "color3": "#9A9962",
+ "color4": "#709289",
+ "color5": "#5D6B55",
+ "color6": "#A9C9C3",
+ "color7": "#cee0e4",
+ "color8": "#38200c",
+ "color9": "#c58736",
+ "color10": "#8ac366",
+ "color11": "#d8d66f",
+ "color12": "#80ceb9",
+ "color13": "#759762",
+ "color14": "#c3ffff",
+ "color15": "#f2ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_clocktower_alt_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_clocktower_alt_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..de5aae7
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_clocktower_alt_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/clocktower_alt.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0B0807",
+ "foreground": "#fffcee",
+ "cursor": "#fffcee"
+ },
+ "colors": {
+ "color0": "#0B0807",
+ "color1": "#9F5E28",
+ "color2": "#917162",
+ "color3": "#BD8F68",
+ "color4": "#887F81",
+ "color5": "#D0AF9D",
+ "color6": "#AE978C",
+ "color7": "#ecdcd0",
+ "color8": "#2a1d19",
+ "color9": "#db7826",
+ "color10": "#cc8d6f",
+ "color11": "#ffb874",
+ "color12": "#c1949e",
+ "color13": "#ffdcb4",
+ "color14": "#f6bda1",
+ "color15": "#fffcee"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_clu_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_clu_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..d61f78e
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_clu_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/clu.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0d0d0d",
+ "foreground": "#ffffbb",
+ "cursor": "#ffffbb"
+ },
+ "colors": {
+ "color0": "#0d0d0d",
+ "color1": "#9D8026",
+ "color2": "#7C6523",
+ "color3": "#CFA62C",
+ "color4": "#645125",
+ "color5": "#B08F29",
+ "color6": "#8F7525",
+ "color7": "#dfcb8d",
+ "color8": "#262626",
+ "color9": "#d8ac24",
+ "color10": "#ab8823",
+ "color11": "#ffdf28",
+ "color12": "#8a6c27",
+ "color13": "#f2c127",
+ "color14": "#c59e24",
+ "color15": "#ffffbb"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_creature_of_the_ruins-thatgamecompany-journey_art1600_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_creature_of_the_ruins-thatgamecompany-journey_art1600_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..407b26c
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_creature_of_the_ruins-thatgamecompany-journey_art1600_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/creature_of_the_ruins-thatgamecompany-journey_art1600.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#211106",
+ "foreground": "#ffffdc",
+ "cursor": "#ffffdc"
+ },
+ "colors": {
+ "color0": "#211106",
+ "color1": "#A76E30",
+ "color2": "#855A2C",
+ "color3": "#B38A54",
+ "color4": "#9A7445",
+ "color5": "#A67944",
+ "color6": "#946936",
+ "color7": "#dbc4a8",
+ "color8": "#4c260c",
+ "color9": "#e78f30",
+ "color10": "#b8752d",
+ "color11": "#f9b55c",
+ "color12": "#d6984b",
+ "color13": "#e79e49",
+ "color14": "#cd8939",
+ "color15": "#ffffdc"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_desperation-thatgamecompany-journey_art1600_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_desperation-thatgamecompany-journey_art1600_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..d3f47b3
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_desperation-thatgamecompany-journey_art1600_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/desperation-thatgamecompany-journey_art1600.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#32434b",
+ "foreground": "#f9ffff",
+ "cursor": "#f9ffff"
+ },
+ "colors": {
+ "color0": "#32434b",
+ "color1": "#CBDBE2",
+ "color2": "#CBDAE1",
+ "color3": "#B5CAD2",
+ "color4": "#C4D6DD",
+ "color5": "#A6BEC9",
+ "color6": "#9CB7C2",
+ "color7": "#e1e9eb",
+ "color8": "#455d69",
+ "color9": "#d7ffff",
+ "color10": "#d8ffff",
+ "color11": "#d1ffff",
+ "color12": "#d6ffff",
+ "color13": "#c0ffff",
+ "color14": "#b4f7ff",
+ "color15": "#f9ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0004_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0004_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..5010e27
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0004_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/dsc_0004.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0a0b0a",
+ "foreground": "#fffff7",
+ "cursor": "#fffff7"
+ },
+ "colors": {
+ "color0": "#0a0b0a",
+ "color1": "#A38D71",
+ "color2": "#6E8AA9",
+ "color3": "#959238",
+ "color4": "#496A96",
+ "color5": "#AC9F91",
+ "color6": "#6E9DE6",
+ "color7": "#dcd7cf",
+ "color8": "#212521",
+ "color9": "#e5b981",
+ "color10": "#7cb2ed",
+ "color11": "#cfca3b",
+ "color12": "#5087d1",
+ "color13": "#f4cfa7",
+ "color14": "#78c7ff",
+ "color15": "#fffff7"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0045_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0045_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..4cd9763
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0045_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/dsc_0045.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0E0B09",
+ "foreground": "#f5ffff",
+ "cursor": "#f5ffff"
+ },
+ "colors": {
+ "color0": "#0E0B09",
+ "color1": "#906E35",
+ "color2": "#7D8159",
+ "color3": "#AD984B",
+ "color4": "#5E728D",
+ "color5": "#969A9B",
+ "color6": "#738EAC",
+ "color7": "#d0d9e0",
+ "color8": "#2c221c",
+ "color9": "#c89238",
+ "color10": "#adb565",
+ "color11": "#f1ce51",
+ "color12": "#6a91c6",
+ "color13": "#afd4dd",
+ "color14": "#82b7f2",
+ "color15": "#f5ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0060_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0060_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..ba56c8a
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0060_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/dsc_0060.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0E110C",
+ "foreground": "#d8fbff",
+ "cursor": "#d8fbff"
+ },
+ "colors": {
+ "color0": "#0E110C",
+ "color1": "#92704E",
+ "color2": "#748948",
+ "color3": "#A6A55D",
+ "color4": "#32599C",
+ "color5": "#3E3F47",
+ "color6": "#5C6055",
+ "color7": "#a6c1e1",
+ "color8": "#262e20",
+ "color9": "#cc9156",
+ "color10": "#9bbf50",
+ "color11": "#e8e668",
+ "color12": "#3370d8",
+ "color13": "#484b64",
+ "color14": "#7a8862",
+ "color15": "#d8fbff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0094_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0094_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..14f1644
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0094_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/dsc_0094.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0b0a0b",
+ "foreground": "#f5feff",
+ "cursor": "#f5feff"
+ },
+ "colors": {
+ "color0": "#0b0a0b",
+ "color1": "#8C8D92",
+ "color2": "#7C8491",
+ "color3": "#A8ADB3",
+ "color4": "#767B85",
+ "color5": "#9EA1A8",
+ "color6": "#919AA6",
+ "color7": "#cbd2da",
+ "color8": "#252125",
+ "color9": "#a3aad0",
+ "color10": "#8fa7cd",
+ "color11": "#c3deff",
+ "color12": "#899abd",
+ "color13": "#b8c8ef",
+ "color14": "#a8c5eb",
+ "color15": "#f5feff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0115_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0115_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..63afcbb
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0115_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/dsc_0115.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#121518",
+ "foreground": "#fcfdff",
+ "cursor": "#fcfdff"
+ },
+ "colors": {
+ "color0": "#121518",
+ "color1": "#71A1E6",
+ "color2": "#74859D",
+ "color3": "#C8C1BA",
+ "color4": "#6395DE",
+ "color5": "#979DA8",
+ "color6": "#6899E2",
+ "color7": "#e0e1e5",
+ "color8": "#272d34",
+ "color9": "#7ccdff",
+ "color10": "#85a9dd",
+ "color11": "#fffad8",
+ "color12": "#6bbdff",
+ "color13": "#afc6ef",
+ "color14": "#71c2ff",
+ "color15": "#fcfdff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0117_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0117_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..48864a3
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_dsc_0117_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/dsc_0117.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0C1007",
+ "foreground": "#ecfcff",
+ "cursor": "#ecfcff"
+ },
+ "colors": {
+ "color0": "#0C1007",
+ "color1": "#7BA3D8",
+ "color2": "#7387A0",
+ "color3": "#CAC4BF",
+ "color4": "#6A94CD",
+ "color5": "#969DA8",
+ "color6": "#5B89CB",
+ "color7": "#c1cedf",
+ "color8": "#263315",
+ "color9": "#89d0ff",
+ "color10": "#83ade1",
+ "color11": "#fffcde",
+ "color12": "#75bdff",
+ "color13": "#aec7ee",
+ "color14": "#63aeff",
+ "color15": "#ecfcff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_01_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_01_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..01a1851
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_01_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/endofages_concept_01.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#3c2818",
+ "foreground": "#fffff5",
+ "cursor": "#fffff5"
+ },
+ "colors": {
+ "color0": "#3c2818",
+ "color1": "#DCC4AB",
+ "color2": "#E8CEB4",
+ "color3": "#D1AE90",
+ "color4": "#F0DBC6",
+ "color5": "#D8B89E",
+ "color6": "#DDD4C3",
+ "color7": "#f4ece3",
+ "color8": "#5f3f26",
+ "color9": "#ffffc4",
+ "color10": "#ffffc5",
+ "color11": "#ffe0a4",
+ "color12": "#ffffcd",
+ "color13": "#ffecb5",
+ "color14": "#ffffd5",
+ "color15": "#fffff5"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_02_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_02_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..d93b54a
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_02_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/endofages_concept_02.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#132346",
+ "foreground": "#fffff5",
+ "cursor": "#fffff5"
+ },
+ "colors": {
+ "color0": "#132346",
+ "color1": "#EBDCCD",
+ "color2": "#D0D4D0",
+ "color3": "#CEC7BD",
+ "color4": "#B6C6CB",
+ "color5": "#9FB5C5",
+ "color6": "#ACCAD6",
+ "color7": "#f3ebe2",
+ "color8": "#1d366d",
+ "color9": "#ffffd4",
+ "color10": "#e3ffe3",
+ "color11": "#ffffda",
+ "color12": "#d3ffff",
+ "color13": "#b7eeff",
+ "color14": "#c6ffff",
+ "color15": "#fffff5"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_03_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_03_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..1a73a63
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_03_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/endofages_concept_03.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#401e10",
+ "foreground": "#fffff5",
+ "cursor": "#fffff5"
+ },
+ "colors": {
+ "color0": "#401e10",
+ "color1": "#DCC5AE",
+ "color2": "#ECCCB4",
+ "color3": "#E4B196",
+ "color4": "#F3DBC7",
+ "color5": "#DEB39C",
+ "color6": "#DED4C3",
+ "color7": "#f4ece2",
+ "color8": "#683019",
+ "color9": "#ffffc7",
+ "color10": "#fff6c3",
+ "color11": "#ffdeaa",
+ "color12": "#fffacc",
+ "color13": "#ffe1b2",
+ "color14": "#ffffd5",
+ "color15": "#fffff5"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_04_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_04_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..daf9006
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_04_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/endofages_concept_04.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#122546",
+ "foreground": "#fffffb",
+ "cursor": "#fffffb"
+ },
+ "colors": {
+ "color0": "#122546",
+ "color1": "#D0CFCA",
+ "color2": "#EDDCCB",
+ "color3": "#DDCEBD",
+ "color4": "#BAC3C6",
+ "color5": "#BCC1BE",
+ "color6": "#ACB8C3",
+ "color7": "#ecebe5",
+ "color8": "#1b396e",
+ "color9": "#ffffe1",
+ "color10": "#ffffd1",
+ "color11": "#ffffd1",
+ "color12": "#d8ffff",
+ "color13": "#dbfff2",
+ "color14": "#c7f0ff",
+ "color15": "#fffffb"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_05_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_05_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..0a799e4
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_05_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/endofages_concept_05.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#020101",
+ "foreground": "#fffff5",
+ "cursor": "#fffff5"
+ },
+ "colors": {
+ "color0": "#020101",
+ "color1": "#F4B6A9",
+ "color2": "#F4CAB8",
+ "color3": "#F3D6A1",
+ "color4": "#F4D9C8",
+ "color5": "#EB9F92",
+ "color6": "#DBD1C4",
+ "color7": "#f4ece3",
+ "color8": "#340101",
+ "color9": "#ffd0b7",
+ "color10": "#ffe6c1",
+ "color11": "#ffffb1",
+ "color12": "#fff3cc",
+ "color13": "#ffbda5",
+ "color14": "#ffffd7",
+ "color15": "#fffff5"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_07_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_07_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..5429191
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_07_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/endofages_concept_07.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#1f1e28",
+ "foreground": "#ffffed",
+ "cursor": "#ffffed"
+ },
+ "colors": {
+ "color0": "#1f1e28",
+ "color1": "#D5CDCB",
+ "color2": "#E9DACE",
+ "color3": "#D4C7BC",
+ "color4": "#e7e4e8",
+ "color5": "#B7B4C4",
+ "color6": "#C5BCC5",
+ "color7": "#FBECDA",
+ "color8": "#353344",
+ "color9": "#ffecdf",
+ "color10": "#fffad5",
+ "color11": "#fffbd6",
+ "color12": "#ffe3ff",
+ "color13": "#ded1ff",
+ "color14": "#ffdbff",
+ "color15": "#ffffed"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_11_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_11_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..2e27407
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_11_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/endofages_concept_11.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#31432d",
+ "foreground": "#fffff5",
+ "cursor": "#fffff5"
+ },
+ "colors": {
+ "color0": "#31432d",
+ "color1": "#DDD9BD",
+ "color2": "#CDD4B6",
+ "color3": "#A9C39B",
+ "color4": "#DAE1C4",
+ "color5": "#EFDBC8",
+ "color6": "#B6CAA7",
+ "color7": "#f4ece3",
+ "color8": "#466141",
+ "color9": "#ffffd1",
+ "color10": "#ffffd2",
+ "color11": "#d4ffb2",
+ "color12": "#ffffd4",
+ "color13": "#fffdce",
+ "color14": "#e9ffc1",
+ "color15": "#fffff5"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_20_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_20_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..50959c6
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_endofages_concept_20_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/endofages_concept_20.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#353e47",
+ "foreground": "#fffff5",
+ "cursor": "#fffff5"
+ },
+ "colors": {
+ "color0": "#353e47",
+ "color1": "#D1C4B5",
+ "color2": "#D2D5D0",
+ "color3": "#E2D1BA",
+ "color4": "#ECDDCE",
+ "color5": "#A5B9C4",
+ "color6": "#A9C9CF",
+ "color7": "#f4ede3",
+ "color8": "#4a5663",
+ "color9": "#ffffd2",
+ "color10": "#f9ffe2",
+ "color11": "#ffffcc",
+ "color12": "#ffffd4",
+ "color13": "#bff7ff",
+ "color14": "#c3ffff",
+ "color15": "#fffff5"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_f95d77bd3a51ff3f35d147b8da2d1b15e1601cd2e0b5b35dd05825bb0299f1ae_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_f95d77bd3a51ff3f35d147b8da2d1b15e1601cd2e0b5b35dd05825bb0299f1ae_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..54aebbe
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_f95d77bd3a51ff3f35d147b8da2d1b15e1601cd2e0b5b35dd05825bb0299f1ae_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/f95d77bd3a51ff3f35d147b8da2d1b15e1601cd2e0b5b35dd05825bb0299f1ae.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0c0301",
+ "foreground": "#ffffd8",
+ "cursor": "#ffffd8"
+ },
+ "colors": {
+ "color0": "#0c0301",
+ "color1": "#954B17",
+ "color2": "#788669",
+ "color3": "#BF8C46",
+ "color4": "#9F754A",
+ "color5": "#B58A50",
+ "color6": "#9A6730",
+ "color7": "#dec6a5",
+ "color8": "#3e0c01",
+ "color9": "#cd5f12",
+ "color10": "#9cbd79",
+ "color11": "#ffb849",
+ "color12": "#dd9851",
+ "color13": "#fcb557",
+ "color14": "#d58631",
+ "color15": "#ffffd8"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_flynn_png_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_flynn_png_dark_wal__1.1.0.json
new file mode 100644
index 0000000..df25c4c
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_flynn_png_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/flynn.png",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0d0d0d",
+ "foreground": "#e8ffff",
+ "cursor": "#e8ffff"
+ },
+ "colors": {
+ "color0": "#0d0d0d",
+ "color1": "#649199",
+ "color2": "#5C848B",
+ "color3": "#6B9CA4",
+ "color4": "#597A81",
+ "color5": "#77AEB7",
+ "color6": "#7DB9C4",
+ "color7": "#b7d6db",
+ "color8": "#262626",
+ "color9": "#71c7d7",
+ "color10": "#68b6c3",
+ "color11": "#79d7e6",
+ "color12": "#65a7b5",
+ "color13": "#87f0ff",
+ "color14": "#8dfeff",
+ "color15": "#e8ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image1_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image1_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..46c8f6b
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image1_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/image1.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#46141d",
+ "foreground": "#ebffff",
+ "cursor": "#ebffff"
+ },
+ "colors": {
+ "color0": "#46141d",
+ "color1": "#C3C4BC",
+ "color2": "#BEC1BC",
+ "color3": "#C1BCB2",
+ "color4": "#BCC2C3",
+ "color5": "#C1BEC0",
+ "color6": "#BABEC1",
+ "color7": "#d2e5f4",
+ "color8": "#6d1e2c",
+ "color9": "#ffffdb",
+ "color10": "#f2ffdb",
+ "color11": "#fffccf",
+ "color12": "#dbffff",
+ "color13": "#ffdeff",
+ "color14": "#d9faff",
+ "color15": "#ebffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image2_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image2_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..ac33359
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image2_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/image2.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#45131d",
+ "foreground": "#f3ffff",
+ "cursor": "#f3ffff"
+ },
+ "colors": {
+ "color0": "#45131d",
+ "color1": "#BBB8AF",
+ "color2": "#C2BBB1",
+ "color3": "#C09D9D",
+ "color4": "#C4C4BA",
+ "color5": "#B2A09A",
+ "color6": "#BFC1BA",
+ "color7": "#d3dee7",
+ "color8": "#6c1d2d",
+ "color9": "#fffacc",
+ "color10": "#fff7ce",
+ "color11": "#ffb5b5",
+ "color12": "#ffffd9",
+ "color13": "#fcc5b2",
+ "color14": "#ffffd9",
+ "color15": "#f3ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image3_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image3_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..d291b25
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image3_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/image3.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#471a24",
+ "foreground": "#fefffd",
+ "cursor": "#fefffd"
+ },
+ "colors": {
+ "color0": "#471a24",
+ "color1": "#BBB6B2",
+ "color2": "#BEC1BB",
+ "color3": "#C4B4B3",
+ "color4": "#C2C4BD",
+ "color5": "#C19C9F",
+ "color6": "#BCC1C6",
+ "color7": "#dcdedb",
+ "color8": "#6b2736",
+ "color9": "#ffe9cf",
+ "color10": "#f7ffda",
+ "color11": "#ffd4d0",
+ "color12": "#ffffdc",
+ "color13": "#ffb4bb",
+ "color14": "#dbfaff",
+ "color15": "#fefffd"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image4_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image4_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..2927b16
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image4_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/image4.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#05225A",
+ "foreground": "#fffffd",
+ "cursor": "#fffffd"
+ },
+ "colors": {
+ "color0": "#05225A",
+ "color1": "#C0C0BC",
+ "color2": "#B5BBC2",
+ "color3": "#C8C5BD",
+ "color4": "#8C9AAB",
+ "color5": "#AEB4B9",
+ "color6": "#98A6B4",
+ "color7": "#dedddb",
+ "color8": "#073389",
+ "color9": "#ffffdb",
+ "color10": "#d3f1ff",
+ "color11": "#ffffdc",
+ "color12": "#a1c6f2",
+ "color13": "#caecff",
+ "color14": "#b0d7ff",
+ "color15": "#fffffd"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image5_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image5_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..5cb9e5c
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_image5_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/image5.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#1b1f2e",
+ "foreground": "#fffffd",
+ "cursor": "#fffffd"
+ },
+ "colors": {
+ "color0": "#1b1f2e",
+ "color1": "#C9C6BC",
+ "color2": "#BAC3C6",
+ "color3": "#C1BEB5",
+ "color4": "#A5B7C3",
+ "color5": "#9CABB5",
+ "color6": "#79A0C1",
+ "color7": "#dfdfdc",
+ "color8": "#2d344d",
+ "color9": "#ffffdb",
+ "color10": "#d8ffff",
+ "color11": "#ffffd3",
+ "color12": "#bff2ff",
+ "color13": "#b4e2ff",
+ "color14": "#88d1ff",
+ "color15": "#fffffd"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_img_3276_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_img_3276_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..14ceb86
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_img_3276_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/img_3276.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#130f0d",
+ "foreground": "#fffff4",
+ "cursor": "#fffff4"
+ },
+ "colors": {
+ "color0": "#130f0d",
+ "color1": "#CBB9A8",
+ "color2": "#E0D5CB",
+ "color3": "#E0CCB2",
+ "color4": "#7A778B",
+ "color5": "#A7A29F",
+ "color6": "#BAC0C9",
+ "color7": "#f4eee0",
+ "color8": "#312621",
+ "color9": "#ffefc2",
+ "color10": "#fffdd9",
+ "color11": "#ffffc8",
+ "color12": "#928ac5",
+ "color13": "#eecdb9",
+ "color14": "#d8f4ff",
+ "color15": "#fffff4"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_in-the-distance-journey-thatgamecompany_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_in-the-distance-journey-thatgamecompany_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..884ad7f
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_in-the-distance-journey-thatgamecompany_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/in-the-distance-journey-thatgamecompany.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#422419",
+ "foreground": "#fffff9",
+ "cursor": "#fffff9"
+ },
+ "colors": {
+ "color0": "#422419",
+ "color1": "#D3AB8F",
+ "color2": "#E5C5A0",
+ "color3": "#D4AF91",
+ "color4": "#E6C9A6",
+ "color5": "#B59D8C",
+ "color6": "#EBDCCE",
+ "color7": "#ede8e3",
+ "color8": "#663726",
+ "color9": "#ffdaa2",
+ "color10": "#ffffb6",
+ "color11": "#ffe1a5",
+ "color12": "#ffffbc",
+ "color13": "#ffc8a1",
+ "color14": "#fffdd4",
+ "color15": "#fffff9"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_journey-2019_that-game-company_1920_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_journey-2019_that-game-company_1920_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..c9f81f8
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_journey-2019_that-game-company_1920_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/journey-2019_that-game-company_1920.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0D1A36",
+ "foreground": "#e5ffff",
+ "cursor": "#e5ffff"
+ },
+ "colors": {
+ "color0": "#0D1A36",
+ "color1": "#3E99C2",
+ "color2": "#4A7795",
+ "color3": "#4592B9",
+ "color4": "#3B88B1",
+ "color5": "#75C8E4",
+ "color6": "#58AED1",
+ "color7": "#c4e6ef",
+ "color8": "#162d5e",
+ "color9": "#3fcdff",
+ "color10": "#519dd0",
+ "color11": "#49c3ff",
+ "color12": "#3db5f5",
+ "color13": "#81ffff",
+ "color14": "#5feaff",
+ "color15": "#e5ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_journey-art1600_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_journey-art1600_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..0d640c0
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_journey-art1600_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/journey-art1600.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#45210b",
+ "foreground": "#fffff0",
+ "cursor": "#fffff0"
+ },
+ "colors": {
+ "color0": "#45210b",
+ "color1": "#F1C679",
+ "color2": "#FDD98D",
+ "color3": "#E5B46C",
+ "color4": "#FEE19B",
+ "color5": "#F7DEA3",
+ "color6": "#FEE8B1",
+ "color7": "#f6eedb",
+ "color8": "#703511",
+ "color9": "#ffff85",
+ "color10": "#ffff9d",
+ "color11": "#ffee76",
+ "color12": "#ffffa7",
+ "color13": "#ffffb1",
+ "color14": "#ffffb8",
+ "color15": "#fffff0"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mag_lev_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mag_lev_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..a313712
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mag_lev_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/mag_lev.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#020708",
+ "foreground": "#d7feff",
+ "cursor": "#d7feff"
+ },
+ "colors": {
+ "color0": "#020708",
+ "color1": "#897852",
+ "color2": "#75876F",
+ "color3": "#C9B773",
+ "color4": "#0E6198",
+ "color5": "#989870",
+ "color6": "#4B798C",
+ "color7": "#a2c0cc",
+ "color8": "#082c33",
+ "color9": "#c0a15c",
+ "color10": "#90bf80",
+ "color11": "#fff980",
+ "color12": "#0780d0",
+ "color13": "#d6d680",
+ "color14": "#53a3c3",
+ "color15": "#d7feff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mechanical_achenar_cache_alt_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mechanical_achenar_cache_alt_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..a37f935
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mechanical_achenar_cache_alt_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/mechanical_achenar_cache_alt.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0C0E0D",
+ "foreground": "#f8f3e4",
+ "cursor": "#f8f3e4"
+ },
+ "colors": {
+ "color0": "#0C0E0D",
+ "color1": "#554834",
+ "color2": "#275824",
+ "color3": "#49524D",
+ "color4": "#3B4744",
+ "color5": "#39433B",
+ "color6": "#5A6861",
+ "color7": "#bab6ab",
+ "color8": "#222926",
+ "color9": "#775f3a",
+ "color10": "#2b7a26",
+ "color11": "#547462",
+ "color12": "#44645c",
+ "color13": "#425f47",
+ "color14": "#68937e",
+ "color15": "#f8f3e4"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mechanical_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mechanical_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..ca45462
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mechanical_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/mechanical.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#1a1c19",
+ "foreground": "#fcffff",
+ "cursor": "#fcffff"
+ },
+ "colors": {
+ "color0": "#1a1c19",
+ "color1": "#9B9073",
+ "color2": "#BEBFA7",
+ "color3": "#C99A78",
+ "color4": "#B0CBCF",
+ "color5": "#9EA599",
+ "color6": "#97C1C8",
+ "color7": "#dfe3e4",
+ "color8": "#323630",
+ "color9": "#dac384",
+ "color10": "#ffffc1",
+ "color11": "#ffc487",
+ "color12": "#cbffff",
+ "color13": "#c9ebb2",
+ "color14": "#adffff",
+ "color15": "#fcffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mountain_in_the_sky-thatgamecompany-journey_art1600_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mountain_in_the_sky-thatgamecompany-journey_art1600_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..dc1f4d8
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_mountain_in_the_sky-thatgamecompany-journey_art1600_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/mountain_in_the_sky-thatgamecompany-journey_art1600.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#121d2d",
+ "foreground": "#f3ffff",
+ "cursor": "#f3ffff"
+ },
+ "colors": {
+ "color0": "#121d2d",
+ "color1": "#B6E1FA",
+ "color2": "#ADDAF5",
+ "color3": "#C4DCE9",
+ "color4": "#97C9E3",
+ "color5": "#AFC9D9",
+ "color6": "#8EC2DD",
+ "color7": "#ddeaf1",
+ "color8": "#1f3351",
+ "color9": "#bdffff",
+ "color10": "#b9ffff",
+ "color11": "#cfffff",
+ "color12": "#abffff",
+ "color13": "#caffff",
+ "color14": "#a1ffff",
+ "color15": "#f3ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_myst_island_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_myst_island_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..60ca7d3
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_myst_island_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/myst_island.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#1e1c13",
+ "foreground": "#fbffff",
+ "cursor": "#fbffff"
+ },
+ "colors": {
+ "color0": "#1e1c13",
+ "color1": "#B4C9D0",
+ "color2": "#637E86",
+ "color3": "#ACBCBD",
+ "color4": "#658894",
+ "color5": "#94A8AD",
+ "color6": "#668994",
+ "color7": "#e0e5e7",
+ "color8": "#3c3826",
+ "color9": "#d0ffff",
+ "color10": "#71abbd",
+ "color11": "#c8ffff",
+ "color12": "#73b8d0",
+ "color13": "#abe6f5",
+ "color14": "#74bad0",
+ "color15": "#fbffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_myst_screen_35_1920x1080_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_myst_screen_35_1920x1080_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..d8022db
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_myst_screen_35_1920x1080_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/myst_screen_35_1920x1080.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#1e1309",
+ "foreground": "#fff6f0",
+ "cursor": "#fff6f0"
+ },
+ "colors": {
+ "color0": "#1e1309",
+ "color1": "#B18773",
+ "color2": "#B99288",
+ "color3": "#C7946A",
+ "color4": "#CFA59A",
+ "color5": "#C99E93",
+ "color6": "#769789",
+ "color7": "#e2cec9",
+ "color8": "#452b13",
+ "color9": "#f9a882",
+ "color10": "#ffb19b",
+ "color11": "#ffbe75",
+ "color12": "#ffc8b0",
+ "color13": "#ffc0a8",
+ "color14": "#87d5b4",
+ "color15": "#fff6f0"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_myst_sunrise_pano_png_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_myst_sunrise_pano_png_dark_wal__1.1.0.json
new file mode 100644
index 0000000..d5ea7c5
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_myst_sunrise_pano_png_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/myst_sunrise_pano.png",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0b0b03",
+ "foreground": "#ffffd9",
+ "cursor": "#ffffd9"
+ },
+ "colors": {
+ "color0": "#0b0b03",
+ "color1": "#8C7745",
+ "color2": "#758800",
+ "color3": "#C29E5E",
+ "color4": "#9A9722",
+ "color5": "#BCA264",
+ "color6": "#B2965A",
+ "color7": "#dbc8a6",
+ "color8": "#34340b",
+ "color9": "#c3a04c",
+ "color10": "#97af01",
+ "color11": "#ffd267",
+ "color12": "#d4cf1f",
+ "color13": "#ffda6f",
+ "color14": "#f8c963",
+ "color15": "#ffffd9"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_prison_island_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_prison_island_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..65472fc
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_prison_island_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/prison_island.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0c0d0f",
+ "foreground": "#f7ffff",
+ "cursor": "#f7ffff"
+ },
+ "colors": {
+ "color0": "#0c0d0f",
+ "color1": "#4372A3",
+ "color2": "#216AA4",
+ "color3": "#9FA299",
+ "color4": "#0D52A3",
+ "color5": "#99B1CD",
+ "color6": "#548EBA",
+ "color7": "#d3dbe0",
+ "color8": "#22242b",
+ "color9": "#4893e2",
+ "color10": "#1d8be2",
+ "color11": "#d5e6b2",
+ "color12": "#0569df",
+ "color13": "#afe4ff",
+ "color14": "#5bbbff",
+ "color15": "#f7ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_rebel_hive_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_rebel_hive_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..3ffc80a
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_rebel_hive_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/rebel_hive.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0B0E0F",
+ "foreground": "#f9ffff",
+ "cursor": "#f9ffff"
+ },
+ "colors": {
+ "color0": "#0B0E0F",
+ "color1": "#9B7A51",
+ "color2": "#525B66",
+ "color3": "#686F75",
+ "color4": "#586570",
+ "color5": "#697685",
+ "color6": "#768795",
+ "color7": "#c0c5c9",
+ "color8": "#1f292c",
+ "color9": "#d8a059",
+ "color10": "#5e7590",
+ "color11": "#7891a6",
+ "color12": "#65849e",
+ "color13": "#7998bc",
+ "color14": "#88b1d2",
+ "color15": "#f9ffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_rms-olympic-at-southampton-xl_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_rms-olympic-at-southampton-xl_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..b7d9b1d
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_rms-olympic-at-southampton-xl_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/rms-olympic-at-southampton-xl.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0f2030",
+ "foreground": "#fffffc",
+ "cursor": "#fffffc"
+ },
+ "colors": {
+ "color0": "#0f2030",
+ "color1": "#C4BCB0",
+ "color2": "#B5C6CB",
+ "color3": "#D8CBB7",
+ "color4": "#ACB9C4",
+ "color5": "#AEB1B2",
+ "color6": "#96A8B0",
+ "color7": "#e0e1dd",
+ "color8": "#1a3956",
+ "color9": "#fff9cc",
+ "color10": "#d2ffff",
+ "color11": "#ffffd0",
+ "color12": "#c7f2ff",
+ "color13": "#cbf1fe",
+ "color14": "#ade2f9",
+ "color15": "#fffffc"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_selenitic_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_selenitic_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..c2b7143
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_selenitic_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/selenitic.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#151818",
+ "foreground": "#fcffff",
+ "cursor": "#fcffff"
+ },
+ "colors": {
+ "color0": "#151818",
+ "color1": "#73A3AB",
+ "color2": "#698F93",
+ "color3": "#96C6CB",
+ "color4": "#57878D",
+ "color5": "#8FA2A4",
+ "color6": "#79B2C2",
+ "color7": "#d5dada",
+ "color8": "#2c3232",
+ "color9": "#82e1f0",
+ "color10": "#78c7cf",
+ "color11": "#acffff",
+ "color12": "#62bbc6",
+ "color13": "#a6e2e9",
+ "color14": "#88f2ff",
+ "color15": "#fcffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_shadows-of-a-lost-civilization-journey-1920_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_shadows-of-a-lost-civilization-journey-1920_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..c0a99d2
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_shadows-of-a-lost-civilization-journey-1920_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/shadows-of-a-lost-civilization-journey-1920.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#522206",
+ "foreground": "#ffffe9",
+ "cursor": "#ffffe9"
+ },
+ "colors": {
+ "color0": "#522206",
+ "color1": "#D28C32",
+ "color2": "#E5B05E",
+ "color3": "#EBC35B",
+ "color4": "#F0C478",
+ "color5": "#E8BE83",
+ "color6": "#F3CE8C",
+ "color7": "#f3e9cd",
+ "color8": "#813508",
+ "color9": "#ffb830",
+ "color10": "#ffe965",
+ "color11": "#ffff61",
+ "color12": "#ffff84",
+ "color13": "#fffa92",
+ "color14": "#ffff9d",
+ "color15": "#ffffe9"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_stoneship_alt_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_stoneship_alt_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..77b27b5
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_stoneship_alt_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/stoneship_alt.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#090704",
+ "foreground": "#ffffda",
+ "cursor": "#ffffda"
+ },
+ "colors": {
+ "color0": "#090704",
+ "color1": "#9F6832",
+ "color2": "#738353",
+ "color3": "#FAD37B",
+ "color4": "#706945",
+ "color5": "#ECBF81",
+ "color6": "#CA984C",
+ "color7": "#f5e5b7",
+ "color8": "#2d2211",
+ "color9": "#dc8733",
+ "color10": "#9ab85e",
+ "color11": "#ffff87",
+ "color12": "#9d904d",
+ "color13": "#fffc8f",
+ "color14": "#ffc950",
+ "color15": "#ffffda"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_stoneship_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_stoneship_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..d87bdd9
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_stoneship_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/stoneship.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0b0a09",
+ "foreground": "#fffff3",
+ "cursor": "#fffff3"
+ },
+ "colors": {
+ "color0": "#0b0a09",
+ "color1": "#A87037",
+ "color2": "#7D816D",
+ "color3": "#D08A2C",
+ "color4": "#E0D8B9",
+ "color5": "#B4AC8E",
+ "color6": "#999070",
+ "color7": "#ebe6d7",
+ "color8": "#26231f",
+ "color9": "#e89138",
+ "color10": "#abb77e",
+ "color11": "#ffb528",
+ "color12": "#ffffcd",
+ "color13": "#feeba3",
+ "color14": "#d8c480",
+ "color15": "#fffff3"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_stoneship_lighthouse_alt_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_stoneship_lighthouse_alt_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..badfe01
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_stoneship_lighthouse_alt_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/stoneship_lighthouse_alt.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#080605",
+ "foreground": "#fffff4",
+ "cursor": "#fffff4"
+ },
+ "colors": {
+ "color0": "#080605",
+ "color1": "#8E6E53",
+ "color2": "#6F665D",
+ "color3": "#D8A465",
+ "color4": "#7F7F82",
+ "color5": "#A89E91",
+ "color6": "#968876",
+ "color7": "#dfd7cd",
+ "color8": "#271c17",
+ "color9": "#c78d5d",
+ "color10": "#9d846b",
+ "color11": "#ffd76e",
+ "color12": "#9494b9",
+ "color13": "#eed0a8",
+ "color14": "#d4b288",
+ "color15": "#fffff4"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_sunner_lagoon_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_sunner_lagoon_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..eb40255
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_sunner_lagoon_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/sunner_lagoon.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#090808",
+ "foreground": "#fffffc",
+ "cursor": "#fffffc"
+ },
+ "colors": {
+ "color0": "#090808",
+ "color1": "#9A916B",
+ "color2": "#587389",
+ "color3": "#C3CA67",
+ "color4": "#3B738B",
+ "color5": "#688693",
+ "color6": "#45889C",
+ "color7": "#c5c4c1",
+ "color8": "#231f1f",
+ "color9": "#d9c67a",
+ "color10": "#6396c0",
+ "color11": "#ffff72",
+ "color12": "#3f9ac1",
+ "color13": "#76b4cf",
+ "color14": "#4bb8d9",
+ "color15": "#fffffc"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_temple_dome_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_temple_dome_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..e2f7120
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_temple_dome_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/temple_dome.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#14130f",
+ "foreground": "#fcfffe",
+ "cursor": "#fcfffe"
+ },
+ "colors": {
+ "color0": "#14130f",
+ "color1": "#569DC5",
+ "color2": "#6590A2",
+ "color3": "#93A4A5",
+ "color4": "#237CAE",
+ "color5": "#95B3CC",
+ "color6": "#158FCE",
+ "color7": "#d8ddda",
+ "color8": "#302e24",
+ "color9": "#5dd1ff",
+ "color10": "#72c2e3",
+ "color11": "#aae7ea",
+ "color12": "#1fa5ef",
+ "color13": "#aaeaff",
+ "color14": "#0cbeff",
+ "color15": "#fcfffe"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_the-desert-tower-thatgamecompany-journey-art1600_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_the-desert-tower-thatgamecompany-journey-art1600_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..9628a5e
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_the-desert-tower-thatgamecompany-journey-art1600_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/the-desert-tower-thatgamecompany-journey-art1600.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#481e0a",
+ "foreground": "#fffff5",
+ "cursor": "#fffff5"
+ },
+ "colors": {
+ "color0": "#481e0a",
+ "color1": "#E3B88A",
+ "color2": "#E8C699",
+ "color3": "#DEB283",
+ "color4": "#FAE5B6",
+ "color5": "#E0B497",
+ "color6": "#EDD3AD",
+ "color7": "#ebe3da",
+ "color8": "#74300f",
+ "color9": "#ffef9b",
+ "color10": "#ffffad",
+ "color11": "#ffe893",
+ "color12": "#ffffbd",
+ "color13": "#ffe4ab",
+ "color14": "#ffffbd",
+ "color15": "#fffff5"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_tomahna-sky_auto_x2_colored_toned_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_tomahna-sky_auto_x2_colored_toned_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..3182773
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_tomahna-sky_auto_x2_colored_toned_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/tomahna-sky_auto_x2_colored_toned.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#060B05",
+ "foreground": "#f6fff4",
+ "cursor": "#f6fff4"
+ },
+ "colors": {
+ "color0": "#060B05",
+ "color1": "#976422",
+ "color2": "#61983E",
+ "color3": "#B7B154",
+ "color4": "#43708D",
+ "color5": "#9F6639",
+ "color6": "#60CAC3",
+ "color7": "#d5e6d3",
+ "color8": "#172e13",
+ "color9": "#d08320",
+ "color10": "#7bd342",
+ "color11": "#fff55b",
+ "color12": "#4994c4",
+ "color13": "#dc823c",
+ "color14": "#69ffff",
+ "color15": "#f6fff4"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_tomahna_auto_x2_colored_toned_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_tomahna_auto_x2_colored_toned_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..3373784
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_tomahna_auto_x2_colored_toned_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/tomahna_auto_x2_colored_toned.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#090E05",
+ "foreground": "#dfffff",
+ "cursor": "#dfffff"
+ },
+ "colors": {
+ "color0": "#090E05",
+ "color1": "#9D6627",
+ "color2": "#4DA145",
+ "color3": "#BABB55",
+ "color4": "#57694D",
+ "color5": "#96A026",
+ "color6": "#63951D",
+ "color7": "#aad2c9",
+ "color8": "#203410",
+ "color9": "#d88525",
+ "color10": "#57e04a",
+ "color11": "#ffff5c",
+ "color12": "#6d9458",
+ "color13": "#cddc24",
+ "color14": "#82cd1a",
+ "color15": "#dfffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_travelling-together-journey-thatgamecompany_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_travelling-together-journey-thatgamecompany_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..5b29a6e
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_travelling-together-journey-thatgamecompany_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/travelling-together-journey-thatgamecompany.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#412412",
+ "foreground": "#fffffb",
+ "cursor": "#fffffb"
+ },
+ "colors": {
+ "color0": "#412412",
+ "color1": "#B0CEAB",
+ "color2": "#A2CB9D",
+ "color3": "#D6B9A5",
+ "color4": "#BBD4C1",
+ "color5": "#D4CCB5",
+ "color6": "#95C595",
+ "color7": "#e5e6df",
+ "color8": "#68391c",
+ "color9": "#d3ffc5",
+ "color10": "#c0ffb4",
+ "color11": "#ffebbd",
+ "color12": "#d5ffe9",
+ "color13": "#ffffd1",
+ "color14": "#abffab",
+ "color15": "#fffffb"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_uss-macon-airship-1600x928_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_uss-macon-airship-1600x928_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..5bdcadc
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_uss-macon-airship-1600x928_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/uss-macon-airship-1600x928.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#131218",
+ "foreground": "#feffff",
+ "cursor": "#feffff"
+ },
+ "colors": {
+ "color0": "#131218",
+ "color1": "#f6f6f6",
+ "color2": "#FDFEFC",
+ "color3": "#CBD0D5",
+ "color4": "#D9DEE4",
+ "color5": "#C0C0C5",
+ "color6": "#B3B9C5",
+ "color7": "#FDFEFE",
+ "color8": "#292734",
+ "color9": "#ffe5e5",
+ "color10": "#ffffe4",
+ "color11": "#dffeff",
+ "color12": "#dffcff",
+ "color13": "#e0e0ff",
+ "color14": "#d0e8ff",
+ "color15": "#feffff"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_wallpaper-realmyst---masterpiece-edition_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_wallpaper-realmyst---masterpiece-edition_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..45d7142
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_wallpaper-realmyst---masterpiece-edition_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/wallpaper-realmyst---masterpiece-edition.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#090a0d",
+ "foreground": "#ffffd2",
+ "cursor": "#ffffd2"
+ },
+ "colors": {
+ "color0": "#090a0d",
+ "color1": "#C27D33",
+ "color2": "#6D5644",
+ "color3": "#A1683C",
+ "color4": "#3D3E41",
+ "color5": "#976C48",
+ "color6": "#895A39",
+ "color7": "#dcc5a0",
+ "color8": "#1d202b",
+ "color9": "#ffa332",
+ "color10": "#996e4c",
+ "color11": "#df853f",
+ "color12": "#474c5c",
+ "color13": "#d28b4f",
+ "color14": "#be723d",
+ "color15": "#ffffd2"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_world-myth-journey-art1600_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_world-myth-journey-art1600_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..29fbfff
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_world-myth-journey-art1600_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/world-myth-journey-art1600.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#020101",
+ "foreground": "#ffffda",
+ "cursor": "#ffffda"
+ },
+ "colors": {
+ "color0": "#020101",
+ "color1": "#845B35",
+ "color2": "#6D5F4E",
+ "color3": "#AE8755",
+ "color4": "#84653D",
+ "color5": "#9E7C51",
+ "color6": "#917046",
+ "color7": "#ddc6a7",
+ "color8": "#340101",
+ "color9": "#b77538",
+ "color10": "#997c59",
+ "color11": "#f3b15d",
+ "color12": "#b88442",
+ "color13": "#dca359",
+ "color14": "#ca934d",
+ "color15": "#ffffda"
+ }
+}
diff --git a/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_worthpoint-illustration-james-flood_jpg_dark_wal__1.1.0.json b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_worthpoint-illustration-james-flood_jpg_dark_wal__1.1.0.json
new file mode 100644
index 0000000..f70e20d
--- /dev/null
+++ b/.config/wpg/schemes/_home_atc__config_wpg_wallpapers_worthpoint-illustration-james-flood_jpg_dark_wal__1.1.0.json
@@ -0,0 +1,28 @@
+{
+ "wallpaper": "/home/atc/.config/wpg/wallpapers/worthpoint-illustration-james-flood.jpg",
+ "alpha": "90",
+
+ "special": {
+ "background": "#0c0c09",
+ "foreground": "#fcffff",
+ "cursor": "#fcffff"
+ },
+ "colors": {
+ "color0": "#0c0c09",
+ "color1": "#B4C7E4",
+ "color2": "#B8C6DA",
+ "color3": "#CEC5AB",
+ "color4": "#A4B7D4",
+ "color5": "#9BA0A6",
+ "color6": "#7193C7",
+ "color7": "#dbdee0",
+ "color8": "#28281e",
+ "color9": "#c7f3ff",
+ "color10": "#d0f6ff",
+ "color11": "#ffffc5",
+ "color12": "#bce8ff",
+ "color13": "#b4ceec",
+ "color14": "#7ebaff",
+ "color15": "#fcffff"
+ }
+}
diff --git a/.config/wpg/sequences b/.config/wpg/sequences
new file mode 100644
index 0000000..ecae36a
--- /dev/null
+++ b/.config/wpg/sequences
@@ -0,0 +1 @@
+]4;0;#0c0c09\]4;1;#B4C7E4\]4;2;#B8C6DA\]4;3;#CEC5AB\]4;4;#A4B7D4\]4;5;#9BA0A6\]4;6;#7193C7\]4;7;#dbdee0\]4;8;#28281e\]4;9;#c7f3ff\]4;10;#d0f6ff\]4;11;#ffffc5\]4;12;#bce8ff\]4;13;#b4ceec\]4;14;#7ebaff\]4;15;#fcffff\]10;#fcffff\]11;[90]#0c0c09\]12;#fcffff\]13;#fcffff\]17;#fcffff\]19;#0c0c09\]4;232;#0c0c09\]4;256;#fcffff\]708;[90]#0c0c09\ \ No newline at end of file
diff --git a/.config/wpg/templates/dunstrc b/.config/wpg/templates/dunstrc
new file mode 120000
index 0000000..d346c86
--- /dev/null
+++ b/.config/wpg/templates/dunstrc
@@ -0,0 +1 @@
+/home/atc/.config/dunst/dunstrc \ No newline at end of file
diff --git a/.config/wpg/templates/dunstrc.base b/.config/wpg/templates/dunstrc.base
new file mode 100644
index 0000000..ce7e684
--- /dev/null
+++ b/.config/wpg/templates/dunstrc.base
@@ -0,0 +1,92 @@
+[colors]
+ background = "{color8}"
+ foreground = "{color15}"
+
+[global]
+ ### Display ###
+
+ monitor = 0
+ follow = mouse
+
+ geometry = "540x5-10+32"
+ indicate_hidden = yes
+ shrink = yes
+ transparency = 0
+ notification_height = 0
+ separator_height = 3
+ padding = 12
+ horizontal_padding = 12
+ frame_width = 3
+
+ frame_color = "{active}"
+ separator_color = auto
+ sort = yes
+ idle_threshold = 120
+
+ ### Text ###
+ font = sans-serif 12
+ line_height = 0
+
+ markup = full
+
+ # The format of the message. Possible variables are:
+ # %a appname
+ # %s summary
+ # %b body
+ # %i iconname (including its path)
+ # %I iconname (without its path)
+ # %p progress value if set ([ 0%] to [100%]) or nothing
+ # %n progress value if set without any extra characters
+ # %% Literal %
+ # Markup is allowed
+ format = "<b>%s </b>\n%b"
+ alignment = left
+ show_age_threshold = 60
+ word_wrap = yes
+ ellipsize = middle
+ ignore_newline = no
+ stack_duplicates = true
+ hide_duplicate_count = false
+ show_indicators = yes
+
+ ### Icons ###
+ icon_position = left
+ max_icon_size = 64
+ icon_path = .icons/flattrcolor/status/24:.icons/flattrcolor/devices/48:.icons/flattrcolor/apps/scalable:.icons/flattrcolor/actions/scalable
+
+ ### History ###
+ sticky_history = yes
+ history_length = 20
+
+ ### Misc/Advanced ###
+ dmenu = /usr/bin/rofi -show run -p dunst:
+ browser = /usr/bin/google-chrome-stable
+ always_run_script = true
+ title = Dunst
+ class = Dunst
+ startup_notification = false
+ force_xinerama = false
+
+[experimental]
+ per_monitor_dpi = false
+
+[shortcuts]
+ close = ctrl+space
+ close_all = ctrl+shift+space
+ context = ctrl+shift+period
+
+[urgency_low]
+ background = colors.background
+ foreground = colors.foreground
+ timeout = 10
+
+[urgency_normal]
+ background = colors.background
+ foreground = colors.foreground
+ timeout = 10
+
+[urgency_critical]
+ background = colors.background
+ foreground = colors.foreground
+ frame_color = "{color9}"
+ timeout = 0
diff --git a/.config/wpg/templates/gtk2 b/.config/wpg/templates/gtk2
new file mode 120000
index 0000000..dfc5d52
--- /dev/null
+++ b/.config/wpg/templates/gtk2
@@ -0,0 +1 @@
+/home/atc/.local/share/themes/FlatColor/gtk-2.0/gtkrc \ No newline at end of file
diff --git a/.config/wpg/templates/gtk2.base b/.config/wpg/templates/gtk2.base
new file mode 100644
index 0000000..f0a9029
--- /dev/null
+++ b/.config/wpg/templates/gtk2.base
@@ -0,0 +1,797 @@
+#modded Numix gtkrc
+
+gtk-color-scheme = "bg_color:{color0}
+color0:{color0}
+color1:{color1}
+color2:{color2}
+color3:{color3}
+color4:{color4}
+color5:{color5}
+color6:{color6}
+color7:{color7}
+color8:{color8}
+color9:{color9}
+color10:{color10}
+color11:{color11}
+color12:{color12}
+color13:{color13}
+color14:{color14}
+color15:{color15}
+text_color:{color15}
+selected_bg_color:{active}
+selected_fg_color:{color15}
+tooltip_bg_color:{color0}
+tooltip_fg_color:{color15}
+titlebar_bg_color:{color0}
+titlebar_fg_color:{color15}
+menu_bg_color:{color0}
+menu_fg_color:{color15}
+link_color:{active}"
+gtk-auto-mnemonics = 1
+
+# Default Style
+# DO --NOT-- CHANGE ACTIVE
+# IT's THE COLOR THAT WPGTK REPLACES
+# FEEL FREE TO MODIFY EVERYTHING ELSE IN gtkrc.base
+
+style "murrine-default" {{
+ GtkArrow::arrow-scaling= 0.6
+
+ GtkButton::child-displacement-x = 0
+ GtkButton::child-displacement-y = 0
+
+ GtkButton::default-border = {{ 0, 0, 0, 0 }}
+
+ GtkButtonBox::child-min-height = 26
+
+ GtkCheckButton::indicator-size = 16
+
+ # The following line hints to gecko (and possibly other appliations)
+ # that the entry should be drawn transparently on the canvas.
+ # Without this, gecko will fill in the background of the entry.
+ GtkEntry::honors-transparent-bg-hint = 1
+ GtkEntry::state-hint = 0
+
+ GtkExpander::expander-size = 16
+
+ GtkImage::x-ayatana-indicator-dynamic = 1
+
+ GtkMenu::horizontal-padding = 0
+ GtkMenu::vertical-padding = 0
+
+ GtkMenuBar::internal-padding = 0
+ GtkMenuBar::window-dragging = 1
+
+ GtkMenuItem::arrow-scaling= 0.5
+
+ GtkPaned::handle-size = 1
+
+ GtkProgressBar::min-horizontal-bar-height = 12
+ GtkProgressBar::min-vertical-bar-width = 12
+
+ GtkRange::trough-border = 0
+ GtkRange::slider-width = 8
+ GtkRange::stepper-size = 12
+ GtkRange::stepper_spacing = 0
+ GtkRange::trough-under-steppers = 1
+
+ GtkScale::slider-length = 16
+ GtkScale::slider-width = 16
+ GtkScale::trough-side-details = 1
+
+ GtkScrollbar::activate-slider = 1
+ GtkScrollbar::has-backward-stepper = 0
+ GtkScrollbar::has-forward-stepper = 0
+ GtkScrollbar::has-secondary-backward-stepper = 0
+ GtkScrollbar::has-secondary-forward-stepper = 0
+ GtkScrollbar::min-slider-length = 80
+ GtkScrollbar::slider-width = 8
+ GtkScrollbar::trough-border = 0
+
+ GtkScrolledWindow::scrollbar-spacing = 0
+ GtkScrolledWindow::scrollbars-within-bevel = 1
+
+ GtkSeparatorMenuItem::horizontal-padding = 0
+
+ GtkToolbar::internal-padding = 0
+
+ GtkTreeView::expander-size = 11
+ GtkTreeView::vertical-separator = 0
+
+ GtkWidget::focus-line-width = 1
+ # The following line prevents the Firefox tabs
+ # from jumping a few pixels when you create a new tab
+ GtkWidget::focus-padding = 0
+
+ GtkWidget::wide-separators = 1
+ GtkWidget::separator-width = 1
+ GtkWidget::separator-height = 1
+
+ GtkWindow::resize-grip-height = 0
+ GtkWindow::resize-grip-width = 0
+
+ WnckTasklist::fade-overlay-rect = 0
+
+ GnomeHRef::link_color = @link_color
+ GtkHTML::link-color = @link_color
+ GtkIMHtmlr::hyperlink-color = @link_color
+ GtkIMHtml::hyperlink-color = @link_color
+ GtkWidget::link-color = @link_color
+ GtkWidget::visited-link-color = @text_color
+
+ GtkToolbar::shadow-type = GTK_SHADOW_NONE # Makes toolbars flat and unified
+ GtkMenuBar::shadow-type = GTK_SHADOW_NONE # Makes menubars flat and unified
+
+ xthickness = 1
+ ythickness = 1
+
+ fg[NORMAL] = @text_color
+ fg[PRELIGHT] = @text_color
+ fg[SELECTED] = @selected_fg_color
+ fg[ACTIVE] = @text_color
+ fg[INSENSITIVE] = mix (0.5, @bg_color, @text_color)
+
+ bg[NORMAL] = @bg_color
+ bg[PRELIGHT] = shade (1.02, @bg_color)
+ bg[SELECTED] = @selected_bg_color
+ bg[ACTIVE] = @bg_color
+ bg[INSENSITIVE] = @bg_color
+
+ base[NORMAL] = shade(0.85, @color0)
+ base[PRELIGHT] = shade (0.85, @color0)
+ base[SELECTED] = @selected_bg_color
+ base[ACTIVE] = @selected_bg_color
+ base[INSENSITIVE] = shade (0.85, @bg_color)
+
+ text[NORMAL] = @text_color
+ text[PRELIGHT] = @text_color
+ text[SELECTED] = @selected_fg_color
+ text[ACTIVE] = @selected_fg_color
+ text[INSENSITIVE] = mix (0.5, @bg_color, @text_color)
+
+ engine "murrine" {{
+ animation = FALSE
+ arrowstyle = 1 # 0 = normal arrows, 1 = filled arrows
+ border_shades = {{ 1.0, 1.0 }} # gradient to draw on border
+ colorize_scrollbar = TRUE
+ comboboxstyle = 0 # 0 = normal combobox, 1 = colorized combobox below arrow
+ contrast = 0.0 # overal contrast with borders
+ focusstyle = 1 # 0 = none, 1 = grey dotted, 2 = colored with fill, 3 = colored glow
+ glazestyle = 0 # 0 = flat highlight, 1 = curved highlight, 2 = concave, 3 = top curved highlight, 4 = beryl highlight
+ glowstyle = 0 # 0 = glow on top, 1 = glow on bottom, 2 = glow on top and bottom, 3 = glow on middle vertically, 4 = glow on middle horizontally, 5 = glow on all sides
+ glow_shade = 1.0 # amount of glow
+ gradient_shades = {{ 1.0, 1.0, 1.0, 1.0 }} # gradient to draw on widgets
+ highlight_shade = 1.0 # amount of highlight
+ lightborder_shade = 1.0 # amount of inset light border
+ lightborderstyle = 1 # 0 = lightborder on top side, 1 = lightborder on all sides
+ listviewheaderstyle = 0 # 0 = flat, 1 = glassy, 2 = raised
+ listviewstyle = 0 # 0 = none, 1 = dotted, 2 = line
+ menubaritemstyle = 0 # 0 = menuitem look, 1 = button look
+ menubarstyle = 0 # 0 = flat, 1 = glassy, 2 = gradient, 3 = striped
+ menuitemstyle = 0 # 0 = flat, 1 = glassy, 2 = striped
+ menustyle = 0 # 0 = none, 1 = vertical striped
+ progressbarstyle = 0 # 0 = none, 1 = diagonal striped, 2 = vertical striped
+ reliefstyle = 0 # 0 = flat, 1 = inset, 2 = shadow, 3 = shadow with gradient, 4 = stronger shadow with gradient
+ roundness = 0 # roundness of widgets
+ scrollbarstyle = 0 # 0 = none, 1 = circles, 2 = handles, 3 = diagonal stripes, 4 = diagonal stripes and handles, 5 = horizontal stripes, 6 = horizontal stripes and handles
+ sliderstyle = 0 # 0 = none, 1 = handles
+ stepperstyle = 1 # 0 = standard, 1 = integrated stepper handles
+ toolbarstyle = 0 # 0 = flat, 1 = glassy, 2 = gradient
+ }}
+}}
+
+style "murrine-wide" {{
+ xthickness = 2
+ ythickness = 2
+}}
+
+style "murrine-wider" {{
+ xthickness = 3
+ ythickness = 3
+}}
+
+style "murrine-thin" {{
+ xthickness = 0
+ ythickness = 0
+}}
+
+# Notebook
+
+style "murrine-notebook-bg" {{
+ bg[NORMAL] = @bg_color
+ bg[ACTIVE] = shade (0.70, @bg_color)
+}}
+
+style "murrine-notebook" = "murrine-notebook-bg" {{
+ xthickness = 2
+ ythickness = 2
+
+ engine "murrine" {{
+ roundness = 0
+ }}
+}}
+
+# Various Standard Widgets
+
+style "murrine-button" = "murrine-wider" {{
+ bg[NORMAL] = shade (1.3, @bg_color)
+ bg[PRELIGHT] = shade (0.80, @selected_bg_color)
+ bg[ACTIVE] = shade (1.00, @selected_bg_color)
+ bg[INSENSITIVE] = shade (0.85, @bg_color)
+
+ engine "murrine" {{
+ }}
+}}
+
+style "murrine-scrollbar" {{
+ bg[NORMAL] = @bg_color
+ bg[PRELIGHT] = mix (0.31, @text_color, @bg_color)
+ bg[ACTIVE] = @selected_bg_color
+
+ engine "murrine" {{
+ roundness = 0
+ contrast = 0.0
+ border_shades = {{ 0.9, 0.9 }}
+ trough_shades = {{ 0.97, 0.97 }}
+ trough_border_shades = {{ 1.0, 1.0 }}
+ }}
+}}
+
+style "murrine-overlay-scrollbar" {{
+ bg[ACTIVE] = shade (0.8, @bg_color)
+ bg[INSENSITIVE] = shade (0.97, @bg_color)
+
+ base[SELECTED] = shade (0.6, @bg_color)
+ base[INSENSITIVE] = shade (0.85, @bg_color)
+}}
+
+style "murrine-scale" = "murrine-thin" {{
+ bg[NORMAL] = @bg_color
+ bg[ACTIVE] = @bg_color
+ bg[SELECTED] = @selected_bg_color
+ bg[INSENSITIVE] = shade (0.95, @bg_color)
+
+ engine "murrine" {{
+ roundness = 8
+ gradient_shades = {{ 1.08, 1.08, 1.08, 1.08 }}
+ border_shades = {{ 1.0, 1.0 }}
+ trough_shades = {{ 1.08, 1.08 }}
+ trough_border_shades = {{ 0.8, 0.8 }}
+ }}
+}}
+
+style "murrine-progressbar" = "murrine-thin" {{
+ bg[NORMAL] = @bg_color
+ bg[ACTIVE] = shade(0.60, @bg_color)
+
+ fg[PRELIGHT] = @selected_fg_color
+
+ engine "murrine" {{
+ roundness = 0
+ border_shades = {{ 1.2, 1.2 }}
+ trough_border_shades = {{ 0.8, 0.8 }}
+ }}
+}}
+
+style "murrine-treeview-header" = "murrine-button" {{
+ engine "murrine" {{
+ roundness = 0
+ }}
+}}
+
+style "murrine-treeview" {{
+ engine "murrine" {{
+ roundness = 0
+ }}
+}}
+
+style "murrine-frame-title" {{
+ fg[NORMAL] = lighter (@text_color)
+}}
+
+style "murrine-tooltips" {{
+ xthickness = 5
+ ythickness = 5
+
+ bg[NORMAL] = @tooltip_bg_color
+ bg[SELECTED] = @tooltip_bg_color
+
+ fg[NORMAL] = @text_color
+
+ engine "murrine" {{
+ textstyle = 0
+ roundness = 0
+ rgba = FALSE
+ }}
+}}
+
+style "murrine-spinbutton" = "murrine-button" {{
+ engine "murrine" {{
+ }}
+}}
+
+style "murrine-radiocheck" = "murrine-default" {{
+ bg[SELECTED] = @bg_color
+
+ text[NORMAL] = @selected_bg_color
+ text[PRELIGHT] = @selected_bg_color
+}}
+
+style "murrine-entry" = "murrine-wider" {{
+ bg[SELECTED] = @selected_bg_color
+
+ engine "murrine" {{
+ border_shades = {{ 1.15, 1.15 }}
+ }}
+}}
+
+style "metacity-frame" = "murrine-default" {{
+ bg[SELECTED] = @selected_bg_color
+}}
+
+style "murrine-statusbar" {{
+ bg[NORMAL] = @bg_color
+}}
+style "murrine-comboboxentry" = "murrine-entry" {{ }}
+style "murrine-hscale" = "murrine-scale" {{ }}
+style "murrine-vscale" = "murrine-scale" {{ }}
+style "murrine-hscrollbar" = "murrine-scrollbar" {{ }}
+style "murrine-vscrollbar" = "murrine-scrollbar" {{ }}
+
+# Menus
+
+style "murrine-menu" = "murrine-thin" {{
+ bg[NORMAL] = shade(0.8, @menu_bg_color)
+ bg[PRELIGHT] = @selected_bg_color
+ bg[SELECTED] = @selected_bg_color
+ bg[ACTIVE] = @menu_bg_color
+ bg[INSENSITIVE] = @menu_bg_color
+
+ fg[NORMAL] = @menu_fg_color
+ fg[PRELIGHT] = @selected_fg_color
+ fg[SELECTED] = @selected_fg_color
+ fg[ACTIVE] = @selected_fg_color
+ fg[INSENSITIVE] = mix (0.5, @menu_bg_color, @menu_fg_color)
+
+ text[NORMAL] = @menu_fg_color
+ text[PRELIGHT] = @selected_fg_color
+ text[SELECTED] = @selected_fg_color
+ text[ACTIVE] = @selected_fg_color
+ text[INSENSITIVE] = mix (0.5, @menu_bg_color, @menu_fg_color)
+
+ engine "murrine" {{
+ roundness = 0
+ }}
+}}
+
+style "murrine-menu-item" = "murrine-wider" {{
+ bg[PRELIGHT] = @selected_bg_color
+ bg[SELECTED] = @selected_bg_color
+ bg[ACTIVE] = @selected_bg_color
+
+ fg[NORMAL] = @menu_fg_color # Fix for XFCE menu text
+ fg[PRELIGHT] = @selected_fg_color
+ fg[SELECTED] = @selected_fg_color
+ fg[ACTIVE] = @selected_fg_color
+ fg[INSENSITIVE] = mix (0.5, @menu_bg_color, @menu_fg_color)
+
+ engine "murrine" {{
+ textstyle = 0
+ border_shades = {{ 1.2, 1.2 }}
+ }}
+}}
+
+style "murrine-separator-menu-item" = "murrine-thin" {{ }}
+
+style "murrine-menubar" {{
+ bg[NORMAL] = @bg_color
+ bg[PRELIGHT] = mix (0.21, @text_color, @bg_color)
+ bg[SELECTED] = mix (0.21, @text_color, @bg_color)
+ bg[ACTIVE] = shade (0.9, @bg_color)
+ bg[INSENSITIVE] = @bg_color
+
+ fg[NORMAL] = @text_color
+ fg[PRELIGHT] = shade (1.08, @text_color)
+ fg[SELECTED] = shade (1.08, @text_color)
+ fg[ACTIVE] = @text_color
+ fg[INSENSITIVE] = mix (0.5, @bg_color, @text_color)
+
+ engine "murrine" {{
+ roundness = 0
+ }}
+}}
+
+style "murrine-menubaritem" {{
+ bg[NORMAL] = @bg_color
+ bg[PRELIGHT] = @selected_bg_color
+ bg[SELECTED] = @selected_bg_color
+ bg[ACTIVE] = shade (0.9, @bg_color)
+ bg[INSENSITIVE] = @bg_color
+
+ fg[NORMAL] = @text_color
+ fg[PRELIGHT] = shade (1.08, @text_color)
+ fg[SELECTED] = shade (1.08, @text_color)
+ fg[ACTIVE] = @text_color
+ fg[INSENSITIVE] = mix (0.5, @bg_color, @text_color)
+
+ engine "murrine" {{
+ roundness = 0
+ }}
+}}
+
+# Toolbars
+
+style "murrine-toolbar" = "murrine-thin" {{
+ bg[NORMAL] = @bg_color
+ bg[PRELIGHT] = shade (1.02, @bg_color)
+ bg[SELECTED] = @selected_bg_color
+ bg[ACTIVE] = shade (0.9, @bg_color)
+ bg[INSENSITIVE] = @bg_color
+
+ fg[NORMAL] = @text_color
+ fg[PRELIGHT] = @text_color
+ fg[SELECTED] = @selected_fg_color
+ fg[ACTIVE] = @text_color
+ fg[INSENSITIVE] = mix (0.5, @bg_color, @text_color)
+
+ engine "murrine" {{
+ }}
+}}
+
+style "murrine-toolbutton" = "murrine-button" {{
+ bg[NORMAL] = shade (1.08, @bg_color)
+ bg[PRELIGHT] = shade (1.10, @bg_color)
+ bg[SELECTED] = @selected_bg_color
+ bg[ACTIVE] = shade (0.95, @bg_color)
+ bg[INSENSITIVE] = shade (0.85, @bg_color)
+
+ fg[NORMAL] = @text_color
+ fg[PRELIGHT] = @text_color
+ fg[SELECTED] = @selected_fg_color
+ fg[ACTIVE] = @text_color
+ fg[INSENSITIVE] = mix (0.5, @bg_color, @text_color)
+
+ engine "murrine" {{
+ }}
+}}
+
+class "GtkToolbar" style "murrine-toolbar"
+class "GtkHandleBox" style "murrine-toolbar"
+widget_class "*Toolbar*.*Separator*" style "murrine-toolbar"
+
+# Panels
+
+style "murrine-panel" = "murrine-thin" {{
+ xthickness = 2
+
+ bg[NORMAL] = @menu_bg_color
+ bg[PRELIGHT] = shade(0.8, @selected_bg_color)
+ bg[SELECTED] = @selected_bg_color
+ bg[ACTIVE] = @selected_bg_color
+ bg[INSENSITIVE] = @menu_bg_color
+
+ fg[NORMAL] = @text_color
+ fg[PRELIGHT] = @text_color
+ fg[SELECTED] = @text_color
+ fg[ACTIVE] = @text_color
+ fg[INSENSITIVE] = shade(0.8, @text_color)
+
+ base[NORMAL] = @menu_bg_color
+ base[PRELIGHT] = mix (0.21, @text_color, @menu_bg_color)
+ base[SELECTED] = @selected_bg_color
+ base[ACTIVE] = @selected_bg_color
+ base[INSENSITIVE] = @menu_bg_color
+
+ text[NORMAL] = @text_color
+ text[PRELIGHT] = shade (1.08, @text_color)
+ text[SELECTED] = shade (1.08, @text_color)
+ text[ACTIVE] = @text_color
+ text[INSENSITIVE] = mix (0.5, @menu_bg_color, @text_color)
+
+ engine "murrine" {{
+ roundness = 0
+ contrast = 0.0
+ }}
+}}
+
+widget "*PanelWidget*" style "murrine-panel"
+widget "*PanelApplet*" style "murrine-panel"
+widget "*fast-user-switch*" style "murrine-panel"
+widget "*CPUFreq*Applet*" style "murrine-panel"
+widget "*indicator-applet*" style "murrine-panel"
+class "PanelApp*" style "murrine-panel"
+class "PanelToplevel*" style "murrine-panel"
+widget_class "*PanelToplevel*" style "murrine-panel"
+widget_class "*notif*" style "murrine-panel"
+widget_class "*Notif*" style "murrine-panel"
+widget_class "*Tray*" style "murrine-panel"
+widget_class "*tray*" style "murrine-panel"
+widget_class "*computertemp*" style "murrine-panel"
+widget_class "*Applet*Tomboy*" style "murrine-panel"
+widget_class "*Applet*Netstatus*" style "murrine-panel"
+widget "*gdm-user-switch-menubar*" style "murrine-panel"
+
+style "bold-panel-item" {{
+ font_name = "Bold"
+
+ engine "murrine" {{
+ roundness = 0
+ }}
+}}
+
+widget "*Panel*MenuBar*" style "bold-panel-item"
+widget "*gimmie*" style "bold-panel-item"
+
+# widget_class "*Mail*" style "murrine-panel" # Disabled to fix Evolution bug
+# class "*Panel*" style "murrine-panel" # Disabled to fix bug
+
+# XFCE Styles
+
+style "workspace-switcher" = "murrine-panel" {{
+ bg[SELECTED] = @selected_bg_color
+}}
+
+style "xfce-header" {{
+ bg[NORMAL] = shade (0.9, @bg_color)
+ base[NORMAL] = shade (1.18, @bg_color)
+}}
+
+style "xfdesktop-windowlist" {{
+ bg[NORMAL] = @bg_color
+ fg[INSENSITIVE] = shade (0.95, @bg_color)
+ text[INSENSITIVE] = shade (0.95, @bg_color)
+}}
+
+style "xfdesktop-icon-view" {{
+ XfdesktopIconView::label-alpha = 0
+ XfdesktopIconView::selected-label-alpha = 60
+ XfdesktopIconVIew::ellipsize-icon-labels = 1
+
+ base[NORMAL] = @selected_bg_color
+ base[SELECTED] = @selected_bg_color
+ base[ACTIVE] = @selected_bg_color
+
+ fg[NORMAL] = @selected_fg_color
+ fg[SELECTED] = @selected_fg_color
+ fg[ACTIVE] = @selected_fg_color
+
+ engine "murrine" {{
+ textstyle = 5
+ text_shade = 0.05
+ }}
+}}
+
+style "xfwm-tabwin" {{
+ Xfwm4TabwinWidget::border-width = 0
+ Xfwm4TabwinWidget::icon-size = 64
+
+ bg[NORMAL] = @menu_bg_color
+ fg[NORMAL] = @menu_fg_color
+
+ engine "murrine" {{
+ focusstyle = 0
+ }}
+}}
+
+style "xfsm-logout" {{
+ bg[NORMAL] = @menu_bg_color
+ bg[ACTIVE] = @menu_bg_color
+ bg[PRELIGHT] = shade (1.1, @menu_bg_color)
+ bg[SELECTED] = shade (0.5, @menu_bg_color)
+ bg[INSENSITIVE] = shade (1.3, @menu_bg_color)
+
+ fg[NORMAL] = @menu_fg_color
+ fg[PRELIGHT] = @menu_fg_color
+
+ text[NORMAL] = @menu_fg_color
+
+ engine "murrine" {{
+ }}
+}}
+
+style "xfsm-logout-button" {{
+ bg[NORMAL] = shade (1.2, @menu_bg_color)
+ bg[PRELIGHT] = shade (1.4, @menu_bg_color)
+
+ engine "murrine" {{
+ }}
+}}
+
+widget "*WnckPager*" style "workspace-switcher"
+
+widget "*Xfce*Panel*" style "murrine-panel"
+class "*Xfce*Panel*" style "murrine-panel"
+
+# Thunar Styles
+
+style "sidepane" {{
+ base[NORMAL] = @bg_color
+ base[INSENSITIVE] = shade(0.90, @bg_color)
+ bg[NORMAL] = @bg_color
+ text[NORMAL] = @text_color
+}}
+
+widget_class "*ThunarShortcutsView*" style "sidepane"
+widget_class "*ThunarTreeView*" style "sidepane"
+widget_class "*ThunarLocationEntry*" style "murrine-entry"
+
+# Gtk2 Open-File Dialog
+
+widget_class "*GtkFileChooserWidget.GtkFileChooserDefault.GtkVBox.GtkHPaned.GtkVBox.GtkScrolledWindow.GtkTreeView*" style "sidepane"
+widget_class "*GtkFileChooserWidget.GtkFileChooserDefault.GtkVBox.GtkHPaned.GtkVBox.GtkScrolledWindow.<GtkTreeView>.<GtkButton>" style "murrine-treeview-header"
+
+# Google Chrome/Chromium Styles (requires 9.0.597 or newer)
+
+style "chromium-toolbar-button" {{
+ engine "murrine" {{
+ roundness = 2
+ textstyle = 0
+ }}
+}}
+
+style "chrome-gtk-frame" {{
+ ChromeGtkFrame::frame-color = @titlebar_bg_color
+ ChromeGtkFrame::inactive-frame-color = @titlebar_bg_color
+
+ ChromeGtkFrame::frame-gradient-size = 0
+ ChromeGtkFrame::frame-gradient-color = @titlebar_bg_color
+
+ ChromeGtkFrame::incognito-frame-color = @titlebar_bg_color
+ ChromeGtkFrame::incognito-inactive-frame-color = @titlebar_bg_color
+
+ ChromeGtkFrame::incognito-frame-gradient-size = 0
+ ChromeGtkFrame::incognito-frame-gradient-color = @titlebar_bg_color
+
+ ChromeGtkFrame::scrollbar-trough-color = @bg_color
+ ChromeGtkFrame::scrollbar-slider-normal-color = mix (0.21, @text_color, @bg_color)
+ ChromeGtkFrame::scrollbar-slider-prelight-color = mix (0.31, @text_color, @bg_color)
+}}
+
+class "ChromeGtkFrame" style "chrome-gtk-frame"
+
+widget_class "*Chrom*Button*" style "chromium-toolbar-button"
+
+# General Styles
+
+class "GtkWidget" style "murrine-default"
+
+class "GtkFrame" style "murrine-wide"
+class "MetaFrames" style "metacity-frame"
+class "GtkWindow" style "metacity-frame"
+
+class "GtkSeparator" style "murrine-wide"
+class "GtkCalendar" style "murrine-wide"
+
+class "GtkSpinButton" style "murrine-spinbutton"
+
+class "GtkScale" style "murrine-scale"
+class "GtkVScale" style "murrine-vscale"
+class "GtkHScale" style "murrine-hscale"
+class "GtkScrollbar" style "murrine-scrollbar"
+class "GtkVScrollbar" style "murrine-vscrollbar"
+class "GtkHScrollbar" style "murrine-hscrollbar"
+
+class "GtkRadio*" style "murrine-radiocheck"
+class "GtkCheck*" style "murrine-radiocheck"
+
+class "GtkEntry" style "murrine-entry"
+
+widget_class "*<GtkNotebook>" style "murrine-notebook"
+widget_class "*<GtkNotebook>*<GtkEventBox>" style "murrine-notebook-bg"
+widget_class "*<GtkNotebook>*<GtkDrawingArea>" style "murrine-notebook-bg"
+widget_class "*<GtkNotebook>*<GtkLayout>" style "murrine-notebook-bg"
+widget_class "*.GtkNotebook.*.GtkViewport" style "murrine-notebook"
+
+widget_class "*<GtkButton>" style "murrine-button"
+widget_class "*<GtkStatusbar>*" style "murrine-statusbar"
+widget_class "*<GtkProgress>" style "murrine-progressbar"
+widget_class "*<GtkProgressBar>" style "murrine-progressbar"
+
+widget_class "*<GtkComboBoxEntry>*" style "murrine-comboboxentry"
+widget_class "*<GtkCombo>*" style "murrine-comboboxentry"
+
+widget_class "*<GtkMenu>*" style "murrine-menu"
+widget_class "*<GtkMenuItem>*" style "murrine-menu-item"
+widget_class "*<GtkSeparatorMenuItem>*" style "murrine-separator-menu-item"
+widget_class "*Menu*.*Sepa*" style "murrine-separator-menu-item"
+widget_class "*<GtkMenuBar>*" style "murrine-menubar"
+widget_class "*<GtkMenuBar>*<GtkMenuItem>*" style "murrine-menubaritem"
+
+widget_class "*GtkToolButton*" style "murrine-toolbutton"
+widget_class "*GtkToggleToolButton*" style "murrine-toolbutton"
+widget_class "*GtkMenuToolButton*" style "murrine-toolbutton"
+widget_class "*GtkToolbar*Button" style "murrine-toolbutton"
+
+widget_class "*.<GtkFrame>.<GtkLabel>" style "murrine-frame-title"
+
+widget_class "*.<GtkTreeView>*" style "murrine-treeview"
+widget_class "*.<GtkTreeView>.<GtkButton>" style "murrine-treeview-header"
+widget_class "*.<GtkCTree>.<GtkButton>" style "murrine-treeview-header"
+widget_class "*.<GtkList>.<GtkButton>" style "murrine-treeview-header"
+widget_class "*.<GtkCList>.<GtkButton>" style "murrine-treeview-header"
+
+widget "gtk-tooltip*" style "murrine-tooltips"
+
+widget_class "*<GtkScrolledWindow>*<OsScrollbar>" style "murrine-overlay-scrollbar"
+
+# Workarounds and Non-Standard Styling
+
+style "text-is-fg-color-workaround" {{
+ text[NORMAL] = @text_color
+ text[PRELIGHT] = @text_color
+ text[SELECTED] = @selected_fg_color
+ text[ACTIVE] = @text_color
+ text[INSENSITIVE] = mix (0.5, @bg_color, @text_color)
+}}
+
+widget_class "*.<GtkComboBox>.<GtkCellView>" style "text-is-fg-color-workaround"
+
+style "fg-is-text-color-workaround" {{
+ fg[NORMAL] = @text_color
+ fg[PRELIGHT] = @text_color
+ fg[ACTIVE] = @selected_fg_color
+ fg[SELECTED] = @selected_fg_color
+ fg[INSENSITIVE] = darker (@text_color)
+}}
+
+widget_class "*<GtkListItem>*" style "fg-is-text-color-workaround"
+widget_class "*<GtkCList>" style "fg-is-text-color-workaround"
+widget_class "*<EelEditableLabel>" style "fg-is-text-color-workaround"
+
+style "murrine-evo-new-button-workaround" {{
+ engine "murrine" {{
+ toolbarstyle = 0
+ }}
+}}
+
+widget_class "EShellWindow.GtkVBox.BonoboDock.BonoboDockBand.BonoboDockItem*" style "murrine-evo-new-button-workaround"
+
+style "inkscape-toolbar-fix" {{
+ engine "murrine" {{
+ gradient_shades = {{ 1.0, 1.0, 1.0, 1.0 }}
+ highlight_shade = 1.0
+ }}
+}}
+
+#widget "*GtkHandleBox*" style "inkscape-toolbar-fix"
+#widget "*HandleBox*CommandsToolbar*" style "inkscape-toolbar-fix"
+#widget "*HandleBox*SnapToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*SelectToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*NodeToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*TweakToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*ZoomToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*StarToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*RectToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*3DBoxToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*ArcToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*SpiralToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*PencilToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*PenToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*CalligraphyToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*EraserToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*LPEToolToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*DropperToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*ConnectorToolbar*" style "inkscape-toolbar-fix"
+widget "*HandleBox*PaintbucketToolbar*" style "inkscape-toolbar-fix"
+
+# Performance Fixes
+
+style "performance-fix" {{
+ engine "murrine" {{
+ textstyle = 0
+ }}
+}}
+
+widget_class "*gtkmm__GtkWindow*" style "performance-fix" # Inkscape
+widget_class "*GimpDisplayShell*" style "performance-fix" # Gimp
+widget_class "*GimpToolbox*" style "performance-fix"
+widget_class "*GimpMenuDock*" style "performance-fix"
+widget "*OOoFixed*" style "performance-fix" # Openoffice/Libreoffice
+widget_class "*MozContainer*" style "performance-fix" # Firefox (Not sure if this one does anything though.)
+
+widget_class "*XfceHeading*" style "xfce-header"
+widget_class "*XfceDesktop*" style "xfdesktop-windowlist"
+widget_class "*XfdesktopIconView*" style "xfdesktop-icon-view"
+widget "xfwm4-tabwin*" style "xfwm-tabwin"
+widget_class "*XfsmLogoutDialog*" style "xfsm-logout"
+widget_class "*XfsmLogoutDialog*GtkButton" style "xfsm-logout-button"
diff --git a/.config/wpg/templates/gtk3.0 b/.config/wpg/templates/gtk3.0
new file mode 120000
index 0000000..4fb3328
--- /dev/null
+++ b/.config/wpg/templates/gtk3.0
@@ -0,0 +1 @@
+/home/atc/.local/share/themes/FlatColor/gtk-3.0/gtk.css \ No newline at end of file
diff --git a/.config/wpg/templates/gtk3.0.base b/.config/wpg/templates/gtk3.0.base
new file mode 100644
index 0000000..bea8499
--- /dev/null
+++ b/.config/wpg/templates/gtk3.0.base
@@ -0,0 +1,93 @@
+
+/* Default color scheme */
+@define-color bg_color {color0};
+@define-color fg_color {color15};
+@define-color base_color {color1};
+@define-color text_color {color15};
+@define-color selected_bg_color {active};
+@define-color selected_fg_color {color15};
+@define-color tooltip_bg_color {color0};
+@define-color tooltip_fg_color {color15};
+
+/* colormap actually used by the theme, to be overridden in other css files */
+@define-color theme_bg_color @bg_color;
+@define-color theme_fg_color @fg_color;
+@define-color theme_base_color @base_color;
+@define-color theme_text_color @text_color;
+@define-color theme_selected_bg_color @selected_bg_color;
+@define-color theme_selected_fg_color @selected_fg_color;
+@define-color theme_tooltip_bg_color @tooltip_bg_color;
+@define-color theme_tooltip_fg_color @tooltip_fg_color;
+
+/* shadow effects */
+@define-color light_shadow #eeeeee;
+@define-color dark_shadow #222222;
+
+/* misc colors used by gtk+ */
+@define-color info_fg_color white;
+@define-color info_bg_color #BACF66;
+@define-color warning_fg_color white;
+@define-color warning_bg_color #E6A682;
+@define-color question_fg_color white;
+@define-color question_bg_color #74C47B;
+@define-color error_fg_color white;
+@define-color error_bg_color #E682C8;
+@define-color link_color mix (@theme_selected_bg_color, black, 0.15);
+@define-color success_color #53a93f;
+@define-color warning_color #f57900;
+@define-color error_color #cc0000;
+
+/* widget colors*/
+@define-color border_color #363D43;
+@define-color button_normal_color #3F474A;
+@define-color button_info_color #72B279;
+@define-color button_default_active_color shade(@theme_selected_bg_color, 0.857);
+@define-color entry_border_color shade(@theme_base_color, 0.9);
+@define-color frame_border_bottom_color #E3E4E7;
+@define-color sel_color #B98CD7;
+@define-color switch_bg_color #C9CBCF;
+@define-color panel_bg_color @bg_color;
+@define-color panel_fg_color @fg_color;
+@define-color borders #FAFAFA;
+@define-color scrollbar_trough shade(@theme_base_color, 0.9);
+@define-color scrollbar_slider_prelight mix(@scrollbar_trough, @theme_fg_color, 0.5);
+
+
+/* osd */
+@define-color osd_separator #49525B;
+@define-color osd_fg #ABB4BD;
+@define-color osd_bg #434A54;
+
+/* window manager colors */
+@define-color wm_bg @theme_bg_color;
+@define-color wm_title_focused @theme_fg_color;
+@define-color wm_title_unfocused @theme_text_color;
+@define-color wm_border_focused @border_color;
+@define-color wm_border_unfocused @border_color;
+
+@import url("gtk-widgets.css");
+@import url("gtk-widgets-assets.css");
+@import url("unity.css");
+@import url("widgets/button.css");
+@import url("widgets/cell-row.css");
+@import url("widgets/check-radio.css");
+@import url("widgets/column-header.css");
+@import url("widgets/calendar.css");
+@import url("widgets/entry.css");
+@import url("widgets/infobar.css");
+@import url("widgets/menu.css");
+@import url("widgets/notebook.css");
+@import url("widgets/progress-scale.css");
+@import url("widgets/scrollbar.css");
+@import url("widgets/separator.css");
+@import url("widgets/sidebar.css");
+@import url("widgets/spinbutton.css");
+@import url("widgets/spinner.css");
+@import url("widgets/switch.css");
+@import url("widgets/color-chooser.css");
+@import url("widgets/toolbar.css");
+@import url("widgets/header-bar.css");
+@import url("widgets/osd.css");
+@import url("widgets/csd.css");
+@import url("widgets/combobox.css");
+@import url("widgets/selection-mode.css");
diff --git a/.config/wpg/templates/gtk3.20 b/.config/wpg/templates/gtk3.20
new file mode 120000
index 0000000..c1726f1
--- /dev/null
+++ b/.config/wpg/templates/gtk3.20
@@ -0,0 +1 @@
+/home/atc/.local/share/themes/FlatColor/gtk-3.20/gtk.css \ No newline at end of file
diff --git a/.config/wpg/templates/gtk3.20.base b/.config/wpg/templates/gtk3.20.base
new file mode 100644
index 0000000..08b9fba
--- /dev/null
+++ b/.config/wpg/templates/gtk3.20.base
@@ -0,0 +1,108 @@
+/* Default color scheme */
+@define-color color0 {color0};
+@define-color color1 {color1};
+@define-color color2 {color2};
+@define-color color3 {color3};
+@define-color color4 {color4};
+@define-color color5 {color5};
+@define-color color6 {color6};
+@define-color color7 {color7};
+@define-color color8 {color8};
+@define-color color9 {color9};
+@define-color color10 {color10};
+@define-color color11 {color11};
+@define-color color12 {color12};
+@define-color color13 {color13};
+@define-color color14 {color14};
+@define-color color15 {color15};
+@define-color selected_bg_color {active};
+@define-color bg_color mix(@color0, @color15, 0.12);
+@define-color tooltip_bg_color mix(@color0, @color15, 0.04);
+@define-color base_color mix(@color0, @color15, 0);
+@define-color fg_color @color15;
+@define-color text_color @color15;
+@define-color selected_fg_color @color15;
+@define-color tooltip_fg_color @color15;
+
+/* colormap actually used by the theme, to be overridden in other css files */
+@define-color theme_bg_color @bg_color;
+@define-color theme_fg_color @fg_color;
+@define-color theme_base_color @base_color;
+@define-color theme_text_color @text_color;
+@define-color theme_selected_bg_color @selected_bg_color;
+@define-color theme_selected_fg_color @selected_fg_color;
+@define-color theme_tooltip_bg_color @tooltip_bg_color;
+@define-color theme_tooltip_fg_color @tooltip_fg_color;
+
+/* shadow effects */
+@define-color light_shadow #eeeeee;
+@define-color dark_shadow #222222;
+
+/* misc colors used by gtk+ */
+@define-color info_fg_color @text_color;
+@define-color info_bg_color @bg_color;
+@define-color warning_fg_color @text_color;
+@define-color warning_bg_color @bg_color;
+@define-color question_fg_color @text_color;
+@define-color question_bg_color @theme_selected_bg_color;
+@define-color error_fg_color @text_color;
+@define-color error_bg_color #f52400;
+@define-color link_color mix (@theme_selected_bg_color, black, 0.15);
+@define-color success_color #53a93f;
+@define-color warning_color #f57900;
+@define-color error_color #f52400;
+
+/* widget colors*/
+@define-color border_color shade(@theme_selected_bg_color, 0.2);
+@define-color button_normal_color shade(@theme_bg_color, 1.20);
+@define-color button_info_color @theme_selected_bg_color;
+@define-color button_default_active_color @theme_selected_bg_color;
+@define-color entry_border_color shade(@theme_base_color, 0.9);
+@define-color frame_border_bottom_color shade(@bg_color, 0.8);
+@define-color sel_color shade(@theme_selected_bg_color, 0.857);
+@define-color switch_bg_color shade(@bg_color, 0.8);
+@define-color panel_bg_color @bg_color;
+@define-color panel_fg_color @fg_color;
+@define-color borders shade(@theme_selected_bg_color, 0.857);
+@define-color scrollbar_trough shade(@theme_base_color, 0.9);
+@define-color scrollbar_slider_prelight mix(@scrollbar_trough, @theme_fg_color, 0.5);
+
+
+/* osd */
+@define-color osd_separator #49525B;
+@define-color osd_fg #ABB4BD;
+@define-color osd_bg #434A54;
+
+/* window manager colors */
+@define-color wm_bg @theme_bg_color;
+@define-color wm_title_focused @theme_fg_color;
+@define-color wm_title_unfocused @theme_text_color;
+@define-color wm_border_focused @border_color;
+@define-color wm_border_unfocused @border_color;
+
+@import url("gtk-widgets.css");
+@import url("unity.css");
+@import url("widgets/button.css");
+@import url("widgets/cell-row.css");
+@import url("widgets/check-radio.css");
+@import url("widgets/column-header.css");
+@import url("widgets/calendar.css");
+@import url("widgets/entry.css");
+@import url("widgets/infobar.css");
+@import url("widgets/menu.css");
+@import url("widgets/notebook.css");
+@import url("widgets/progress-scale.css");
+@import url("widgets/scrollbar.css");
+@import url("widgets/separator.css");
+@import url("widgets/sidebar.css");
+@import url("widgets/chrome.css");
+@import url("widgets/spinbutton.css");
+@import url("widgets/spinner.css");
+@import url("widgets/switch.css");
+@import url("widgets/color-chooser.css");
+@import url("widgets/toolbar.css");
+@import url("widgets/header-bar.css");
+@import url("widgets/osd.css");
+@import url("widgets/csd.css");
+@import url("widgets/combobox.css");
+@import url("widgets/selection-mode.css");
diff --git a/.config/wpg/templates/i3 b/.config/wpg/templates/i3
new file mode 120000
index 0000000..66954d9
--- /dev/null
+++ b/.config/wpg/templates/i3
@@ -0,0 +1 @@
+/home/atc/.config/i3/config \ No newline at end of file
diff --git a/.config/wpg/templates/i3.base b/.config/wpg/templates/i3.base
new file mode 100644
index 0000000..c216586
--- /dev/null
+++ b/.config/wpg/templates/i3.base
@@ -0,0 +1,229 @@
+## i3 config file (v4)
+##
+## Please see https://i3wm.org/docs/userguide.html for a complete reference!
+
+## GENERAL
+font pango:sans-serif 13
+set $display_primary DP-3
+set $display_secondary VGA-0
+set $locker xautolock -locknow
+set $mod Mod1
+set $sigaudio pkill -75 i3blocks
+
+## WORKSPACES
+set $ws1 "1:󰖟"
+set $ws2 "2:󰲢"
+set $ws3 "3:󰲤"
+set $ws4 "4:󰲦"
+set $ws5 "5:󰲨"
+set $ws6 "6:󰲪"
+set $ws7 "7:󰲬"
+set $ws8 "8:󰲮"
+set $ws9 "9:󰣀"
+set $ws10 "10:󰭹"
+workspace $ws10 output $display_secondary
+
+# switch to workspace
+bindsym $mod+1 workspace $ws1
+bindsym $mod+2 workspace $ws2
+bindsym $mod+3 workspace $ws3
+bindsym $mod+4 workspace $ws4
+bindsym $mod+5 workspace $ws5
+bindsym $mod+6 workspace $ws6
+bindsym $mod+7 workspace $ws7
+bindsym $mod+8 workspace $ws8
+bindsym $mod+9 workspace $ws9
+bindsym $mod+0 workspace $ws10
+
+# move focused container to workspace
+bindsym $mod+shift+1 move container to workspace $ws1
+bindsym $mod+shift+2 move container to workspace $ws2
+bindsym $mod+shift+3 move container to workspace $ws3
+bindsym $mod+shift+4 move container to workspace $ws4
+bindsym $mod+shift+5 move container to workspace $ws5
+bindsym $mod+shift+6 move container to workspace $ws6
+bindsym $mod+shift+7 move container to workspace $ws7
+bindsym $mod+shift+8 move container to workspace $ws8
+bindsym $mod+shift+9 move container to workspace $ws9
+bindsym $mod+shift+0 move container to workspace $ws10
+
+## GAPS/BORDERS
+default_border pixel 5
+default_floating_border normal
+gaps inner 10
+smart_borders no_gaps
+title_align center
+workspace_auto_back_and_forth yes
+
+# Note: if there's only one container, give it a 4:3-ish aspect ratio
+gaps horizontal 220
+smart_gaps inverse_outer
+
+
+## COLORS
+# base colors -- set by WPG
+set $coloract "{active}"
+set $colorin "{inactive}"
+set_from_resource $color0 i3wm.color0 "{color0}"
+set_from_resource $color15 i3wm.color15 "{color15}"
+set_from_resource $color8 i3wm.color8 "{color8}"
+set_from_resource $coloru i3wm.color2 "{color2}"
+set_from_resource $split i3wm.color10 "{color10}"
+
+# class border backgr text indicator child_border
+client.background $color0
+client.focused $coloract $coloract $color15 $split $coloract
+client.focused_inactive $coloract $coloract $color15 $split $colorin
+client.placeholder $color0 $color8 $color15 $color0 $color8
+client.unfocused $colorin $colorin $color15 $split $colorin
+client.urgent $coloru $coloru $color15 $coloru $coloru
+
+## WINDOW CONTROL
+# movement
+floating_modifier $mod
+set $down j
+set $left h
+set $right l
+set $up k
+
+# change focus
+bindsym $mod+$down focus down
+bindsym $mod+$left focus left
+bindsym $mod+$right focus right
+bindsym $mod+$up focus up
+
+# move focused window
+bindsym $mod+shift+$down move down
+bindsym $mod+shift+$left move left
+bindsym $mod+shift+$right move right
+bindsym $mod+shift+$up move up
+
+# resize
+bindsym $mod+i resize grow height 30 px or 10 ppt
+bindsym $mod+o resize grow width 30 px or 10 ppt
+bindsym $mod+u resize shrink height 30 px or 10 ppt
+bindsym $mod+y resize shrink width 30 px or 10 ppt
+bindsym $mod+minus gaps outer current minus 10
+bindsym $mod+plus gaps outer current plus 10
+bindsym $mod+shift+minus gaps inner current minus 10
+bindsym $mod+shift+plus gaps inner current plus 10
+
+## LAYOUT
+# split direction
+bindsym $mod+q split toggle
+
+# fullscreen mode
+bindsym $mod+f fullscreen toggle
+
+# container layout
+bindsym $mod+shift+w layout tabbed
+bindsym $mod+shift+e layout toggle split
+
+# toggle tiling / floating
+bindsym $mod+shift+space floating toggle
+bindsym $mod+s sticky toggle
+bindsym $mod+shift+s floating toggle; sticky toggle
+
+# change focus between tiling / floating windows
+bindsym $mod+space focus mode_toggle
+
+## SHORTCUTS
+bindsym $mod+shift+F1 exec --no-startup-id firefox /usr/local/share/doc/freebsd/handbook/book.html
+bindsym $mod+F2 exec --no-startup-id firefox
+bindsym $mod+F3 exec i3-filescmd.sh
+bindsym $mod+F4 exec i3-mailcmd.sh
+bindsym $mod+F5 exec i3-newsboatcmd.sh
+bindsym $mod+F6 exec yt.sh
+bindsym $mod+F7 exec dict.sh
+bindsym $mod+F8 exec toggle-docked.sh
+bindsym $mod+shift+F8 exec toggle-compositing.sh
+bindsym $mod+F9 exec abraham-porter.sh
+bindsym $mod+F10 exec toggle-webcam.sh
+bindsym $mod+Shift+F10 exec toggle-screencast.sh
+bindsym $mod+F11 exec xautolock -toggle
+bindsym $mod+F12 exec i3-mixercmd.sh
+bindsym $mod+Return split horizontal; exec alacritty
+bindsym $mod+Shift+Return split vertical; exec alacritty
+bindsym $mod+Shift+Insert exec --no-startup-id $locker
+bindsym $mod+Tab exec i3-msg workspace back_and_forth
+bindsym $mod+a exec rofi -show run
+bindsym $mod+shift+q kill
+bindsym --release Print exec i3-screeniecmd.sh
+bindsym --release shift+Print exec i3-screenie_regioncmd.sh
+bindsym Mod4+p exec arandr
+bindsym XF86AudioLowerVolume exec mixer vol -5 && $sigaudio
+bindsym XF86AudioMute exec mixer vol 0 && $sigaudio
+bindsym XF86AudioRaiseVolume exec mixer vol +5 && $sigaudio
+
+# scratchpad terminal
+bindsym $mod+shift+p move scratchpad
+bindsym $mod+p scratchpad show
+
+# reload the configuration file
+bindsym $mod+shift+c reload
+# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
+bindsym $mod+shift+r restart
+
+## MODES AND BARS
+set $mode_display 󰍺
+mode "$mode_display" {{
+ bindsym $left move workspace to output left
+ bindsym $right move workspace to output right
+ bindsym Return mode "default"
+ bindsym q mode "default"
+ bindsym Escape mode "default"
+}}
+
+set $mode_system 󰌾l 󰩈e 󰤄s 󰤁r 󰤂shift+s
+mode "$mode_system" {{
+ bindsym e exec --no-startup-id i3-msg exit, mode "default"
+ bindsym l exec --no-startup-id $locker, mode "default"
+ bindsym s exec --no-startup-id $locker && sleep 2 && doas acpiconf -s3, mode "default"
+ bindsym r exec --no-startup-id doas reboot, mode "default"
+ bindsym shift+s exec --no-startup-id doas poweroff, mode "default"
+ bindsym Return mode "default"
+ bindsym q mode "default"
+ bindsym Escape mode "default"
+}}
+
+set $mode_help 󱊫Help/Handbook 󱊬Browser 󱊭Files 󱊮Email 󱊯News 󱊰YouTube 󱊱Dictionary 󱊲Dock/Compositor 󱊳Ports 󱊴Webcam/Screencast 󱊵AutoLock-Toggle 󱊶Mixer
+mode "$mode_help" {{
+ bindsym Return mode "default"
+ bindsym q mode "default"
+ bindsym Escape mode "default"
+}}
+
+bindsym $mod+d mode "$mode_display"
+bindsym $mod+Insert mode "$mode_system"
+bindsym $mod+F1 mode "$mode_help"
+
+## BARS
+bar {{
+ height 30
+ output $display_primary
+ strip_workspace_numbers yes
+ position bottom
+ status_command i3blocks 2>/var/log/xinit/i3blocks.log
+
+ colors {{
+ background $color8
+ statusline $color15
+ separator $colorin
+ # class border background foreground
+ focused_workspace $color15 $coloract $color15
+ active_workspace $color15 $coloract $color15
+ inactive_workspace $split $colorin $color15
+ urgent_workspace $coloru $coloru $color15
+ }}
+}}
+
+## DEFAULT PLACEMENT
+for_window [class = "Wpg"] floating enable
+for_window [title = "Reading Email"] floating enable
+for_window [title = "Reading News"] floating enable
+for_window [title = "Streaming from YouTube"] floating enable; sticky enable
+for_window [title = "pwcview"] border pixel 1; floating enable; sticky enable; move position 1598px 808px
+for_window [title = "sxiv"] floating enable
+
+## STARTUP
+exec --no-startup-id firefox
diff --git a/.config/wpg/templates/rofi b/.config/wpg/templates/rofi
new file mode 120000
index 0000000..596369b
--- /dev/null
+++ b/.config/wpg/templates/rofi
@@ -0,0 +1 @@
+/home/atc/.config/rofi/config \ No newline at end of file
diff --git a/.config/wpg/templates/rofi.base b/.config/wpg/templates/rofi.base
new file mode 100644
index 0000000..74b3d09
--- /dev/null
+++ b/.config/wpg/templates/rofi.base
@@ -0,0 +1,27 @@
+rofi.modi: run,window,ssh
+rofi.width: 25
+rofi.lines: 25
+rofi.columns: 1
+rofi.font: Iosevka Etoile 14
+rofi.color-normal: {color0}, {color15}, {color0}, {active}, {color15}
+rofi.color-urgent: {color0}, #d6b48d, #22231D, #d6b48d, {color15}
+rofi.color-active: {color0}, {color14}, {color0}, {color14}, {color0}
+rofi.color-window: {color0}, {active}, {inactive}
+rofi.bw: 5
+rofi.location: 0
+rofi.padding: 5
+rofi.yoffset: 0
+rofi.xoffset: 0
+rofi.fixed-num-lines: true
+rofi.terminal: rofi-sensible-terminal
+rofi.ssh-client: ssh
+rofi.ssh-command: {{terminal}} -e {{ssh-client}} {{host}}
+rofi.run-command: {{cmd}}
+rofi.parse-hosts: true
+rofi.matching: normal
+rofi.separator-style: none
+rofi.scrollbar-width: 0
+rofi.kb-mode-next: Shift+Right,Control+Tab,Alt+l
+rofi.kb-mode-previous: Shift+Left,Control+Shift+Tab,Alt+h
+rofi.kb-row-up: Up,Control+p,Shift+Tab,Shift+ISO_Left_Tab,Alt+k
+rofi.kb-row-down: Down,Control+n,Alt+j
diff --git a/.config/wpg/wpg.conf b/.config/wpg/wpg.conf
new file mode 100644
index 0000000..0731a82
--- /dev/null
+++ b/.config/wpg/wpg.conf
@@ -0,0 +1,16 @@
+[settings]
+set_wallpaper = true
+gtk = true
+active = 12
+light_theme = false
+editor = alacritty -e vim
+execute_cmd = false
+command = urxvt -e echo hi
+backend = wal
+alpha = 90
+smart_sort = true
+auto_adjust = true
+reload = true
+
+[keywords]
+
diff --git a/.pkglist b/.pkglist
new file mode 100644
index 0000000..d12bedc
--- /dev/null
+++ b/.pkglist
@@ -0,0 +1,96 @@
+## Uncomment the ports you want configured/built in bulk.
+archivers/unace
+audio/abcde
+audio/cdparanoia
+audio/mixertui
+audio/virtual_oss
+benchmarks/unixbench
+databases/sqlite3
+devel/git
+devel/libnotify
+devel/py-gobject
+devel/py-pip
+devel/xdg-utils
+editors/vim
+emulators/dosbox
+emulators/vice
+emulators/vice
+ftp/curl
+ftp/wget
+games/asciiquarium
+games/chocolate-doom
+games/ecwolf
+games/eduke32
+games/minecraft-client
+games/residualvm
+games/scummvm
+games/vvvvvv
+graphics/ImageMagick7
+graphics/blender
+graphics/feh
+graphics/gimp
+graphics/inkscape
+graphics/mupdf
+graphics/scrot
+graphics/sxiv
+lang/cbmbasic
+mail/mutt
+misc/fortune-mod-freebsd-classic
+misc/vifm
+multimedia/ffmpeg
+multimedia/handbrake
+multimedia/makemkv
+multimedia/mpv
+net-im/6cord
+net/rsync
+ports-mgmt/poudriere
+security/doas
+security/py-cryptography
+security/py-openssl
+shells/zsh
+shells/zsh-autosuggestions
+shells/zsh-completions
+shells/zsh-navigation-tools
+shells/zsh-syntax-highlighting
+sysutils/cmdwatch
+sysutils/dunst
+sysutils/entr
+sysutils/fusefs-sshfs
+sysutils/fusefs-webdavfs
+sysutils/grub2-bhyve
+sysutils/htop
+sysutils/pidof
+sysutils/powerdxx
+sysutils/rename
+sysutils/testdisk
+sysutils/tmux
+sysutils/tree
+sysutils/vm-bhyve
+textproc/dict
+textproc/libsass
+textproc/p5-docx2txt
+www/chromium
+www/firefox
+www/newsboat
+www/node
+www/npm
+www/w3m-img
+www/youtube_dl
+x11-fonts/fontconfig
+x11-fonts/iosevka
+x11-fonts/material-icons-ttf
+x11-fonts/twemoji-color-font-ttf
+x11-wm/i3-gaps
+x11/alacritty
+x11/arandr
+x11/i3blocks
+x11/i3lock
+x11/nvidia-driver-340
+x11/nvidia-settings
+x11/rofi
+x11/xauth
+x11/xautolock
+x11/xclip
+x11/xorg-minimal
+x11/xrandr
+sysutils/bastille
diff --git a/.pkgunlist b/.pkgunlist
new file mode 100644
index 0000000..28e9c1e
--- /dev/null
+++ b/.pkgunlist
@@ -0,0 +1,12 @@
+cargo/cobalt-bin
+cargo/crowbook
+cargo/ripgrep
+github/iosevka
+github/material-design-icons
+npm/htmlhint
+npm/prettier
+npm/vue@cli
+pip/wpgtk
+rustup/clippy
+rustup/rls
+rustup/rustup
diff --git a/.urlview b/.urlview
new file mode 100644
index 0000000..8380774
--- /dev/null
+++ b/.urlview
@@ -0,0 +1,32 @@
+# Urlview configuration file.
+# man urlview <Man page>
+#
+# Put this file in: $HOME/.urlview
+# Put url_handler.sh in: /usr/bin
+#
+# You can call 'urlview' while in 'mutt' by pressing the Ctrl b keys.
+# Put these macros in your $HOME/.muttrc file.
+#
+# macro index \cb |urlview\n
+# macro pager \cb |urlview\n
+#
+# You can call 'urlview' while in 'tin' by pressing | then a for article,
+# put urlview as the pipe command.
+#
+# Regular expression to use to match URLs.
+
+#REGEXP (((http|https|ftp|gopher)|mailto):(//)?[^ >"\t]*|www\.[-a-z0-9.]+)[^ .,;\t>">\):]
+REGEXP (((http|https|ftp|gopher)|mailto)[.:][^ >"\t]*|www\.[-a-z0-9.]+)[^ .,;\t>">\):]
+
+# Command to invoke for selected URL. Use lynx, netscape, or url_handler.sh
+# shell script. Alternatively, you can leave COMMAND unset and set the BROWSER
+# environment variable instead.
+
+#COMMAND lynx %s
+#COMMAND netscape -remote 'openURL(%s)'
+#COMMAND url_handler.sh
+COMMAND qutebrowser %s
+
+
+# Quit urlview after launch
+#QUITONLAUNCH
diff --git a/.vimrc b/.vimrc
new file mode 100644
index 0000000..a6e0644
--- /dev/null
+++ b/.vimrc
@@ -0,0 +1,92 @@
+" General options
+set ruler " show the cursor position all the time
+set showcmd " display incomplete commands
+set ttimeout " time out for key codes
+set ttimeoutlen=100 " wait up to 100ms after Esc for special key
+set display=truncate " show @@@ in the last line if it is truncated
+set scrolloff=5 " show a few lines around the cursor
+set relativenumber " relative line numbering
+set tabstop=4 " 4-space tabs
+set softtabstop=4 " 4-space tabs
+set shiftwidth=4 " 4-space shiftwidth
+set backspace=indent,eol,start " backspace over everything in insert
+set directory=$HOME/.vim/swapfiles// " common swap directory
+set fillchars+=vert:\
+syntax on " switch syntax highlighting on
+
+" Matching and key mappings
+:match ErrorMsg '\%>80v.\+' " right-hand drift warning
+"" automatically finish closing tags
+:inoremap <lt>/ </<C-x><C-o><Esc>==gi
+
+" only do this if autocommands enabled
+if has("autocmd")
+ " enable file type detection and load indent files
+ filetype plugin indent on
+
+ augroup vimStartup
+ au!
+
+ "at startup, jump to last cursor position if valid
+ autocmd BufReadPost *
+ \ if line("'\"") >= 1 && line("'\"") <= line("$") && &ft !~# 'commit'
+ \ | exe "normal! g`\""
+ \ | endif
+ augroup END
+endif
+
+
+
+if empty(glob('~/.vim/autoload/plug.vim'))
+ silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
+ \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
+ autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
+endif
+
+call plug#begin('~/.vim/plugged')
+"Plug 'dense-analysis/ale'
+Plug 'neoclide/coc.nvim', {'do': 'yarn install --frozen-lockfile'}
+call plug#end()
+
+"" ALE
+"let g:ale_linter_aliases = {
+"\ 'vue': ['vue', 'javascript'],
+"\ 'liquid': ['liquid', 'html'],
+"\}
+"let g:ale_linters = {
+"\ 'vue': ['eslint', 'vls'],
+"\ 'javascript': ['eslint'],
+"\ 'html': ['htmlhint'],
+"\ 'rust': []
+"\}
+"let g:ale_fixers = {
+"\ 'css': ['prettier'],
+"\ 'html': ['prettier'],
+"\ 'javascript': ['eslint'],
+"\ 'json': ['prettier'],
+"\ 'liquid': ['prettier'],
+"\ 'markdown': ['prettier'],
+"\ 'vue': ['eslint'],
+"\ 'scss': ['prettier'],
+"\ '*': ['remove_trailing_lines', 'trim_whitespace'],
+"\ 'rust': []
+"\}
+"let g:ale_fix_on_save = 1
+
+" COC.VIM
+inoremap <silent><expr> <TAB>
+\ pumvisible() ? "\<C-n>" :
+\ <SID>check_back_space() ? "\<TAB>" :
+\ coc#refresh()
+inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<C-h>"
+
+function! s:check_back_space() abort
+ let col = col('.') - 1
+ return !col || getline('.')[col - 1] =~# '\s'
+endfunction
+
+highlight CocFloating ctermbg=black
+
+" Auto-reloading scripts
+autocmd BufWritePost i3.base !themer.sh -r
+autocmd BufWritePost */i3blocks/config !i3-msg reload
diff --git a/.xinitrc b/.xinitrc
new file mode 100644
index 0000000..2b15009
--- /dev/null
+++ b/.xinitrc
@@ -0,0 +1,7 @@
+~/.local/scripts/toggle-docked.sh &&
+~/.config/wpg/wp_init.sh &&
+xrdb -merge ~/.Xresources &&
+picom &
+dunst &
+exec i3 2>&1 > /var/log/xinit/i3wm.log
+#exec twm
diff --git a/.zprofile b/.zprofile
new file mode 100644
index 0000000..0e90900
--- /dev/null
+++ b/.zprofile
@@ -0,0 +1,2 @@
+export XCURSOR_PATH=${XCURSOR_PATH}:~/.local/share/icons
+[ -z $DISPLAY ] && [ $(tty) = /dev/ttyv0 ] && exec startx
diff --git a/.zshenv b/.zshenv
new file mode 100644
index 0000000..d01104a
--- /dev/null
+++ b/.zshenv
@@ -0,0 +1,34 @@
+export BROWSER=qutebrowser
+export EDITOR=vim
+export VISUAL=vim
+export PAGER=less
+export DOOMWADDIR=~/.local/share/chocolate-doom/wads
+
+# Color man pages
+export LESS_TERMCAP_mb=$'\E[01;32m'
+export LESS_TERMCAP_md=$'\E[01;32m'
+export LESS_TERMCAP_me=$'\E[0m'
+export LESS_TERMCAP_se=$'\E[0m'
+export LESS_TERMCAP_so=$'\E[01;47;34m'
+export LESS_TERMCAP_ue=$'\E[0m'
+export LESS_TERMCAP_us=$'\E[01;36m'
+export LESS=-r
+
+export PATH=$HOME/.local/scripts:$HOME/.local/bin/:$HOME/.cargo/bin:$HOME/node_modules/.bin:$PATH
+export GTK2_RC_FILES=$HOME/.local/share/themes/FlatColor/gtk-2.0/gtkrc
+
+export LANG=en_US.UTF-8
+export LANGUAGE=en_US.UTF-8
+export LC_CTYPE="en_US.UTF-8"
+export LC_NUMERIC="en_US.UTF-8"
+export LC_TIME="en_US.UTF-8"
+export LC_COLLATE="en_US.UTF-8"
+export LC_MONETARY="en_US.UTF-8"
+export LC_MESSAGES="en_US.UTF-8"
+export LC_PAPER="en_US.UTF-8"
+export LC_NAME="en_US.UTF-8"
+export LC_ADDRESS="en_US.UTF-8"
+export LC_TELEPHONE="en_US.UTF-8"
+export LC_MEASUREMENT="en_US.UTF-8"
+export LC_IDENTIFICATION="en_US.UTF-8"
+export LC_ALL=en_US.UTF-8
diff --git a/.zshrc b/.zshrc
new file mode 100644
index 0000000..242b167
--- /dev/null
+++ b/.zshrc
@@ -0,0 +1,136 @@
+## Autoload Section
+[ -r /tmp/.cwd ] && cd "$(< /tmp/.cwd)"
+(cat $HOME/.config/wpg/sequences &)
+
+
+## chcwd hook to open new shells in same CWD
+set_cwd() {
+ $(pwd > /tmp/.cwd &)
+}
+autoload -Uz add-zsh-hook
+add-zsh-hook chpwd set_cwd
+
+
+## Print a greeting message when shell is started
+ufetch || echo $USER@$HOST $(uname -srm)
+
+## Options section
+setopt correct # Auto correct mistakes
+setopt extendedglob # Extended globbing. Allows using regular expressions with *
+setopt nocaseglob # Case insensitive globbing
+setopt rcexpandparam # Array expension with parameters
+setopt nocheckjobs # Don't warn about running processes when exiting
+setopt numericglobsort # Sort filenames numerically when it makes sense
+setopt nobeep # No beep
+setopt appendhistory # Immediately append history instead of overwriting
+setopt histignorealldups # If a new command is a duplicate, remove the older one
+setopt autocd # if only directory path is entered, cd there.
+
+zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' # Case insensitive tab completion
+zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}" # Colored completion (different colors for dirs/files/etc)
+zstyle ':completion:*' rehash true # automatically find new executables in path
+# Speed up completions
+zstyle ':completion:*' accept-exact '*(N)'
+zstyle ':completion:*' use-cache on
+zstyle ':completion:*' cache-path $HOME/.zsh/cache
+HISTFILE=$HOME/.zhistory
+HISTSIZE=10000
+SAVEHIST=10000
+WORDCHARS=${WORDCHARS//\/[&.;]} # Don't consider certain characters part of the word
+
+## Keybindings section
+bindkey -v
+
+## Alias section
+source $HOME/.aliases
+
+## Theming section
+autoload -U compinit colors zcalc
+compinit -d
+colors
+
+# enable substitution for prompt
+setopt prompt_subst
+
+## Prompt on right side:
+# - shows status of git when in git repository (code adapted from https://techanic.net/2012/12/30/my_git_prompt_for_zsh.html)
+# - shows exit status of previous command (if previous command finished with an error)
+# - is invisible, if neither is the case
+
+# Modify the colors and symbols in these variables as desired.
+GIT_PROMPT_SYMBOL="%{$fg[blue]%}󰊢 " # plus/minus - clean repo
+GIT_PROMPT_AHEAD="%{$fg[red]%}󰄾 NUM%{$reset_color%}" # A"NUM" - ahead by "NUM" commits
+GIT_PROMPT_BEHIND="%{$fg[cyan]%}󰄽 NUM%{$reset_color%}" # B"NUM" - behind by "NUM" commits
+GIT_PROMPT_MERGING="%{$fg_bold[magenta]%}󰾕 %{$reset_color%}" # lightning bolt - merge conflict
+GIT_PROMPT_UNTRACKED="%{$fg_bold[red]%}󰾖 %{$reset_color%}" # red circle - untracked files
+GIT_PROMPT_MODIFIED="%{$fg_bold[yellow]%}󰯓 %{$reset_color%}" # yellow circle - tracked files modified
+GIT_PROMPT_STAGED="%{$fg_bold[green]%}󰯑 %{$reset_color%}" # green circle - staged changes present = ready for "git push"
+
+parse_git_branch() {
+ # Show Git branch/tag, or name-rev if on detached head
+ ( git symbolic-ref -q HEAD || git name-rev --name-only --no-undefined --always HEAD ) 2> /dev/null
+}
+
+parse_git_state() {
+ # Show different symbols as appropriate for various Git repository states
+ # Compose this value via multiple conditional appends.
+ local GIT_STATE=""
+ local NUM_AHEAD="$(git log --oneline @{u}.. 2> /dev/null | wc -l | tr -d ' ')"
+ if [ "$NUM_AHEAD" -gt 0 ]; then
+ GIT_STATE=$GIT_STATE${GIT_PROMPT_AHEAD//NUM/$NUM_AHEAD}
+ fi
+ local NUM_BEHIND="$(git log --oneline ..@{u} 2> /dev/null | wc -l | tr -d ' ')"
+ if [ "$NUM_BEHIND" -gt 0 ]; then
+ GIT_STATE=$GIT_STATE${GIT_PROMPT_BEHIND//NUM/$NUM_BEHIND}
+ fi
+ local GIT_DIR="$(git rev-parse --git-dir 2> /dev/null)"
+ if [ -n $GIT_DIR ] && test -r $GIT_DIR/MERGE_HEAD; then
+ GIT_STATE=$GIT_STATE$GIT_PROMPT_MERGING
+ fi
+ if [[ -n $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then
+ GIT_STATE=$GIT_STATE$GIT_PROMPT_UNTRACKED
+ fi
+ if ! git diff --quiet 2> /dev/null; then
+ GIT_STATE=$GIT_STATE$GIT_PROMPT_MODIFIED
+ fi
+ if ! git diff --cached --quiet 2> /dev/null; then
+ GIT_STATE=$GIT_STATE$GIT_PROMPT_STAGED
+ fi
+ if [[ -n $GIT_STATE ]]; then
+ echo "$GIT_STATE"
+ fi
+}
+
+git_prompt_string() {
+ local git_where="$(parse_git_branch)"
+
+ # If inside a Git repository, print its branch and state
+ [ -n "$git_where" ] && echo "$GIT_PROMPT_SYMBOL$(parse_git_state)%{$fg[yellow]%}${git_where#(refs/heads/|tags/)}"
+
+ # If not inside the Git repo, print exit codes of last command (only if it failed)
+ [ ! -n "$git_where" ] && echo "%{$fg[red]%} %(?..󰚑 %?)"
+}
+
+RPROMPT='$(git_prompt_string)'
+
+## Prompt on left side
+
+error_prompt_string() {
+ local error_code=$(echo "%?")
+ [ ! "$error_code" = "0" ] && echo && echo "$error_code"
+}
+
+# PROMPT="%(!.%{$fg[red]%}[%n@%m %1~]%{$reset_color%}# .%{$fg[green]%}[%n@%m %1~]%{$reset_color%}$ "
+# PROMPT="%B%{$fg[cyan]%}%(4~|%-1~/.../%2~|%~)%u%b >%{$fg[cyan]%}>%B%(?.%{$fg[cyan]%}.%{$fg[red]%})>%{$reset_color%}%b "
+PROMPT="╭󰷏 %B%{$fg[cyan]%}%(4~|%-1~/.../%2~|%~)%u%b
+╰󰶻 "
+
+## Plugins section: Enable fish style features
+# Use syntax highlighting
+source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
+# Use history substring search TODO:
+#source /usr/share/zsh/plugins/zsh-history-substring-search/zsh-history-substring-search.zsh
+# Use autosuggestion
+source /usr/local/share/zsh-autosuggestions/zsh-autosuggestions.zsh
+ZSH_AUTOSUGGEST_BUFFER_MAX_SIZE=20
+ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=8'