aboutsummaryrefslogtreecommitdiffstats
path: root/.config
diff options
context:
space:
mode:
Diffstat (limited to '.config')
-rw-r--r--.config/bat/config27
-rw-r--r--.config/i3/config194
-rw-r--r--.config/joplin/keymap.json4
-rw-r--r--.config/pgcli/config197
-rw-r--r--.config/qutebrowser/bookmarks/urls0
-rw-r--r--.config/qutebrowser/config.py101
-rw-r--r--.config/qutebrowser/keys.conf693
l---------.config/qutebrowser/nord-qutebrowser.py1
-rw-r--r--.config/qutebrowser/quickmarks0
-rw-r--r--.config/qutebrowser/qutebrowser.conf1572
-rw-r--r--.config/ranger/rc.conf725
-rw-r--r--.config/tmuxinator/sample.yml59
12 files changed, 3573 insertions, 0 deletions
diff --git a/.config/bat/config b/.config/bat/config
new file mode 100644
index 0000000..e96057d
--- /dev/null
+++ b/.config/bat/config
@@ -0,0 +1,27 @@
+# This is `bat`s configuration file. Each line either contains a comment or
+# a command-line option that you want to pass to `bat` by default. You can
+# run `bat --help` to get a list of all possible configuration options.
+
+# Specify desired highlighting theme (e.g. "TwoDark"). Run `bat --list-themes`
+# for a list of all available themes
+--theme="Solarized (light)"
+
+# Enable this to use italic text on the terminal. This is not supported on all
+# terminal emulators (like tmux, by default):
+--italic-text=always
+
+# Uncomment the following line to disable automatic paging:
+#--paging=never
+
+# Uncomment the following line if you are using less version >= 551 and want to
+# enable mouse scrolling support in `bat` when running inside tmux. This might
+# disable text selection, unless you press shift.
+#--pager="less --RAW-CONTROL-CHARS --quit-if-one-screen --mouse"
+
+# Syntax mappings: map a certain filename pattern to a language.
+# Example 1: use the C++ syntax for .ino files
+# Example 2: Use ".gitignore"-style highlighting for ".ignore" files
+--map-syntax "*.ino:C++"
+--map-syntax ".ignore:Git Ignore"
+
+--style=auto
diff --git a/.config/i3/config b/.config/i3/config
new file mode 100644
index 0000000..7cb28b9
--- /dev/null
+++ b/.config/i3/config
@@ -0,0 +1,194 @@
+# This file has been auto-generated by i3-config-wizard(1).
+# It will not be overwritten, so edit it as you like.
+#
+# Should you change your keyboard layout some time, delete
+# this file and re-run i3-config-wizard(1).
+#
+
+# i3 config file (v4)
+#
+# Please see https://i3wm.org/docs/userguide.html for a complete reference!
+
+set $mod Mod4
+
+# Font for window titles. Will also be used by the bar unless a different font
+# is used in the bar {} block below.
+
+# This font is widely installed, provides lots of unicode glyphs, right-to-left
+# text rendering and scalability on retina/hidpi displays (thanks to pango).
+#font pango:DejaVu Sans Mono For Powerline Book 12
+font pango:DejaVu Sans Mono for Powerline 10
+
+# Before i3 v4.8, we used to recommend this one as the default:
+# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
+# The font above is very space-efficient, that is, it looks good, sharp and
+# clear in small sizes. However, its unicode glyph coverage is limited, the old
+# X core fonts rendering does not support right-to-left and this being a bitmap
+# font, it doesn’t scale on retina/hidpi displays.
+
+# Use Mouse+$mod to drag floating windows to their wanted position
+floating_modifier $mod
+
+# start a terminal
+#bindsym $mod+Return exec gnome-terminal
+bindsym $mod+Return exec st -f "DejaVu Sans Mono for Powerline-11.3"
+
+# kill focused window
+bindsym $mod+Shift+q kill
+
+# start dmenu (a program launcher)
+bindsym $mod+d exec dmenu_run -nhb "dark slate gray" -nhf white -shb "forest green" -shf white -l 14
+#bindsym $mod+d exec dmenu_run -nb black -sb tomato -l 12
+# There also is the (new) i3-dmenu-desktop which only displays applications
+# shipping a .desktop file. It is a wrapper around dmenu, so you need that
+# installed.
+# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
+
+# run quick term command
+bindsym $mod+t exec --no-startup-id ~/scripts/bin/run_with_dmenu.sh
+bindsym $mod+m exec --no-startup-id ~/scripts/bin/manga_dmenu.sh
+bindsym $mod+p exec --no-startup-id ~/scripts/bin/postit.sh
+bindsym $mod+c exec clipmenu
+
+# change focus
+bindsym $mod+j focus left
+bindsym $mod+k focus down
+bindsym $mod+l focus up
+bindsym $mod+h focus right
+
+# alternatively, you can use the cursor keys:
+bindsym $mod+Left focus left
+bindsym $mod+Down focus down
+bindsym $mod+Up focus up
+bindsym $mod+Right focus right
+
+# move focused window
+bindsym $mod+Shift+j move left
+bindsym $mod+Shift+k move down
+bindsym $mod+Shift+l move up
+bindsym $mod+Shift+h move right
+
+# alternatively, you can use the cursor keys:
+bindsym $mod+Shift+Left move left
+bindsym $mod+Shift+Down move down
+bindsym $mod+Shift+Up move up
+bindsym $mod+Shift+Right move right
+
+# split in horizontal orientation
+bindsym $mod+- split h
+
+# split in vertical orientation
+bindsym $mod+| split v
+
+# enter fullscreen mode for the focused container
+bindsym $mod+f fullscreen toggle
+
+# change container layout (stacked, tabbed, toggle split)
+bindsym $mod+s layout stacking
+bindsym $mod+w layout tabbed
+bindsym $mod+e layout toggle split
+
+# toggle tiling / floating
+bindsym $mod+Shift+space floating toggle
+
+# change focus between tiling / floating windows
+bindsym $mod+space focus mode_toggle
+
+# focus the parent container
+bindsym $mod+a focus parent
+
+# focus the child container
+#bindsym $mod+d focus child
+
+# switch to workspace
+bindsym $mod+1 workspace 1
+bindsym $mod+2 workspace 2
+bindsym $mod+3 workspace 3
+bindsym $mod+4 workspace 4
+bindsym $mod+5 workspace 5
+bindsym $mod+6 workspace 6
+bindsym $mod+7 workspace 7
+bindsym $mod+8 workspace 8
+bindsym $mod+9 workspace 9
+bindsym $mod+0 workspace 10
+
+# move focused container to workspace
+bindsym $mod+Shift+1 move container to workspace 1
+bindsym $mod+Shift+2 move container to workspace 2
+bindsym $mod+Shift+3 move container to workspace 3
+bindsym $mod+Shift+4 move container to workspace 4
+bindsym $mod+Shift+5 move container to workspace 5
+bindsym $mod+Shift+6 move container to workspace 6
+bindsym $mod+Shift+7 move container to workspace 7
+bindsym $mod+Shift+8 move container to workspace 8
+bindsym $mod+Shift+9 move container to workspace 9
+bindsym $mod+Shift+0 move container to workspace 10
+
+# 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
+# exit i3 (logs you out of your X session)
+bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
+
+# run on startup
+exec /home/bloodstalker/scripts/hived --demon &
+#exec telegram-cli -D -s /home/bloodstalker/scripts/tg.lua &
+exec setxkbmap -option ctrl:nocaps
+exec service start tor
+exec /home/bloodstalker/scripts/keymap.sh
+
+# removes the title bar
+new_window 1pixel
+
+# resize window (you can also use the mouse for that)
+mode "resize" {
+ # These bindings trigger as soon as you enter the resize mode
+
+ # Pressing left will shrink the window’s width.
+ # Pressing right will grow the window’s width.
+ # Pressing up will shrink the window’s height.
+ # Pressing down will grow the window’s height.
+ bindsym j resize shrink width 10 px or 10 ppt
+ bindsym k resize grow height 10 px or 10 ppt
+ bindsym l resize shrink height 10 px or 10 ppt
+ bindsym semicolon resize grow width 10 px or 10 ppt
+
+ # same bindings, but for the arrow keys
+ bindsym Left resize shrink width 10 px or 10 ppt
+ bindsym Down resize grow height 10 px or 10 ppt
+ bindsym Up resize shrink height 10 px or 10 ppt
+ bindsym Right resize grow width 10 px or 10 ppt
+
+ # back to normal: Enter or Escape
+ bindsym Return mode "default"
+ bindsym Escape mode "default"
+}
+
+bindsym $mod+r mode "resize"
+
+# Start i3bar to display a workspace bar (plus the system information i3status
+# finds out, if available)
+bar {
+#separator_symbol ""
+ status_command i3blocks -c ~/scripts/.i3blocks.conf
+ font pango:DejaVu Sans Mono Bold Nerd Font Complete Mono-7 7
+ colors {
+ separator #268bd2
+ background #002b36
+ statusline #839496
+ focused_workspace #0066cc #0099cc #ffffff
+ active_workspace #00cc99 #336633 #ffffff
+ inactive_workspace #002b36 #586e75 #002b36
+ urgent_workspace #d33682 #d33682 #fdf6e3
+ }
+}
+
+#client.focused #3399ff #6699cc #333366 #ffffff
+client.focused #66ccff #333366 #66ccff #66ccff
+client.focused_inactive #111111 #073642 #eee8d5 #6c71c4
+client.unfocused #006633 #073642 #93a1a1 #586e75
+client.urgent #00af00 #00af00 #fdf6e3 #dc322f
+
+#font xft:DejaVu Sans Mono for Powerline Book 12
+font pango:DejaVu Sans Mono for Powerline Book 10
diff --git a/.config/joplin/keymap.json b/.config/joplin/keymap.json
new file mode 100644
index 0000000..354a87b
--- /dev/null
+++ b/.config/joplin/keymap.json
@@ -0,0 +1,4 @@
+[
+ {"keys":["k"],"type":"function","command":"move_up"},
+ {"keys":["j"],"type":"function","command":"move_down"}
+]
diff --git a/.config/pgcli/config b/.config/pgcli/config
new file mode 100644
index 0000000..bc55d6f
--- /dev/null
+++ b/.config/pgcli/config
@@ -0,0 +1,197 @@
+# vi: ft=dosini
+[main]
+
+# Enables context sensitive auto-completion. If this is disabled, all
+# possible completions will be listed.
+smart_completion = True
+
+# Display the completions in several columns. (More completions will be
+# visible.)
+wider_completion_menu = True
+
+# Multi-line mode allows breaking up the sql statements into multiple lines. If
+# this is set to True, then the end of the statements must have a semi-colon.
+# If this is set to False then sql statements can't be split into multiple
+# lines. End of line (return) is considered as the end of the statement.
+multi_line = False
+
+# If multi_line_mode is set to "psql", in multi-line mode, [Enter] will execute
+# the current input if the input ends in a semicolon.
+# If multi_line_mode is set to "safe", in multi-line mode, [Enter] will always
+# insert a newline, and [Esc] [Enter] or [Alt]-[Enter] must be used to execute
+# a command.
+multi_line_mode = psql
+
+# Destructive warning mode will alert you before executing a sql statement
+# that may cause harm to the database such as "drop table", "drop database"
+# or "shutdown".
+destructive_warning = True
+
+# Enables expand mode, which is similar to `\x` in psql.
+expand = False
+
+# Enables auto expand mode, which is similar to `\x auto` in psql.
+auto_expand = True
+
+# If set to True, table suggestions will include a table alias
+generate_aliases = False
+
+# log_file location.
+# In Unix/Linux: ~/.config/pgcli/log
+# In Windows: %USERPROFILE%\AppData\Local\dbcli\pgcli\log
+# %USERPROFILE% is typically C:\Users\{username}
+log_file = default
+
+# keyword casing preference. Possible values: "lower", "upper", "auto"
+keyword_casing = auto
+
+# casing_file location.
+# In Unix/Linux: ~/.config/pgcli/casing
+# In Windows: %USERPROFILE%\AppData\Local\dbcli\pgcli\casing
+# %USERPROFILE% is typically C:\Users\{username}
+casing_file = default
+
+# If generate_casing_file is set to True and there is no file in the above
+# location, one will be generated based on usage in SQL/PLPGSQL functions.
+generate_casing_file = False
+
+# Casing of column headers based on the casing_file described above
+case_column_headers = True
+
+# history_file location.
+# In Unix/Linux: ~/.config/pgcli/history
+# In Windows: %USERPROFILE%\AppData\Local\dbcli\pgcli\history
+# %USERPROFILE% is typically C:\Users\{username}
+history_file = default
+
+# Default log level. Possible values: "CRITICAL", "ERROR", "WARNING", "INFO"
+# and "DEBUG". "NONE" disables logging.
+log_level = INFO
+
+# Order of columns when expanding * to column list
+# Possible values: "table_order" and "alphabetic"
+asterisk_column_order = table_order
+
+# Whether to qualify with table alias/name when suggesting columns
+# Possible values: "always", "never" and "if_more_than_one_table"
+qualify_columns = if_more_than_one_table
+
+# When no schema is entered, only suggest objects in search_path
+search_path_filter = False
+
+# Default pager.
+# By default 'PAGER' environment variable is used
+# pager = bat
+
+# Timing of sql statements and table rendering.
+timing = True
+
+# Show/hide the informational toolbar with function keymap at the footer.
+show_bottom_toolbar = True
+
+# Table format. Possible values: psql, plain, simple, grid, fancy_grid, pipe,
+# ascii, double, github, orgtbl, rst, mediawiki, html, latex, latex_booktabs,
+# textile, moinmoin, jira, vertical, tsv, csv.
+# Recommended: psql, fancy_grid and grid.
+table_format = psql
+
+# Syntax Style. Possible values: manni, igor, xcode, vim, autumn, vs, rrt,
+# native, perldoc, borland, tango, emacs, friendly, monokai, paraiso-dark,
+# colorful, murphy, bw, pastie, paraiso-light, trac, default, fruity
+syntax_style = default
+
+# Keybindings:
+# When Vi mode is enabled you can use modal editing features offered by Vi in the REPL.
+# When Vi mode is disabled emacs keybindings such as Ctrl-A for home and Ctrl-E
+# for end are available in the REPL.
+vi = True
+
+# Error handling
+# When one of multiple SQL statements causes an error, choose to either
+# continue executing the remaining statements, or stopping
+# Possible values "STOP" or "RESUME"
+on_error = STOP
+
+# Set threshold for row limit. Use 0 to disable limiting.
+row_limit = 1000
+
+# Skip intro on startup and goodbye on exit
+less_chatty = False
+
+# Postgres prompt
+# \t - Current date and time
+# \u - Username
+# \h - Short hostname of the server (up to first '.')
+# \H - Hostname of the server
+# \d - Database name
+# \p - Database port
+# \i - Postgres PID
+# \# - "@" sign if logged in as superuser, '>' in other case
+# \n - Newline
+# \dsn_alias - name of dsn alias if -D option is used (empty otherwise)
+# \x1b[...m - insert ANSI escape sequence
+# eg: prompt = '\x1b[35m\u@\x1b[32m\h:\x1b[36m\d>'
+#prompt = '\u@\h:\d> '
+prompt = '\x1b[38;5;31m\# \x1b[38;5;34m\u\x1b[0m@\x1b[38;5;39m\H\x1b[0m:\x1b[38;5;104m\p \x1b[38;5;37m\d \x1b[38;5;69m\t \x1b[38;5;31m\i \x1b[38;5;34m\dsn\n\x1b[38;5;28m>>>\x1b[0m'
+
+# Number of lines to reserve for the suggestion menu
+min_num_menu_lines = 4
+
+# Character used to left pad multi-line queries to match the prompt size.
+multiline_continuation_char = ''
+
+# The string used in place of a null value.
+null_string = '<null>'
+
+# manage pager on startup
+enable_pager = True
+
+# Use keyring to automatically save and load password in a secure manner
+keyring = False
+
+# Custom colors for the completion menu, toolbar, etc.
+[colors]
+completion-menu.completion.current = 'bg:#ffffff #000000'
+completion-menu.completion = 'bg:#008888 #ffffff'
+completion-menu.meta.completion.current = 'bg:#44aaaa #000000'
+completion-menu.meta.completion = 'bg:#448888 #ffffff'
+completion-menu.multi-column-meta = 'bg:#aaffff #000000'
+scrollbar.arrow = 'bg:#003333'
+scrollbar = 'bg:#00aaaa'
+selected = '#ffffff bg:#6666aa'
+search = '#ffffff bg:#4444aa'
+search.current = '#ffffff bg:#44aa44'
+bottom-toolbar = 'bg:#222222 #aaaaaa'
+bottom-toolbar.off = 'bg:#222222 #888888'
+bottom-toolbar.on = 'bg:#222222 #ffffff'
+search-toolbar = 'noinherit bold'
+search-toolbar.text = 'nobold'
+system-toolbar = 'noinherit bold'
+arg-toolbar = 'noinherit bold'
+arg-toolbar.text = 'nobold'
+bottom-toolbar.transaction.valid = 'bg:#222222 #00ff5f bold'
+bottom-toolbar.transaction.failed = 'bg:#222222 #ff005f bold'
+literal.string = '#ba2121'
+literal.number = '#666666'
+keyword = 'bold #008000'
+
+# style classes for colored table output
+output.header = "#00ff5f bold"
+output.odd-row = ""
+output.even-row = ""
+output.null = "#808080"
+
+# Named queries are queries you can execute by name.
+[named queries]
+dd = "select * from $1"
+
+# DSN to call by -D option
+[alias_dsn]
+# example_dsn = postgresql://[user[:password]@][netloc][:port][/dbname]
+
+# Format for number representation
+# for decimal "d" - 12345678, ",d" - 12,345,678
+# for float "g" - 123456.78, ",g" - 123,456.78
+[data_formats]
+decimal = ""
+float = ""
diff --git a/.config/qutebrowser/bookmarks/urls b/.config/qutebrowser/bookmarks/urls
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.config/qutebrowser/bookmarks/urls
diff --git a/.config/qutebrowser/config.py b/.config/qutebrowser/config.py
new file mode 100644
index 0000000..b1be151
--- /dev/null
+++ b/.config/qutebrowser/config.py
@@ -0,0 +1,101 @@
+import os
+solarized = {
+ 'base03': '#002b36',
+ 'base02': '#073642',
+ 'base01': '#586e75',
+ 'base00': '#657b83',
+ 'base0': '#839496',
+ 'base1': '#93a1a1',
+ 'base2': '#eee8d5',
+ 'base3': '#fdf6e3',
+ 'yellow': '#b58900',
+ 'orange': '#cb4b16',
+ 'red': '#dc322f',
+ 'magenta': '#d33682',
+ 'violet': '#6c71c4',
+ 'blue': '#268bd2',
+ 'cyan': '#2aa198',
+ 'green': '#859900'
+}
+
+c.colors.completion.category.bg = solarized['base03']
+c.colors.completion.category.border.bottom = solarized['base03']
+c.colors.completion.category.border.top = solarized['base03']
+c.colors.completion.category.fg = solarized['base3']
+c.colors.completion.even.bg = solarized['base02']
+c.colors.completion.fg = solarized['base3']
+c.colors.completion.item.selected.bg = solarized['violet']
+c.colors.completion.item.selected.border.bottom = solarized['violet']
+c.colors.completion.item.selected.border.top = solarized['violet']
+c.colors.completion.item.selected.fg = solarized['base3']
+c.colors.completion.match.fg = solarized['base2']
+c.colors.completion.odd.bg = solarized['base02']
+c.colors.completion.scrollbar.bg = solarized['base0']
+c.colors.completion.scrollbar.fg = solarized['base2']
+c.colors.downloads.bar.bg = solarized['base03']
+c.colors.downloads.error.bg = solarized['red']
+c.colors.downloads.error.fg = solarized['base3']
+c.colors.downloads.start.bg = '#0000aa'
+c.colors.downloads.start.fg = solarized['base3']
+c.colors.downloads.stop.bg = '#00aa00'
+c.colors.downloads.stop.fg = solarized['base3']
+c.colors.downloads.system.bg = 'rgb'
+c.colors.downloads.system.fg = 'rgb'
+c.colors.hints.bg = solarized['violet']
+c.colors.hints.fg = solarized['base3']
+c.colors.hints.match.fg = solarized['base2']
+c.colors.keyhint.bg = 'rgba(0, 0, 0, 80%)'
+c.colors.keyhint.fg = solarized['base3']
+c.colors.keyhint.suffix.fg = solarized['yellow']
+c.colors.messages.error.bg = solarized['red']
+c.colors.messages.error.border = solarized['red']
+c.colors.messages.error.fg = solarized['base3']
+c.colors.messages.info.bg = solarized['base03']
+c.colors.messages.info.border = solarized['base03']
+c.colors.messages.info.fg = solarized['base3']
+c.colors.messages.warning.bg = solarized['orange']
+c.colors.messages.warning.border = solarized['orange']
+c.colors.messages.warning.fg = solarized['base3']
+c.colors.prompts.bg = solarized['base02']
+c.colors.prompts.border = '1px solid ' + solarized['base3']
+c.colors.prompts.fg = solarized['base3']
+c.colors.prompts.selected.bg = solarized['base01']
+c.colors.statusbar.caret.bg = solarized['blue']
+c.colors.statusbar.caret.fg = solarized['base3']
+c.colors.statusbar.caret.selection.bg = solarized['violet']
+c.colors.statusbar.caret.selection.fg = solarized['base3']
+c.colors.statusbar.command.bg = solarized['base03']
+c.colors.statusbar.command.fg = solarized['base3']
+c.colors.statusbar.command.private.bg = solarized['base01']
+c.colors.statusbar.command.private.fg = solarized['base3']
+c.colors.statusbar.insert.bg = solarized['green']
+c.colors.statusbar.insert.fg = solarized['base3']
+c.colors.statusbar.normal.bg = solarized['base03']
+c.colors.statusbar.normal.fg = solarized['base3']
+c.colors.statusbar.passthrough.bg = solarized['magenta']
+c.colors.statusbar.passthrough.fg = solarized['base3']
+c.colors.statusbar.private.bg = solarized['base01']
+c.colors.statusbar.private.fg = solarized['base3']
+c.colors.statusbar.progress.bg = solarized['base3']
+c.colors.statusbar.url.error.fg = solarized['red']
+c.colors.statusbar.url.fg = solarized['base3']
+c.colors.statusbar.url.hover.fg = solarized['base2']
+c.colors.statusbar.url.success.http.fg = solarized['base3']
+c.colors.statusbar.url.success.https.fg = solarized['base3']
+c.colors.statusbar.url.warn.fg = solarized['yellow']
+c.colors.tabs.bar.bg = '#555555'
+c.colors.tabs.even.bg = solarized['base01']
+c.colors.tabs.even.fg = solarized['base2']
+c.colors.tabs.indicator.error = solarized['red']
+c.colors.tabs.indicator.start = solarized['violet']
+c.colors.tabs.indicator.stop = solarized['orange']
+c.colors.tabs.odd.bg = solarized['base01']
+c.colors.tabs.odd.fg = solarized['base2']
+c.colors.tabs.selected.even.bg = solarized['base03']
+c.colors.tabs.selected.even.fg = solarized['base3']
+c.colors.tabs.selected.odd.bg = solarized['base03']
+c.colors.tabs.selected.odd.fg = solarized['base3']
+
+c.auto_save.session = True
+c.content.user_stylesheets = "/home/bloodstalker/solarized-everything-css/css/gruvbox/gruvbox-all-sites.css"
+config.source('nord-qutebrowser.py')
diff --git a/.config/qutebrowser/keys.conf b/.config/qutebrowser/keys.conf
new file mode 100644
index 0000000..21acc1c
--- /dev/null
+++ b/.config/qutebrowser/keys.conf
@@ -0,0 +1,693 @@
+# vim: ft=conf
+#
+# In this config file, qutebrowser's key bindings are configured.
+# The format looks like this:
+#
+# [keymode]
+#
+# command
+# keychain
+# keychain2
+# ...
+#
+# All blank lines and lines starting with '#' are ignored.
+# Inline-comments are not permitted.
+#
+# keymode is a comma separated list of modes in which the key binding should be
+# active. If keymode starts with !, the key binding is active in all modes
+# except the listed modes.
+#
+# For special keys (can't be part of a keychain), enclose them in `<`...`>`.
+# For modifiers, you can use either `-` or `+` as delimiters, and these names:
+#
+# * Control: `Control`, `Ctrl`
+# * Meta: `Meta`, `Windows`, `Mod4`
+# * Alt: `Alt`, `Mod1`
+# * Shift: `Shift`
+#
+# For simple keys (no `<>`-signs), a capital letter means the key is pressed
+# with Shift. For special keys (with `<>`-signs), you need to explicitly add
+# `Shift-` to match a key pressed with shift.
+#
+# Note that default keybindings are always bound, and need to be explicitly
+# unbound if you wish to remove them:
+#
+# <unbound>
+# keychain
+# keychain2
+# ...
+
+[!normal]
+
+leave-mode
+ <escape>
+ <ctrl-[>
+
+[normal]
+# Keybindings for normal mode.
+
+clear-keychain ;; search ;; fullscreen --leave
+ <escape>
+ <ctrl-[>
+
+set-cmd-text -s :open
+ o
+
+set-cmd-text :open {url:pretty}
+ go
+
+set-cmd-text -s :open -t
+ O
+
+set-cmd-text :open -t -i {url:pretty}
+ gO
+
+set-cmd-text -s :open -b
+ xo
+
+set-cmd-text :open -b -i {url:pretty}
+ xO
+
+set-cmd-text -s :open -w
+ wo
+
+set-cmd-text :open -w {url:pretty}
+ wO
+
+set-cmd-text /
+ /
+
+set-cmd-text ?
+ ?
+
+set-cmd-text :
+ :
+
+open -t
+ ga
+ <ctrl-t>
+
+open -w
+ <ctrl-n>
+
+tab-close
+ d
+ <ctrl-w>
+
+tab-close -o
+ D
+
+tab-only
+ co
+
+tab-focus
+ T
+
+tab-move
+ gm
+
+tab-move -
+ gl
+
+tab-move +
+ gr
+
+tab-next
+ J
+ <ctrl-pgdown>
+
+tab-prev
+ K
+ <ctrl-pgup>
+
+tab-clone
+ gC
+
+reload
+ r
+ <f5>
+
+reload -f
+ R
+ <ctrl-f5>
+
+back
+ H
+ <back>
+
+back -t
+ th
+
+back -w
+ wh
+
+forward
+ L
+ <forward>
+
+forward -t
+ tl
+
+forward -w
+ wl
+
+fullscreen
+ <f11>
+
+hint
+ f
+
+hint all tab
+ F
+
+hint all window
+ wf
+
+hint all tab-bg
+ ;b
+
+hint all tab-fg
+ ;f
+
+hint all hover
+ ;h
+
+hint images
+ ;i
+
+hint images tab
+ ;I
+
+hint links fill :open {hint-url}
+ ;o
+
+hint links fill :open -t -i {hint-url}
+ ;O
+
+hint links yank
+ ;y
+
+hint links yank-primary
+ ;Y
+
+hint --rapid links tab-bg
+ ;r
+
+hint --rapid links window
+ ;R
+
+hint links download
+ ;d
+
+hint inputs
+ ;t
+
+scroll left
+ h
+
+scroll down
+ j
+
+scroll up
+ k
+
+scroll right
+ l
+
+undo
+ u
+ <ctrl-shift-t>
+
+scroll-perc 0
+ gg
+
+scroll-perc
+ G
+
+search-next
+ n
+
+search-prev
+ N
+
+enter-mode insert
+ i
+
+enter-mode caret
+ v
+
+enter-mode set_mark
+ `
+
+enter-mode jump_mark
+ '
+
+yank
+ yy
+
+yank -s
+ yY
+
+yank title
+ yt
+
+yank title -s
+ yT
+
+yank domain
+ yd
+
+yank domain -s
+ yD
+
+yank pretty-url
+ yp
+
+yank pretty-url -s
+ yP
+
+open -- {clipboard}
+ pp
+
+open -- {primary}
+ pP
+
+open -t -- {clipboard}
+ Pp
+
+open -t -- {primary}
+ PP
+
+open -w -- {clipboard}
+ wp
+
+open -w -- {primary}
+ wP
+
+quickmark-save
+ m
+
+set-cmd-text -s :quickmark-load
+ b
+
+set-cmd-text -s :quickmark-load -t
+ B
+
+set-cmd-text -s :quickmark-load -w
+ wb
+
+bookmark-add
+ M
+
+set-cmd-text -s :bookmark-load
+ gb
+
+set-cmd-text -s :bookmark-load -t
+ gB
+
+set-cmd-text -s :bookmark-load -w
+ wB
+
+save
+ sf
+
+set-cmd-text -s :set
+ ss
+
+set-cmd-text -s :set -t
+ sl
+
+set-cmd-text -s :bind
+ sk
+
+zoom-out
+ -
+
+zoom-in
+ +
+
+zoom
+ =
+
+navigate prev
+ [[
+
+navigate next
+ ]]
+
+navigate prev -t
+ {{
+
+navigate next -t
+ }}
+
+navigate up
+ gu
+
+navigate up -t
+ gU
+
+navigate increment
+ <ctrl-a>
+
+navigate decrement
+ <ctrl-x>
+
+inspector
+ wi
+
+download
+ gd
+
+download-cancel
+ ad
+
+download-clear
+ cd
+
+view-source
+ gf
+
+set-cmd-text -s :buffer
+ gt
+
+tab-focus last
+ <ctrl-tab>
+
+enter-mode passthrough
+ <ctrl-v>
+
+quit
+ <ctrl-q>
+
+scroll-page 0 1
+ <ctrl-f>
+
+scroll-page 0 -1
+ <ctrl-b>
+
+scroll-page 0 0.5
+ <ctrl-d>
+
+scroll-page 0 -0.5
+ <ctrl-u>
+
+tab-focus 1
+ <alt-1>
+
+tab-focus 2
+ <alt-2>
+
+tab-focus 3
+ <alt-3>
+
+tab-focus 4
+ <alt-4>
+
+tab-focus 5
+ <alt-5>
+
+tab-focus 6
+ <alt-6>
+
+tab-focus 7
+ <alt-7>
+
+tab-focus 8
+ <alt-8>
+
+tab-focus 9
+ <alt-9>
+
+home
+ <ctrl-h>
+
+stop
+ <ctrl-s>
+
+print
+ <ctrl-alt-p>
+
+open qute:settings
+ Ss
+
+follow-selected
+ <return>
+ <ctrl-m>
+ <ctrl-j>
+ <shift-return>
+ <enter>
+ <shift-enter>
+
+follow-selected -t
+ <ctrl-return>
+ <ctrl-enter>
+
+repeat-command
+ .
+
+record-macro
+ q
+
+run-macro
+ @
+
+[insert]
+# Keybindings for insert mode.
+# Since normal keypresses are passed through, only special keys are
+# supported in this mode.
+# Useful hidden commands to map in this section:
+# * `open-editor`: Open a texteditor with the focused field.
+# * `paste-primary`: Paste primary selection at cursor position.
+
+open-editor
+ <ctrl-e>
+
+insert-text {primary}
+ <shift-ins>
+
+[hint]
+# Keybindings for hint mode.
+# Since normal keypresses are passed through, only special keys are
+# supported in this mode.
+# Useful hidden commands to map in this section:
+# * `follow-hint`: Follow the currently selected hint.
+
+follow-hint
+ <return>
+ <ctrl-m>
+ <ctrl-j>
+ <shift-return>
+ <enter>
+ <shift-enter>
+
+hint --rapid links tab-bg
+ <ctrl-r>
+
+hint links
+ <ctrl-f>
+
+hint all tab-bg
+ <ctrl-b>
+
+[command]
+# Keybindings for command mode.
+# Since normal keypresses are passed through, only special keys are
+# supported in this mode.
+# Useful hidden commands to map in this section:
+# * `command-history-prev`: Switch to previous command in history.
+# * `command-history-next`: Switch to next command in history.
+# * `completion-item-focus`: Select another item in completion.
+# * `command-accept`: Execute the command currently in the commandline.
+
+command-history-prev
+ <ctrl-p>
+
+command-history-next
+ <ctrl-n>
+
+completion-item-focus prev
+ <shift-tab>
+ <up>
+
+completion-item-focus next
+ <tab>
+ <down>
+
+completion-item-focus next-category
+ <ctrl-tab>
+
+completion-item-focus prev-category
+ <ctrl-shift-tab>
+
+completion-item-del
+ <ctrl-d>
+
+command-accept
+ <return>
+ <ctrl-m>
+ <ctrl-j>
+ <shift-return>
+ <enter>
+ <shift-enter>
+
+[prompt]
+# Keybindings for prompts in the status line.
+# You can bind normal keys in this mode, but they will be only active
+# when a yes/no-prompt is asked. For other prompt modes, you can only
+# bind special keys.
+# Useful hidden commands to map in this section:
+# * `prompt-accept`: Confirm the entered value.
+# * `prompt-accept yes`: Answer yes to a yes/no question.
+# * `prompt-accept no`: Answer no to a yes/no question.
+
+prompt-accept
+ <return>
+ <ctrl-m>
+ <ctrl-j>
+ <shift-return>
+ <enter>
+ <shift-enter>
+
+prompt-accept yes
+ y
+
+prompt-accept no
+ n
+
+prompt-open-download
+ <ctrl-x>
+
+prompt-item-focus prev
+ <shift-tab>
+ <up>
+
+prompt-item-focus next
+ <tab>
+ <down>
+
+[command,prompt]
+
+rl-backward-char
+ <ctrl-b>
+
+rl-forward-char
+ <ctrl-f>
+
+rl-backward-word
+ <alt-b>
+
+rl-forward-word
+ <alt-f>
+
+rl-beginning-of-line
+ <ctrl-a>
+
+rl-end-of-line
+ <ctrl-e>
+
+rl-unix-line-discard
+ <ctrl-u>
+
+rl-kill-line
+ <ctrl-k>
+
+rl-kill-word
+ <alt-d>
+
+rl-unix-word-rubout
+ <ctrl-w>
+
+rl-backward-kill-word
+ <alt-backspace>
+
+rl-yank
+ <ctrl-y>
+
+rl-delete-char
+ <ctrl-?>
+
+rl-backward-delete-char
+ <ctrl-h>
+
+[caret]
+
+toggle-selection
+ v
+ <space>
+
+drop-selection
+ <ctrl-space>
+
+enter-mode normal
+ c
+
+move-to-next-line
+ j
+
+move-to-prev-line
+ k
+
+move-to-next-char
+ l
+
+move-to-prev-char
+ h
+
+move-to-end-of-word
+ e
+
+move-to-next-word
+ w
+
+move-to-prev-word
+ b
+
+move-to-start-of-next-block
+ ]
+
+move-to-start-of-prev-block
+ [
+
+move-to-end-of-next-block
+ }
+
+move-to-end-of-prev-block
+ {
+
+move-to-start-of-line
+ 0
+
+move-to-end-of-line
+ $
+
+move-to-start-of-document
+ gg
+
+move-to-end-of-document
+ G
+
+yank selection -s
+ Y
+
+yank selection
+ y
+ <return>
+ <ctrl-m>
+ <ctrl-j>
+ <shift-return>
+ <enter>
+ <shift-enter>
+
+scroll left
+ H
+
+scroll down
+ J
+
+scroll up
+ K
+
+scroll right
+ L
+
diff --git a/.config/qutebrowser/nord-qutebrowser.py b/.config/qutebrowser/nord-qutebrowser.py
new file mode 120000
index 0000000..f76a0c3
--- /dev/null
+++ b/.config/qutebrowser/nord-qutebrowser.py
@@ -0,0 +1 @@
+/home/bloodstalker/nord-qutebrowser/nord-qutebrowser.py \ No newline at end of file
diff --git a/.config/qutebrowser/quickmarks b/.config/qutebrowser/quickmarks
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.config/qutebrowser/quickmarks
diff --git a/.config/qutebrowser/qutebrowser.conf b/.config/qutebrowser/qutebrowser.conf
new file mode 100644
index 0000000..b05cc4f
--- /dev/null
+++ b/.config/qutebrowser/qutebrowser.conf
@@ -0,0 +1,1572 @@
+# vim: ft=dosini
+
+# Configfile for qutebrowser.
+#
+# This configfile is parsed by python's configparser in extended
+# interpolation mode. The format is very INI-like, so there are
+# categories like [general] with "key = value"-pairs.
+#
+# Note that you shouldn't add your own comments, as this file is
+# regenerated every time the config is saved.
+#
+# Interpolation looks like ${value} or ${section:value} and will be
+# replaced by the respective value.
+#
+# Some settings will expand environment variables. Note that, since
+# interpolation is run first, you will need to escape the $ char as
+# described below.
+#
+# This is the default config, so if you want to remove anything from
+# here (as opposed to change/add), for example a key binding, set it to
+# an empty value.
+#
+# You will need to escape the following values:
+# - # at the start of the line (at the first position of the key) (\#)
+# - $ in a value ($$)
+
+[general]
+# General/miscellaneous options.
+#
+# ignore-case (IgnoreCase):
+# Whether to find text on a page case-insensitively.
+# true: Search case-insensitively
+# false: Search case-sensitively
+# smart: Search case-sensitively if there are capital chars
+# Default: smart
+#
+# startpage (List of String):
+# The default page(s) to open at the start, separated by commas.
+# Default: https://start.duckduckgo.com
+#
+# yank-ignored-url-parameters (List of String):
+# The URL parameters to strip with :yank url, separated by commas.
+# Default:
+# ref,utm_source,utm_medium,utm_campaign,utm_term,utm_content
+#
+# default-open-dispatcher (String):
+# The default program used to open downloads. Set to an empty string
+# to use the default internal handler.
+# Any {} in the string will be expanded to the filename, else the
+# filename will be appended.
+# Default:
+#
+# default-page (FuzzyUrl):
+# The page to open if :open -t/-b/-w is used without URL. Use
+# `about:blank` for a blank page.
+# Default: ${startpage}
+#
+# auto-search (AutoSearch):
+# Whether to start a search when something else than a URL is
+# entered.
+# naive: Use simple/naive check.
+# dns: Use DNS requests (might be slow!).
+# false: Never search automatically.
+# Default: naive
+#
+# auto-save-config (Bool):
+# Whether to save the config automatically on quit.
+# Valid values: true, false
+# Default: true
+#
+# auto-save-interval (Int):
+# How often (in milliseconds) to auto-save config/cookies/etc.
+# Default: 15000
+#
+# editor (ShellCommand):
+# The editor (and arguments) to use for the `open-editor` command.
+# The arguments get split like in a shell, so you can use `"` or `'`
+# to quote them.
+# `{}` gets replaced by the filename of the file to be edited.
+# Default: gvim -f "{}"
+#
+# editor-encoding (Encoding):
+# Encoding to use for editor.
+# Default: utf-8
+#
+# private-browsing (Bool):
+# Do not record visited pages in the history or store web page
+# icons.
+# Valid values: true, false
+# Default: false
+#
+# developer-extras (Bool):
+# Enable extra tools for Web developers.
+# This needs to be enabled for `:inspector` to work and also adds an
+# _Inspect_ entry to the context menu. For QtWebEngine, see
+# 'qutebrowser --help' instead.
+# Valid values: true, false
+# Default: false
+#
+# print-element-backgrounds (Bool):
+# Whether the background color and images are also drawn when the
+# page is printed.
+# This setting only works with Qt 5.8 or newer when using the
+# QtWebEngine backend.
+# Valid values: true, false
+# Default: true
+#
+# xss-auditing (Bool):
+# Whether load requests should be monitored for cross-site scripting
+# attempts.
+# Suspicious scripts will be blocked and reported in the inspector's
+# JavaScript console. Enabling this feature might have an impact on
+# performance.
+# Valid values: true, false
+# Default: false
+#
+# site-specific-quirks (Bool):
+# Enable QtWebKit workarounds for broken sites.
+# Valid values: true, false
+# Default: true
+#
+# default-encoding (String):
+# Default encoding to use for websites.
+# The encoding must be a string describing an encoding such as
+# _utf-8_, _iso-8859-1_, etc. If left empty a default value will be
+# used.
+# Default:
+#
+# new-instance-open-target (String):
+# How to open links in an existing instance if a new one is
+# launched.
+# tab: Open a new tab in the existing window and activate the
+# window.
+# tab-bg: Open a new background tab in the existing window and
+# activate the window.
+# tab-silent: Open a new tab in the existing window without
+# activating the window.
+# tab-bg-silent: Open a new background tab in the existing
+# window without activating the window.
+# window: Open in a new window.
+# Default: tab
+#
+# new-instance-open-target.window (String):
+# Which window to choose when opening links as new tabs.
+# first-opened: Open new tabs in the first (oldest) opened
+# window.
+# last-opened: Open new tabs in the last (newest) opened window.
+# last-focused: Open new tabs in the most recently focused
+# window.
+# last-visible: Open new tabs in the most recently visible
+# window.
+# Default: last-focused
+#
+# log-javascript-console (String):
+# How to log javascript console messages.
+# none: Don't log messages.
+# debug: Log messages with debug level.
+# info: Log messages with info level.
+# Default: debug
+#
+# save-session (Bool):
+# Whether to always save the open pages.
+# Valid values: true, false
+# Default: false
+#
+# session-default-name (SessionName):
+# The name of the session to save by default, or empty for the last
+# loaded session.
+# Default:
+#
+# url-incdec-segments (FlagList):
+# The URL segments where `:navigate increment/decrement` will search
+# for a number.
+# Valid values: host, path, query, anchor
+# Default: path,query
+ignore-case = smart
+startpage = https://start.duckduckgo.com
+yank-ignored-url-parameters = ref,utm_source,utm_medium,utm_campaign,utm_term,utm_content
+default-open-dispatcher =
+default-page = ${startpage}
+auto-search = naive
+auto-save-config = true
+auto-save-interval = 15000
+editor = gvim -f "{}"
+editor-encoding = utf-8
+private-browsing = true
+developer-extras = true
+print-element-backgrounds = true
+xss-auditing = true
+site-specific-quirks = true
+default-encoding =
+new-instance-open-target = tab
+new-instance-open-target.window = last-focused
+log-javascript-console = debug
+save-session = false
+session-default-name =
+url-incdec-segments = path,query
+
+[ui]
+# General options related to the user interface.
+#
+# zoom-levels (List of Perc):
+# The available zoom levels, separated by commas.
+# Default:
+# 25%,33%,50%,67%,75%,90%,100%,110%,125%,150%,175%,200%,250%,300%,400%,500%
+#
+# default-zoom (Perc):
+# The default zoom level.
+# Default: 100%
+#
+# downloads-position (VerticalPosition):
+# Where to show the downloaded files.
+# Valid values: top, bottom
+# Default: top
+#
+# status-position (VerticalPosition):
+# The position of the status bar.
+# Valid values: top, bottom
+# Default: bottom
+#
+# message-timeout (Int):
+# Time (in ms) to show messages in the statusbar for.
+# Default: 2000
+#
+# message-unfocused (Bool):
+# Whether to show messages in unfocused windows.
+# Valid values: true, false
+# Default: false
+#
+# confirm-quit (ConfirmQuit):
+# Whether to confirm quitting the application.
+# always: Always show a confirmation.
+# multiple-tabs: Show a confirmation if multiple tabs are
+# opened.
+# downloads: Show a confirmation if downloads are running
+# never: Never show a confirmation.
+# Default: never
+#
+# zoom-text-only (Bool):
+# Whether the zoom factor on a frame applies only to the text or to
+# all content.
+# Valid values: true, false
+# Default: false
+#
+# frame-flattening (Bool):
+# Whether to expand each subframe to its contents.
+# This will flatten all the frames to become one scrollable page.
+# Valid values: true, false
+# Default: false
+#
+# user-stylesheet (File):
+# User stylesheet to use (absolute filename or filename relative to
+# the config directory). Will expand environment variables.
+# Default:
+#
+# hide-scrollbar (Bool):
+# Hide the main scrollbar.
+# Valid values: true, false
+# Default: true
+#
+# css-media-type (String):
+# Set the CSS media type.
+# Default:
+#
+# smooth-scrolling (Bool):
+# Whether to enable smooth scrolling for webpages.
+# Valid values: true, false
+# Default: false
+#
+# remove-finished-downloads (Int):
+# Number of milliseconds to wait before removing finished downloads.
+# Will not be removed if value is -1.
+# Default: -1
+#
+# hide-statusbar (Bool):
+# Whether to hide the statusbar unless a message is shown.
+# Valid values: true, false
+# Default: false
+#
+# statusbar-padding (Padding):
+# Padding for statusbar (top, bottom, left, right).
+# Default: 1,1,0,0
+#
+# window-title-format (FormatString):
+# The format to use for the window title. The following placeholders
+# are defined:
+# * `{perc}`: The percentage as a string like `[10%]`.
+# * `{perc_raw}`: The raw percentage, e.g. `10`
+# * `{title}`: The title of the current web page
+# * `{title_sep}`: The string ` - ` if a title is set, empty
+# otherwise.
+# * `{id}`: The internal window ID of this window.
+# * `{scroll_pos}`: The page scroll position.
+# * `{host}`: The host of the current web page.
+# * `{backend}`: Either 'webkit' or 'webengine'
+# Default: {perc}{title}{title_sep}qutebrowser
+#
+# modal-js-dialog (Bool):
+# Use standard JavaScript modal dialog for alert() and confirm()
+# Valid values: true, false
+# Default: false
+#
+# hide-wayland-decoration (Bool):
+# Hide the window decoration when using wayland (requires restart)
+# Valid values: true, false
+# Default: false
+#
+# keyhint-blacklist (List of String):
+# Keychains that shouldn't be shown in the keyhint dialog
+# Globs are supported, so ';*' will blacklist all keychainsstarting
+# with ';'. Use '*' to disable keyhints
+# Default:
+#
+# prompt-radius (Int):
+# The rounding radius for the edges of prompts.
+# Default: 8
+#
+# prompt-filebrowser (Bool):
+# Show a filebrowser in upload/download prompts.
+# Valid values: true, false
+# Default: true
+zoom-levels = 25%,33%,50%,67%,75%,90%,100%,110%,125%,150%,175%,200%,250%,300%,400%,500%
+default-zoom = 100%
+downloads-position = top
+status-position = bottom
+message-timeout = 2000
+message-unfocused = false
+confirm-quit = never
+zoom-text-only = false
+frame-flattening = false
+user-stylesheet =
+hide-scrollbar = true
+css-media-type =
+smooth-scrolling = false
+remove-finished-downloads = -1
+hide-statusbar = false
+statusbar-padding = 1,1,0,0
+window-title-format = {perc}{title}{title_sep}qutebrowser
+modal-js-dialog = false
+hide-wayland-decoration = false
+keyhint-blacklist =
+prompt-radius = 8
+prompt-filebrowser = true
+
+[network]
+# Settings related to the network.
+#
+# do-not-track (Bool):
+# Value to send in the `DNT` header.
+# Valid values: true, false
+# Default: true
+#
+# accept-language (String):
+# Value to send in the `accept-language` header.
+# Default: en-US,en
+#
+# referer-header (String):
+# Send the Referer header
+# always: Always send.
+# never: Never send; this is not recommended, as some sites may
+# break.
+# same-domain: Only send for the same domain. This will still
+# protect your privacy, but shouldn't break any sites.
+# Default: same-domain
+#
+# user-agent (UserAgent):
+# User agent to send. Empty to send the default.
+# Default:
+#
+# proxy (Proxy):
+# The proxy to use.
+# In addition to the listed values, you can use a `socks://...` or
+# `http://...` URL.
+# This setting only works with Qt 5.8 or newer when using the
+# QtWebEngine backend.
+# system: Use the system wide proxy.
+# none: Don't use any proxy
+# Default: system
+#
+# proxy-dns-requests (Bool):
+# Whether to send DNS requests over the configured proxy.
+# Valid values: true, false
+# Default: true
+#
+# ssl-strict (BoolAsk):
+# Whether to validate SSL handshakes.
+# Valid values: true, false, ask
+# Default: ask
+#
+# dns-prefetch (Bool):
+# Whether to try to pre-fetch DNS entries to speed up browsing.
+# Valid values: true, false
+# Default: true
+#
+# custom-headers (HeaderDict):
+# Set custom headers for qutebrowser HTTP requests.
+# Default:
+#
+# netrc-file (File):
+# Set location of a netrc-file for HTTP authentication. If empty,
+# ~/.netrc is used.
+# Default:
+do-not-track = true
+accept-language = en-US,en
+referer-header = same-domain
+user-agent =
+proxy = system
+proxy-dns-requests = true
+ssl-strict = ask
+dns-prefetch = true
+custom-headers =
+netrc-file =
+
+[completion]
+# Options related to completion and command history.
+#
+# show (String):
+# When to show the autocompletion window.
+# always: Whenever a completion is available.
+# auto: Whenever a completion is requested.
+# never: Never.
+# Default: always
+#
+# download-path-suggestion (String):
+# What to display in the download filename input.
+# path: Show only the download path.
+# filename: Show only download filename.
+# both: Show download path and filename.
+# Default: path
+#
+# timestamp-format (TimestampTemplate):
+# How to format timestamps (e.g. for history)
+# Default: %Y-%m-%d
+#
+# height (PercOrInt):
+# The height of the completion, in px or as percentage of the
+# window.
+# Default: 50%
+#
+# cmd-history-max-items (Int):
+# How many commands to save in the command history.
+# 0: no history / -1: unlimited
+# Default: 100
+#
+# web-history-max-items (Int):
+# How many URLs to show in the web history.
+# 0: no history / -1: unlimited
+# Default: 1000
+#
+# quick-complete (Bool):
+# Whether to move on to the next part when there's only one possible
+# completion left.
+# Valid values: true, false
+# Default: true
+#
+# shrink (Bool):
+# Whether to shrink the completion to be smaller than the configured
+# size if there are no scrollbars.
+# Valid values: true, false
+# Default: false
+#
+# scrollbar-width (Int):
+# Width of the scrollbar in the completion window (in px).
+# Default: 12
+#
+# scrollbar-padding (Int):
+# Padding of scrollbar handle in completion window (in px).
+# Default: 2
+show = always
+download-path-suggestion = path
+timestamp-format = %Y-%m-%d
+height = 50%
+cmd-history-max-items = 100
+web-history-max-items = 1000
+quick-complete = true
+shrink = false
+scrollbar-width = 12
+scrollbar-padding = 2
+
+[input]
+# Options related to input modes.
+#
+# timeout (Int):
+# Timeout (in milliseconds) for ambiguous key bindings.
+# If the current input forms both a complete match and a partial
+# match, the complete match will be executed after this time.
+# Default: 500
+#
+# partial-timeout (Int):
+# Timeout (in milliseconds) for partially typed key bindings.
+# If the current input forms only partial matches, the keystring
+# will be cleared after this time.
+# Default: 5000
+#
+# insert-mode-on-plugins (Bool):
+# Whether to switch to insert mode when clicking flash and other
+# plugins.
+# Valid values: true, false
+# Default: false
+#
+# auto-leave-insert-mode (Bool):
+# Whether to leave insert mode if a non-editable element is clicked.
+# Valid values: true, false
+# Default: true
+#
+# auto-insert-mode (Bool):
+# Whether to automatically enter insert mode if an editable element
+# is focused after page load.
+# Valid values: true, false
+# Default: false
+#
+# forward-unbound-keys (String):
+# Whether to forward unbound keys to the webview in normal mode.
+# all: Forward all unbound keys.
+# auto: Forward unbound non-alphanumeric keys.
+# none: Don't forward any keys.
+# Default: auto
+#
+# spatial-navigation (Bool):
+# Enables or disables the Spatial Navigation feature.
+# Spatial navigation consists in the ability to navigate between
+# focusable elements in a Web page, such as hyperlinks and form
+# controls, by using Left, Right, Up and Down arrow keys. For
+# example, if a user presses the Right key, heuristics determine
+# whether there is an element he might be trying to reach towards
+# the right and which element he probably wants.
+# Valid values: true, false
+# Default: false
+#
+# links-included-in-focus-chain (Bool):
+# Whether hyperlinks should be included in the keyboard focus chain.
+# Valid values: true, false
+# Default: true
+#
+# rocker-gestures (Bool):
+# Whether to enable Opera-like mouse rocker gestures. This disables
+# the context menu.
+# Valid values: true, false
+# Default: false
+#
+# mouse-zoom-divider (Int):
+# How much to divide the mouse wheel movements to translate them
+# into zoom increments.
+# Default: 512
+timeout = 500
+partial-timeout = 5000
+insert-mode-on-plugins = false
+auto-leave-insert-mode = true
+auto-insert-mode = false
+forward-unbound-keys = auto
+spatial-navigation = false
+links-included-in-focus-chain = true
+rocker-gestures = false
+mouse-zoom-divider = 512
+
+[tabs]
+# Configuration of the tab bar.
+#
+# background-tabs (Bool):
+# Whether to open new tabs (middleclick/ctrl+click) in background.
+# Valid values: true, false
+# Default: false
+#
+# select-on-remove (SelectOnRemove):
+# Which tab to select when the focused tab is removed.
+# prev: Select the tab which came before the closed one (left in
+# horizontal, above in vertical).
+# next: Select the tab which came after the closed one (right in
+# horizontal, below in vertical).
+# last-used: Select the previously selected tab.
+# Default: next
+#
+# new-tab-position (NewTabPosition):
+# How new tabs are positioned.
+# prev: Before the current tab.
+# next: After the current tab.
+# first: At the beginning.
+# last: At the end.
+# Default: next
+#
+# new-tab-position-explicit (NewTabPosition):
+# How new tabs opened explicitly are positioned.
+# prev: Before the current tab.
+# next: After the current tab.
+# first: At the beginning.
+# last: At the end.
+# Default: last
+#
+# last-close (String):
+# Behavior when the last tab is closed.
+# ignore: Don't do anything.
+# blank: Load a blank page.
+# startpage: Load the start page.
+# default-page: Load the default page.
+# close: Close the window.
+# Default: ignore
+#
+# show (String):
+# When to show the tab bar
+# always: Always show the tab bar.
+# never: Always hide the tab bar.
+# multiple: Hide the tab bar if only one tab is open.
+# switching: Show the tab bar when switching tabs.
+# Default: always
+#
+# show-switching-delay (Int):
+# Time to show the tab bar before hiding it when tabs->show is set
+# to 'switching'.
+# Default: 800
+#
+# wrap (Bool):
+# Whether to wrap when changing tabs.
+# Valid values: true, false
+# Default: true
+#
+# movable (Bool):
+# Whether tabs should be movable.
+# Valid values: true, false
+# Default: true
+#
+# close-mouse-button (String):
+# On which mouse button to close tabs.
+# right: Close tabs on right-click.
+# middle: Close tabs on middle-click.
+# none: Don't close tabs using the mouse.
+# Default: middle
+#
+# position (Position):
+# The position of the tab bar.
+# Valid values: top, bottom, left, right
+# Default: top
+#
+# show-favicons (Bool):
+# Whether to show favicons in the tab bar.
+# Valid values: true, false
+# Default: true
+#
+# width (PercOrInt):
+# The width of the tab bar if it's vertical, in px or as percentage
+# of the window.
+# Default: 20%
+#
+# indicator-width (Int):
+# Width of the progress indicator (0 to disable).
+# Default: 3
+#
+# tabs-are-windows (Bool):
+# Whether to open windows instead of tabs.
+# Valid values: true, false
+# Default: false
+#
+# title-format (FormatString):
+# The format to use for the tab title. The following placeholders
+# are defined:
+# * `{perc}`: The percentage as a string like `[10%]`.
+# * `{perc_raw}`: The raw percentage, e.g. `10`
+# * `{title}`: The title of the current web page
+# * `{title_sep}`: The string ` - ` if a title is set, empty
+# otherwise.
+# * `{index}`: The index of this tab.
+# * `{id}`: The internal tab ID of this tab.
+# * `{scroll_pos}`: The page scroll position.
+# * `{host}`: The host of the current web page.
+# * `{backend}`: Either 'webkit' or 'webengine'
+# Default: {index}: {title}
+#
+# title-alignment (TextAlignment):
+# Alignment of the text inside of tabs
+# Valid values: left, right, center
+# Default: left
+#
+# mousewheel-tab-switching (Bool):
+# Switch between tabs using the mouse wheel.
+# Valid values: true, false
+# Default: true
+#
+# padding (Padding):
+# Padding for tabs (top, bottom, left, right).
+# Default: 0,0,5,5
+#
+# indicator-padding (Padding):
+# Padding for indicators (top, bottom, left, right).
+# Default: 2,2,0,4
+background-tabs = false
+select-on-remove = next
+new-tab-position = next
+new-tab-position-explicit = last
+last-close = ignore
+show = always
+show-switching-delay = 800
+wrap = true
+movable = true
+close-mouse-button = middle
+position = top
+show-favicons = true
+width = 20%
+indicator-width = 3
+tabs-are-windows = false
+title-format = {index}: {title}
+title-alignment = left
+mousewheel-tab-switching = true
+padding = 0,0,5,5
+indicator-padding = 2,2,0,4
+
+[storage]
+# Settings related to cache and storage.
+#
+# download-directory (Directory):
+# The directory to save downloads to. An empty value selects a
+# sensible os-specific default. Will expand environment variables.
+# Default:
+#
+# prompt-download-directory (Bool):
+# Whether to prompt the user for the download location.
+# If set to false, 'download-directory' will be used.
+# Valid values: true, false
+# Default: true
+#
+# remember-download-directory (Bool):
+# Whether to remember the last used download directory.
+# Valid values: true, false
+# Default: true
+#
+# maximum-pages-in-cache (Int):
+# The maximum number of pages to hold in the global memory page
+# cache.
+# The Page Cache allows for a nicer user experience when navigating
+# forth or back to pages in the forward/back history, by pausing and
+# resuming up to _n_ pages.
+# For more information about the feature, please refer to:
+# http://webkit.org/blog/427/webkit-page-cache-i-the-basics/
+# Default:
+#
+# object-cache-capacities (List of WebKitBytes):
+# The capacities for the global memory cache for dead objects such
+# as stylesheets or scripts. Syntax: cacheMinDeadCapacity,
+# cacheMaxDead, totalCapacity.
+# The _cacheMinDeadCapacity_ specifies the minimum number of bytes
+# that dead objects should consume when the cache is under pressure.
+# _cacheMaxDead_ is the maximum number of bytes that dead objects
+# should consume when the cache is *not* under pressure.
+# _totalCapacity_ specifies the maximum number of bytes that the
+# cache should consume *overall*.
+# Default:
+#
+# offline-storage-default-quota (WebKitBytes):
+# Default quota for new offline storage databases.
+# Default:
+#
+# offline-web-application-cache-quota (WebKitBytes):
+# Quota for the offline web application cache.
+# Default:
+#
+# offline-storage-database (Bool):
+# Whether support for the HTML 5 offline storage feature is enabled.
+# Valid values: true, false
+# Default: true
+#
+# offline-web-application-storage (Bool):
+# Whether support for the HTML 5 web application cache feature is
+# enabled.
+# An application cache acts like an HTTP cache in some sense. For
+# documents that use the application cache via JavaScript, the
+# loader engine will first ask the application cache for the
+# contents, before hitting the network.
+# The feature is described in details at:
+# http://dev.w3.org/html5/spec/Overview.html#appcache
+# Valid values: true, false
+# Default: true
+#
+# local-storage (Bool):
+# Whether support for the HTML 5 local storage feature is enabled.
+# Valid values: true, false
+# Default: true
+#
+# cache-size (Int):
+# Size of the HTTP network cache. Empty to use the default value.
+# Default:
+download-directory =
+prompt-download-directory = true
+remember-download-directory = true
+maximum-pages-in-cache =
+object-cache-capacities =
+offline-storage-default-quota =
+offline-web-application-cache-quota =
+offline-storage-database = true
+offline-web-application-storage = true
+local-storage = true
+cache-size =
+
+[content]
+# Loaded plugins/scripts and allowed actions.
+#
+# allow-images (Bool):
+# Whether images are automatically loaded in web pages.
+# Valid values: true, false
+# Default: true
+#
+# allow-javascript (Bool):
+# Enables or disables the running of JavaScript programs.
+# Valid values: true, false
+# Default: true
+#
+# allow-plugins (Bool):
+# Enables or disables plugins in Web pages.
+# Qt plugins with a mimetype such as "application/x-qt-plugin" are
+# not affected by this setting.
+# Valid values: true, false
+# Default: false
+#
+# webgl (Bool):
+# Enables or disables WebGL.
+# Valid values: true, false
+# Default: true
+#
+# css-regions (Bool):
+# Enable or disable support for CSS regions.
+# Valid values: true, false
+# Default: true
+#
+# hyperlink-auditing (Bool):
+# Enable or disable hyperlink auditing (<a ping>).
+# Valid values: true, false
+# Default: false
+#
+# geolocation (BoolAsk):
+# Allow websites to request geolocations.
+# Valid values: true, false, ask
+# Default: ask
+#
+# notifications (BoolAsk):
+# Allow websites to show notifications.
+# Valid values: true, false, ask
+# Default: ask
+#
+# media-capture (BoolAsk):
+# Allow websites to record audio/video.
+# Valid values: true, false, ask
+# Default: ask
+#
+# javascript-can-open-windows-automatically (Bool):
+# Whether JavaScript programs can open new windows without user
+# interaction.
+# Valid values: true, false
+# Default: false
+#
+# javascript-can-close-windows (Bool):
+# Whether JavaScript programs can close windows.
+# Valid values: true, false
+# Default: false
+#
+# javascript-can-access-clipboard (Bool):
+# Whether JavaScript programs can read or write to the clipboard.
+# With QtWebEngine, writing the clipboard as response to a user
+# interaction is always allowed.
+# Valid values: true, false
+# Default: false
+#
+# ignore-javascript-prompt (Bool):
+# Whether all javascript prompts should be ignored.
+# Valid values: true, false
+# Default: false
+#
+# ignore-javascript-alert (Bool):
+# Whether all javascript alerts should be ignored.
+# Valid values: true, false
+# Default: false
+#
+# local-content-can-access-remote-urls (Bool):
+# Whether locally loaded documents are allowed to access remote
+# urls.
+# Valid values: true, false
+# Default: false
+#
+# local-content-can-access-file-urls (Bool):
+# Whether locally loaded documents are allowed to access other local
+# urls.
+# Valid values: true, false
+# Default: true
+#
+# cookies-accept (String):
+# Control which cookies to accept.
+# all: Accept all cookies.
+# no-3rdparty: Accept cookies from the same origin only.
+# no-unknown-3rdparty: Accept cookies from the same origin only,
+# unless a cookie is already set for the domain.
+# never: Don't accept cookies at all.
+# Default: no-3rdparty
+#
+# cookies-store (Bool):
+# Whether to store cookies. Note this option needs a restart with
+# QtWebEngine.
+# Valid values: true, false
+# Default: true
+#
+# host-block-lists (List of Url):
+# List of URLs of lists which contain hosts to block.
+# The file can be in one of the following formats:
+# - An '/etc/hosts'-like file
+# - One host per line
+# - A zip-file of any of the above, with either only one file, or a
+# file named 'hosts' (with any extension).
+# Default:
+# https://www.malwaredomainlist.com/hostslist/hosts.txt,http://someonewhocares.org/hosts/hosts,http://winhelp2002.mvps.org/hosts.zip,http://malwaredomains.lehigh.edu/files/justdomains.zip,https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&mimetype=plaintext
+#
+# host-blocking-enabled (Bool):
+# Whether host blocking is enabled.
+# Valid values: true, false
+# Default: true
+#
+# host-blocking-whitelist (List of String):
+# List of domains that should always be loaded, despite being
+# ad-blocked.
+# Domains may contain * and ? wildcards and are otherwise required
+# to exactly match the requested domain.
+# Local domains are always exempt from hostblocking.
+# Default: piwik.org
+#
+# enable-pdfjs (Bool):
+# Enable pdf.js to view PDF files in the browser.
+# Note that the files can still be downloaded by clicking the
+# download button in the pdf.js viewer.
+# Valid values: true, false
+# Default: false
+allow-images = true
+allow-javascript = true
+allow-plugins = false
+webgl = true
+css-regions = true
+hyperlink-auditing = false
+geolocation = ask
+notifications = ask
+media-capture = ask
+javascript-can-open-windows-automatically = false
+javascript-can-close-windows = false
+javascript-can-access-clipboard = false
+ignore-javascript-prompt = false
+ignore-javascript-alert = false
+local-content-can-access-remote-urls = false
+local-content-can-access-file-urls = true
+cookies-accept = no-3rdparty
+cookies-store = true
+host-block-lists = https://www.malwaredomainlist.com/hostslist/hosts.txt,http://someonewhocares.org/hosts/hosts,http://winhelp2002.mvps.org/hosts.zip,http://malwaredomains.lehigh.edu/files/justdomains.zip,https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&mimetype=plaintext
+host-blocking-enabled = true
+host-blocking-whitelist = piwik.org
+enable-pdfjs = true
+
+[hints]
+# Hinting settings.
+#
+# border (String):
+# CSS border value for hints.
+# Default: 1px solid #E3BE23
+#
+# mode (String):
+# Mode to use for hints.
+# number: Use numeric hints. (In this mode you can also type
+# letters form the hinted element to filter and reduce the number of
+# elements that are hinted.)
+# letter: Use the chars in the hints -> chars setting.
+# word: Use hints words based on the html elements and the extra
+# words.
+# Default: letter
+#
+# chars (UniqueCharString):
+# Chars used for hint strings.
+# Default: asdfghjkl
+#
+# min-chars (Int):
+# Minimum number of chars used for hint strings.
+# Default: 1
+#
+# scatter (Bool):
+# Whether to scatter hint key chains (like Vimium) or not (like
+# dwb). Ignored for number hints.
+# Valid values: true, false
+# Default: true
+#
+# uppercase (Bool):
+# Make chars in hint strings uppercase.
+# Valid values: true, false
+# Default: false
+#
+# dictionary (File):
+# The dictionary file to be used by the word hints.
+# Default: /usr/share/dict/words
+#
+# auto-follow (String):
+# Controls when a hint can be automatically followed without the
+# user pressing Enter.
+# always: Auto-follow whenever there is only a single hint on a
+# page.
+# unique-match: Auto-follow whenever there is a unique non-empty
+# match in either the hint string (word mode) or filter (number
+# mode).
+# full-match: Follow the hint when the user typed the whole hint
+# (letter, word or number mode) or the element's text (only in
+# number mode).
+# never: The user will always need to press Enter to follow a
+# hint.
+# Default: unique-match
+#
+# auto-follow-timeout (Int):
+# A timeout (in milliseconds) to inhibit normal-mode key bindings
+# after a successful auto-follow.
+# Default: 0
+#
+# next-regexes (List of Regex):
+# A comma-separated list of regexes to use for 'next' links.
+# Default:
+# \bnext\b,\bmore\b,\bnewer\b,\b[>→≫]\b,\b(>>|»)\b,\bcontinue\b
+#
+# prev-regexes (List of Regex):
+# A comma-separated list of regexes to use for 'prev' links.
+# Default: \bprev(ious)?\b,\bback\b,\bolder\b,\b[<←≪]\b,\b(<<|«)\b
+#
+# find-implementation (String):
+# Which implementation to use to find elements to hint.
+# javascript: Better but slower
+# python: Slightly worse but faster
+# Default: python
+#
+# hide-unmatched-rapid-hints (Bool):
+# Controls hiding unmatched hints in rapid mode.
+# Valid values: true, false
+# Default: true
+border = 1px solid #E3BE23
+mode = letter
+chars = asdfghjkl
+min-chars = 1
+scatter = true
+uppercase = false
+dictionary = /usr/share/dict/words
+auto-follow = unique-match
+auto-follow-timeout = 0
+next-regexes = \bnext\b,\bmore\b,\bnewer\b,\b[>→≫]\b,\b(>>|»)\b,\bcontinue\b
+prev-regexes = \bprev(ious)?\b,\bback\b,\bolder\b,\b[<←≪]\b,\b(<<|«)\b
+find-implementation = python
+hide-unmatched-rapid-hints = true
+
+[searchengines]
+# Definitions of search engines which can be used via the address bar.
+# The searchengine named `DEFAULT` is used when `general -> auto-search`
+# is true and something else than a URL was entered to be opened. Other
+# search engines can be used by prepending the search engine name to the
+# search term, e.g. `:open google qutebrowser`. The string `{}` will be
+# replaced by the search term, use `{{` and `}}` for literal `{`/`}`
+# signs.
+DEFAULT = https://duckduckgo.com/?q={}
+
+[aliases]
+# Aliases for commands.
+# By default, no aliases are defined. Example which adds a new command
+# `:qtb` to open qutebrowsers website:
+# `qtb = open https://www.qutebrowser.org/`
+
+[colors]
+# Colors used in the UI.
+# A value can be in one of the following format:
+# * `#RGB`/`#RRGGBB`/`#RRRGGGBBB`/`#RRRRGGGGBBBB`
+# * An SVG color name as specified in http://www.w3.org/TR/SVG/types.html#ColorKeywords[the W3C specification].
+# * transparent (no color)
+# * `rgb(r, g, b)` / `rgba(r, g, b, a)` (values 0-255 or percentages)
+# * `hsv(h, s, v)` / `hsva(h, s, v, a)` (values 0-255, hue 0-359)
+# * A gradient as explained in http://doc.qt.io/qt-5/stylesheet-reference.html#list-of-property-types[the Qt documentation] under ``Gradient''.
+# A *.system value determines the color system to use for color
+# interpolation between similarly-named *.start and *.stop entries,
+# regardless of how they are defined in the options. Valid values are
+# 'rgb', 'hsv', and 'hsl'.
+# The `hints.*` values are a special case as they're real CSS colors, not Qt-CSS colors. There, for a gradient, you need to use `-webkit-gradient`, see https://www.webkit.org/blog/175/introducing-css-gradients/[the WebKit documentation].
+#
+# completion.fg (QtColor):
+# Text color of the completion widget.
+# Default: white
+#
+# completion.bg (QssColor):
+# Background color of the completion widget.
+# Default: #333333
+#
+# completion.alternate-bg (QssColor):
+# Alternating background color of the completion widget.
+# Default: #444444
+#
+# completion.category.fg (QtColor):
+# Foreground color of completion widget category headers.
+# Default: white
+#
+# completion.category.bg (QssColor):
+# Background color of the completion widget category headers.
+# Default: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #888888,
+# stop:1 #505050)
+#
+# completion.category.border.top (QssColor):
+# Top border color of the completion widget category headers.
+# Default: black
+#
+# completion.category.border.bottom (QssColor):
+# Bottom border color of the completion widget category headers.
+# Default: ${completion.category.border.top}
+#
+# completion.item.selected.fg (QtColor):
+# Foreground color of the selected completion item.
+# Default: black
+#
+# completion.item.selected.bg (QssColor):
+# Background color of the selected completion item.
+# Default: #e8c000
+#
+# completion.item.selected.border.top (QssColor):
+# Top border color of the completion widget category headers.
+# Default: #bbbb00
+#
+# completion.item.selected.border.bottom (QssColor):
+# Bottom border color of the selected completion item.
+# Default: ${completion.item.selected.border.top}
+#
+# completion.match.fg (QssColor):
+# Foreground color of the matched text in the completion.
+# Default: #ff4444
+#
+# completion.scrollbar.fg (QssColor):
+# Color of the scrollbar handle in completion view.
+# Default: ${completion.fg}
+#
+# completion.scrollbar.bg (QssColor):
+# Color of the scrollbar in completion view
+# Default: ${completion.bg}
+#
+# statusbar.fg (QssColor):
+# Foreground color of the statusbar.
+# Default: white
+#
+# statusbar.bg (QssColor):
+# Background color of the statusbar.
+# Default: black
+#
+# statusbar.fg.insert (QssColor):
+# Foreground color of the statusbar in insert mode.
+# Default: ${statusbar.fg}
+#
+# statusbar.bg.insert (QssColor):
+# Background color of the statusbar in insert mode.
+# Default: darkgreen
+#
+# statusbar.fg.command (QssColor):
+# Foreground color of the statusbar in command mode.
+# Default: ${statusbar.fg}
+#
+# statusbar.bg.command (QssColor):
+# Background color of the statusbar in command mode.
+# Default: ${statusbar.bg}
+#
+# statusbar.fg.caret (QssColor):
+# Foreground color of the statusbar in caret mode.
+# Default: ${statusbar.fg}
+#
+# statusbar.bg.caret (QssColor):
+# Background color of the statusbar in caret mode.
+# Default: purple
+#
+# statusbar.fg.caret-selection (QssColor):
+# Foreground color of the statusbar in caret mode with a selection
+# Default: ${statusbar.fg}
+#
+# statusbar.bg.caret-selection (QssColor):
+# Background color of the statusbar in caret mode with a selection
+# Default: #a12dff
+#
+# statusbar.progress.bg (QssColor):
+# Background color of the progress bar.
+# Default: white
+#
+# statusbar.url.fg (QssColor):
+# Default foreground color of the URL in the statusbar.
+# Default: ${statusbar.fg}
+#
+# statusbar.url.fg.success (QssColor):
+# Foreground color of the URL in the statusbar on successful load
+# (http).
+# Default: white
+#
+# statusbar.url.fg.success.https (QssColor):
+# Foreground color of the URL in the statusbar on successful load
+# (https).
+# Default: lime
+#
+# statusbar.url.fg.error (QssColor):
+# Foreground color of the URL in the statusbar on error.
+# Default: orange
+#
+# statusbar.url.fg.warn (QssColor):
+# Foreground color of the URL in the statusbar when there's a
+# warning.
+# Default: yellow
+#
+# statusbar.url.fg.hover (QssColor):
+# Foreground color of the URL in the statusbar for hovered links.
+# Default: aqua
+#
+# tabs.fg.odd (QtColor):
+# Foreground color of unselected odd tabs.
+# Default: white
+#
+# tabs.bg.odd (QtColor):
+# Background color of unselected odd tabs.
+# Default: grey
+#
+# tabs.fg.even (QtColor):
+# Foreground color of unselected even tabs.
+# Default: white
+#
+# tabs.bg.even (QtColor):
+# Background color of unselected even tabs.
+# Default: darkgrey
+#
+# tabs.fg.selected.odd (QtColor):
+# Foreground color of selected odd tabs.
+# Default: white
+#
+# tabs.bg.selected.odd (QtColor):
+# Background color of selected odd tabs.
+# Default: black
+#
+# tabs.fg.selected.even (QtColor):
+# Foreground color of selected even tabs.
+# Default: ${tabs.fg.selected.odd}
+#
+# tabs.bg.selected.even (QtColor):
+# Background color of selected even tabs.
+# Default: ${tabs.bg.selected.odd}
+#
+# tabs.bg.bar (QtColor):
+# Background color of the tab bar.
+# Default: #555555
+#
+# tabs.indicator.start (QtColor):
+# Color gradient start for the tab indicator.
+# Default: #0000aa
+#
+# tabs.indicator.stop (QtColor):
+# Color gradient end for the tab indicator.
+# Default: #00aa00
+#
+# tabs.indicator.error (QtColor):
+# Color for the tab indicator on errors..
+# Default: #ff0000
+#
+# tabs.indicator.system (ColorSystem):
+# Color gradient interpolation system for the tab indicator.
+# rgb: Interpolate in the RGB color system.
+# hsv: Interpolate in the HSV color system.
+# hsl: Interpolate in the HSL color system.
+# none: Don't show a gradient.
+# Default: rgb
+#
+# hints.fg (QssColor):
+# Font color for hints.
+# Default: black
+#
+# hints.bg (QssColor):
+# Background color for hints. Note that you can use a `rgba(...)`
+# value for transparency.
+# Default: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 rgba(255,
+# 247, 133, 0.8), stop:1 rgba(255, 197, 66, 0.8))
+#
+# hints.fg.match (QssColor):
+# Font color for the matched part of hints.
+# Default: green
+#
+# downloads.bg.bar (QssColor):
+# Background color for the download bar.
+# Default: black
+#
+# downloads.fg.start (QtColor):
+# Color gradient start for download text.
+# Default: white
+#
+# downloads.bg.start (QtColor):
+# Color gradient start for download backgrounds.
+# Default: #0000aa
+#
+# downloads.fg.stop (QtColor):
+# Color gradient end for download text.
+# Default: ${downloads.fg.start}
+#
+# downloads.bg.stop (QtColor):
+# Color gradient stop for download backgrounds.
+# Default: #00aa00
+#
+# downloads.fg.system (ColorSystem):
+# Color gradient interpolation system for download text.
+# rgb: Interpolate in the RGB color system.
+# hsv: Interpolate in the HSV color system.
+# hsl: Interpolate in the HSL color system.
+# none: Don't show a gradient.
+# Default: rgb
+#
+# downloads.bg.system (ColorSystem):
+# Color gradient interpolation system for download backgrounds.
+# rgb: Interpolate in the RGB color system.
+# hsv: Interpolate in the HSV color system.
+# hsl: Interpolate in the HSL color system.
+# none: Don't show a gradient.
+# Default: rgb
+#
+# downloads.fg.error (QtColor):
+# Foreground color for downloads with errors.
+# Default: white
+#
+# downloads.bg.error (QtColor):
+# Background color for downloads with errors.
+# Default: red
+#
+# webpage.bg (QtColor):
+# Background color for webpages if unset (or empty to use the
+# theme's color)
+# Default: white
+#
+# keyhint.fg (QssColor):
+# Text color for the keyhint widget.
+# Default: #FFFFFF
+#
+# keyhint.fg.suffix (CssColor):
+# Highlight color for keys to complete the current keychain
+# Default: #FFFF00
+#
+# keyhint.bg (QssColor):
+# Background color of the keyhint widget.
+# Default: rgba(0, 0, 0, 80%)
+#
+# messages.fg.error (QssColor):
+# Foreground color of an error message.
+# Default: white
+#
+# messages.bg.error (QssColor):
+# Background color of an error message.
+# Default: red
+#
+# messages.border.error (QssColor):
+# Border color of an error message.
+# Default: #bb0000
+#
+# messages.fg.warning (QssColor):
+# Foreground color a warning message.
+# Default: white
+#
+# messages.bg.warning (QssColor):
+# Background color of a warning message.
+# Default: darkorange
+#
+# messages.border.warning (QssColor):
+# Border color of an error message.
+# Default: #d47300
+#
+# messages.fg.info (QssColor):
+# Foreground color an info message.
+# Default: white
+#
+# messages.bg.info (QssColor):
+# Background color of an info message.
+# Default: black
+#
+# messages.border.info (QssColor):
+# Border color of an info message.
+# Default: #333333
+#
+# prompts.fg (QssColor):
+# Foreground color for prompts.
+# Default: white
+#
+# prompts.bg (QssColor):
+# Background color for prompts.
+# Default: darkblue
+#
+# prompts.selected.bg (QssColor):
+# Background color for the selected item in filename prompts.
+# Default: #308cc6
+completion.fg = white
+completion.bg = #333333
+completion.alternate-bg = #444444
+completion.category.fg = white
+completion.category.bg = qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #888888, stop:1 #505050)
+completion.category.border.top = black
+completion.category.border.bottom = ${completion.category.border.top}
+completion.item.selected.fg = black
+completion.item.selected.bg = #e8c000
+completion.item.selected.border.top = #bbbb00
+completion.item.selected.border.bottom = ${completion.item.selected.border.top}
+completion.match.fg = #ff4444
+completion.scrollbar.fg = ${completion.fg}
+completion.scrollbar.bg = ${completion.bg}
+statusbar.fg = white
+statusbar.bg = black
+statusbar.fg.insert = ${statusbar.fg}
+statusbar.bg.insert = darkgreen
+statusbar.fg.command = ${statusbar.fg}
+statusbar.bg.command = ${statusbar.bg}
+statusbar.fg.caret = ${statusbar.fg}
+statusbar.bg.caret = purple
+statusbar.fg.caret-selection = ${statusbar.fg}
+statusbar.bg.caret-selection = #a12dff
+statusbar.progress.bg = white
+statusbar.url.fg = ${statusbar.fg}
+statusbar.url.fg.success = white
+statusbar.url.fg.success.https = lime
+statusbar.url.fg.error = orange
+statusbar.url.fg.warn = yellow
+statusbar.url.fg.hover = aqua
+tabs.fg.odd = white
+tabs.bg.odd = grey
+tabs.fg.even = white
+tabs.bg.even = darkgrey
+tabs.fg.selected.odd = white
+tabs.bg.selected.odd = black
+tabs.fg.selected.even = ${tabs.fg.selected.odd}
+tabs.bg.selected.even = ${tabs.bg.selected.odd}
+tabs.bg.bar = #555555
+tabs.indicator.start = #0000aa
+tabs.indicator.stop = #00aa00
+tabs.indicator.error = #ff0000
+tabs.indicator.system = rgb
+hints.fg = black
+hints.bg = qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 rgba(255, 247, 133, 0.8), stop:1 rgba(255, 197, 66, 0.8))
+hints.fg.match = green
+downloads.bg.bar = black
+downloads.fg.start = white
+downloads.bg.start = #0000aa
+downloads.fg.stop = ${downloads.fg.start}
+downloads.bg.stop = #00aa00
+downloads.fg.system = rgb
+downloads.bg.system = rgb
+downloads.fg.error = white
+downloads.bg.error = red
+webpage.bg = white
+keyhint.fg = #FFFFFF
+keyhint.fg.suffix = #FFFF00
+keyhint.bg = rgba(0, 0, 0, 80%)
+messages.fg.error = white
+messages.bg.error = red
+messages.border.error = #bb0000
+messages.fg.warning = white
+messages.bg.warning = darkorange
+messages.border.warning = #d47300
+messages.fg.info = white
+messages.bg.info = black
+messages.border.info = #333333
+prompts.fg = white
+prompts.bg = darkblue
+prompts.selected.bg = #308cc6
+
+[fonts]
+# Fonts used for the UI, with optional style/weight/size.
+# * Style: `normal`/`italic`/`oblique`
+# * Weight: `normal`, `bold`, `100`..`900`
+# * Size: _number_ `px`/`pt`
+#
+# _monospace (Font):
+# Default monospace fonts.
+# Default: Terminus, Monospace, "DejaVu Sans Mono", Monaco,
+# "Bitstream Vera Sans Mono", "Andale Mono", "Courier New", Courier,
+# "Liberation Mono", monospace, Fixed, Consolas, Terminal
+#
+# completion (Font):
+# Font used in the completion widget.
+# Default: 8pt ${_monospace}
+#
+# completion.category (Font):
+# Font used in the completion categories.
+# Default: bold ${completion}
+#
+# tabbar (QtFont):
+# Font used in the tab bar.
+# Default: 8pt ${_monospace}
+#
+# statusbar (Font):
+# Font used in the statusbar.
+# Default: 8pt ${_monospace}
+#
+# downloads (Font):
+# Font used for the downloadbar.
+# Default: 8pt ${_monospace}
+#
+# hints (Font):
+# Font used for the hints.
+# Default: bold 13px ${_monospace}
+#
+# debug-console (QtFont):
+# Font used for the debugging console.
+# Default: 8pt ${_monospace}
+#
+# web-family-standard (FontFamily):
+# Font family for standard fonts.
+# Default:
+#
+# web-family-fixed (FontFamily):
+# Font family for fixed fonts.
+# Default:
+#
+# web-family-serif (FontFamily):
+# Font family for serif fonts.
+# Default:
+#
+# web-family-sans-serif (FontFamily):
+# Font family for sans-serif fonts.
+# Default:
+#
+# web-family-cursive (FontFamily):
+# Font family for cursive fonts.
+# Default:
+#
+# web-family-fantasy (FontFamily):
+# Font family for fantasy fonts.
+# Default:
+#
+# web-size-minimum (Int):
+# The hard minimum font size.
+# Default:
+#
+# web-size-minimum-logical (Int):
+# The minimum logical font size that is applied when zooming out.
+# Default:
+#
+# web-size-default (Int):
+# The default font size for regular text.
+# Default:
+#
+# web-size-default-fixed (Int):
+# The default font size for fixed-pitch text.
+# Default:
+#
+# keyhint (Font):
+# Font used in the keyhint widget.
+# Default: 8pt ${_monospace}
+#
+# messages.error (Font):
+# Font used for error messages.
+# Default: 8pt ${_monospace}
+#
+# messages.warning (Font):
+# Font used for warning messages.
+# Default: 8pt ${_monospace}
+#
+# messages.info (Font):
+# Font used for info messages.
+# Default: 8pt ${_monospace}
+#
+# prompts (Font):
+# Font used for prompts.
+# Default: 8pt sans-serif
+_monospace = Terminus, Monospace, "DejaVu Sans Mono", Monaco, "Bitstream Vera Sans Mono", "Andale Mono", "Courier New", Courier, "Liberation Mono", monospace, Fixed, Consolas, Terminal
+completion = 8pt ${_monospace}
+completion.category = bold ${completion}
+tabbar = 8pt ${_monospace}
+statusbar = 8pt ${_monospace}
+downloads = 8pt ${_monospace}
+hints = bold 13px ${_monospace}
+debug-console = 8pt ${_monospace}
+web-family-standard =
+web-family-fixed =
+web-family-serif =
+web-family-sans-serif =
+web-family-cursive =
+web-family-fantasy =
+web-size-minimum =
+web-size-minimum-logical =
+web-size-default =
+web-size-default-fixed =
+keyhint = 8pt ${_monospace}
+messages.error = 8pt ${_monospace}
+messages.warning = 8pt ${_monospace}
+messages.info = 8pt ${_monospace}
+prompts = 8pt sans-serif
diff --git a/.config/ranger/rc.conf b/.config/ranger/rc.conf
new file mode 100644
index 0000000..cacf0d6
--- /dev/null
+++ b/.config/ranger/rc.conf
@@ -0,0 +1,725 @@
+# ===================================================================
+# This file contains the default startup commands for ranger.
+# To change them, it is recommended to create either /etc/ranger/rc.conf
+# (system-wide) or ~/.config/ranger/rc.conf (per user) and add your custom
+# commands there.
+#
+# If you copy this whole file there, you may want to set the environment
+# variable RANGER_LOAD_DEFAULT_RC to FALSE to avoid loading it twice.
+#
+# The purpose of this file is mainly to define keybindings and settings.
+# For running more complex python code, please create a plugin in "plugins/" or
+# a command in "commands.py".
+#
+# Each line is a command that will be run before the user interface
+# is initialized. As a result, you can not use commands which rely
+# on the UI such as :delete or :mark.
+# ===================================================================
+
+# ===================================================================
+# == Options
+# ===================================================================
+
+# Which viewmode should be used? Possible values are:
+# miller: Use miller columns which show multiple levels of the hierarchy
+# multipane: Midnight-commander like multipane view showing all tabs next
+# to each other
+set viewmode miller
+#set viewmode multipane
+
+# How many columns are there, and what are their relative widths?
+set column_ratios 1,3,4
+
+# Which files should be hidden? (regular expression)
+set hidden_filter ^\.|\.(?:pyc|pyo|bak|swp)$|^lost\+found$|^__(py)?cache__$
+
+# Show hidden files? You can toggle this by typing 'zh'
+set show_hidden true
+
+# Ask for a confirmation when running the "delete" command?
+# Valid values are "always", "never", "multiple" (default)
+# With "multiple", ranger will ask only if you delete multiple files at once.
+set confirm_on_delete multiple
+
+# Use non-default path for file preview script?
+# ranger ships with scope.sh, a script that calls external programs (see
+# README.md for dependencies) to preview images, archives, etc.
+#set preview_script ~/.config/ranger/scope.sh
+
+# Use the external preview script or display simple plain text or image previews?
+#set use_preview_script true
+
+# Automatically count files in the directory, even before entering them?
+set automatically_count_files true
+
+# Open all images in this directory when running certain image viewers
+# like feh or sxiv? You can still open selected files by marking them.
+set open_all_images true
+
+# Be aware of version control systems and display information.
+set vcs_aware true
+
+# State of the four backends git, hg, bzr, svn. The possible states are
+# disabled, local (only show local info), enabled (show local and remote
+# information).
+set vcs_backend_git enabled
+set vcs_backend_hg enabled
+set vcs_backend_bzr disabled
+set vcs_backend_svn enabled
+
+# Use one of the supported image preview protocols
+set preview_images true
+
+# Set the preview image method. Supported methods:
+#
+# * w3m (default):
+# Preview images in full color with the external command "w3mimgpreview"?
+# This requires the console web browser "w3m" and a supported terminal.
+# It has been successfully tested with "xterm" and "urxvt" without tmux.
+#
+# * iterm2:
+# Preview images in full color using iTerm2 image previews
+# (http://iterm2.com/images.html). This requires using iTerm2 compiled
+# with image preview support.
+#
+# This feature relies on the dimensions of the terminal's font. By default, a
+# width of 8 and height of 11 are used. To use other values, set the options
+# iterm2_font_width and iterm2_font_height to the desired values.
+#
+# * terminology:
+# Previews images in full color in the terminology terminal emulator.
+# Supports a wide variety of formats, even vector graphics like svg.
+#
+# * urxvt:
+# Preview images in full color using urxvt image backgrounds. This
+# requires using urxvt compiled with pixbuf support.
+#
+# * urxvt-full:
+# The same as urxvt but utilizing not only the preview pane but the
+# whole terminal window.
+#
+# * kitty:
+# Preview images in full color using kitty image protocol.
+# Requires python PIL or pillow library.
+# If ranger does not share the local filesystem with kitty
+# the transfer method is changed to encode the whole image;
+# while slower, this allows remote previews,
+# for example during an ssh session.
+# Tmux is unsupported.
+set preview_images_method w3m
+
+# Delay in seconds before displaying an image with the w3m method.
+# Increase it in case of experiencing display corruption.
+set w3m_delay 0.09
+
+# Default iTerm2 font size (see: preview_images_method: iterm2)
+set iterm2_font_width 8
+set iterm2_font_height 11
+
+# Use a unicode "..." character to mark cut-off filenames?
+set unicode_ellipsis false
+
+# BIDI support - try to properly display file names in RTL languages (Hebrew, Arabic).
+# Requires the python-bidi pip package
+set bidi_support false
+
+# Show dotfiles in the bookmark preview box?
+set show_hidden_bookmarks true
+
+# Which colorscheme to use? These colorschemes are available by default:
+# default, jungle, snow, solarized
+set colorscheme default
+
+# Preview files on the rightmost column?
+# And collapse (shrink) the last column if there is nothing to preview?
+set preview_files true
+set preview_directories true
+set collapse_preview true
+
+# Save the console history on exit?
+set save_console_history true
+
+# Draw the status bar on top of the browser window (default: bottom)
+set status_bar_on_top false
+
+# Draw a progress bar in the status bar which displays the average state of all
+# currently running tasks which support progress bars?
+set draw_progress_bar_in_status_bar true
+
+# Draw borders around columns? (separators, outline, both, or none)
+# Separators are vertical lines between columns.
+# Outline draws a box around all the columns.
+# Both combines the two.
+set draw_borders none
+
+# Display the directory name in tabs?
+set dirname_in_tabs true
+
+# Enable the mouse support?
+set mouse_enabled true
+
+# Display the file size in the main column or status bar?
+set display_size_in_main_column true
+set display_size_in_status_bar true
+
+# Display the free disk space in the status bar?
+set display_free_space_in_status_bar true
+
+# Display files tags in all columns or only in main column?
+set display_tags_in_all_columns true
+
+# Set a title for the window?
+set update_title false
+
+# Set the title to "ranger" in the tmux program?
+set update_tmux_title true
+
+# Shorten the title if it gets long? The number defines how many
+# directories are displayed at once, 0 turns off this feature.
+set shorten_title 3
+
+# Show hostname in titlebar?
+set hostname_in_titlebar true
+
+# Abbreviate $HOME with ~ in the titlebar (first line) of ranger?
+set tilde_in_titlebar true
+
+# How many directory-changes or console-commands should be kept in history?
+set max_history_size 20
+set max_console_history_size 50
+
+# Try to keep so much space between the top/bottom border when scrolling:
+set scroll_offset 8
+
+# Flush the input after each key hit? (Noticeable when ranger lags)
+set flushinput true
+
+# Padding on the right when there's no preview?
+# This allows you to click into the space to run the file.
+set padding_right true
+
+# Save bookmarks (used with mX and `X) instantly?
+# This helps to synchronize bookmarks between multiple ranger
+# instances but leads to *slight* performance loss.
+# When false, bookmarks are saved when ranger is exited.
+set autosave_bookmarks true
+
+# Save the "`" bookmark to disk. This can be used to switch to the last
+# directory by typing "``".
+set save_backtick_bookmark true
+
+# You can display the "real" cumulative size of directories by using the
+# command :get_cumulative_size or typing "dc". The size is expensive to
+# calculate and will not be updated automatically. You can choose
+# to update it automatically though by turning on this option:
+set autoupdate_cumulative_size false
+
+# Turning this on makes sense for screen readers:
+set show_cursor false
+
+# One of: size, natural, basename, atime, ctime, mtime, type, random
+set sort natural
+
+# Additional sorting options
+set sort_reverse false
+set sort_case_insensitive true
+set sort_directories_first true
+set sort_unicode false
+
+# Enable this if key combinations with the Alt Key don't work for you.
+# (Especially on xterm)
+set xterm_alt_key false
+
+# Whether to include bookmarks in cd command
+set cd_bookmarks true
+
+# Changes case sensitivity for the cd command tab completion
+set cd_tab_case sensitive
+
+# Use fuzzy tab completion with the "cd" command. For example,
+# ":cd /u/lo/b<tab>" expands to ":cd /usr/local/bin".
+set cd_tab_fuzzy false
+
+# Avoid previewing files larger than this size, in bytes. Use a value of 0 to
+# disable this feature.
+set preview_max_size 0
+
+# The key hint lists up to this size have their sublists expanded.
+# Otherwise the submaps are replaced with "...".
+set hint_collapse_threshold 10
+
+# Add the highlighted file to the path in the titlebar
+set show_selection_in_titlebar true
+
+# The delay that ranger idly waits for user input, in milliseconds, with a
+# resolution of 100ms. Lower delay reduces lag between directory updates but
+# increases CPU load.
+set idle_delay 2000
+
+# When the metadata manager module looks for metadata, should it only look for
+# a ".metadata.json" file in the current directory, or do a deep search and
+# check all directories above the current one as well?
+set metadata_deep_search false
+
+# Clear all existing filters when leaving a directory
+set clear_filters_on_dir_change false
+
+# Disable displaying line numbers in main column.
+# Possible values: false, absolute, relative.
+set line_numbers relative
+
+# When line_numbers=relative show the absolute line number in the
+# current line.
+set relative_current_zero false
+
+# Start line numbers from 1 instead of 0
+set one_indexed false
+
+# Save tabs on exit
+set save_tabs_on_exit false
+
+# Enable scroll wrapping - moving down while on the last item will wrap around to
+# the top and vice versa.
+set wrap_scroll false
+
+# Set the global_inode_type_filter to nothing. Possible options: d, f and l for
+# directories, files and symlinks respectively.
+set global_inode_type_filter
+
+# This setting allows to freeze the list of files to save I/O bandwidth. It
+# should be 'false' during start-up, but you can toggle it by pressing F.
+set freeze_files false
+
+# ===================================================================
+# == Local Options
+# ===================================================================
+# You can set local options that only affect a single directory.
+
+# Examples:
+# setlocal path=~/downloads sort mtime
+
+# ===================================================================
+# == Command Aliases in the Console
+# ===================================================================
+
+alias e edit
+alias q quit
+alias q! quit!
+alias qa quitall
+alias qa! quitall!
+alias qall quitall
+alias qall! quitall!
+alias setl setlocal
+
+alias filter scout -prts
+alias find scout -aets
+alias mark scout -mr
+alias unmark scout -Mr
+alias search scout -rs
+alias search_inc scout -rts
+alias travel scout -aefklst
+
+# ===================================================================
+# == Define keys for the browser
+# ===================================================================
+
+# Basic
+map Q quitall
+map q quit
+copymap q ZZ ZQ
+
+map R reload_cwd
+map F set freeze_files!
+map <C-r> reset
+map <C-l> redraw_window
+map <C-c> abort
+map <esc> change_mode normal
+map ~ set viewmode!
+
+map i display_file
+map ? help
+map W display_log
+map w taskview_open
+map S shell $SHELL
+
+map : console
+map ; console
+map ! console shell%space
+map @ console -p6 shell %%s
+map # console shell -p%space
+map s console shell%space
+map r chain draw_possible_programs; console open_with%%space
+map f console find%space
+map cd console cd%space
+
+map <C-p> chain console; eval fm.ui.console.history_move(-1)
+
+# Change the line mode
+map Mf linemode filename
+map Mi linemode fileinfo
+map Mm linemode mtime
+map Mp linemode permissions
+map Ms linemode sizemtime
+map Mt linemode metatitle
+
+# Tagging / Marking
+map t tag_toggle
+map ut tag_remove
+map "<any> tag_toggle tag=%any
+map <Space> mark_files toggle=True
+map v mark_files all=True toggle=True
+map uv mark_files all=True val=False
+map V toggle_visual_mode
+map uV toggle_visual_mode reverse=True
+
+# For the nostalgics: Midnight Commander bindings
+map <F1> help
+map <F2> rename_append
+map <F3> display_file
+map <F4> edit
+map <F5> copy
+map <F6> cut
+map <F7> console mkdir%space
+map <F8> console delete
+map <F10> exit
+
+# In case you work on a keyboard with dvorak layout
+map <UP> move up=1
+map <DOWN> move down=1
+map <LEFT> move left=1
+map <RIGHT> move right=1
+map <HOME> move to=0
+map <END> move to=-1
+map <PAGEDOWN> move down=1 pages=True
+map <PAGEUP> move up=1 pages=True
+map <CR> move right=1
+#map <DELETE> console delete
+map <INSERT> console touch%space
+
+# VIM-like
+copymap <UP> k
+copymap <DOWN> j
+copymap <LEFT> h
+copymap <RIGHT> l
+copymap <HOME> gg
+copymap <END> G
+copymap <PAGEDOWN> <C-F>
+copymap <PAGEUP> <C-B>
+
+map J move down=0.5 pages=True
+map K move up=0.5 pages=True
+copymap J <C-D>
+copymap K <C-U>
+
+# Jumping around
+map H history_go -1
+map L history_go 1
+map ] move_parent 1
+map [ move_parent -1
+map } traverse
+map { traverse_backwards
+map ) jump_non
+
+map gh cd ~
+map ge cd /etc
+map gu cd /usr
+map gd cd /dev
+map gl cd -r .
+map gL cd -r %f
+map go cd /opt
+map gv cd /var
+map gm cd /media
+map gi eval fm.cd('/run/media/' + os.getenv('USER'))
+map gM cd /mnt
+map gs cd /srv
+map gp cd /tmp
+map gr cd /
+map gR eval fm.cd(ranger.RANGERDIR)
+map g/ cd /
+map g? cd /usr/share/doc/ranger
+
+# External Programs
+map E edit
+map du shell -p du --max-depth=1 -h --apparent-size
+map dU shell -p du --max-depth=1 -h --apparent-size | sort -rh
+map yp yank path
+map yd yank dir
+map yn yank name
+map y. yank name_without_extension
+
+# Filesystem Operations
+map = chmod
+
+map cw console rename%space
+map a rename_append
+map A eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%"))
+map I eval fm.open_console('rename ' + fm.thisfile.relative_path.replace("%", "%%"), position=7)
+
+map pp paste
+map po paste overwrite=True
+map pP paste append=True
+map pO paste overwrite=True append=True
+map pl paste_symlink relative=False
+map pL paste_symlink relative=True
+map phl paste_hardlink
+map pht paste_hardlinked_subtree
+
+map dD console delete
+
+map dd cut
+map ud uncut
+map da cut mode=add
+map dr cut mode=remove
+map dt cut mode=toggle
+
+map yy copy
+map uy uncut
+map ya copy mode=add
+map yr copy mode=remove
+map yt copy mode=toggle
+
+# Temporary workarounds
+map dgg eval fm.cut(dirarg=dict(to=0), narg=quantifier)
+map dG eval fm.cut(dirarg=dict(to=-1), narg=quantifier)
+map dj eval fm.cut(dirarg=dict(down=1), narg=quantifier)
+map dk eval fm.cut(dirarg=dict(up=1), narg=quantifier)
+map ygg eval fm.copy(dirarg=dict(to=0), narg=quantifier)
+map yG eval fm.copy(dirarg=dict(to=-1), narg=quantifier)
+map yj eval fm.copy(dirarg=dict(down=1), narg=quantifier)
+map yk eval fm.copy(dirarg=dict(up=1), narg=quantifier)
+
+# Searching
+map / console search%space
+map n search_next
+map N search_next forward=False
+map ct search_next order=tag
+map cs search_next order=size
+map ci search_next order=mimetype
+map cc search_next order=ctime
+map cm search_next order=mtime
+map ca search_next order=atime
+
+# Tabs
+map <C-n> tab_new
+map <C-w> tab_close
+map <TAB> tab_move 1
+map <S-TAB> tab_move -1
+map <A-Right> tab_move 1
+map <A-Left> tab_move -1
+map gt tab_move 1
+map gT tab_move -1
+map gn tab_new
+map gc tab_close
+map uq tab_restore
+map <a-1> tab_open 1
+map <a-2> tab_open 2
+map <a-3> tab_open 3
+map <a-4> tab_open 4
+map <a-5> tab_open 5
+map <a-6> tab_open 6
+map <a-7> tab_open 7
+map <a-8> tab_open 8
+map <a-9> tab_open 9
+map <a-r> tab_shift 1
+map <a-l> tab_shift -1
+
+# Sorting
+map or set sort_reverse!
+map oz set sort=random
+map os chain set sort=size; set sort_reverse=False
+map ob chain set sort=basename; set sort_reverse=False
+map on chain set sort=natural; set sort_reverse=False
+map om chain set sort=mtime; set sort_reverse=False
+map oc chain set sort=ctime; set sort_reverse=False
+map oa chain set sort=atime; set sort_reverse=False
+map ot chain set sort=type; set sort_reverse=False
+map oe chain set sort=extension; set sort_reverse=False
+
+map oS chain set sort=size; set sort_reverse=True
+map oB chain set sort=basename; set sort_reverse=True
+map oN chain set sort=natural; set sort_reverse=True
+map oM chain set sort=mtime; set sort_reverse=True
+map oC chain set sort=ctime; set sort_reverse=True
+map oA chain set sort=atime; set sort_reverse=True
+map oT chain set sort=type; set sort_reverse=True
+map oE chain set sort=extension; set sort_reverse=True
+
+map dc get_cumulative_size
+
+# Settings
+map zc set collapse_preview!
+map zd set sort_directories_first!
+map zh set show_hidden!
+map <C-h> set show_hidden!
+copymap <C-h> <backspace>
+copymap <backspace> <backspace2>
+map zI set flushinput!
+map zi set preview_images!
+map zm set mouse_enabled!
+map zp set preview_files!
+map zP set preview_directories!
+map zs set sort_case_insensitive!
+map zu set autoupdate_cumulative_size!
+map zv set use_preview_script!
+map zf console filter%space
+copymap zf zz
+
+# Filter stack
+map .n console filter_stack add name%space
+map .m console filter_stack add mime%space
+map .d filter_stack add type d
+map .f filter_stack add type f
+map .l filter_stack add type l
+map .| filter_stack add or
+map .& filter_stack add and
+map .! filter_stack add not
+map .r console filter_stack rotate
+map .c filter_stack clear
+map .* filter_stack decompose
+map .p filter_stack pop
+map .. filter_stack show
+
+# Bookmarks
+map `<any> enter_bookmark %any
+map '<any> enter_bookmark %any
+map m<any> set_bookmark %any
+map um<any> unset_bookmark %any
+
+map m<bg> draw_bookmarks
+copymap m<bg> um<bg> `<bg> '<bg>
+
+# Generate all the chmod bindings with some python help:
+eval for arg in "rwxXst": cmd("map +u{0} shell -f chmod u+{0} %s".format(arg))
+eval for arg in "rwxXst": cmd("map +g{0} shell -f chmod g+{0} %s".format(arg))
+eval for arg in "rwxXst": cmd("map +o{0} shell -f chmod o+{0} %s".format(arg))
+eval for arg in "rwxXst": cmd("map +a{0} shell -f chmod a+{0} %s".format(arg))
+eval for arg in "rwxXst": cmd("map +{0} shell -f chmod u+{0} %s".format(arg))
+
+eval for arg in "rwxXst": cmd("map -u{0} shell -f chmod u-{0} %s".format(arg))
+eval for arg in "rwxXst": cmd("map -g{0} shell -f chmod g-{0} %s".format(arg))
+eval for arg in "rwxXst": cmd("map -o{0} shell -f chmod o-{0} %s".format(arg))
+eval for arg in "rwxXst": cmd("map -a{0} shell -f chmod a-{0} %s".format(arg))
+eval for arg in "rwxXst": cmd("map -{0} shell -f chmod u-{0} %s".format(arg))
+
+# ===================================================================
+# == Define keys for the console
+# ===================================================================
+# Note: Unmapped keys are passed directly to the console.
+
+# Basic
+cmap <tab> eval fm.ui.console.tab()
+cmap <s-tab> eval fm.ui.console.tab(-1)
+cmap <ESC> eval fm.ui.console.close()
+cmap <CR> eval fm.ui.console.execute()
+cmap <C-l> redraw_window
+
+copycmap <ESC> <C-c>
+copycmap <CR> <C-j>
+
+# Move around
+cmap <up> eval fm.ui.console.history_move(-1)
+cmap <down> eval fm.ui.console.history_move(1)
+cmap <left> eval fm.ui.console.move(left=1)
+cmap <right> eval fm.ui.console.move(right=1)
+cmap <home> eval fm.ui.console.move(right=0, absolute=True)
+cmap <end> eval fm.ui.console.move(right=-1, absolute=True)
+cmap <a-b> eval fm.ui.console.move_word(left=1)
+cmap <a-f> eval fm.ui.console.move_word(right=1)
+
+copycmap <a-b> <a-left>
+copycmap <a-f> <a-right>
+
+# Line Editing
+cmap <backspace> eval fm.ui.console.delete(-1)
+cmap <delete> eval fm.ui.console.delete(0)
+cmap <C-w> eval fm.ui.console.delete_word()
+cmap <A-d> eval fm.ui.console.delete_word(backward=False)
+cmap <C-k> eval fm.ui.console.delete_rest(1)
+cmap <C-u> eval fm.ui.console.delete_rest(-1)
+cmap <C-y> eval fm.ui.console.paste()
+
+# And of course the emacs way
+copycmap <ESC> <C-g>
+copycmap <up> <C-p>
+copycmap <down> <C-n>
+copycmap <left> <C-b>
+copycmap <right> <C-f>
+copycmap <home> <C-a>
+copycmap <end> <C-e>
+copycmap <delete> <C-d>
+copycmap <backspace> <C-h>
+
+# Note: There are multiple ways to express backspaces. <backspace> (code 263)
+# and <backspace2> (code 127). To be sure, use both.
+copycmap <backspace> <backspace2>
+
+# This special expression allows typing in numerals:
+cmap <allow_quantifiers> false
+
+# ===================================================================
+# == Pager Keybindings
+# ===================================================================
+
+# Movement
+pmap <down> pager_move down=1
+pmap <up> pager_move up=1
+pmap <left> pager_move left=4
+pmap <right> pager_move right=4
+pmap <home> pager_move to=0
+pmap <end> pager_move to=-1
+pmap <pagedown> pager_move down=1.0 pages=True
+pmap <pageup> pager_move up=1.0 pages=True
+pmap <C-d> pager_move down=0.5 pages=True
+pmap <C-u> pager_move up=0.5 pages=True
+
+copypmap <UP> k <C-p>
+copypmap <DOWN> j <C-n> <CR>
+copypmap <LEFT> h
+copypmap <RIGHT> l
+copypmap <HOME> g
+copypmap <END> G
+copypmap <C-d> d
+copypmap <C-u> u
+copypmap <PAGEDOWN> n f <C-F> <Space>
+copypmap <PAGEUP> p b <C-B>
+
+# Basic
+pmap <C-l> redraw_window
+pmap <ESC> pager_close
+copypmap <ESC> q Q i <F3>
+pmap E edit_file
+
+# ===================================================================
+# == Taskview Keybindings
+# ===================================================================
+
+# Movement
+tmap <up> taskview_move up=1
+tmap <down> taskview_move down=1
+tmap <home> taskview_move to=0
+tmap <end> taskview_move to=-1
+tmap <pagedown> taskview_move down=1.0 pages=True
+tmap <pageup> taskview_move up=1.0 pages=True
+tmap <C-d> taskview_move down=0.5 pages=True
+tmap <C-u> taskview_move up=0.5 pages=True
+
+copytmap <UP> k <C-p>
+copytmap <DOWN> j <C-n> <CR>
+copytmap <HOME> g
+copytmap <END> G
+copytmap <C-u> u
+copytmap <PAGEDOWN> n f <C-F> <Space>
+copytmap <PAGEUP> p b <C-B>
+
+# Changing priority and deleting tasks
+tmap J eval -q fm.ui.taskview.task_move(-1)
+tmap K eval -q fm.ui.taskview.task_move(0)
+tmap dd eval -q fm.ui.taskview.task_remove()
+tmap <pagedown> eval -q fm.ui.taskview.task_move(-1)
+tmap <pageup> eval -q fm.ui.taskview.task_move(0)
+tmap <delete> eval -q fm.ui.taskview.task_remove()
+
+# Basic
+tmap <C-l> redraw_window
+tmap <ESC> taskview_close
+copytmap <ESC> q Q w <C-c>
diff --git a/.config/tmuxinator/sample.yml b/.config/tmuxinator/sample.yml
new file mode 100644
index 0000000..33f628c
--- /dev/null
+++ b/.config/tmuxinator/sample.yml
@@ -0,0 +1,59 @@
+# /home/sadeghi_f/.config/tmuxinator/maha.yml
+
+name: maha
+root: ~/
+
+# Optional tmux socket
+# socket_name: foo
+
+# Note that the pre and post options have been deprecated and will be replaced by
+# project hooks.
+
+# Project hooks
+
+# Runs on project start, always
+# on_project_start: command
+
+# Run on project start, the first time
+# on_project_first_start: command
+
+# Run on project start, after the first time
+# on_project_restart: command
+
+# Run on project exit ( detaching from tmux session )
+# on_project_exit: command
+
+# Run on project stop
+# on_project_stop: command
+
+# Runs in each window and pane before window/pane specific commands. Useful for setting up interpreter versions.
+# pre_window: rbenv shell 2.0.0-p247
+
+# Pass command line options to tmux. Useful for specifying a different tmux.conf.
+# tmux_options: -f ~/.tmux.mac.conf
+
+# Change the command to call tmux. This can be used by derivatives/wrappers like byobu.
+# tmux_command: byobu
+
+# Specifies (by name or index) which window will be selected on project startup. If not set, the first window is used.
+# startup_window: editor
+
+# Specifies (by index) which pane of the specified window will be selected on project startup. If not set, the first pane is used.
+# startup_pane: 1
+
+# Controls whether the tmux session should be attached to automatically. Defaults to true.
+# attach: false
+
+windows:
+ - shell1:
+ - cd "D:\Workspace\mi-server\Projects\ETCS\ONBOARD.KERNEL\RM\DIM"
+ - vim
+ - shell2:
+ - cd "D:\Workspace\mi-server\Projects\ETCS\ONBOARD.KERNEL\RM\DIM"
+ - date
+ - jcal
+ - std: cd "C:\Users\sadeghi_f\Desktop\STD\STD"
+ - src1: cd "D:\Workspace\mi-server\Projects\ETCS\ONBOARD.KERNEL\IMP\SRC"
+ - src2: cd "D:\Workspace\mi-server\Projects\ETCS\ONBOARD.KERNEL\IMP\SRC"
+ - hole:
+ - digg