literate-dotfiles/dotfiles/config.org

42 KiB

Configuration Files

Xresources

Colors

  #define base00 #32302f
  #define base01 #3c3836
  #define base02 #504945
  #define base03 #665c54
  #define base04 #bdae93
  #define base05 #d5c4a1
  #define base06 #ebdbb2
  #define base07 #fbf1c7
  #define base08 #fb4934
  #define base09 #fe8019
  #define base0A #fabd2f
  #define base0B #b8bb26
  #define base0C #8ec07c
  #define base0D #83a598
  #define base0E #d3869b
  #define base0F #d65d0e

  *foreground:   base05
  #ifdef background_opacity
  *background:   [background_opacity]base00
  #else
  *background:   base00
  #endif
  *cursorColor:  base05

  *color0:       base00
  *color1:       base08
  *color2:       base0B
  *color3:       base0A
  *color4:       base0D
  *color5:       base0E
  *color6:       base0C
  *color7:       base05

  *color8:       base03
  *color9:       base08
  *color10:      base0B
  *color11:      base0A
  *color12:      base0D
  *color13:      base0E
  *color14:      base0C
  *color15:      base07

  ! Note: colors beyond 15 might not be loaded (e.g., xterm, urxvt),
  ! use 'shell' template to set these if necessary
  *color16:      base09
  *color17:      base0F
  *color18:      base01
  *color19:      base02
  *color20:      base04
  *color21:      base06

XFT

  Xft.dpi:       96
  Xft.autohint:  0
  Xft.lcdfilter: lcddefault
  Xft.hintstyle: hintfull
  Xft.hinting:   1
  Xft.antialias: 1
  Xft.rgba:      rgb

Xcursor

  Xcursor.theme: Breeze
  Xcursor.size:  0

URxvt

  URxvt*termName: screen-256color
  URxvt*geometry: 240x84
  URxvt*loginShell: true
  URxvt*scrollstyle: plain
  URxvt*scrollTtyKeypress: true
  URxvt*scrollTtyOutput: false
  URxvt*scrollWithBuffer: false
  URxvt*secondaryScreen: true
  URxvt*secondaryScroll: true
  URxvt*skipScroll: true
  URxvt*scrollBar: false
  URxvt*scrollBar_right: false
  URxvt*scrollBar_floating: false
  URxvt*utmpInhibit: false
  URxvt*urgentOnBell: false
  URxvt*visualBell: true
  URxvt*mapAlert: true
  URxvt*mouseWheelScrollPage: true
  URxvt*font: xft:SauceCodePro Nerd Font Mono:size=10
  URxvt*boldFont: xft:SauceCodePro Nerd Font Mono:bold:size=10
  URxvt.perl-ext-common: selection-to-clipboard
  URxvt.keysym.C-S-c: perl:clipboard:copy
  URxvt.keysym.C-S-v: perl:clipboard:paste

Redshift

  [redshift]
  ; Set the day and night screen temperatures
  temp-day=5700
  temp-night=3500

  ; Enable/Disable a smooth transition between day and night
  ; 0 will cause a direct change from day to night screen temperature.
  ; 1 will gradually increase or decrease the screen temperature.
  transition=1

  ; Set the screen brightness. Default is 1.0.
  ;brightness=0.9
  ; It is also possible to use different settings for day and night
  ; since version 1.8.
  ;brightness-day=0.7
  ;brightness-night=0.4
  ; Set the screen gamma (for all colors, or each color channel
  ; individually)
  ; gamma=0.8
  ;gamma=0.8:0.7:0.8
  ; This can also be set individually for day and night since
  ; version 1.10.
  ;gamma-day=0.8:0.7:0.8
  ;gamma-night=0.6

  ; Set the location-provider: 'geoclue2', 'manual'
  ; type 'redshift -l list' to see possible values.
  ; The location provider settings are in a different section.
  location-provider=manual

  ; Set the adjustment-method: 'randr', 'vidmode'
  ; type 'redshift -m list' to see all possible values.
  ; 'randr' is the preferred method, 'vidmode' is an older API.
  ; but works in some cases when 'randr' does not.
  ; The adjustment method settings are in a different section.
  adjustment-method=randr

  ; Configuration of the location-provider:
  ; type 'redshift -l PROVIDER:help' to see the settings.
  ; ex: 'redshift -l manual:help'
  ; Keep in mind that longitudes west of Greenwich (e.g. the Americas)
  ; are negative numbers.
  [manual]
  lat=45.1
  lon=5.7

dmenu

  # define the font for dmenu to be used
  DMENU_FN="Noto-10.5"

  # background colour for unselected menu-items
  DMENU_NB="#222D31"

  # textcolour for unselected menu-items
  DMENU_NF="#F9FAF9"

  # background colour for selected menu-items
  DMENU_SB="#16A085"

  # textcolour for selected menu-items
  DMENU_SF="#F9FAF9"

  # command for the terminal application to be used:
  TERMINAL_CMD="terminal -e"

  # export our variables
  DMENU_OPTIONS="-fn $DMENU_FN -nb $DMENU_NB -nf $DMENU_NF -sf $DMENU_SF -sb $DMENU_SB"

GTK

GTK-2.0

  gtk-theme-name="Arc-Dark"
  gtk-icon-theme-name="Arc"
  gtk-font-name="SauceCodePro Nerd Font Mono 10"
  gtk-cursor-theme-name="xcursor-breeze"
  gtk-cursor-theme-size=0
  gtk-toolbar-style=GTK_TOOLBAR_BOTH
  gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
  gtk-button-images=1
  gtk-menu-images=1
  gtk-enable-event-sounds=1
  gtk-enable-input-feedback-sounds=1
  gtk-xft-antialias=1
  gtk-xft-hinting=1
  gtk-xft-hintstyle="hintfull"
  gtk-xft-rgba="rgb"

GTK-3.0

  [Settings]
  gtk-theme-name=Arc-Dark
  gtk-icon-theme-name=Arc
  gtk-font-name=SauceCodePro Nerd Font Mono 10
  gtk-cursor-theme-name=xcursor-breeze
  gtk-cursor-theme-size=0
  gtk-toolbar-style=GTK_TOOLBAR_BOTH
  gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
  gtk-button-images=1
  gtk-menu-images=1
  gtk-enable-event-sounds=1
  gtk-enable-input-feedback-sounds=1
  gtk-xft-antialias=1
  gtk-xft-hinting=1
  gtk-xft-hintstyle=hintfull
  gtk-xft-rgba=rgb

Input

  # Single tab for autocompletion
  set show-all-if-ambiguous on

  # Ignore case for completion
  set completion-ignore-case on

Mailcap

  text/plain; nvim %s
  audio/*; /usr/bin/xdg-open %s ; copiousoutput
  video/*; setsid mpv --quiet %s &; copiousoutput
  image/*; ~/scripts/openfile.sh %s;
  application/pdf; ~/scripts/openfile.sh %s;
  text/html; qutebrowser %s; -n "$DISPLAY"; nametemplate=%s.html;
  text/html; w3m -I %{charset} -T text/html; copiousoutput;
  text/calendar; khal import --batch -a home %s && khal printics %s; copiousoutput;
  application/ics; khal import --batch -a home %s && khal printics %s; copiousoutput;

Libreoffice

  application/docx; libreoffice %s --nologo &; copiousoutput;
  application/doc; libreoffice --nologo %s &; copiousoutput;

  application/vnd.oasis.opendocument.database; libreoffice --nologo --base '%s'; copiousoutput
  application/vnd.oasis.opendocument.chart; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.oasis.opendocument.spreadsheet; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.oasis.opendocument.spreadsheet-template; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.oasis.opendocument.graphics; libreoffice --nologo --draw '%s'; copiousoutput
  application/vnd.oasis.opendocument.graphics-template; libreoffice --nologo --draw '%s'; copiousoutput
  application/vnd.oasis.opendocument.presentation; libreoffice --nologo --impress '%s'; copiousoutput
  application/vnd.oasis.opendocument.presentation-template; libreoffice --nologo --impress '%s'; copiousoutput
  application/vnd.oasis.opendocument.formula; libreoffice --nologo --math '%s'; copiousoutput
  application/vnd.oasis.opendocument.text; libreoffice --nologo --writer '%s'; copiousoutput
  application/vnd.oasis.opendocument.text-master; libreoffice --nologo -global '%s'; copiousoutput
  application/vnd.oasis.opendocument.text-template; libreoffice --nologo --writer '%s'; copiousoutput
  application/vnd.oasis.opendocument.text-web; libreoffice --nologo -web '%s'; copiousoutput
  application/vnd.sun.xml.base; libreoffice --nologo --writer '%s'; copiousoutput
  application/vnd.sun.xml.calc; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.sun.xml.calc.template; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.sun.xml.draw; libreoffice --nologo --draw '%s'; copiousoutput
  application/vnd.sun.xml.draw.template; libreoffice --nologo --draw '%s'; copiousoutput
  application/vnd.stardivision.calc; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.stardivision.chart; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.stardivision.draw; libreoffice --nologo --draw '%s'; copiousoutput
  application/vnd.stardivision.impress; libreoffice --nologo --impress '%s'; copiousoutput
  application/vnd.stardivision.math; libreoffice --nologo --math '%s'; copiousoutput
  application/vnd.stardivision.writer-global; libreoffice --nologo --writer '%s'; copiousoutput
  application/vnd.stardivision.writer; libreoffice --nologo --writer '%s'; copiousoutput
  application/vnd.sun.xml.impress; libreoffice --nologo --impress '%s'; copiousoutput
  application/vnd.sun.xml.impress.template; libreoffice --nologo --impress '%s'; copiousoutput
  application/vnd.sun.xml.math; libreoffice --nologo --math '%s'; copiousoutput
  application/vnd.sun.xml.writer; libreoffice --nologo --writer '%s'; copiousoutput
  application/vnd.sun.xml.writer.global; libreoffice --nologo -global '%s'; copiousoutput
  application/vnd.sun.xml.writer.template; libreoffice --nologo --writer '%s'; copiousoutput
  text/csv; libreoffice --nologo --calc '%s'; copiousoutput
  text/spreadsheet; libreoffice --nologo --calc '%s'; copiousoutput
  application/x-quattropro; libreoffice --nologo --calc '%s'; copiousoutput
  application/x-dbf; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.ms-excel.sheet.macroEnabled.12; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.ms-excel.template.macroEnabled.12; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.openxmlformats-officedocument.spreadsheetml.sheet; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.openxmlformats-officedocument.spreadsheetml.template; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.lotus-1-2-3; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.ms-excel; libreoffice --nologo --calc '%s'; copiousoutput
  application/msexcel; libreoffice --nologo --calc '%s'; copiousoutput
  application/x-dbase; libreoffice --nologo --calc '%s'; copiousoutput
  text/x-csv; libreoffice --nologo --calc '%s'; copiousoutput
  application/vnd.ms-powerpoint.presentation.macroEnabled.12; libreoffice --nologo --impress '%s'; copiousoutput
  application/vnd.ms-powerpoint.slideshow.macroEnabled.12; libreoffice --nologo --impress '%s'; copiousoutput
  application/vnd.ms-powerpoint.template.macroEnabled.12; libreoffice --nologo --impress '%s'; copiousoutput
  application/vnd.openxmlformats-officedocument.presentationml.presentation; libreoffice --nologo --impress '%s'; copiousoutput
  application/vnd.openxmlformats-officedocument.presentationml.slideshow; libreoffice --nologo --impress '%s'; copiousoutput
  application/vnd.openxmlformats-officedocument.presentationml.template; libreoffice --nologo --impress '%s'; copiousoutput
  application/vnd.ms-powerpoint; libreoffice --nologo --impress '%s'; copiousoutput
  application/mspowerpoint; libreoffice --nologo --impress '%s'; copiousoutput
  text/mathml; libreoffice --nologo --math '%s'; copiousoutput
  application/rtf; libreoffice --nologo --writer '%s'; copiousoutput
  application/x-t602; libreoffice --nologo --writer '%s'; copiousoutput
  application/vnd.wordperfect; libreoffice --nologo --writer '%s'; copiousoutput
  application/vnd.ms-word.document.macroEnabled.12; libreoffice --nologo --writer '%s'; copiousoutput
  application/vnd.ms-word.template.macroEnabled.12; libreoffice --nologo --writer '%s'; copiousoutput
  application/vnd.openxmlformats-officedocument.wordprocessingml.document; libreoffice --nologo --writer '%s'; copiousoutput
  application/vnd.openxmlformats-officedocument.wordprocessingml.template; libreoffice --nologo --writer '%s'; copiousoutput
  application/vnd.ms-works; libreoffice --nologo --writer '%s'; copiousoutput
  application/msword; libreoffice --nologo --writer '%s'; copiousoutput
  application/wordperfect; libreoffice --nologo --writer '%s'; copiousoutput
  text/rtf; libreoffice --nologo --writer '%s'; copiousoutput

urlview

  REGEXP (((http|https|ftp|gopher)|mailto)[.:][^ >"\t]*|www\.[-a-z0-9.]+)[^ .,;\t>">\):]

  COMMAND nohup qutebrowser %s </dev/null &>/dev/null &

TODO xinit

  userresources=$HOME/.Xresources
  usermodmap=$HOME/.Xmodmap
  sysresources=/etc/X11/xinit/.Xresources
  sysmodmap=/etc/X11/xinit/.Xmodmap

Merge in defaults and keymaps

  if [ -f $sysresources ]; then
      xrdb -merge $sysresources
  fi

  if [ -f $sysmodmap ]; then
      xmodmap $sysmodmap
  fi

  if [ -f "$userresources" ]; then
      xrdb -merge "$userresources"
  fi

  if [ -f "$usermodmap" ]; then
      xmodmap "$usermodmap"
  fi

Start some nice programs

  if [ -d /etc/X11/xinit/xinitrc.d ] ; then
      for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
          [ -x "$f" ] && . "$f"
      done
      unset f
  fi

hiDPI

  # export GDK_SCALE=1
  # export GDK_DPI_SCALE=0.95

  # export QT_SCREEN_SCALE_FACTORS=0.9
  # export QT_AUTO_SCREEN_SCALE_FACTOR=2
  # export QT_SCALE_FACTOR=2

Keyboard Options

  # Set repetition keyboard rate
  xset r rate 200 40
  # Set International US keyboard layout
  setxkbmap -layout us -variant intl -option caps:escape
  get_session(){
    local dbus_args=(--sh-syntax --exit-with-session)
    case $1 in
      awesome) dbus_args+=(awesome) ;;
      bspwm) dbus_args+=(bspwm-session) ;;
      budgie) dbus_args+=(budgie-desktop) ;;
      cinnamon) dbus_args+=(cinnamon-session) ;;
      deepin) dbus_args+=(startdde) ;;
      enlightenment) dbus_args+=(enlightenment_start) ;;
      fluxbox) dbus_args+=(startfluxbox) ;;
      gnome) dbus_args+=(gnome-session) ;;
      i3|i3wm) dbus_args+=(i3 --shmlog-size 0) ;;
      jwm) dbus_args+=(jwm) ;;
      kde) dbus_args+=(startkde) ;;
      lxde) dbus_args+=(startlxde) ;;
      lxqt) dbus_args+=(lxqt-session) ;;
      mate) dbus_args+=(mate-session) ;;
      xfce) dbus_args+=(xfce4-session) ;;
      openbox) dbus_args+=(openbox-session) ;;
      ,*) dbus_args+=($DEFAULT_SESSION) ;;
    esac

    echo "dbus-launch ${dbus_args[*]}"
  }

  exec $(get_session)
  exec i3

GnuPG

  max-cache-ttl 60480000
  default-cache-ttl 60480000

TODO Dunst

  [global]
  frame_width = 3
  frame_color = "#282828"
  font = SauceCodePro Nerd Font 10
  markup = full

  # The format of the message.  Possible variables are:
  #   %a  appname
  #   %s  summary
  #   %b  body
  #   %i  iconname (including its path)
  #   %I  iconname (without its path)
  #   %p  progress value if set ([  0%] to [100%]) or nothing
  # Markup is allowed
  format = "%s\n%b"

  # Sort messages by urgency.
  sort = yes

  # Show how many messages are currently hidden (because of geometry).
  indicate_hidden = yes

  # Alignment of message text.
  # Possible values are "left", "center" and "right".
  alignment = left

  # The frequency with wich text that is longer than the notification
  # window allows bounces back and forth.
  # This option conflicts with "word_wrap".
  # Set to 0 to disable.
  bounce_freq = 5

  # Show age of message if message is older than show_age_threshold
  # seconds.
  # Set to -1 to disable.
  show_age_threshold = 60

  # Split notifications into multiple lines if they don't fit into
  # geometry.
  word_wrap = no

  # Ignore newlines '\n' in notifications.
  ignore_newline = no

  # The geometry of the window:
  #   [{width}]x{height}[+/-{x}+/-{y}]
  # The geometry of the message window.
  # The height is measured in number of notifications everything else
  # in pixels.  If the width is omitted but the height is given
  # ("-geometry x2"), the message window expands over the whole screen
  # (dmenu-like).  If width is 0, the window expands to the longest
  # message displayed.  A positive x is measured from the left, a
  # negative from the right side of the screen.  Y is measured from
  # the top and down respectevly.
  # The width can be negative.  In this case the actual width is the
  # screen width minus the width defined in within the geometry option.
  geometry = "350x5-0+27"

  # Shrink window if it's smaller than the width.  Will be ignored if
  # width is 0.
  shrink = yes

  # The transparency of the window.  Range: [0; 100].
  # This option will only work if a compositing windowmanager is
  # present (e.g. xcompmgr, compiz, etc.).
  transparency = 20

  # Don't remove messages, if the user is idle (no mouse or keyboard input)
  # for longer than idle_threshold seconds.
  # Set to 0 to disable.
  # default 120
  idle_threshold = 120

  # Which monitor should the notifications be displayed on.
  monitor = 0

  # Display notification on focused monitor.  Possible modes are:
  #   mouse: follow mouse pointer
  #   keyboard: follow window with keyboard focus
  #   none: don't follow anything
  #
  # "keyboard" needs a windowmanager that exports the
  # _NET_ACTIVE_WINDOW property.
  # This should be the case for almost all modern windowmanagers.
  #
  # If this option is set to mouse or keyboard, the monitor option
  # will be ignored.
  follow = keyboard

  # Should a notification popped up from history be sticky or timeout
  # as if it would normally do.
  sticky_history = no

  # Maximum amount of notifications kept in history
  history_length = 20

  # Display indicators for URLs (U) and actions (A).
  show_indicators = yes

  # The height of a single line.  If the height is smaller than the
  # font height, it will get raised to the font height.
  # This adds empty space above and under the text.
  line_height = 0

  # Draw a line of "separator_height" pixel height between two
  # notifications.
  # Set to 0 to disable.
  separator_height = 2

  # Padding between text and separator.
  padding = 0

  # Horizontal padding.
  horizontal_padding = 8

  # Define a color for the separator.
  # possible values are:
  #  * auto: dunst tries to find a color fitting to the background;
  #  * foreground: use the same color as the foreground;
  #  * frame: use the same color as the frame;
  #  * anything else will be interpreted as a X color.
  separator_color = #263238

  # Print a notification on startup.
  # This is mainly for error detection, since dbus (re-)starts dunst
  # automatically after a crash.
  startup_notification = false

  # dmenu path.
  dmenu = /usr/bin/dmenu -p dunst:

  # Browser for opening urls in context menu.
  browser = qutebrowser

  # Align icons left/right/off
  icon_position = left

  # Paths to default icons.
  icon_path = /usr/share/icons/Arc/16x16/status/:/usr/share/icons/Arc/16x16/devices/

  # Limit icons size.
  max_icon_size=40

  # TODO - How to use these shortcuts?
  [shortcuts]
  # Shortcuts are specified as [modifier+][modifier+]...key
  # Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
  # "mod3" and "mod4" (windows-key).

  # Close notification.
  close = mod1+backspace

  [urgency_low]
  # IMPORTANT: colors have to be defined in quotation marks.
  # Otherwise the "#" and following would be interpreted as a comment.
  background = "#263238"
  foreground = "#556064"
  timeout = 10

  [urgency_normal]
  background = "#263238"
  foreground = "#F9FAF9"
  timeout = 10

  [urgency_critical]
  background = "#D62929"
  foreground = "#F9FAF9"
  timeout = 0


  # Every section that isn't one of the above is interpreted as a rules to
  # override settings for certain messages.
  # Messages can be matched by "appname", "summary", "body", "icon", "category",
  # "msg_urgency" and you can override the "timeout", "urgency", "foreground",
  # "background", "new_icon" and "format".
  # Shell-like globbing will get expanded.
  #
  # SCRIPTING
  # You can specify a script that gets run when the rule matches by
  # setting the "script" option.
  # The script will be called as follows:
  #   script appname summary body icon urgency
  # where urgency can be "LOW", "NORMAL" or "CRITICAL".
  #
  # NOTE: if you don't want a notification to be displayed, set the format
  # to "".
  # NOTE: It might be helpful to run dunst -print in a terminal in order
  # to find fitting options for rules.

  #[espeak]
  #    summary = "*"
  #    script = dunst_espeak.sh

  #[script-test]
  #    summary = "*script*"
  #    script = dunst_test.sh

  #[ignore]
  #    # This notification will not be displayed
  #    summary = "foobar"
  #    format = ""

  #[signed_on]
  #    appname = Pidgin
  #    summary = "*signed on*"
  #    urgency = low

  #[signed_off]
  #    appname = Pidgin
  #    summary = *signed off*
  #    urgency = low

  #[says]
  #    appname = Pidgin
  #    summary = *says*
  #    urgency = critical

  #[twitter]
  #    appname = Pidgin
  #    summary = *twitter.com*
  #    urgency = normal

  [New Mail]
  appname = mbsync
  category = email.arrived
  urgency = normal
  background = "#2F899E"
  foreground = "#FFA247"

  #[mute.sh]
  #     appname = mute
  #     category = mute.sound
  #     script = mute.sh

  #[JDownloader]
  #    appname = JDownloader
  #    category = JD
  #    background = "#FFA247"
  #    foreground = "#FFFFFF"

  #[newsbeuter]
  #    summary = *Feeds*
  #    background = "#A8EB41"
  #    foreground = "#FFFFFF"

  #[irc]
  #        appname = weechat
  #        timeout = 0
  #        background = "#0033bb"
  #        foreground = "#dddddd"

  #[weechat hl]
  #     appname = weechat
  #     category = weechat.HL
  #     background = "#FF5C47"
  #     foreground = "#FFFFFF"

  #[weechat pn]
  #     appname = weechat
  #     category = weechat.PM
  #     background = "#D53B84"
  #     foreground = "#FFFFFF"

  #[CMUS]
  #    appname = CMUS
  #    category = cmus
  #    background = "#6C4AB7"
  #    foreground = "#FFE756"

feh

  next_img L space
  prev_img BackSpace H

  scroll_up k Up
  scroll_down j Down
  scroll_right l Right
  scroll_left h Left

  toggle_fullscreen f
  save_filelist F

MPV

Configuration

Video settings

# Start in fullscreen mode by default.
#fs=yes

# force starting with centered window
#geometry=50%:50%

# don't allow a new window to have a size larger than 90% of the screen size
#autofit-larger=90%x90%

# Do not close the window on exit.
#keep-open=yes

# Do not wait with showing the video window until it has loaded. (This will

# resize the window once video is loaded. Also always shows a window with
# audio.)
#force-window=immediate

# Disable the On Screen Controller (OSC).
#osc=no

# Keep the player window on top of all other windows.
#ontop=yes

# Specify high quality video rendering preset (for --vo=gpu only)
# Can cause performance problems with some drivers and GPUs.
#profile=gpu-hq

# Force video to lock on the display's refresh rate, and change video and audio
# speed to some degree to ensure synchronous playback - can cause problems
# with some drivers and desktop environments.
#video-sync=display-resample

# Enable hardware decoding if available. Often, this does not work with all
# video outputs, but should work well with default settings on most systems.
# If performance or energy usage is an issue, forcing the vdpau or vaapi VOs
# may or may not help.
#hwdec=auto

Audio settings

# Specify default audio device. You can list devices with: --audio-device=help
# The option takes the device string (the stuff between the '...').
#audio-device=alsa/default

# Do not filter audio to keep pitch when changing playback speed.
#audio-pitch-correction=no

# Output 5.1 audio natively, and upmix/downmix audio with a different format.
#audio-channels=5.1
# Disable any automatic remix, _if_ the audio output accepts the audio format.
# of the currently played file. See caveats mentioned in the manpage.
# (The default is "auto-safe", see manpage.)
#audio-channels=auto

Other settings

# Pretend to be a web browser. Might fix playback with some streaming sites,
# but also will break with shoutcast streams.
#user-agent="Mozilla/5.0"

stop-screensaver = "yes"

# cache settings
#
# Use 150MB input cache by default. The cache is enabled for network streams only.
#cache-default=153600
#
# Use 150MB input cache for everything, even local files.
#cache=153600
#
# Disable the behavior that the player will pause if the cache goes below a
# certain fill size.
#cache-pause=no
#
# Read ahead about 5 seconds of audio and video packets.
#demuxer-readahead-secs=5.0
#
# Raise readahead from demuxer-readahead-secs to this value if a cache is active.
#cache-secs=50.0

# Display English subtitles if available.
#slang=en

# Play Finnish audio if available, fall back to English otherwise.
#alang=fi,en

# Change subtitle encoding. For Arabic subtitles use 'cp1256'.
# If the file seems to be valid UTF-8, prefer UTF-8.
# (You can add '+' in front of the codepage to force it.)
#sub-codepage=cp1256

Key bindings

  # =============================================================
  # Audio
  # =============================================================
  #WHEEL_LEFT    add volume -2
  #WHEEL_RIGHT   add volume 2
  #ctrl++ add audio-delay 0.100           # this changes audio/video sync
  #ctrl+- add audio-delay -0.100

  #9 add volume -2
  #/ add volume -2
  #0 add volume 2
  #* add volume 2
  #m cycle mute

  #SHARP cycle audio                      # switch audio streams
  # =============================================================


  # =============================================================
  # Basic
  # =============================================================
  ESC set fullscreen no

  q quit
  Q quit-watch-later

  SPACE cycle pause   # toggle pause/playback mode
  # p cycle pause       # toggle pause/playback mode
  # =============================================================


  # =============================================================
  # Navigation
  # =============================================================
  l seek  5
  h seek -5
  # k seek  60
  # j seek -60

  L playlist-next  # skip to next file
  H playlist-prev  # skip to previous file
  K add chapter  1 # skip to next chapter
  J add chapter -1 # skip to previous chapter

  WHEEL_UP      seek 10
  WHEEL_DOWN    seek -10
  # =============================================================


  # =============================================================
  # Subtitles
  # =============================================================
  z add sub-delay -0.1                   # subtract 100 ms delay from subs
  Z add sub-delay +0.1                   # add
  #x add sub-delay +0.1                   # same as previous binding (discouraged)
  #r add sub-pos -1                       # move subtitles up
  #R add sub-pos +1                       #                down
  #t add sub-pos +1                       # same as previous binding (discouraged)
  #v cycle sub-visibility
  # stretch SSA/ASS subtitles with anamorphic videos to match historical
  #V cycle sub-ass-vsfilter-aspect-compat
  # switch between applying no style overrides to SSA/ASS subtitles, and
  # overriding them almost completely with the normal subtitle style
  #u cycle-values sub-ass-override "force" "no"
  #j cycle sub                            # cycle through subtitles
  #J cycle sub down                       # ...backwards
  # Skip to previous/next subtitle (subject to some restrictions; see manpage)
  #Ctrl+LEFT   no-osd sub-seek -1
  #Ctrl+RIGHT  no-osd sub-seek  1
  # Adjust timing to previous/next subtitle
  #Ctrl+Shift+LEFT sub-step -1
  #Ctrl+Shift+RIGHT sub-step 1
  # F9 show_text ${track-list}             # show list of audio/sub streams
  # ? add sub-scale +0.1                  # increase subtitle font size
  # ? add sub-scale -0.1                  # decrease subtitle font size
  # =============================================================


  # =============================================================
  # Video
  # =============================================================
  # Move video rectangle
  #Alt+left  add video-pan-x  0.1
  #Alt+right add video-pan-x -0.1
  #Alt+up    add video-pan-y  0.1
  #Alt+down  add video-pan-y -0.1
  # Zoom/unzoom video
  #Alt++     add video-zoom   0.1
  #Alt+-     add video-zoom  -0.1
  # Reset video zoom/pan settings
  #Alt+BS set video-zoom 0 ; set video-pan-x 0 ; set video-pan-y 0

  #1 add contrast -1
  #2 add contrast 1
  #3 add brightness -1
  #4 add brightness 1
  #5 add gamma -1
  #6 add gamma 1
  #7 add saturation -1
  #8 add saturation 1
  # =============================================================


  # =============================================================
  # Speed
  # =============================================================
  #[ multiply speed 1/1.1                 # scale playback speed
  #] multiply speed 1.1
  #{ multiply speed 0.5
  #} multiply speed 2.0
  #BS set speed 1.0                       # reset speed to normal
  # =============================================================


  # =============================================================
  # # Informations
  # =============================================================
  #o show-progress
  #P show-progress

  #i script-binding stats/display-stats
  #I script-binding stats/display-stats-toggle
  # =============================================================


  # =============================================================
  # Screenshot
  # =============================================================
  #s async screenshot                     # take a screenshot
  #S async screenshot video               # ...without subtitles
  #Ctrl+s async screenshot window         # ...with subtitles and OSD, and scaled
  #Alt+s screenshot each-frame            # automatically screenshot every frame
  # =============================================================


  # =============================================================
  # Media keys
  # =============================================================
  #POWER quit
  #PLAY cycle pause
  #PAUSE cycle pause
  #PLAYPAUSE cycle pause
  #STOP quit
  #FORWARD seek 60
  #REWIND seek -60
  #NEXT playlist-next
  #PREV playlist-prev
  #VOLUME_UP add volume 2
  #VOLUME_DOWN add volume -2
  #MUTE cycle mute
  #CLOSE_WIN quit
  #CLOSE_WIN {encode} quit 4
  # =============================================================


  # =============================================================
  # Others
  # =============================================================
  #Shift+BS revert-seek                   # undo previous (or marked) seek
  #Shift+Ctrl+BS revert-seek mark         # mark position for revert-seek

  #. frame-step                           # advance one frame and pause
  #, frame-back-step                      # go back by one frame and pause

  #O no-osd cycle-values osd-level 3 1    # cycle through OSD mode


  #Alt+0 set window-scale 0.5
  #Alt+1 set window-scale 1.0
  #Alt+2 set window-scale 2.0

  # toggle deinterlacer (automatically inserts or removes required filter)
  #d cycle deinterlace

  #_ cycle video

  #T cycle ontop                          # toggle video window ontop of other windows
  #f cycle fullscreen                     # toggle fullscreen


  #w add panscan -0.1                     # zoom out with -panscan 0 -fs
  #W add panscan +0.1                     #      in
  #e add panscan +0.1                     # same as previous binding (discouraged)

  # cycle video aspect ratios; "-1" is the container aspect
  #A cycle-values video-aspect "16:9" "4:3" "2.35:1" "-1"

  #E cycle edition                        # next edition
  #l ab-loop                              # Set/clear A-B loop points
  #L cycle-values loop-file "inf" "no"    # toggle infinite looping
  #ctrl+c quit 4
  #DEL script-binding osc/visibility      # cycle OSC display
  #ctrl+h cycle-values hwdec "auto" "no"  # cycle hardware decoding
  #F8 show_text ${playlist}               # show playlist


  #q {encode} quit 4
  #ESC {encode} quit 4
  # =============================================================

TODO Zathura

  • I should add a Theme
  # Use clipboard
  set selection-clipboard clipboard

  # Remove padding
  set statusbar-h-padding 0
  set statusbar-v-padding 0

  # Padding between pages
  set page-padding 1

  map u scroll half-up
  map d scroll half-down

  map D toggle_page_mode

  map r reload
  map R rotate

  map L zoom in
  map H zoom out

  map i recolor
  map p print

  map m toggle_statusbar

TODO Compton

Shadow

  shadow = false;
  # no-dnd-shadow = true;
  no-dock-shadow = true;
  clear-shadow = true;
  detect-rounded-corners = true;
  shadow-radius = 5;
  shadow-offset-x = 1;
  shadow-offset-y = 1;
  shadow-opacity = .3;
  shadow-ignore-shaped = false;
  shadow-exclude = [
    "name = 'Notification'",
    # workaround for conky until it provides window properties:
    "override_redirect = 1 && !WM_CLASS@:s",
    "class_g ?= 'Dmenu'",
    #	"class_g ?= 'Dunst'",
    # disable shadows for hidden windows:
    "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'",
    "_GTK_FRAME_EXTENTS@:c",
    # disables shadows on sticky windows:
    #	"_NET_WM_STATE@:32a *= '_NET_WM_STATE_STICKY'",
    # disables shadows on i3 frames
    "class_g ?= 'i3-frame'"
  ];

  # shadow-exclude-reg = "x10+0+0";
  # xinerama-shadow-crop = true;
menu-opacity = 1.0;
inactive-opacity = 0.9;
active-opacity = 1.0;
alpha-step = 0.0;
# Dim the inactive windows
inactive-dim = 0.05;
blur-background = true;
blur-kern = "3x3box";

TODO Fading

  fading = false;
  fade-delta = 1;
  fade-in-step = 0.03;
  fade-out-step = 0.03;
  fade-exclude = [ ];
  backend = "xrender";
  mark-wmwin-focused = true;
  mark-ovredir-focused = true;
  detect-client-opacity = true;
  unredir-if-possible = true;
  refresh-rate = 0;
  vsync = "none";
  dbe = false;
  paint-on-overlay = true;
  focus-exclude = [ "class_g = 'Cairo-clock'" ];
  detect-transient = true;
  detect-client-leader = true;
  invert-color-include = [ ];
  glx-copy-from-front = false;
  glx-swap-method = "undefined";

Opacity Rules for specific windows

  #opacity-rule = [
  #"99:name *?= 'Call'",
  #"99:class_g = 'Chromium'",
  #"99:name *?= 'Conky'",
  #"99:class_g = 'Darktable'",
  #"50:class_g = 'Dmenu'",
  #"99:name *?= 'Event'",
  #"99:class_g = 'Firefox'",
  #"99:class_g = 'GIMP'",
  #"99:name *?= 'Image'",
  #"99:class_g = 'Lazpaint'",
  #"99:class_g = 'Midori'",
  #"99:name *?= 'Minitube'",
  #"99:class_g = 'Mousepad'",
  #"99:name *?= 'MuseScore'",
  #"90:name *?= 'Page Info'",
  #"99:name *?= 'Pale Moon'",
  #"90:name *?= 'Panel'",
  #"99:class_g = 'Pinta'",
  #"90:name *?= 'Restart'",
  #"99:name *?= 'sudo'",
  #"99:name *?= 'Screenshot'",
  #"99:class_g = 'Viewnior'",
  #"99:class_g = 'VirtualBox'",
  #"99:name *?= 'VLC'",
  #"99:name *?= 'Write'",
  #"93:class_g = 'URxvt' && !_NET_WM_STATE@:32a",
  #"0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'",
  #"96:_NET_WM_STATE@:32a *= '_NET_WM_STATE_STICKY'"
  #];
  wintypes :
  {
    tooltip :
    {
      fade = true;
      shadow = false;
      opacity = 0.85;
      focus = true;
    };
    fullscreen :
    {
      fade = true;
      shadow = false;
      opacity = 1;
      focus = true;
    };
  };

Locale

  LANG=en_US.UTF-8
  LC_CTYPE="en_US.UTF-8"
  LC_NUMERIC=fr_FR.UTF-8
  LC_TIME=fr_FR.UTF-8
  LC_COLLATE="en_US.UTF-8"
  LC_MONETARY=fr_FR.UTF-8
  LC_MESSAGES="en_US.UTF-8"
  LC_PAPER=fr_FR.UTF-8
  LC_NAME=fr_FR.UTF-8
  LC_ADDRESS=fr_FR.UTF-8
  LC_TELEPHONE=fr_FR.UTF-8
  LC_MEASUREMENT=fr_FR.UTF-8
  LC_IDENTIFICATION=fr_FR.UTF-8
  LC_ALL=

Mime applications

  [Default Applications]
  image/jpeg=feh.desktop
  image/png=feh.desktop;
  text/plain=nvim.desktop
  x-scheme-handler/mailto=neomutt.desktop
  message/rfc822=neomutt.desktop
  application/x-bittorrent=deluge.desktop
  application/pdf=zathura.desktop
  x-scheme-handler/http=qutebrowser.desktop
  x-scheme-handler/https=qutebrowser.desktop
  x-scheme-handler/ftp=qutebrowser.desktop
  x-scheme-handler/chrome=qutebrowser.desktop
  text/html=qutebrowser.desktop
  application/x-extension-htm=qutebrowser.desktop
  application/x-extension-html=qutebrowser.desktop
  application/x-extension-shtml=qutebrowser.desktop
  application/xhtml+xml=qutebrowser.desktop
  application/x-extension-xhtml=qutebrowser.desktop
  application/x-extension-xht=qutebrowser.desktop

  [Added Associations]
  image/jpeg=viewnior.desktop;gpicview.desktop;
  image/png=viewnior.desktop;gpicview.desktop;
  text/plain=mousepad.desktop;
  application/x-bittorrent=deluge.desktop;

Bukurun

  _rofi () {
      rofi -dmenu -i -no-levenshtein-sort -width 1000 "$@"
  }

Display settings

  display_type=1
  max_str_width=80

Keybindings

  switch_view="Alt+Tab"
  new_bookmark="Alt+n"
  actions="Alt+a"
  edit="Alt+e"
  delete="Alt+d"

Colors

  help_color="#2d7ed8"

Clipit - Clipboard Manager

  [rc]
  use_copy=true
  use_primary=false
  synchronize=false
  automatic_paste=false
  show_indexes=false
  save_uris=false
  use_rmb_menu=false
  save_history=false
  history_limit=50
  items_menu=20
  statics_show=false
  statics_items=10
  hyperlinks_only=false
  confirm_clear=false
  single_line=false
  reverse_history=false
  item_length=50
  ellipsize=2
  history_key=
  actions_key=
  menu_key=
  search_key=
  offline_key=
  offline_mode=false

Scrot

  scrot_dir=$HOME/Pictures

TODO Nitrogen

  [geometry]
  posx=560
  posy=65
  sizex=578
  sizey=591

  [nitrogen]
  view=list
  recurse=false
  sort=alpha
  icon_caps=false
  dirs=/home/tdehaeze/Pictures/wallpapers;

Pass Git Helper

  [github.com*]
  target=github.com/tdehaeze

Pavu Control

  [window]
  width=500
  height=400
  sinkInputType=1
  sourceOutputType=1
  sinkType=0
  sourceType=1
  showVolumeMeters=1

PCmanfm

  [config]
  bm_open_method=0

  [volume]
  mount_on_startup=1
  mount_removable=1
  autorun=1

  [ui]
  always_show_tabs=0
  max_tab_chars=32
  win_width=1263
  win_height=690
  splitter_pos=150
  media_in_new_tab=0
  desktop_folder_new_win=0
  change_tab_on_drop=1
  close_on_unmount=1
  focus_previous=0
  side_pane_mode=places
  view_mode=icon
  show_hidden=0
  sort=mtime;descending;
  toolbar=newtab;navigation;home;
  show_statusbar=1
  pathbar_mode_buttons=0

Viewnior

  [prefs]
  zoom-mode=0
  fit-on-fullscreen=true
  show-hidden=false
  smooth-images=true
  confirm-delete=true
  reload-on-save=false
  show-menu-bar=false
  show-toolbar=true
  show-scrollbar=true
  start-maximized=false
  slideshow-timeout=5
  auto-resize=false
  behavior-wheel=1
  behavior-click=0
  behavior-modify=0
  jpeg-quality=90
  png-compression=9
  desktop=9

TODO [A] Binaries

TODO [A] Scripts