├── .config
├── ranger
│ ├── tagged
│ ├── bookmarks
│ ├── history
│ ├── scope.sh
│ └── rc.conf
├── nvim
│ ├── .netrwhist
│ └── init.vim
├── gtk-3.0
│ └── settings.ini
├── bspwm
│ └── bspwmrc
├── termite
│ └── config
├── fontconfig
│ └── fonts.conf
├── cava
│ └── config
├── zathura
│ └── zathurarc
├── compton
│ └── compton.conf
├── sxhkd
│ └── sxhkdrc
├── polybar
│ └── config
├── dunst
│ └── dunstrc
└── mpd
│ └── mpd.conf
├── .wallpaper
└── bg.jpg
├── .screenshots
├── 1.png
├── 2.png
├── 3.png
├── 4.png
├── 5.png
└── 6.png
├── .bin
├── toggkbl
├── bright_down
└── bright_up
├── .xinitrc
├── .gtkrc-2.0
├── README.md
├── .tmux.conf
├── .rtorrent.rc
├── .zshrc
├── .Xresources
└── .ncmpcpp
└── config
/.config/ranger/tagged:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.config/ranger/bookmarks:
--------------------------------------------------------------------------------
1 | ':/home/a21v
2 |
--------------------------------------------------------------------------------
/.config/ranger/history:
--------------------------------------------------------------------------------
1 | open_with
2 |
3 |
--------------------------------------------------------------------------------
/.wallpaper/bg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/abdullaev/dotfiles_old/HEAD/.wallpaper/bg.jpg
--------------------------------------------------------------------------------
/.screenshots/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/abdullaev/dotfiles_old/HEAD/.screenshots/1.png
--------------------------------------------------------------------------------
/.screenshots/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/abdullaev/dotfiles_old/HEAD/.screenshots/2.png
--------------------------------------------------------------------------------
/.screenshots/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/abdullaev/dotfiles_old/HEAD/.screenshots/3.png
--------------------------------------------------------------------------------
/.screenshots/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/abdullaev/dotfiles_old/HEAD/.screenshots/4.png
--------------------------------------------------------------------------------
/.screenshots/5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/abdullaev/dotfiles_old/HEAD/.screenshots/5.png
--------------------------------------------------------------------------------
/.screenshots/6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/abdullaev/dotfiles_old/HEAD/.screenshots/6.png
--------------------------------------------------------------------------------
/.bin/toggkbl:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | (setxkbmap -query | grep -q "layout:\s\+us") && setxkbmap ru || setxkbmap us
4 |
--------------------------------------------------------------------------------
/.xinitrc:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 |
3 | [[ -f ~/.Xresources ]] && xrdb -merge -I$HOME ~/.Xresources
4 |
5 | xsetroot -cursor_name left_ptr
6 |
7 | exec bspwm
8 |
--------------------------------------------------------------------------------
/.config/nvim/.netrwhist:
--------------------------------------------------------------------------------
1 | let g:netrw_dirhistmax =10
2 | let g:netrw_dirhist_cnt =2
3 | let g:netrw_dirhist_1='/home/a21v'
4 | let g:netrw_dirhist_2='/home/a21v/.config/sxhkd'
5 |
--------------------------------------------------------------------------------
/.bin/bright_down:
--------------------------------------------------------------------------------
1 | brightness=$(cat /sys/class/backlight/intel_backlight/brightness)
2 |
3 | if (($brightness > 0)); then
4 | let brightness=$brightness-61
5 | echo "echo $brightness > /sys/class/backlight/intel_backlight/brightness" | sudo zsh
6 | fi
7 |
--------------------------------------------------------------------------------
/.bin/bright_up:
--------------------------------------------------------------------------------
1 | max_brightness=$(cat /sys/class/backlight/intel_backlight/max_brightness)
2 | brightness=$(cat /sys/class/backlight/intel_backlight/brightness)
3 |
4 | if (($brightness < $max_brightness)); then
5 | let brightness=$brightness+61
6 | echo "echo $brightness > /sys/class/backlight/intel_backlight/brightness" | sudo zsh
7 | fi
8 |
--------------------------------------------------------------------------------
/.config/gtk-3.0/settings.ini:
--------------------------------------------------------------------------------
1 | [Settings]
2 | gtk-theme-name=Arc-Grey-Darker
3 | gtk-icon-theme-name=Paper
4 | gtk-font-name=Sans 10
5 | gtk-cursor-theme-name=Adwaita
6 | gtk-cursor-theme-size=0
7 | gtk-toolbar-style=GTK_TOOLBAR_TEXT
8 | gtk-toolbar-icon-size=GTK_ICON_SIZE_SMALL_TOOLBAR
9 | gtk-button-images=1
10 | gtk-menu-images=1
11 | gtk-enable-event-sounds=1
12 | gtk-enable-input-feedback-sounds=1
13 | gtk-xft-antialias=1
14 | gtk-xft-hinting=1
15 | gtk-xft-hintstyle=hintslight
16 | gtk-xft-rgba=rgb
17 |
--------------------------------------------------------------------------------
/.gtkrc-2.0:
--------------------------------------------------------------------------------
1 | # DO NOT EDIT! This file will be overwritten by LXAppearance.
2 | # Any customization should be done in ~/.gtkrc-2.0.mine instead.
3 |
4 | include "/home/a21v/.gtkrc-2.0.mine"
5 | gtk-theme-name="Arc-Grey-Darker"
6 | gtk-icon-theme-name="Paper"
7 | gtk-font-name="Sans 10"
8 | gtk-cursor-theme-name="Adwaita"
9 | gtk-cursor-theme-size=0
10 | gtk-toolbar-style=GTK_TOOLBAR_TEXT
11 | gtk-toolbar-icon-size=GTK_ICON_SIZE_SMALL_TOOLBAR
12 | gtk-button-images=1
13 | gtk-menu-images=1
14 | gtk-enable-event-sounds=1
15 | gtk-enable-input-feedback-sounds=1
16 | gtk-xft-antialias=1
17 | gtk-xft-hinting=1
18 | gtk-xft-hintstyle="hintslight"
19 | gtk-xft-rgba="rgb"
20 |
--------------------------------------------------------------------------------
/.config/bspwm/bspwmrc:
--------------------------------------------------------------------------------
1 | #! /bin/sh
2 |
3 | sxhkd &
4 | compton --config ~/.config/compton/compton.conf -b &
5 | polybar bar &
6 | feh --bg-scale ~/.wallpaper/bg.jpg &
7 | dunst &
8 | devmon --no-gui &
9 | mpd &
10 |
11 | bspc monitor -d 1 2 3 4 5 6 7
12 |
13 | bspc config border_width 2
14 | bspc config window_gap 11
15 |
16 | bspc config split_ratio 0.50
17 | bspc config borderless_monocle true
18 | bspc config gapless_monocle true
19 | bspc config focus_follows_pointer true
20 | bspc config focus_by_distance true
21 |
22 | bspc config normal_border_color '#928374'
23 | bspc config focused_border_color '#ebdbb2'
24 | bspc config presel_border_color '#d79921'
25 | bspc config normal_sticky_border_color '#4e4e4e'
26 | bspc config focused_sticky_border_color '#83a598'
27 | bspc config urgent_border_color '#fb4934'
28 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Dotfiles
2 |
3 | ## Screenshots
4 |
5 | ### Clean
6 | 
7 |
8 | ### Fake busy
9 | 
10 |
11 | ## Some installed software
12 |
13 | + **bspwm** - Window manager
14 | + **sxhkd** - Hotkey daemon
15 | + **compton** - Composite manager
16 | + **polybar** - Status bar
17 | + **termite** - Terminal emulator
18 | + **zsh + oh-my-zsh** - Shell
19 | + **rofi** - Dynamic menu
20 | + **mpd + ncmcpp** - Music player
21 | + **cava** - Audio visualizer
22 | + **ranger** - File manager
23 | + **zathura** - Document reader
24 | + **neovim** - Text editor
25 | + **rtorrent** - BitTorrent client
26 |
27 | ## GUI
28 | + **arc-grey-darker** - GTK theme
29 | + **paper** - Icon theme
30 | + **adwaita** - Cursor theme
31 |
--------------------------------------------------------------------------------
/.config/termite/config:
--------------------------------------------------------------------------------
1 | [options]
2 | browser = google-chrome-unstable
3 | cursor_blink = off
4 | font = Monospace 8
5 |
6 | [colors]
7 | # hard contrast: background = #1d2021
8 | background = #262626
9 | # soft contrast: background = #32302f
10 | foreground = #ebdbb2
11 | foreground_bold = #ebdbb2
12 |
13 | # dark0 + gray
14 | color0 = #262626
15 | color8 = #928374
16 |
17 | # neutral_red + bright_red
18 | color1 = #cc241d
19 | color9 = #fb4934
20 |
21 | # neutral_green + bright_green
22 | color2 = #98971a
23 | color10 = #b8bb26
24 |
25 | # neutral_yellow + bright_yellow
26 | color3 = #d79921
27 | color11 = #fabd2f
28 |
29 | # neutral_blue + bright_blue
30 | color4 = #458588
31 | color12 = #83a598
32 |
33 | # neutral_purple + bright_purple
34 | color5 = #b16286
35 | color13 = #d3869b
36 |
37 | # neutral_aqua + faded_aqua
38 | color6 = #689d6a
39 | color14 = #8ec07c
40 |
41 | # light4 + light1
42 | color7 = #a89984
43 | color15 = #ebdbb2
44 |
45 | # vim: ft=dosini cms=#%s
46 |
--------------------------------------------------------------------------------
/.config/fontconfig/fonts.conf:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | serif
7 | Noto Serif
8 |
9 |
10 | sans-serif
11 | Noto Sans
12 |
13 |
14 | sans
15 | Noto Sans
16 |
17 |
18 | monospace
19 | Fira Mono
20 | fixed
21 |
22 |
23 |
24 | rgb
25 |
26 |
27 |
28 |
29 | false
30 |
31 |
32 |
33 |
34 | true
35 |
36 |
37 |
38 |
39 | hintslight
40 |
41 |
42 |
43 |
44 | true
45 |
46 |
47 |
48 |
49 | lcddefault
50 |
51 |
52 |
53 |
--------------------------------------------------------------------------------
/.config/cava/config:
--------------------------------------------------------------------------------
1 | ## Configuration file for CAVA. Default values are commented out. Use either ; or # for commenting.
2 |
3 | [general]
4 | ; mode = normal # defines smoothing mode, can be normal, scientific or waves.
5 | ; framerate = 60 # Default: 60. Accepts only non-negative values.
6 | sensitivity = 200 # is sensitivity %. Accepts only non-negative values.
7 | ; bars = 0 # defines the amount of bars. 0 sets it to auto (25 + fill up leftover space).
8 |
9 | [input]
10 | method = fifo # supported input methods are 'alsa' or 'fifo'.
11 | source = /tmp/mpd.fifo # ALSA device or FIFO path.
12 |
13 | [output]
14 | ; method = ncurses # may be ncurses, noncurses or circle.
15 |
16 | [color]
17 | # supported colors are: red, green, yellow, magenta, cyan, white, blue, black.
18 | ; background = black
19 | foreground = white
20 |
21 | [smoothing]
22 | integral = 0.5 # multiplier for the integral smoothing calculations. Takes values from 0 - 0.99. Higher values means smoother, but less precise. 0 to disable.
23 | ; monstercat = 1 # disables or enables the so-called "Monstercat smoothing". Default: 1. Set to 0 to disable.
24 | gravity = 1 # Set gravity multiplier for "drop off". Higher values means bars will drop faster. Accepts only non-negative values. 0.5 means half gravity, 2 means double. Set to 0 to disable "drop off".
25 | ; ignore = 0 # set bars with height lower than this to 0
26 |
27 | [eq]
28 | # This one is tricky. You can have as much keys as you want. More keys = more precision. Look at readme.md on github for further explanations and examples.
29 | 1 = 1.75 # bass
30 | 2 = 1.25
31 | 3 = 1
32 | 4 = 1.25
33 | 5 = 1.75 # treble
34 |
--------------------------------------------------------------------------------
/.config/zathura/zathurarc:
--------------------------------------------------------------------------------
1 | set font "Fira Mono 8"
2 | set default-bg "#262626" #00
3 | set default-fg "#ebdbb2" #01
4 |
5 | set statusbar-fg "#ebdbb2" #04
6 | set statusbar-bg "#262626" #01
7 |
8 | set inputbar-bg "#262626" #00 currently not used
9 | set inputbar-fg "#ebdbb2" #02
10 |
11 | set notification-error-bg "#262626" #08
12 | set notification-error-fg "#cc241d" #00
13 |
14 | set notification-warning-bg "#262626" #08
15 | set notification-warning-fg "#d79921" #00
16 |
17 | set highlight-color "#262626" #0A
18 | set highlight-active-color "#ebdbb2" #0D
19 |
20 | set completion-highlight-fg "#4e4e4e" #02
21 | set completion-highlight-bg "#87afaf" #0C
22 |
23 | set completion-bg "#4e4e4e" #02
24 | set completion-fg "#ebdbb2" #0C
25 |
26 | set notification-bg "#262626" #0B
27 | set notification-fg "#458588" #00
28 |
29 | set recolor-lightcolor "#262626" #00
30 | set recolor-darkcolor "#ebdbb2" #06
31 | set recolor "true"
32 |
33 | # setting recolor-keep true will keep any color your pdf has.
34 | # if it is false, it'll just be black and white
35 | set recolor-keephue "false"
36 |
37 | set selection-clipboard "clipboard"
38 |
39 | # keybindings
40 | map [fullscreen] a adjust_window best-fit
41 | map [fullscreen] s adjust_window width
42 | map [fullscreen] f follow
43 | map [fullscreen] toggle_index
44 | map [fullscreen] j scroll down
45 | map [fullscreen] k scroll up
46 | map [fullscreen] h navigate previous
47 | map [fullscreen] l navigate next
48 |
--------------------------------------------------------------------------------
/.tmux.conf:
--------------------------------------------------------------------------------
1 | # List of plugins
2 | set -g @plugin 'tmux-plugins/tpm'
3 | set -g @plugin 'tmux-plugins/tmux-sensible'
4 | set -g @plugin 'tmux-plugins/tmux-resurrect'
5 |
6 | # Other examples:
7 | # set -g @plugin 'github_username/plugin_name'
8 | # set -g @plugin 'git@github.com/user/plugin'
9 | # set -g @plugin 'git@bitbucket.com/user/plugin'
10 |
11 | set -g mouse on
12 |
13 | # remap prefix from 'C-b' to 'C-a'
14 | unbind C-b
15 | set-option -g prefix C-a
16 | bind-key C-a send-prefix
17 |
18 | # Start windows and panes at 1, not 0
19 | set -g base-index 1
20 | setw -g pane-base-index 1
21 |
22 | # reload config file (change file location to your the tmux.conf you want to use)
23 | bind r source-file ~/.tmux.conf
24 |
25 | # status-line
26 | set -g default-terminal "rxvt-unicode-256color"
27 | set -g status "on"
28 | setw -g window-status-separator ""
29 | set -g status-left ""
30 | set -g status-right ""
31 | # set -g status-left-length 20
32 | # set -g status-left " #($HOME/scripts/updates.sh)"
33 | # set -g status-right "#H"
34 | set -g status-justify centre # center align window list
35 | setw -g window-status-format " #W "
36 | setw -g window-status-current-format " #[bold]#W "
37 |
38 | # colours
39 | set-option -g status-bg default
40 | set-option -g status-fg "#ebdbb2"
41 | set-option -g status-left-fg brightblack
42 | set-option -g status-attr default
43 |
44 | # default window title colors
45 | set-window-option -g window-status-fg brightblack
46 | set-window-option -g window-status-bg default
47 | set-window-option -g window-status-attr dim
48 |
49 | # active window title colors
50 | set-window-option -g window-status-current-fg "#ebdbb2"
51 | set-window-option -g window-status-current-bg default
52 |
53 | # pane border
54 | set -g pane-border-fg colour237
55 | set -g pane-active-border-fg "#ebdbb2"
56 |
57 | # Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
58 | run '~/.tmux/plugins/tpm/tpm'
59 |
--------------------------------------------------------------------------------
/.config/compton/compton.conf:
--------------------------------------------------------------------------------
1 | # Shadow
2 | shadow = true;
3 | no-dnd-shadow = true;
4 | no-dock-shadow = false;
5 | clear-shadow = true;
6 | shadow-radius = 7;
7 | shadow-offset-x = -7;
8 | shadow-offset-y = -7;
9 | shadow-opacity = 0.8;
10 | shadow-red = 0.0;
11 | shadow-green = 0.0;
12 | shadow-blue = 0.0;
13 |
14 | shadow-exclude = [
15 | "class_g = 'Firefox' && argb",
16 | "class_i = 'Telegram' && argb"
17 | ];
18 |
19 | # shadow-exclude = "n:e:Notification";
20 | # shadow-exclude-reg = "x10+0+0";
21 | # xinerama-shadow-crop = true;
22 |
23 | # Opacity
24 | menu-opacity = 0.9;
25 | #inactive-opacity = 0.8;
26 | #active-opacity = 0.8;
27 | #frame-opacity = 0.9;
28 | #inactive-opacity-override = false;
29 | #alpha-step = 0.06;
30 | # inactive-dim = 0.2;
31 | # inactive-dim-fixed = true;
32 | #blur-background = true;
33 | #blur-background-frame = true;
34 | #blur-kern = "3x3box"
35 | # blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"
36 | # blur-background-fixed = true;
37 | #blur-background-exclude = [
38 | # "window_type = 'dock'",
39 | # "window_type = 'desktop'",
40 | # "_GTK_FRAME_EXTENTS@:c"
41 | #];
42 | # opacity-rule = [
43 | # "93:class_g = 'URxvt'",
44 | # "93:class_g= 'Zathura'",
45 | # "93:class_g= 'qutebrowser'",
46 | # "93:class_g= 'Firefox'",
47 | # "93:class_g= 'Pcmanfm'"
48 | # ];
49 |
50 | # Fading
51 | fading = true;
52 | # fade-delta = 30;
53 | fade-in-step = 0.03;
54 | fade-out-step = 0.03;
55 | # no-fading-openclose = true;
56 | # no-fading-destroyed-argb = true;
57 | fade-exclude = [ ];
58 |
59 | # Other
60 | #backend = "xrender"
61 | #mark-wmwin-focused = true;
62 | #mark-ovredir-focused = true;
63 | # use-ewmh-active-win = true;
64 | detect-rounded-corners = true;
65 | detect-client-opacity = true;
66 | refresh-rate = 0;
67 | vsync = "none";
68 | dbe = false;
69 | paint-on-overlay = true;
70 | # sw-opti = true;
71 | # unredir-if-possible = true;
72 | # unredir-if-possible-delay = 5000;
73 | # unredir-if-possible-exclude = [ ];
74 | #focus-exclude = [ "class_g = 'Cairo-clock'" ];
75 | #detect-transient = true;
76 | #detect-client-leader = true;
77 | #invert-color-include = [ ];
78 | # resize-damage = 1;
79 |
80 | # GLX backend
81 | # glx-no-stencil = true;
82 | #glx-copy-from-front = false;
83 | # glx-use-copysubbuffermesa = true;
84 | # glx-no-rebind-pixmap = true;
85 | #glx-swap-method = "undefined";
86 | # glx-use-gpushader4 = true;
87 | # xrender-sync = true;
88 | # xrender-sync-fence = true;
89 |
90 | # Window type settings
91 | #wintypes:
92 | #{
93 | # tooltip = { fade = true; shadow = true; opacity = 0.90; focus = true; };
94 | #};
95 |
--------------------------------------------------------------------------------
/.rtorrent.rc:
--------------------------------------------------------------------------------
1 | # This is an example resource file for rTorrent. Copy to
2 | # ~/.rtorrent.rc and enable/modify the options as needed. Remember to
3 | # uncomment the options you wish to enable.
4 |
5 | # Maximum and minimum number of peers to connect to per torrent.
6 | #
7 | #throttle.min_peers.normal.set = 40
8 | #throttle.max_peers.normal.set = 100
9 |
10 | # Same as above but for seeding completed torrents (-1 = same as downloading)
11 | #
12 | #throttle.min_peers.seed.set = 10
13 | #throttle.max_peers.seed.set = 50
14 |
15 | # Maximum number of simultanious uploads per torrent.
16 | #
17 | #throttle.max_uploads.set = 15
18 |
19 | # Global upload and download rate in KiB. "0" for unlimited.
20 | #
21 | #throttle.global_down.max_rate.set_kb = 0
22 | #throttle.global_up.max_rate.set_kb = 0
23 |
24 | # Default directory to save the downloaded torrents.
25 | #
26 | directory.default.set = ~/Downloads
27 |
28 | # Default session directory. Make sure you don't run multiple instance
29 | # of rtorrent using the same session directory. Perhaps using a
30 | # relative path?
31 | #
32 | session.path.set = ~/.rtorrent.session
33 |
34 | # Watch a directory for new torrents, and stop those that have been
35 | # deleted.
36 | #
37 | #schedule2 = watch_directory,5,5,load.start=./watch/*.torrent
38 | #schedule2 = untied_directory,5,5,stop_untied=
39 |
40 | # Close torrents when diskspace is low.
41 | #
42 | #schedule2 = low_diskspace,5,60,close_low_diskspace=100M
43 |
44 | # The ip address reported to the tracker.
45 | #
46 | #network.local_address.set = 127.0.0.1
47 | #network.local_address.set = rakshasa.no
48 |
49 | # The ip address the listening socket and outgoing connections is
50 | # bound to.
51 | #
52 | #network.bind_address.set = 127.0.0.1
53 | #network.bind_address.set = rakshasa.no
54 |
55 | # Port range to use for listening.
56 | #
57 | network.port_range.set = 49164-49364
58 |
59 | # Start opening ports at a random position within the port range.
60 | #
61 | network.port_random.set = yes
62 |
63 | # Check hash for finished torrents. Might be usefull until the bug is
64 | # fixed that causes lack of diskspace not to be properly reported.
65 | #
66 | #pieces.hash.on_completion.set = no
67 |
68 | # Set whether the client should try to connect to UDP trackers.
69 | #
70 | #trackers.use_udp.set = yes
71 |
72 | # Alternative calls to bind and ip that should handle dynamic ip's.
73 | #
74 | #schedule2 = ip_tick,0,1800,ip=rakshasa
75 | #schedule2 = bind_tick,0,1800,bind=rakshasa
76 |
77 | # Encryption options, set to none (default) or any combination of the following:
78 | # allow_incoming, try_outgoing, require, require_RC4, enable_retry, prefer_plaintext
79 | #
80 | # The example value allows incoming encrypted connections, starts unencrypted
81 | # outgoing connections but retries with encryption if they fail, preferring
82 | # plaintext to RC4 encryption after the encrypted handshake
83 | #
84 | protocol.encryption.set = allow_incoming,enable_retry,prefer_plaintext
85 |
86 | # Enable DHT support for trackerless torrents or when all trackers are down.
87 | # May be set to "disable" (completely disable DHT), "off" (do not start DHT),
88 | # "auto" (start and stop DHT as needed), or "on" (start DHT immediately).
89 | # The default is "off". For DHT to work, a session directory must be defined.
90 | #
91 | dht.mode.set = auto
92 |
93 | # UDP port to use for DHT.
94 | #
95 | dht.port.set = 6881
96 |
97 | # Enable peer exchange (for torrents not marked private)
98 | #
99 | protocol.pex.set = yes
100 |
101 | # Set downlad list layout style. ("full", "compact")
102 | #
103 | ui.torrent_list.layout.set = "compact"
104 |
--------------------------------------------------------------------------------
/.config/sxhkd/sxhkdrc:
--------------------------------------------------------------------------------
1 | #
2 | # wm independent hotkeys
3 | #
4 |
5 | # terminal emulator
6 | super + Return
7 | termite
8 |
9 | # program launcher
10 | super + space
11 | rofi -show run
12 |
13 | # make sxhkd reload its configuration files:
14 | super + Escape
15 | pkill -USR1 -x sxhkd
16 |
17 | #
18 | # bspwm hotkeys
19 | #
20 |
21 | # quit bspwm normally
22 | super + alt + Escape
23 | bspc quit
24 |
25 | # close and kill
26 | super + {_,shift + }w
27 | bspc node -{c,k}
28 |
29 | # alternate between the tiled and monocle layout
30 | super + m
31 | bspc desktop -l next
32 |
33 | # if the current node is automatic, send it to the last manual, otherwise pull the last leaf
34 | super + y
35 | bspc query -N -n focused.automatic && bspc node -n last.!automatic || bspc node last.leaf -n focused
36 |
37 | # swap the current node and the biggest node
38 | super + g
39 | bspc node -s biggest
40 |
41 | #
42 | # state/flags
43 | #
44 |
45 | # set the window state
46 | super + {t,shift + t,s,f}
47 | bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
48 |
49 | # set the node flags
50 | super + ctrl + {x,y,z}
51 | bspc node -g {locked,sticky,private}
52 |
53 | #
54 | # focus/swap
55 | #
56 |
57 | # focus the node in the given direction
58 | super + {_,shift + }{h,j,k,l}
59 | bspc node -{f,s} {west,south,north,east}
60 |
61 | # focus the node for the given path jump
62 | super + {p,b,comma,period}
63 | bspc node -f @{parent,brother,first,second}
64 |
65 | # focus the next/previous node
66 | super + {_,shift + }c
67 | bspc node -f {next,prev}
68 |
69 | # focus the next/previous desktop
70 | super + bracket{left,right}
71 | bspc desktop -f {prev,next}
72 |
73 | # focus the last node/desktop
74 | super + {grave,Tab}
75 | bspc {node,desktop} -f last
76 |
77 | # focus the older or newer node in the focus history
78 | super + {o,i}
79 | bspc wm -h off; \
80 | bspc node {older,newer} -f; \
81 | bspc wm -h on
82 |
83 | # focus or send to the given desktop
84 | super + {_,shift + }{1-9,0}
85 | bspc {desktop -f,node -d} '^{1-9,10}'
86 |
87 | #
88 | # preselect
89 | #
90 |
91 | # preselect the direction
92 | super + ctrl + {h,j,k,l}
93 | bspc node -p {west,south,north,east}
94 |
95 | # preselect the ratio
96 | super + ctrl + {1-9}
97 | bspc node -o 0.{1-9}
98 |
99 | # cancel the preselection for the focused node
100 | super + ctrl + space
101 | bspc node -p cancel
102 |
103 | # cancel the preselection for the focused desktop
104 | super + ctrl + shift + space
105 | bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel
106 |
107 | #
108 | # move/resize
109 | #
110 |
111 | # expand a window by moving one of its side outward
112 | super + alt + {h,j,k,l}
113 | bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}
114 |
115 | # contract a window by moving one of its side inward
116 | super + alt + shift + {h,j,k,l}
117 | bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}
118 |
119 | # move a floating window
120 | super + {Left,Down,Up,Right}
121 | bspc node -v {-20 0,0 20,0 -20,20 0}
122 |
123 | #
124 | # multimedia keys
125 | #
126 |
127 | # volume -/+
128 | XF86Audio{LowerVolume,RaiseVolume}
129 | pactl set-sink-volume 0 {-1%,+1%}
130 |
131 | # mute
132 | XF86AudioMute
133 | pactl set-sink-mute 0 toggle
134 |
135 | # mpd
136 | XF86Audio{Prev,Next,Play,Stop}
137 | mpc {prev,next,toggle,stop}
138 |
139 | # brightness
140 | XF86MonBrightness{Down,Up}
141 | sudo ~/.bin/bright_{down,up}
142 |
143 | #
144 | # misc
145 | #
146 |
147 | # toggle keyboard layout
148 | alt + space
149 | ~/.bin/toggkbl
150 |
151 | # lock screen
152 | ctrl + shift + alt + l
153 | i3lock-fancy
154 |
--------------------------------------------------------------------------------
/.zshrc:
--------------------------------------------------------------------------------
1 | # If you come from bash you might have to change your $PATH.
2 | # export PATH=$HOME/bin:/usr/local/bin:$PATH
3 |
4 | # Path to your oh-my-zsh installation.
5 | export ZSH=/home/a21v/.oh-my-zsh
6 |
7 | # Set name of the theme to load. Optionally, if you set this to "random"
8 | # it'll load a random theme each time that oh-my-zsh is loaded.
9 | # See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
10 | ZSH_THEME="cypher"
11 |
12 | # Uncomment the following line to use case-sensitive completion.
13 | # CASE_SENSITIVE="true"
14 |
15 | # Uncomment the following line to use hyphen-insensitive completion. Case
16 | # sensitive completion must be off. _ and - will be interchangeable.
17 | # HYPHEN_INSENSITIVE="true"
18 |
19 | # Uncomment the following line to disable bi-weekly auto-update checks.
20 | # DISABLE_AUTO_UPDATE="true"
21 |
22 | # Uncomment the following line to change how often to auto-update (in days).
23 | # export UPDATE_ZSH_DAYS=13
24 |
25 | # Uncomment the following line to disable colors in ls.
26 | # DISABLE_LS_COLORS="true"
27 |
28 | # Uncomment the following line to disable auto-setting terminal title.
29 | # DISABLE_AUTO_TITLE="true"
30 |
31 | # Uncomment the following line to enable command auto-correction.
32 | # ENABLE_CORRECTION="true"
33 |
34 | # Uncomment the following line to display red dots whilst waiting for completion.
35 | # COMPLETION_WAITING_DOTS="true"
36 |
37 | # Uncomment the following line if you want to disable marking untracked files
38 | # under VCS as dirty. This makes repository status check for large repositories
39 | # much, much faster.
40 | # DISABLE_UNTRACKED_FILES_DIRTY="true"
41 |
42 | # Uncomment the following line if you want to change the command execution time
43 | # stamp shown in the history command output.
44 | # The optional three formats: "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
45 | # HIST_STAMPS="mm/dd/yyyy"
46 |
47 | # Would you like to use another custom folder than $ZSH/custom?
48 | # ZSH_CUSTOM=/path/to/new-custom-folder
49 |
50 | # Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
51 | # Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
52 | # Example format: plugins=(rails git textmate ruby lighthouse)
53 | # Add wisely, as too many plugins slow down shell startup.
54 | plugins=(archlinux colored-man-pages fasd git zsh-autosuggestions zsh-users/zsh-completions zsh-history-substring-search zsh-syntax-highlighting)
55 |
56 | source $ZSH/oh-my-zsh.sh
57 |
58 | # User configuration
59 |
60 | export PATH="$HOME/.bin:$PATH"
61 | export PATH="$HOME/.local/bin:$PATH"
62 | export MANPATH="/usr/local/man:$MANPATH"
63 |
64 | # You may need to manually set your language environment
65 | export LANG=en_US.UTF-8
66 |
67 | # Preferred editor for local and remote sessions
68 | if [[ -n $SSH_CONNECTION ]]; then
69 | export EDITOR='vim'
70 | else
71 | export EDITOR='nvim'
72 | fi
73 |
74 | # Compilation flags
75 | export ARCHFLAGS="-arch x86_64"
76 |
77 | # ssh
78 | export SSH_KEY_PATH="~/.ssh/rsa_id"
79 |
80 | # rbenv
81 | export PATH="$HOME/.rbenv/bin:$PATH"
82 | eval "$(rbenv init -)"
83 |
84 | # rust
85 | export PATH="$HOME/.cargo/bin:$PATH"
86 | export RUST_SRC_PATH="$(rustc --print sysroot)/lib/rustlib/src/rust/src"
87 |
88 | # nvm
89 | export NVM_DIR="$HOME/.nvm"
90 | [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
91 |
92 | # gvm
93 | [[ -s "/home/a21v/.gvm/scripts/gvm" ]] && source "/home/a21v/.gvm/scripts/gvm"
94 |
95 | # Set personal aliases, overriding those provided by oh-my-zsh libs,
96 | # plugins, and themes. Aliases can be placed here, though oh-my-zsh
97 | # users are encouraged to define aliases within the ZSH_CUSTOM folder.
98 | # For a full list of active aliases, run `alias`.
99 | #
100 | # Example aliases
101 | # alias zshconfig="mate ~/.zshrc"
102 | # alias ohmyzsh="mate ~/.oh-my-zsh"
103 | alias ghc="stack ghc"
104 | alias ghci="stack ghci"
105 |
--------------------------------------------------------------------------------
/.Xresources:
--------------------------------------------------------------------------------
1 | Xft.lcdfilter: lcddefault
2 | Xft.antialias: true
3 | Xft.autohint: 0
4 | Xft.hinting: true
5 | Xft.hintstyle: hintslight
6 | Xft.rgba: rgb
7 | Xft.dpi: 96
8 |
9 | Xcursor*theme: Adwaita
10 |
11 | URxvt.perl-ext-common: default,resize-font,clipboard,vtwheel,matcher
12 | URxvt.url-launcher: /usr/bin/google-chrome-unstable
13 | URxvt.matcher.button: 1
14 | URxvt.matcher.rend.0: Uline Bold fg5
15 |
16 | URxvt.keysym.C-equal: resize-font:reset
17 | URxvt.resize-font.smaller: C-Down
18 | URxvt.resize-font.bigger: C-Up
19 | URxvt.iso14755: false
20 | URxvt.iso14755_52: false
21 |
22 | URxvt.keysym.Shift-Up: command:\033]720;1\007
23 | URxvt.keysym.Shift-Down: command:\033]721;1\007
24 |
25 | ! clean up urxvt, add keybinds
26 | URxvt.intensityStyles: false
27 | URxvt.scrollBar: false
28 | URxvt.letterSpace: -1
29 |
30 | ! font
31 | URxvt*font: xft:Fira Mono:size=8:antialias=true:hinting=true
32 |
33 | ! terminal padding
34 | URxvt.internalBorder: 16
35 |
36 | ! -----------------------------------------------------------------------------
37 | ! File: gruvbox-dark.xresources
38 | ! Description: Retro groove colorscheme generalized
39 | ! Author: morhetz
40 | ! Source: https://github.com/morhetz/gruvbox-generalized
41 | ! Last Modified: 6 Sep 2014
42 | ! -----------------------------------------------------------------------------
43 |
44 | ! hard contrast: *background: #1d2021
45 | *background: #262626
46 | ! soft contrast: *background: #32302f
47 | *foreground: #ebdbb2
48 | ! Black + DarkGrey
49 | *color0: #262626
50 | *color8: #928374
51 | ! DarkRed + Red
52 | *color1: #cc241d
53 | *color9: #fb4934
54 | ! DarkGreen + Green
55 | *color2: #98971a
56 | *color10: #b8bb26
57 | ! DarkYellow + Yellow
58 | *color3: #d79921
59 | *color11: #fabd2f
60 | ! DarkBlue + Blue
61 | *color4: #458588
62 | *color12: #83a598
63 | ! DarkMagenta + Magenta
64 | *color5: #b16286
65 | *color13: #d3869b
66 | ! DarkCyan + Cyan
67 | *color6: #689d6a
68 | *color14: #8ec07c
69 | ! LightGrey + White
70 | *color7: #a89984
71 | *color15: #ebdbb2
72 |
73 | ! -----------------------------------------------------------------------------
74 | ! File: gruvbox-urxvt256.xresources
75 | ! Description: Retro groove colorscheme generalized
76 | ! Author: morhetz
77 | ! Source: https://github.com/morhetz/gruvbox-generalized
78 | ! Last Modified: 13 Dec 2013
79 | ! -----------------------------------------------------------------------------
80 |
81 | URxvt.color24: #076678
82 | URxvt.color66: #427b58
83 | URxvt.color88: #9d0006
84 | URxvt.color96: #8f3f71
85 | URxvt.color100: #79740e
86 | URxvt.color108: #8ec07c
87 | URxvt.color109: #83a598
88 | URxvt.color130: #af3a03
89 | URxvt.color136: #b57614
90 | URxvt.color142: #b8bb26
91 | URxvt.color167: #fb4934
92 | URxvt.color175: #d3869b
93 | URxvt.color208: #fe8019
94 | URxvt.color214: #fabd2f
95 | URxvt.color223: #ebdbb2
96 | URxvt.color228: #f2e5bc
97 | URxvt.color229: #fbf1c7
98 | URxvt.color230: #f9f5d7
99 | URxvt.color234: #1d2021
100 | URxvt.color235: #282828
101 | URxvt.color236: #32302f
102 | URxvt.color237: #3c3836
103 | URxvt.color239: #504945
104 | URxvt.color241: #665c54
105 | URxvt.color243: #7c6f64
106 | URxvt.color244: #928374
107 | URxvt.color245: #928374
108 | URxvt.color246: #a89984
109 | URxvt.color248: #bdae93
110 | URxvt.color250: #d5c4a1
111 |
112 | ! rofi
113 | rofi.modi: run
114 | rofi.font: Fira Mono 12
115 | rofi.width: 60
116 | rofi.lines: 8
117 | rofi.columns: 1
118 | ! bg fg altbg hlbg hlfg
119 | rofi.color-normal: #262626, #ebdbb2, #262626, #ebdbb2, #262626
120 | rofi.color-urgent: #262626, #ebdbb2, #262626, #ebdbb2, #262626
121 | rofi.color-active: #262626, #ebdbb2, #262626, #ebdbb2, #262626
122 | rofi.color-window: #262626, #ebdbb2, #ebdbb2
123 | rofi.bw: 2
124 | ! location: 1 2 3 / 8 0 4 / 7 6 5
125 | rofi.location: 0
126 | rofi.padding: 10
127 | rofi.fuzzy: true
128 | rofi.separator-style: solid
129 | rofi.hide-scrollbar: true
130 |
--------------------------------------------------------------------------------
/.config/ranger/scope.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -o noclobber -o noglob -o nounset -o pipefail
4 | IFS=$'\n'
5 |
6 | # If the option `use_preview_script` is set to `true`,
7 | # then this script will be called and its output will be displayed in ranger.
8 | # ANSI color codes are supported.
9 | # STDIN is disabled, so interactive scripts won't work properly
10 |
11 | # This script is considered a configuration file and must be updated manually.
12 | # It will be left untouched if you upgrade ranger.
13 |
14 | # Meanings of exit codes:
15 | # code | meaning | action of ranger
16 | # -----+------------+-------------------------------------------
17 | # 0 | success | Display stdout as preview
18 | # 1 | no preview | Display no preview at all
19 | # 2 | plain text | Display the plain content of the file
20 | # 3 | fix width | Don't reload when width changes
21 | # 4 | fix height | Don't reload when height changes
22 | # 5 | fix both | Don't ever reload
23 | # 6 | image | Display the image `$IMAGE_CACHE_PATH` points to as an image preview
24 | # 7 | image | Display the file directly as an image
25 |
26 | # Script arguments
27 | FILE_PATH="${1}" # Full path of the highlighted file
28 | PV_WIDTH="${2}" # Width of the preview pane (number of fitting characters)
29 | PV_HEIGHT="${3}" # Height of the preview pane (number of fitting characters)
30 | IMAGE_CACHE_PATH="${4}" # Full path that should be used to cache image preview
31 | PV_IMAGE_ENABLED="${5}" # 'True' if image previews are enabled, 'False' otherwise.
32 |
33 | FILE_EXTENSION="${FILE_PATH##*.}"
34 | FILE_EXTENSION_LOWER="${FILE_EXTENSION,,}"
35 |
36 | # Settings
37 | HIGHLIGHT_SIZE_MAX=262143 # 256KiB
38 | HIGHLIGHT_TABWIDTH=8
39 | HIGHLIGHT_STYLE='pablo'
40 | PYGMENTIZE_STYLE='autumn'
41 |
42 |
43 | handle_extension() {
44 | case "${FILE_EXTENSION_LOWER}" in
45 | # Archive
46 | a|ace|alz|arc|arj|bz|bz2|cab|cpio|deb|gz|jar|lha|lz|lzh|lzma|lzo|\
47 | rpm|rz|t7z|tar|tbz|tbz2|tgz|tlz|txz|tZ|tzo|war|xpi|xz|Z|zip)
48 | atool --list -- "${FILE_PATH}" && exit 5
49 | bsdtar --list --file "${FILE_PATH}" && exit 5
50 | exit 1;;
51 | rar)
52 | # Avoid password prompt by providing empty password
53 | unrar lt -p- -- "${FILE_PATH}" && exit 5
54 | exit 1;;
55 | 7z)
56 | # Avoid password prompt by providing empty password
57 | 7z l -p -- "${FILE_PATH}" && exit 5
58 | exit 1;;
59 |
60 | # PDF
61 | pdf)
62 | # Preview as text conversion
63 | pdftotext -l 10 -nopgbrk -q -- "${FILE_PATH}" - && exit 5
64 | exiftool "${FILE_PATH}" && exit 5
65 | exit 1;;
66 |
67 | # BitTorrent
68 | torrent)
69 | transmission-show -- "${FILE_PATH}" && exit 5
70 | exit 1;;
71 |
72 | # OpenDocument
73 | odt|ods|odp|sxw)
74 | # Preview as text conversion
75 | odt2txt "${FILE_PATH}" && exit 5
76 | exit 1;;
77 |
78 | # HTML
79 | htm|html|xhtml)
80 | # Preview as text conversion
81 | w3m -dump "${FILE_PATH}" && exit 5
82 | lynx -dump -- "${FILE_PATH}" && exit 5
83 | elinks -dump "${FILE_PATH}" && exit 5
84 | ;; # Continue with next handler on failure
85 | esac
86 | }
87 |
88 | handle_image() {
89 | local mimetype="${1}"
90 | case "${mimetype}" in
91 | # SVG
92 | # image/svg+xml)
93 | # convert "${FILE_PATH}" "${IMAGE_CACHE_PATH}" && exit 6
94 | # exit 1;;
95 |
96 | # Image
97 | image/*)
98 | # `w3mimgdisplay` will be called for all images (unless overriden as above),
99 | # but might fail for unsupported types.
100 | exit 7;;
101 |
102 | # Video
103 | # video/*)
104 | # # Thumbnail
105 | # ffmpegthumbnailer -i "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}" -s 0 && exit 6
106 | # exit 1;;
107 | esac
108 | }
109 |
110 | handle_mime() {
111 | local mimetype="${1}"
112 | case "${mimetype}" in
113 | # Text
114 | text/* | */xml)
115 | # Syntax highlight
116 | if [[ "$( stat --printf='%s' -- "${FILE_PATH}" )" -gt "${HIGHLIGHT_SIZE_MAX}" ]]; then
117 | exit 2
118 | fi
119 | if [[ "$( tput colors )" -ge 256 ]]; then
120 | local pygmentize_format='terminal256'
121 | local highlight_format='xterm256'
122 | else
123 | local pygmentize_format='terminal'
124 | local highlight_format='ansi'
125 | fi
126 | highlight --replace-tabs="${HIGHLIGHT_TABWIDTH}" --out-format="${highlight_format}" \
127 | --style="${HIGHLIGHT_STYLE}" -- "${FILE_PATH}" && exit 5
128 | # pygmentize -f "${pygmentize_format}" -O "style=${PYGMENTIZE_STYLE}" -- "${FILE_PATH}" && exit 5
129 | exit 2;;
130 |
131 | # Image
132 | image/*)
133 | # Preview as text conversion
134 | # img2txt --gamma=0.6 --width="${PV_WIDTH}" -- "${FILE_PATH}" && exit 4
135 | exiftool "${FILE_PATH}" && exit 5
136 | exit 1;;
137 |
138 | # Video and audio
139 | video/* | audio/*)
140 | mediainfo "${FILE_PATH}" && exit 5
141 | exiftool "${FILE_PATH}" && exit 5
142 | exit 1;;
143 | esac
144 | }
145 |
146 | handle_fallback() {
147 | echo '----- File Type Classification -----' && file --dereference --brief -- "${FILE_PATH}" && exit 5
148 | exit 1
149 | }
150 |
151 |
152 | handle_extension
153 | MIMETYPE="$( file --dereference --brief --mime-type -- "${FILE_PATH}" )"
154 | if [[ "${PV_IMAGE_ENABLED}" == 'True' ]]; then
155 | handle_image "${MIMETYPE}"
156 | fi
157 | handle_mime "${MIMETYPE}"
158 | handle_fallback
159 |
160 | exit 1
161 |
--------------------------------------------------------------------------------
/.config/polybar/config:
--------------------------------------------------------------------------------
1 | ;:set syn=dosini
2 |
3 | [global/wm]
4 | #margin-top = 8
5 | #margin-bottom = 8
6 | #margin-left = 8
7 | #margin-right = 8
8 |
9 |
10 | [colors]
11 | ;orange = #FF6200
12 | ;orange = #d65d0e
13 | darkgray = ${xrdb:color8}
14 | orange = ${xrdb:color9}
15 | white = #ebdbb2
16 | gray = #585858
17 | black = #090909
18 | red = #c795ae
19 | blue = #95aec7
20 | yellow = #c7ae95
21 | green = #aec795
22 | #background = #1f222d
23 | background = #262626
24 | background-alt = #4e4e4e
25 | #foreground = #dfdfdf
26 | foreground = ${xrdb:foreground}
27 | foreground-alt = #4e4e4e
28 | primary = #1f222d
29 | secondary = #FF6200
30 | alert = #fb4934
31 |
32 | [bar/bar]
33 | monitor = eDP-1
34 | bottom = true
35 | wm-restack = bspwm
36 | width = 1344
37 | height = 26
38 | offset-x = 11
39 | offset-y = 11
40 |
41 | locale = en_US.UTF-8
42 |
43 | enable-ipc = true
44 |
45 | padding-left = 0
46 | padding-right = 0
47 |
48 | module-margin-right = 0
49 | module-margin-left = 0
50 |
51 | modules-right = keyboard separator network separator volume separator date
52 | modules-center = mpd
53 | modules-left = bspwm
54 |
55 | background = ${colors.background}
56 | foreground = ${colors.foreground}
57 |
58 | underline-size = 0
59 | underline-color = ${colors.white}
60 |
61 | tray-detached = false
62 | tray-position =
63 | tray-offset-x = 0
64 | tray-offset-y = 0
65 | ;tray-maxsize = 16
66 | tray-padding = 0
67 | tray-transparent = false
68 | tray-scale = 1.0
69 |
70 | font-0 = "monospace:size=8;2"
71 | font-1 = "FontAwesome:size=8;2"
72 |
73 |
74 | [module/mpd]
75 | type = internal/mpd
76 | host = 127.0.0.1
77 | port = 6600
78 | format-online =
79 | format-online-underline = ${colors.white}
80 | format-online-padding = 1
81 |
82 | #label-song-font = 4
83 | label-song = %{A1:mpc toggle:}%artist% - %title%%{A}
84 | icon-play =
85 | icon-pause =
86 | icon-prev =
87 | icon-next =
88 |
89 | icon-prev-foreground = ${colors.darkgray}
90 | icon-next-foreground = ${colors.darkgray}
91 |
92 | icon-play-padding = 1
93 | icon-pause-padding = 1
94 | icon-prev-padding = 1
95 | icon-next-padding = 1
96 | label-song-padding = 1
97 |
98 | [module/bspwm]
99 | type = internal/bspwm
100 | format =
101 |
102 | label-focused = %icon%
103 | ;label-focused-font = 1
104 | label-focused-background = ${colors.background-alt}
105 | ;label-focused-underline= ${colors.primary}
106 | label-focused-underline= ${colors.white}
107 | label-focused-padding = 2
108 |
109 | label-occupied = %icon%
110 | label-occupied-foreground = ${colors.darkgray}
111 | label-occupied-padding = 2
112 |
113 | label-urgent = %icon%!
114 | label-urgent-background = ${colors.alert}
115 | label-urgent-padding = 2
116 |
117 | label-empty = %icon%
118 | label-empty-foreground = ${colors.foreground-alt}
119 | label-empty-padding = 2
120 |
121 | ws-icon-0 = 1;
122 | ws-icon-1 = 2;
123 | ws-icon-2 = 3;
124 | ws-icon-3 = 4;
125 | ws-icon-4 = 5;
126 | ws-icon-5 = 6;
127 | ws-icon-default =
128 |
129 |
130 | [module/date]
131 | type = internal/date
132 | #date-alt = %A %H:%M
133 | date = %{F#928374}%{F-} %H:%M
134 | interval = 5
135 | format-underline = ${colors.white}
136 | ;format-background = ${colors.black}
137 | format-foreground = ${colors.foreground}
138 | format-padding = 2
139 |
140 | label-separator = |
141 |
142 | [module/volume]
143 | type = internal/volume
144 |
145 | format-volume =
146 | format-volume-padding = 2
147 |
148 | format-volume-underline = ${colors.white}
149 |
150 | label-volume = %{F#928374} %{F-}%percentage:3%%
151 | #label-volume-foreground = ${color.white}
152 |
153 | label-muted =%{F#928374} %{F-}mute
154 | format-muted =
155 | format-muted-underline = ${colors.white}
156 | format-muted-padding = 2
157 | #label-muted-foreground = ${colors.gray}
158 |
159 | format-padding = 2
160 |
161 | [module/keyboard]
162 | type = internal/xkeyboard
163 |
164 | ; Available tags:
165 | ; (default)
166 | ; (default)
167 | format = %{A1:~/.bin/toggkbl:}%{F#928374} %{F-} %{A}
168 | format-spacing = 0
169 | format-underline = ${colors.white}
170 |
171 | ; Available tokens:
172 | ; %layout%
173 | ; %name%
174 | ; %number%
175 | ; Default: %layout%
176 | label-layout = %layout%
177 | format-padding = 2
178 |
179 | ; Available tokens:
180 | ; %name%
181 | ; Default: %name%
182 | label-indicator = %name%
183 | label-indicator-padding = 0
184 |
185 | [module/network]
186 | type = internal/network
187 | interface = wlp3s0
188 |
189 | ; Seconds to sleep between updates
190 | ; Default: 1
191 | interval = 3.0
192 |
193 | ; Test connectivity every Nth update
194 | ; A value of 0 disables the feature
195 | ; NOTE: Experimental (needs more testing)
196 | ; Default: 0
197 | ;ping-interval = 3
198 |
199 | ; @deprecated: Define min width using token specifiers (%downspeed:min% and %upspeed:min%)
200 | ; Minimum output width of upload/download rate
201 | ; Default: 3
202 |
203 | ; Accumulate values from all interfaces
204 | ; when querying for up/downspeed rate
205 | ; Default: false
206 | accumulate-stats = true
207 |
208 | format-connected-padding = 2
209 | format-disconnected-padding = 2
210 | format-connected-underline = ${colors.white}
211 | format-disconnected-underline = ${colors.white}
212 |
213 | ; Available tags:
214 | ; (default)
215 | ;
216 | format-connected = %{F#928374} %{F-}
217 |
218 | ; Available tags:
219 | ; (default)
220 | format-disconnected =
221 |
222 | ; Available tags:
223 | ; (default)
224 | ;
225 | ;
226 | format-packetloss =
227 |
228 | ; Available tokens:
229 | ; %ifname% [wireless+wired]
230 | ; %local_ip% [wireless+wired]
231 | ; %essid% [wireless]
232 | ; %signal% [wireless]
233 | ; %upspeed% [wireless+wired]
234 | ; %downspeed% [wireless+wired]
235 | ; %linkspeed% [wired]
236 | ; Default: %ifname% %local_ip%
237 | label-connected = %signal:3%%
238 |
239 | ; Available tokens:
240 | ; %ifname% [wireless+wired]
241 | ; Default: (none)
242 | label-disconnected = %{F#928374} %{F-}none
243 |
244 | ; Available tokens:
245 | ; %ifname% [wireless+wired]
246 | ; %local_ip% [wireless+wired]
247 | ; %essid% [wireless]
248 | ; %signal% [wireless]
249 | ; %linkspeed% [wired]
250 | ; Default: (none)
251 | ;label-packetloss = %essid%
252 | ;label-packetloss-foreground = #eefafafa
253 |
254 | ; Only applies if is used
255 | animation-packetloss-0 = ⚠
256 | animation-packetloss-1 = 📶
257 | ; Framerate in milliseconds
258 | animation-packetloss-framerate = 500
259 |
260 | [module/separator]
261 | type = custom/text
262 | content = |
263 | content-foreground = #4e4e4e
264 |
265 | ; vim:ft=dosini
266 |
--------------------------------------------------------------------------------
/.config/nvim/init.vim:
--------------------------------------------------------------------------------
1 | "dein Scripts-----------------------------
2 | if &compatible
3 | set nocompatible " Be iMproved
4 | endif
5 |
6 | " Required:
7 | set runtimepath+=/home/a21v/.local/share/dein/repos/github.com/Shougo/dein.vim
8 |
9 | " Required:
10 | if dein#load_state('/home/a21v/.local/share/dein')
11 | call dein#begin('/home/a21v/.local/share/dein')
12 |
13 | " Let dein manage dein
14 | " Required:
15 | call dein#add('/home/a21v/.local/share/dein/repos/github.com/Shougo/dein.vim')
16 |
17 | " Add or remove your plugins here:
18 | call dein#add('Shougo/neosnippet.vim')
19 | call dein#add('Shougo/neosnippet-snippets')
20 | call dein#add('Shougo/denite.nvim')
21 | call dein#add('Shougo/deoplete.nvim')
22 | call dein#add('carlitux/deoplete-ternjs')
23 | call dein#add('kassio/neoterm')
24 | call dein#add('vim-airline/vim-airline')
25 | call dein#add('vim-airline/vim-airline-themes')
26 | call dein#add('tpope/vim-surround')
27 | call dein#add('ervandew/supertab')
28 | call dein#add('scrooloose/nerdcommenter')
29 | call dein#add('morhetz/gruvbox')
30 | call dein#add('scrooloose/nerdtree')
31 | call dein#add('vim-syntastic/syntastic')
32 | call dein#add('tpope/vim-fugitive')
33 | call dein#add('easymotion/vim-easymotion')
34 | call dein#add('tpope/vim-rails')
35 | call dein#add('tpope/vim-bundler')
36 | call dein#add('tpope/vim-rake')
37 | call dein#add('mattn/emmet-vim')
38 | call dein#add('vim-ruby/vim-ruby')
39 | call dein#add('jistr/vim-nerdtree-tabs')
40 | call dein#add('vim-javascript')
41 | call dein#add('tpope/vim-bundler')
42 | call dein#add('tpope/vim-endwise')
43 | call dein#add('terryma/vim-multiple-cursors')
44 | call dein#add('jiangmiao/auto-pairs')
45 | call dein#add('alvan/vim-closetag')
46 | call dein#add('godlygeek/tabular')
47 | call dein#add('eagletmt/ghcmod-vim')
48 | call dein#add('eagletmt/neco-ghc')
49 | call dein#add('Shougo/vimproc.vim', {'build' : 'make'})
50 | call dein#add('Shougo/vimshell')
51 | call dein#add('airblade/vim-gitgutter')
52 | call dein#add('myusuf3/numbers.vim')
53 | call dein#add('sheerun/vim-polyglot')
54 | call dein#add('junegunn/limelight.vim')
55 | call dein#add('majutsushi/tagbar')
56 | call dein#add('racer-rust/vim-racer')
57 | call dein#add('rust-lang/rust.vim')
58 | call dein#add('mattn/gist-vim')
59 | call dein#add('mattn/webapi-vim')
60 | call dein#add('ryanoasis/vim-devicons')
61 | call dein#add('metakirby5/codi.vim')
62 |
63 | " Required:
64 | call dein#end()
65 | call dein#save_state()
66 | endif
67 |
68 | " Required:
69 | filetype plugin indent on
70 | syntax enable
71 |
72 | " If you want to install not installed plugins on startup.
73 | if dein#check_install()
74 | call dein#install()
75 | endif
76 |
77 | "End dein Scripts-------------------------
78 |
79 | let g:gruvbox_invert_selection=0
80 | let g:gruvbox_italic=1
81 | set background=dark
82 | colorscheme gruvbox
83 |
84 | let g:lightline = {
85 | \ 'colorscheme': 'gruvbox',
86 | \ }
87 |
88 | let g:airline#extensions#tabline#enabled = 1
89 | let g:airline_powerline_fonts = 1
90 | let g:airline_left_sep = ''
91 | let g:airline_right_sep = ''
92 | let g:airline_left_alt_sep = '|'
93 | let g:airline_right_alt_sep = '|'
94 | let g:airline#extensions#tabline#left_sep = ' '
95 | let g:airline#extensions#tabline#left_alt_sep = '|'
96 | let g:airline#extensions#tabline#right_sep = ' '
97 | let g:airline#extensions#tabline#right_alt_sep = '|'
98 |
99 | " Syntastic
100 | let g:syntastic_error_symbol = '●'
101 | let g:syntastic_style_error_symbol = '●'
102 | let g:syntastic_warning_symbol = '●'
103 | let g:syntastic_style_warning_symbol = '●'
104 |
105 | set cursorline
106 | let g:deoplete#enable_at_startup = 1
107 | set mouse=a
108 | let g:SuperTabDefaultCompletionType = ""
109 |
110 | hi VertSplit ctermfg=239
111 | " hi SignColumn ctermbg=235
112 |
113 | " Start NERDTree in minimal UI mode (No help lines)
114 | let NERDTreeMinimalUI=1
115 |
116 | set tabstop=2
117 | set softtabstop=2
118 | set shiftwidth=2
119 | set expandtab
120 |
121 | set list
122 | set listchars=tab:»\ ,extends:›,precedes:‹,nbsp:·,trail:·,eol:¬
123 |
124 | set splitbelow
125 | set splitright
126 |
127 | set clipboard=unnamed
128 |
129 | let g:closetag_filenames = "*.html,*.xhtml,*.phtml,*.erb"
130 |
131 | let g:necoghc_enable_detailed_browse = 1
132 |
133 | " Keybindings
134 | let mapleader = ","
135 |
136 | map n :NERDTreeToggle
137 | map s :SyntasticToggleMode
138 |
139 | map tw :GhcModTypeInsert
140 | map ts :GhcModSplitFunCase
141 | map tq :GhcModType
142 | map te :GhcModTypeClear
143 |
144 | " haskell align
145 | let g:haskell_tabular = 1
146 |
147 | vmap a= :Tabularize /=
148 | vmap a; :Tabularize /::
149 | vmap a- :Tabularize /->
150 |
151 | map p :Denite file_rec
152 | map b :Denite buffer
153 |
154 | " Denite mappings
155 | call denite#custom#map(
156 | \ 'insert',
157 | \ '',
158 | \ '',
159 | \ 'noremap'
160 | \)
161 | call denite#custom#map(
162 | \ 'insert',
163 | \ '',
164 | \ '',
165 | \ 'noremap'
166 | \)
167 |
168 | autocmd FileType java setlocal shiftwidth=4 tabstop=4 softtabstop=4 expandtab
169 |
170 | let g:gitgutter_sign_column_always = 1
171 | set number
172 |
173 | " Color name (:help cterm-colors) or ANSI code
174 | let g:limelight_conceal_ctermfg = 'gray'
175 | let g:limelight_conceal_ctermfg = 240
176 |
177 | map l :Limelight!!
178 |
179 | nmap t :TagbarToggle
180 |
181 | " Highlight
182 | let g:go_highlight_functions = 1
183 | let g:go_highlight_methods = 1
184 | let g:go_highlight_structs = 1
185 | let g:go_highlight_operators = 1
186 | let g:go_highlight_build_constraints = 1
187 | let python_highlight_all = 1
188 |
189 | let g:tagbar_type_go = {
190 | \ 'ctagstype' : 'go',
191 | \ 'kinds' : [
192 | \ 'p:package',
193 | \ 'i:imports:1',
194 | \ 'c:constants',
195 | \ 'v:variables',
196 | \ 't:types',
197 | \ 'n:interfaces',
198 | \ 'w:fields',
199 | \ 'e:embedded',
200 | \ 'm:methods',
201 | \ 'r:constructor',
202 | \ 'f:functions'
203 | \ ],
204 | \ 'sro' : '.',
205 | \ 'kind2scope' : {
206 | \ 't' : 'ctype',
207 | \ 'n' : 'ntype'
208 | \ },
209 | \ 'scope2kind' : {
210 | \ 'ctype' : 't',
211 | \ 'ntype' : 'n'
212 | \ },
213 | \ 'ctagsbin' : 'gotags',
214 | \ 'ctagsargs' : '-sort -silent'
215 | \ }
216 |
217 |
218 | let g:syntastic_check_on_open = 1
219 | let g:syntastic_check_on_wq = 0
220 |
221 | let g:syntastic_go_checkers = ['gometalinter']
222 | let g:syntastic_javascript_checkers = ['eslint']
223 |
224 | " Rust stuff
225 | " let g:rustfmt_autosave = 1
226 | let g:syntastic_rust_checkers = ['rustc']
227 |
228 | " Plugin key-mappings.
229 | " Note: It must be "imap" and "smap". It uses mappings.
230 | imap (neosnippet_expand_or_jump)
231 | smap (neosnippet_expand_or_jump)
232 | xmap (neosnippet_expand_target)
233 |
--------------------------------------------------------------------------------
/.config/dunst/dunstrc:
--------------------------------------------------------------------------------
1 | [global]
2 | font = Monospace 10
3 |
4 | # Possible values are:
5 | # full: Allow a small subset of html markup in notifications:
6 | # bold
7 | # italic
8 | # strikethrough
9 | # underline
10 | #
11 | # For a complete reference see
12 | # .
13 | #
14 | # strip: This setting is provided for compatibility with some broken
15 | # clients that send markup even though it's not enabled on the
16 | # server. Dunst will try to strip the markup but the parsing is
17 | # simplistic so using this option outside of matching rules for
18 | # specific applications *IS GREATLY DISCOURAGED*.
19 | #
20 | # no: Disable markup parsing, incoming notifications will be treated as
21 | # plain text. Dunst will not advertise that it has the body-markup
22 | # capability if this is set as a global setting.
23 | #
24 | # It's important to note that markup inside the format option will be parsed
25 | # regardless of what this is set to.
26 | markup = full
27 |
28 | # The format of the message. Possible variables are:
29 | # %a appname
30 | # %s summary
31 | # %b body
32 | # %i iconname (including its path)
33 | # %I iconname (without its path)
34 | # %p progress value if set ([ 0%] to [100%]) or nothing
35 | # Markup is allowed
36 | format = "%s\n%b"
37 |
38 | # Sort messages by urgency.
39 | sort = yes
40 |
41 | # Show how many messages are currently hidden (because of geometry).
42 | indicate_hidden = yes
43 |
44 | # Alignment of message text.
45 | # Possible values are "left", "center" and "right".
46 | alignment = center
47 |
48 | # The frequency with which text that is longer than the notification
49 | # window allows bounces back and forth.
50 | # This option conflicts with "word_wrap".
51 | # Set to 0 to disable.
52 | bounce_freq = 0
53 |
54 | # Show age of message if message is older than show_age_threshold
55 | # seconds.
56 | # Set to -1 to disable.
57 | show_age_threshold = 60
58 |
59 | # Split notifications into multiple lines if they don't fit into
60 | # geometry.
61 | word_wrap = yes
62 |
63 | # Ignore newlines '\n' in notifications.
64 | ignore_newline = no
65 |
66 |
67 | # The geometry of the window:
68 | # [{width}]x{height}[+/-{x}+/-{y}]
69 | # The geometry of the message window.
70 | # The height is measured in number of notifications everything else
71 | # in pixels. If the width is omitted but the height is given
72 | # ("-geometry x2"), the message window expands over the whole screen
73 | # (dmenu-like). If width is 0, the window expands to the longest
74 | # message displayed. A positive x is measured from the left, a
75 | # negative from the right side of the screen. Y is measured from
76 | # the top and down respectively.
77 | # The width can be negative. In this case the actual width is the
78 | # screen width minus the width defined in within the geometry option.
79 | geometry = "300x5-30+20"
80 |
81 | # Define the title of the windows spawned by dunst
82 | title = Dunst
83 |
84 | # Define the class of the windows spawned by dunst
85 | class = Dunst
86 |
87 | # Shrink window if it's smaller than the width. Will be ignored if
88 | # width is 0.
89 | shrink = no
90 |
91 | # The transparency of the window. Range: [0; 100].
92 | # This option will only work if a compositing window manager is
93 | # present (e.g. xcompmgr, compiz, etc.).
94 | transparency = 0
95 |
96 | # Don't remove messages, if the user is idle (no mouse or keyboard input)
97 | # for longer than idle_threshold seconds.
98 | # Set to 0 to disable.
99 | idle_threshold = 120
100 |
101 | # Which monitor should the notifications be displayed on.
102 | monitor = 0
103 |
104 | # Display notification on focused monitor. Possible modes are:
105 | # mouse: follow mouse pointer
106 | # keyboard: follow window with keyboard focus
107 | # none: don't follow anything
108 | #
109 | # "keyboard" needs a window manager that exports the
110 | # _NET_ACTIVE_WINDOW property.
111 | # This should be the case for almost all modern window managers.
112 | #
113 | # If this option is set to mouse or keyboard, the monitor option
114 | # will be ignored.
115 | follow = mouse
116 |
117 | # Merge multiple notifications with the same content
118 | stack_duplicates = true
119 |
120 | # Hide the count of merged notifications with the same content
121 | hide_duplicate_count = false
122 |
123 | # Should a notification popped up from history be sticky or timeout
124 | # as if it would normally do.
125 | sticky_history = yes
126 |
127 | # Maximum amount of notifications kept in history
128 | history_length = 20
129 |
130 | # Display indicators for URLs (U) and actions (A).
131 | show_indicators = yes
132 |
133 | # The spacing between lines. If the height is smaller than the
134 | # font height, it will get raised to the font height.
135 | line_height = 0
136 |
137 | # The height of the entire notification. If the height is smaller
138 | # than the font height and padding combined, it will be raised
139 | # to the font height and padding.
140 | notification_height = 0
141 |
142 | # Draw a line of "separator_height" pixel height between two
143 | # notifications.
144 | # Set to 0 to disable.
145 | separator_height = 2
146 |
147 | # Padding between text and separator.
148 | padding = 8
149 |
150 | # Horizontal padding.
151 | horizontal_padding = 8
152 |
153 | # Define a color for the separator.
154 | # possible values are:
155 | # * auto: dunst tries to find a color fitting to the background;
156 | # * foreground: use the same color as the foreground;
157 | # * frame: use the same color as the frame;
158 | # * anything else will be interpreted as a X color.
159 | separator_color = frame
160 |
161 | # Print a notification on startup.
162 | # This is mainly for error detection, since dbus (re-)starts dunst
163 | # automatically after a crash.
164 | startup_notification = false
165 |
166 | # dmenu path.
167 | dmenu = /usr/bin/dmenu -p dunst:
168 |
169 | # Browser for opening urls in context menu.
170 | browser = /usr/bin/firefox-nightly -new-tab
171 |
172 | # Align icons left/right/off
173 | icon_position = off
174 |
175 | # Scale larger icons down to this size, set to 0 to disable
176 | max_icon_size = 32
177 |
178 | # Paths to default icons.
179 | icon_folders = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
180 |
181 | # Always run rule-defined scripts, even if the notification is suppressed
182 | always_run_script = true
183 |
184 | # Experimental features that may or may not work correctly. Do not expect them
185 | # to have a consistent behaviour across releases.
186 | [experimental]
187 | # Calculate the dpi to use on a per-monitor basis.
188 | # Please note that this setting will not work if Xft.dpi X resource is set.
189 | per_monitor_dpi = false
190 |
191 | [frame]
192 | width = 2
193 | color = "#ebdbb2"
194 |
195 | [shortcuts]
196 |
197 | # Shortcuts are specified as [modifier+][modifier+]...key
198 | # Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
199 | # "mod3" and "mod4" (windows-key).
200 | # Xev might be helpful to find names for keys.
201 |
202 | # Close notification.
203 | close = ctrl+space
204 |
205 | # Close all notifications.
206 | close_all = ctrl+alt+shift+space
207 |
208 | # Redisplay last message(s).
209 | # On the US keyboard layout "grave" is normally above TAB and left
210 | # of "1". Make sure this key actually exists on your keyboard layout,
211 | # e.g. check output of 'xmodmap -pke'
212 | history = ctrl+grave
213 |
214 | # Context menu.
215 | context = ctrl+shift+period
216 |
217 | [urgency_low]
218 | # IMPORTANT: colors have to be defined in quotation marks.
219 | # Otherwise the "#" and following would be interpreted as a comment.
220 | background = "#262626"
221 | foreground = "#928374"
222 | timeout = 4
223 | # Icon for notifications with low urgency, uncomment to enable
224 | #icon = /path/to/icon
225 |
226 | [urgency_normal]
227 | background = "#262626"
228 | foreground = "#ebdbb2"
229 | timeout = 4
230 | # Icon for notifications with normal urgency, uncomment to enable
231 | #icon = /path/to/icon
232 |
233 | [urgency_critical]
234 | background = "#262626"
235 | foreground = "#fb4934"
236 | timeout = 8
237 | # Icon for notifications with critical urgency, uncomment to enable
238 | #icon = /path/to/icon
239 |
240 | # Every section that isn't one of the above is interpreted as a rules to
241 | # override settings for certain messages.
242 | # Messages can be matched by "appname", "summary", "body", "icon", "category",
243 | # "msg_urgency" and you can override the "timeout", "urgency", "foreground",
244 | # "background", "new_icon" and "format".
245 | # Shell-like globbing will get expanded.
246 | #
247 | # SCRIPTING
248 | # You can specify a script that gets run when the rule matches by
249 | # setting the "script" option.
250 | # The script will be called as follows:
251 | # script appname summary body icon urgency
252 | # where urgency can be "LOW", "NORMAL" or "CRITICAL".
253 | #
254 | # NOTE: if you don't want a notification to be displayed, set the format
255 | # to "".
256 | # NOTE: It might be helpful to run dunst -print in a terminal in order
257 | # to find fitting options for rules.
258 |
259 | #[espeak]
260 | # summary = "*"
261 | # script = dunst_espeak.sh
262 |
263 | #[script-test]
264 | # summary = "*script*"
265 | # script = dunst_test.sh
266 |
267 | #[ignore]
268 | # # This notification will not be displayed
269 | # summary = "foobar"
270 | # format = ""
271 |
272 | #[history-ignore]
273 | # # This notification will not be saved in history
274 | # summary = "foobar"
275 | # history_ignore = yes
276 |
277 | #[signed_on]
278 | # appname = Pidgin
279 | # summary = "*signed on*"
280 | # urgency = low
281 | #
282 | #[signed_off]
283 | # appname = Pidgin
284 | # summary = *signed off*
285 | # urgency = low
286 | #
287 | #[says]
288 | # appname = Pidgin
289 | # summary = *says*
290 | # urgency = critical
291 | #
292 | #[twitter]
293 | # appname = Pidgin
294 | # summary = *twitter.com*
295 | # urgency = normal
296 | #
297 | # vim: ft=cfg
298 |
--------------------------------------------------------------------------------
/.config/mpd/mpd.conf:
--------------------------------------------------------------------------------
1 | # Required files
2 | db_file "~/.config/mpd/database"
3 | log_file "~/.config/mpd/log"
4 |
5 | # Optional
6 | music_directory "~/Music"
7 | playlist_directory "~/.config/mpd/playlists"
8 | pid_file "~/.config/mpd/pid"
9 | state_file "~/.config/mpd/state"
10 | sticker_file "~/.config/mpd/sticker.sql"
11 |
12 | audio_output {
13 | type "fifo"
14 | name "mpdfifo"
15 | path "/tmp/mpd.fifo"
16 | format "44100:16:2"
17 | }
18 |
19 | #audio_output {
20 | # type "alsa"
21 | # name "HDA Intel PCH"
22 | ## device "hw:0,0" # optional
23 | ## mixer_type "hardware" # optional
24 | ## mixer_device "default" # optional
25 | ## mixer_control "PCM" # optional
26 | ## mixer_index "0" # optional
27 | #}
28 |
29 | # An example configuration file for MPD.
30 | # Read the user manual for documentation: http://www.musicpd.org/doc/user/
31 |
32 |
33 | # Files and directories #######################################################
34 | #
35 | # This setting controls the top directory which MPD will search to discover the
36 | # available audio files and add them to the daemon's online database. This
37 | # setting defaults to the XDG directory, otherwise the music directory will be
38 | # be disabled and audio files will only be accepted over ipc socket (using
39 | # file:// protocol) or streaming files over an accepted protocol.
40 | #
41 | #music_directory "~/music"
42 | #
43 | # This setting sets the MPD internal playlist directory. The purpose of this
44 | # directory is storage for playlists created by MPD. The server will use
45 | # playlist files not created by the server but only if they are in the MPD
46 | # format. This setting defaults to playlist saving being disabled.
47 | #
48 | #playlist_directory "~/.mpd/playlists"
49 | #
50 | # This setting sets the location of the MPD database. This file is used to
51 | # load the database at server start up and store the database while the
52 | # server is not up. This setting defaults to disabled which will allow
53 | # MPD to accept files over ipc socket (using file:// protocol) or streaming
54 | # files over an accepted protocol.
55 | #
56 | #db_file "~/.mpd/database"
57 | #
58 | # These settings are the locations for the daemon log files for the daemon.
59 | # These logs are great for troubleshooting, depending on your log_level
60 | # settings.
61 | #
62 | # The special value "syslog" makes MPD use the local syslog daemon. This
63 | # setting defaults to logging to syslog, otherwise logging is disabled.
64 | #
65 | #log_file "~/.mpd/log"
66 | #
67 | # This setting sets the location of the file which stores the process ID
68 | # for use of mpd --kill and some init scripts. This setting is disabled by
69 | # default and the pid file will not be stored.
70 | #
71 | #pid_file "~/.mpd/pid"
72 | #
73 | # This setting sets the location of the file which contains information about
74 | # most variables to get MPD back into the same general shape it was in before
75 | # it was brought down. This setting is disabled by default and the server
76 | # state will be reset on server start up.
77 | #
78 | #state_file "~/.mpd/state"
79 | #
80 | # The location of the sticker database. This is a database which
81 | # manages dynamic information attached to songs.
82 | #
83 | #sticker_file "~/.mpd/sticker.sql"
84 | #
85 | ###############################################################################
86 |
87 |
88 | # General music daemon options ################################################
89 | #
90 | # This setting specifies the user that MPD will run as. MPD should never run as
91 | # root and you may use this setting to make MPD change its user ID after
92 | # initialization. This setting is disabled by default and MPD is run as the
93 | # current user.
94 | #
95 | #user "nobody"
96 | #
97 | # This setting specifies the group that MPD will run as. If not specified
98 | # primary group of user specified with "user" setting will be used (if set).
99 | # This is useful if MPD needs to be a member of group such as "audio" to
100 | # have permission to use sound card.
101 | #
102 | #group "nogroup"
103 | #
104 | # This setting sets the address for the daemon to listen on. Careful attention
105 | # should be paid if this is assigned to anything other then the default, any.
106 | # This setting can deny access to control of the daemon. Not effective if
107 | # systemd socket activiation is in use.
108 | #
109 | # For network
110 | #bind_to_address "any"
111 | #
112 | # And for Unix Socket
113 | #bind_to_address "~/.mpd/socket"
114 | #
115 | # This setting is the TCP port that is desired for the daemon to get assigned
116 | # to.
117 | #
118 | #port "6600"
119 | #
120 | # This setting controls the type of information which is logged. Available
121 | # setting arguments are "default", "secure" or "verbose". The "verbose" setting
122 | # argument is recommended for troubleshooting, though can quickly stretch
123 | # available resources on limited hardware storage.
124 | #
125 | #log_level "default"
126 | #
127 | # If you have a problem with your MP3s ending abruptly it is recommended that
128 | # you set this argument to "no" to attempt to fix the problem. If this solves
129 | # the problem, it is highly recommended to fix the MP3 files with vbrfix
130 | # (available from ), at which
131 | # point gapless MP3 playback can be enabled.
132 | #
133 | #gapless_mp3_playback "yes"
134 | #
135 | # Setting "restore_paused" to "yes" puts MPD into pause mode instead
136 | # of starting playback after startup.
137 | #
138 | #restore_paused "no"
139 | #
140 | # This setting enables MPD to create playlists in a format usable by other
141 | # music players.
142 | #
143 | #save_absolute_paths_in_playlists "no"
144 | #
145 | # This setting defines a list of tag types that will be extracted during the
146 | # audio file discovery process. The complete list of possible values can be
147 | # found in the user manual.
148 | #metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
149 | #
150 | # This setting enables automatic update of MPD's database when files in
151 | # music_directory are changed.
152 | #
153 | #auto_update "yes"
154 | #
155 | # Limit the depth of the directories being watched, 0 means only watch
156 | # the music directory itself. There is no limit by default.
157 | #
158 | #auto_update_depth "3"
159 | #
160 | ###############################################################################
161 |
162 |
163 | # Symbolic link behavior ######################################################
164 | #
165 | # If this setting is set to "yes", MPD will discover audio files by following
166 | # symbolic links outside of the configured music_directory.
167 | #
168 | #follow_outside_symlinks "yes"
169 | #
170 | # If this setting is set to "yes", MPD will discover audio files by following
171 | # symbolic links inside of the configured music_directory.
172 | #
173 | #follow_inside_symlinks "yes"
174 | #
175 | ###############################################################################
176 |
177 |
178 | # Zeroconf / Avahi Service Discovery ##########################################
179 | #
180 | # If this setting is set to "yes", service information will be published with
181 | # Zeroconf / Avahi.
182 | #
183 | #zeroconf_enabled "yes"
184 | #
185 | # The argument to this setting will be the Zeroconf / Avahi unique name for
186 | # this MPD server on the network.
187 | #
188 | #zeroconf_name "Music Player"
189 | #
190 | ###############################################################################
191 |
192 |
193 | # Permissions #################################################################
194 | #
195 | # If this setting is set, MPD will require password authorization. The password
196 | # setting can be specified multiple times for different password profiles.
197 | #
198 | #password "password@read,add,control,admin"
199 | #
200 | # This setting specifies the permissions a user has who has not yet logged in.
201 | #
202 | #default_permissions "read,add,control,admin"
203 | #
204 | ###############################################################################
205 |
206 |
207 | # Database #######################################################################
208 | #
209 |
210 | #database {
211 | # plugin "proxy"
212 | # host "other.mpd.host"
213 | # port "6600"
214 | #}
215 |
216 | # Input #######################################################################
217 | #
218 |
219 | input {
220 | plugin "curl"
221 | # proxy "proxy.isp.com:8080"
222 | # proxy_user "user"
223 | # proxy_password "password"
224 | }
225 |
226 | #
227 | ###############################################################################
228 |
229 | # Audio Output ################################################################
230 | #
231 | # MPD supports various audio output types, as well as playing through multiple
232 | # audio outputs at the same time, through multiple audio_output settings
233 | # blocks. Setting this block is optional, though the server will only attempt
234 | # autodetection for one sound card.
235 | #
236 | # An example of an ALSA output:
237 | #
238 | #audio_output {
239 | # type "alsa"
240 | # name "My ALSA Device"
241 | ## device "hw:0,0" # optional
242 | ## mixer_type "hardware" # optional
243 | ## mixer_device "default" # optional
244 | ## mixer_control "PCM" # optional
245 | ## mixer_index "0" # optional
246 | #}
247 | #
248 | # An example of an OSS output:
249 | #
250 | #audio_output {
251 | # type "oss"
252 | # name "My OSS Device"
253 | ## device "/dev/dsp" # optional
254 | ## mixer_type "hardware" # optional
255 | ## mixer_device "/dev/mixer" # optional
256 | ## mixer_control "PCM" # optional
257 | #}
258 | #
259 | # An example of a shout output (for streaming to Icecast):
260 | #
261 | #audio_output {
262 | # type "shout"
263 | # encoder "vorbis" # optional
264 | # name "My Shout Stream"
265 | # host "localhost"
266 | # port "8000"
267 | # mount "/mpd.ogg"
268 | # password "hackme"
269 | # quality "5.0"
270 | # bitrate "128"
271 | # format "44100:16:1"
272 | ## protocol "icecast2" # optional
273 | ## user "source" # optional
274 | ## description "My Stream Description" # optional
275 | ## url "http://example.com" # optional
276 | ## genre "jazz" # optional
277 | ## public "no" # optional
278 | ## timeout "2" # optional
279 | ## mixer_type "software" # optional
280 | #}
281 | #
282 | # An example of a recorder output:
283 | #
284 | #audio_output {
285 | # type "recorder"
286 | # name "My recorder"
287 | # encoder "vorbis" # optional, vorbis or lame
288 | # path "/var/lib/mpd/recorder/mpd.ogg"
289 | ## quality "5.0" # do not define if bitrate is defined
290 | # bitrate "128" # do not define if quality is defined
291 | # format "44100:16:1"
292 | #}
293 | #
294 | # An example of a httpd output (built-in HTTP streaming server):
295 | #
296 | #audio_output {
297 | # type "httpd"
298 | # name "My HTTP Stream"
299 | # encoder "vorbis" # optional, vorbis or lame
300 | # port "8000"
301 | # bind_to_address "0.0.0.0" # optional, IPv4 or IPv6
302 | ## quality "5.0" # do not define if bitrate is defined
303 | # bitrate "128" # do not define if quality is defined
304 | # format "44100:16:1"
305 | # max_clients "0" # optional 0=no limit
306 | #}
307 | #
308 | # An example of a pulseaudio output (streaming to a remote pulseaudio server)
309 | #
310 | audio_output {
311 | type "pulse"
312 | name "My Pulse Output"
313 | ## server "remote_server" # optional
314 | ## sink "remote_server_sink" # optional
315 | }
316 | #
317 | # An example of a winmm output (Windows multimedia API).
318 | #
319 | #audio_output {
320 | # type "winmm"
321 | # name "My WinMM output"
322 | ## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
323 | # or
324 | ## device "0" # optional
325 | ## mixer_type "hardware" # optional
326 | #}
327 | #
328 | # An example of an openal output.
329 | #
330 | #audio_output {
331 | # type "openal"
332 | # name "My OpenAL output"
333 | ## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
334 | #}
335 | #
336 | # An example of an sndio output.
337 | #
338 | #audio_output {
339 | # type "sndio"
340 | # name "sndio output"
341 | # mixer_type "software"
342 | #}
343 | #
344 | # An example of an OS X output:
345 | #
346 | #audio_output {
347 | # type "osx"
348 | # name "My OS X Device"
349 | ## device "Built-in Output" # optional
350 | ## channel_map "-1,-1,0,1" # optional
351 | #}
352 | #
353 | ## Example "pipe" output:
354 | #
355 | #audio_output {
356 | # type "pipe"
357 | # name "my pipe"
358 | # command "aplay -f cd 2>/dev/null"
359 | ## Or if you're want to use AudioCompress
360 | # command "AudioCompress -m | aplay -f cd 2>/dev/null"
361 | ## Or to send raw PCM stream through PCM:
362 | # command "nc example.org 8765"
363 | # format "44100:16:2"
364 | #}
365 | #
366 | ## An example of a null output (for no audio output):
367 | #
368 | #audio_output {
369 | # type "null"
370 | # name "My Null Output"
371 | # mixer_type "none" # optional
372 | #}
373 | #
374 | ###############################################################################
375 |
376 |
377 | # Normalization automatic volume adjustments ##################################
378 | #
379 | # This setting specifies the type of ReplayGain to use. This setting can have
380 | # the argument "off", "album", "track" or "auto". "auto" is a special mode that
381 | # chooses between "track" and "album" depending on the current state of
382 | # random playback. If random playback is enabled then "track" mode is used.
383 | # See for more details about ReplayGain.
384 | # This setting is off by default.
385 | #
386 | #replaygain "album"
387 | #
388 | # This setting sets the pre-amp used for files that have ReplayGain tags. By
389 | # default this setting is disabled.
390 | #
391 | #replaygain_preamp "0"
392 | #
393 | # This setting sets the pre-amp used for files that do NOT have ReplayGain tags.
394 | # By default this setting is disabled.
395 | #
396 | #replaygain_missing_preamp "0"
397 | #
398 | # This setting enables or disables ReplayGain limiting.
399 | # MPD calculates actual amplification based on the ReplayGain tags
400 | # and replaygain_preamp / replaygain_missing_preamp setting.
401 | # If replaygain_limit is enabled MPD will never amplify audio signal
402 | # above its original level. If replaygain_limit is disabled such amplification
403 | # might occur. By default this setting is enabled.
404 | #
405 | #replaygain_limit "yes"
406 | #
407 | # This setting enables on-the-fly normalization volume adjustment. This will
408 | # result in the volume of all playing audio to be adjusted so the output has
409 | # equal "loudness". This setting is disabled by default.
410 | #
411 | #volume_normalization "no"
412 | #
413 | ###############################################################################
414 |
415 | # Character Encoding ##########################################################
416 | #
417 | # If file or directory names do not display correctly for your locale then you
418 | # may need to modify this setting.
419 | #
420 | #filesystem_charset "UTF-8"
421 | #
422 | ###############################################################################
423 |
--------------------------------------------------------------------------------
/.config/ranger/rc.conf:
--------------------------------------------------------------------------------
1 | # ===================================================================
2 | # This file contains the default startup commands for ranger.
3 | # To change them, it is recommended to create the file
4 | # ~/.config/ranger/rc.conf and add your custom commands there.
5 | #
6 | # If you copy this whole file there, you may want to set the environment
7 | # variable RANGER_LOAD_DEFAULT_RC to FALSE to avoid loading it twice.
8 | #
9 | # The purpose of this file is mainly to define keybindings and settings.
10 | # For running more complex python code, please create a plugin in "plugins/" or
11 | # a command in "commands.py".
12 | #
13 | # Each line is a command that will be run before the user interface
14 | # is initialized. As a result, you can not use commands which rely
15 | # on the UI such as :delete or :mark.
16 | # ===================================================================
17 |
18 | # ===================================================================
19 | # == Options
20 | # ===================================================================
21 |
22 | set draw_borders true
23 |
24 | # How many columns are there, and what are their relative widths?
25 | set column_ratios 1,1,1
26 |
27 | # Which files should be hidden? (regular expression)
28 | set hidden_filter ^\.|\.(?:pyc|pyo|bak|swp)$|^lost\+found$|^__(py)?cache__$
29 |
30 | # Show hidden files? You can toggle this by typing 'zh'
31 | set show_hidden false
32 |
33 | # Ask for a confirmation when running the "delete" command?
34 | # Valid values are "always" (default), "never", "multiple"
35 | # With "multiple", ranger will ask only if you delete multiple files at once.
36 | set confirm_on_delete multiple
37 |
38 | # Which script is used to generate file previews?
39 | # ranger ships with scope.sh, a script that calls external programs (see
40 | # README for dependencies) to preview images, archives, etc.
41 | set preview_script ~/.config/ranger/scope.sh
42 |
43 | # Use the external preview script or display simple plain text previews?
44 | set use_preview_script true
45 |
46 | # Open all images in this directory when running certain image viewers
47 | # like feh or sxiv? You can still open selected files by marking them.
48 | set open_all_images true
49 |
50 | # Be aware of version control systems and display information.
51 | set vcs_aware false
52 |
53 | # State of the three backends git, hg, bzr. The possible states are
54 | # disabled, local (only show local info), enabled (show local and remote
55 | # information).
56 | set vcs_backend_git enabled
57 | set vcs_backend_hg disabled
58 | set vcs_backend_bzr disabled
59 |
60 | # Preview images in full color with the external command "w3mimgpreview"?
61 | # This requires the console web browser "w3m" and a supported terminal.
62 | # It has been successfully tested with "xterm" and "urxvt" without tmux.
63 | set preview_images false
64 | # set preview_images_method urxvt
65 |
66 | # Use a unicode "..." character to mark cut-off filenames?
67 | set unicode_ellipsis false
68 |
69 | # Show dotfiles in the bookmark preview box?
70 | set show_hidden_bookmarks true
71 |
72 | # Which colorscheme to use? These colorschemes are available by default:
73 | # default, jungle, snow
74 | set colorscheme default
75 |
76 | # Preview files on the rightmost column?
77 | # And collapse (shrink) the last column if there is nothing to preview?
78 | set preview_files true
79 | set preview_directories true
80 | set collapse_preview true
81 |
82 | # Save the console history on exit?
83 | set save_console_history true
84 |
85 | # Draw the status bar on top of the browser window (default: bottom)
86 | set status_bar_on_top false
87 |
88 | # Draw a progress bar in the status bar which displays the average state of all
89 | # currently running tasks which support progress bars?
90 | set draw_progress_bar_in_status_bar true
91 |
92 | # Display the directory name in tabs?
93 | set dirname_in_tabs false
94 |
95 | # Enable the mouse support?
96 | set mouse_enabled true
97 |
98 | # Display the file size in the main column or status bar?
99 | set display_size_in_main_column true
100 | set display_size_in_status_bar true
101 |
102 | # Display files tags in all columns or only in main column?
103 | set display_tags_in_all_columns true
104 |
105 | # Set a title for the window?
106 | set update_title false
107 |
108 | # Set the title to "ranger" in the tmux program?
109 | set update_tmux_title false
110 |
111 | # Shorten the title if it gets long? The number defines how many
112 | # directories are displayed at once, 0 turns off this feature.
113 | set shorten_title 3
114 |
115 | # Abbreviate $HOME with ~ in the titlebar (first line) of ranger?
116 | set tilde_in_titlebar true
117 |
118 | # How many directory-changes or console-commands should be kept in history?
119 | set max_history_size 20
120 | set max_console_history_size 50
121 |
122 | # Try to keep so much space between the top/bottom border when scrolling:
123 | set scroll_offset 8
124 |
125 | # Flush the input after each key hit? (Noticable when ranger lags)
126 | set flushinput true
127 |
128 | # Padding on the right when there's no preview?
129 | # This allows you to click into the space to run the file.
130 | set padding_right false
131 |
132 | # Save bookmarks (used with mX and `X) instantly?
133 | # This helps to synchronize bookmarks between multiple ranger
134 | # instances but leads to *slight* performance loss.
135 | # When false, bookmarks are saved when ranger is exited.
136 | set autosave_bookmarks true
137 |
138 | # You can display the "real" cumulative size of directories by using the
139 | # command :get_cumulative_size or typing "dc". The size is expensive to
140 | # calculate and will not be updated automatically. You can choose
141 | # to update it automatically though by turning on this option:
142 | set autoupdate_cumulative_size false
143 |
144 | # Turning this on makes sense for screen readers:
145 | set show_cursor false
146 |
147 | # One of: size, basename, mtime, type
148 | set sort natural
149 |
150 | # Additional sorting options
151 | set sort_reverse false
152 | set sort_case_insensitive true
153 | set sort_directories_first true
154 |
155 | # Enable this if key combinations with the Alt Key don't work for you.
156 | # (Especially on xterm)
157 | set xterm_alt_key false
158 |
159 | # ===================================================================
160 | # == Local Options
161 | # ===================================================================
162 | # You can set local options that only affect a single directory.
163 |
164 | # Examples:
165 | # setlocal path=~/downloads sort mtime
166 |
167 | # ===================================================================
168 | # == Command Aliases in the Console
169 | # ===================================================================
170 |
171 | alias e edit
172 | alias q quit
173 | alias q! quitall
174 | alias qall quitall
175 | alias setl setlocal
176 |
177 | alias filter scout -prt
178 | alias find scout -aet
179 | alias mark scout -mr
180 | alias unmark scout -Mr
181 | alias search scout -rs
182 | alias search_inc scout -rts
183 | alias travel scout -aefiklst
184 |
185 | # ===================================================================
186 | # == Define keys for the browser
187 | # ===================================================================
188 |
189 | # Basic
190 | map Q quit!
191 | map q quit
192 | copymap q ZZ ZQ
193 |
194 | map R reload_cwd
195 | map reset
196 | map redraw_window
197 | map abort
198 | map change_mode normal
199 |
200 | map i display_file
201 | map ? help
202 | map W display_log
203 | map w taskview_open
204 | map S shell $SHELL
205 |
206 | map : console
207 | map ; console
208 | map ! console shell
209 | map @ console -p6 shell %%s
210 | map # console shell -p
211 | map s console shell
212 | map r chain draw_possible_programs; console open_with
213 | map f console find
214 | map cd console cd
215 |
216 | # Tagging / Marking
217 | map t tag_toggle
218 | map ut tag_remove
219 | map " tag_toggle tag=%any
220 | map mark_files toggle=True
221 | map v mark_files all=True toggle=True
222 | map uv mark_files all=True val=False
223 | map V toggle_visual_mode
224 | map uV toggle_visual_mode reverse=True
225 |
226 | # For the nostalgics: Midnight Commander bindings
227 | map help
228 | map display_file
229 | map edit
230 | map copy
231 | map cut
232 | map console mkdir
233 | map console delete
234 | map exit
235 |
236 | # In case you work on a keyboard with dvorak layout
237 | map move up=1
238 | map move down=1
239 | map move left=1
240 | map move right=1
241 | map move to=0
242 | map move to=-1
243 | map move down=1 pages=True
244 | map move up=1 pages=True
245 | map move right=1
246 | map console delete
247 | map console touch
248 |
249 | # VIM-like
250 | copymap k
251 | copymap j
252 | copymap h
253 | copymap l
254 | copymap gg
255 | copymap G
256 | copymap
257 | copymap
258 |
259 | map J move down=0.5 pages=True
260 | map K move up=0.5 pages=True
261 | copymap J
262 | copymap K
263 |
264 | # Jumping around
265 | map H history_go -1
266 | map L history_go 1
267 | map ] move_parent 1
268 | map [ move_parent -1
269 | map } traverse
270 |
271 | map gh cd ~
272 | map ge cd /etc
273 | map gu cd /usr
274 | map gd cd /dev
275 | map gl cd -r .
276 | map gL cd -r %f
277 | map go cd /opt
278 | map gv cd /var
279 | map gm cd /media
280 | map gM cd /mnt
281 | map gs cd /srv
282 | map gr cd /
283 | map gR eval fm.cd(ranger.RANGERDIR)
284 | map g/ cd /
285 | map g? cd /usr/share/doc/ranger
286 |
287 | # External Programs
288 | map E edit
289 | map du shell -p du --max-depth=1 -h --apparent-size
290 | map dU shell -p du --max-depth=1 -h --apparent-size | sort -rh
291 | map yp shell -d echo -n %d/%f | xsel -i
292 | map yd shell -d echo -n %d | xsel -i
293 | map yn shell -d echo -n %f | xsel -i
294 |
295 | # Filesystem Operations
296 | map = chmod
297 |
298 | map cw console rename
299 | map A eval fm.open_console('rename ' + fm.thisfile.basename)
300 | map I eval fm.open_console('rename ' + fm.thisfile.basename, position=7)
301 |
302 | map pp paste
303 | map po paste overwrite=True
304 | map pl paste_symlink relative=False
305 | map pL paste_symlink relative=True
306 | map phl paste_hardlink
307 | map pht paste_hardlinked_subtree
308 |
309 | map dd cut
310 | map ud uncut
311 | map da cut mode=add
312 | map dr cut mode=remove
313 |
314 | map yy copy
315 | map uy uncut
316 | map ya copy mode=add
317 | map yr copy mode=remove
318 |
319 | # Temporary workarounds
320 | map dgg eval fm.cut(dirarg=dict(to=0), narg=quantifier)
321 | map dG eval fm.cut(dirarg=dict(to=-1), narg=quantifier)
322 | map dj eval fm.cut(dirarg=dict(down=1), narg=quantifier)
323 | map dk eval fm.cut(dirarg=dict(up=1), narg=quantifier)
324 | map ygg eval fm.copy(dirarg=dict(to=0), narg=quantifier)
325 | map yG eval fm.copy(dirarg=dict(to=-1), narg=quantifier)
326 | map yj eval fm.copy(dirarg=dict(down=1), narg=quantifier)
327 | map yk eval fm.copy(dirarg=dict(up=1), narg=quantifier)
328 |
329 | # Searching
330 | map / console search
331 | map n search_next
332 | map N search_next forward=False
333 | map ct search_next order=tag
334 | map cs search_next order=size
335 | map ci search_next order=mimetype
336 | map cc search_next order=ctime
337 | map cm search_next order=mtime
338 | map ca search_next order=atime
339 |
340 | # Tabs
341 | map tab_new ~
342 | map tab_close
343 | map tab_move 1
344 | map tab_move -1
345 | map tab_move 1
346 | map tab_move -1
347 | map gt tab_move 1
348 | map gT tab_move -1
349 | map gn tab_new ~
350 | map gc tab_close
351 | map uq tab_restore
352 | map tab_open 1
353 | map tab_open 2
354 | map tab_open 3
355 | map tab_open 4
356 | map tab_open 5
357 | map tab_open 6
358 | map tab_open 7
359 | map tab_open 8
360 | map tab_open 9
361 |
362 | # Sorting
363 | map or toggle_option sort_reverse
364 | map os chain set sort=size; set sort_reverse=False
365 | map ob chain set sort=basename; set sort_reverse=False
366 | map on chain set sort=natural; set sort_reverse=False
367 | map om chain set sort=mtime; set sort_reverse=False
368 | map oc chain set sort=ctime; set sort_reverse=False
369 | map oa chain set sort=atime; set sort_reverse=False
370 | map ot chain set sort=type; set sort_reverse=False
371 |
372 | map oS chain set sort=size; set sort_reverse=True
373 | map oB chain set sort=basename; set sort_reverse=True
374 | map oN chain set sort=natural; set sort_reverse=True
375 | map oM chain set sort=mtime; set sort_reverse=True
376 | map oC chain set sort=ctime; set sort_reverse=True
377 | map oA chain set sort=atime; set sort_reverse=True
378 | map oT chain set sort=type; set sort_reverse=True
379 |
380 | map dc get_cumulative_size
381 |
382 | # Settings
383 | map zc toggle_option collapse_preview
384 | map zd toggle_option sort_directories_first
385 | map zh toggle_option show_hidden
386 | map toggle_option show_hidden
387 | map zi toggle_option flushinput
388 | map zm toggle_option mouse_enabled
389 | map zp toggle_option preview_files
390 | map zP toggle_option preview_directories
391 | map zs toggle_option sort_case_insensitive
392 | map zu toggle_option autoupdate_cumulative_size
393 | map zv toggle_option use_preview_script
394 | map zf console filter
395 |
396 | # Bookmarks
397 | map ` enter_bookmark %any
398 | map ' enter_bookmark %any
399 | map m set_bookmark %any
400 | map um unset_bookmark %any
401 |
402 | map m draw_bookmarks
403 | copymap m um ` '
404 |
405 | # Generate all the chmod bindings with some python help:
406 | eval for arg in "rwxXst": cmd("map +u{0} shell -d chmod u+{0} %s".format(arg))
407 | eval for arg in "rwxXst": cmd("map +g{0} shell -d chmod g+{0} %s".format(arg))
408 | eval for arg in "rwxXst": cmd("map +o{0} shell -d chmod o+{0} %s".format(arg))
409 | eval for arg in "rwxXst": cmd("map +a{0} shell -d chmod a+{0} %s".format(arg))
410 | eval for arg in "rwxXst": cmd("map +{0} shell -d chmod u+{0} %s".format(arg))
411 |
412 | eval for arg in "rwxXst": cmd("map -u{0} shell -d chmod u-{0} %s".format(arg))
413 | eval for arg in "rwxXst": cmd("map -g{0} shell -d chmod g-{0} %s".format(arg))
414 | eval for arg in "rwxXst": cmd("map -o{0} shell -d chmod o-{0} %s".format(arg))
415 | eval for arg in "rwxXst": cmd("map -a{0} shell -d chmod a-{0} %s".format(arg))
416 | eval for arg in "rwxXst": cmd("map -{0} shell -d chmod u-{0} %s".format(arg))
417 |
418 | # ===================================================================
419 | # == Define keys for the console
420 | # ===================================================================
421 | # Note: Unmapped keys are passed directly to the console.
422 |
423 | # Basic
424 | cmap eval fm.ui.console.tab()
425 | cmap eval fm.ui.console.tab(-1)
426 | cmap eval fm.ui.console.close()
427 | cmap eval fm.ui.console.execute()
428 | cmap redraw_window
429 |
430 | copycmap
431 | copycmap
432 |
433 | # Move around
434 | cmap eval fm.ui.console.history_move(-1)
435 | cmap eval fm.ui.console.history_move(1)
436 | cmap eval fm.ui.console.move(left=1)
437 | cmap eval fm.ui.console.move(right=1)
438 | cmap eval fm.ui.console.move(right=0, absolute=True)
439 | cmap eval fm.ui.console.move(right=-1, absolute=True)
440 |
441 | # Line Editing
442 | cmap eval fm.ui.console.delete(-1)
443 | cmap eval fm.ui.console.delete(0)
444 | cmap eval fm.ui.console.delete_word()
445 | cmap eval fm.ui.console.delete_rest(1)
446 | cmap eval fm.ui.console.delete_rest(-1)
447 | cmap eval fm.ui.console.paste()
448 |
449 | # And of course the emacs way
450 | copycmap
451 | copycmap
452 | copycmap
453 | copycmap
454 | copycmap
455 | copycmap
456 | copycmap
457 | copycmap
458 |
459 | # Note: There are multiple ways to express backspaces. (code 263)
460 | # and (code 127). To be sure, use both.
461 | copycmap
462 |
463 | # This special expression allows typing in numerals:
464 | cmap false
465 |
466 | # ===================================================================
467 | # == Pager Keybindings
468 | # ===================================================================
469 |
470 | # Movement
471 | pmap pager_move down=1
472 | pmap pager_move up=1
473 | pmap pager_move left=4
474 | pmap pager_move right=4
475 | pmap pager_move to=0
476 | pmap pager_move to=-1
477 | pmap pager_move down=1.0 pages=True
478 | pmap pager_move up=1.0 pages=True
479 | pmap pager_move down=0.5 pages=True
480 | pmap pager_move up=0.5 pages=True
481 |
482 | copypmap k
483 | copypmap j
484 | copypmap h
485 | copypmap l
486 | copypmap g
487 | copypmap G
488 | copypmap d
489 | copypmap u
490 | copypmap n f
491 | copypmap p b
492 |
493 | # Basic
494 | pmap pager_close
495 | copypmap q Q i
496 | pmap E edit_file
497 |
498 | # ===================================================================
499 | # == Taskview Keybindings
500 | # ===================================================================
501 |
502 | # Movement
503 | tmap taskview_move up=1
504 | tmap taskview_move down=1
505 | tmap taskview_move to=0
506 | tmap taskview_move to=-1
507 | tmap taskview_move down=1.0 pages=True
508 | tmap taskview_move up=1.0 pages=True
509 | tmap taskview_move down=0.5 pages=True
510 | tmap taskview_move up=0.5 pages=True
511 |
512 | copytmap k
513 | copytmap j
514 | copytmap g
515 | copytmap G
516 | copytmap u
517 | copytmap n f
518 | copytmap p b
519 |
520 | # Changing priority and deleting tasks
521 | tmap J eval -q fm.ui.taskview.task_move(-1)
522 | tmap K eval -q fm.ui.taskview.task_move(0)
523 | tmap dd eval -q fm.ui.taskview.task_remove()
524 | tmap eval -q fm.ui.taskview.task_move(-1)
525 | tmap eval -q fm.ui.taskview.task_move(0)
526 | tmap eval -q fm.ui.taskview.task_remove()
527 |
528 | # Basic
529 | tmap taskview_close
530 | copytmap q Q w
531 |
--------------------------------------------------------------------------------
/.ncmpcpp/config:
--------------------------------------------------------------------------------
1 | visualizer_fifo_path = "/tmp/mpd.fifo"
2 | visualizer_output_name = "mpdfifo"
3 | visualizer_sync_interval = "30"
4 | visualizer_in_stereo = "yes"
5 | visualizer_type = "wave" (spectrum/wave)
6 |
7 | mpd_music_dir = "/home/a21v/Music"
8 |
9 | playlist_disable_highlight_delay = "3"
10 | message_delay_time = "8"
11 | song_list_format = "{$2%a$9} {$5%t$9} $R {$3%b$3} $9({$9%l$9})"
12 | song_library_format = "%n %t"
13 | song_status_format = "$b{$6%a$9 $1|$9} {$7%t$9} $1|$9 {$2%b$9} $1|$9 {$6%y$9} $1|$9"
14 | song_window_title_format = "{%a-%t}"
15 | song_columns_list_format = "(6)[yellow]{l} (34)[red]{a} (60)[blue]{t}"
16 | playlist_display_mode = "classic"
17 | browser_display_mode = "columns"
18 | titles_visibility = "no"
19 | incremental_seeking = "yes"
20 | autocenter_mode = "yes"
21 | header_visibility = "yes"
22 | statusbar_visibility = "yes"
23 | cyclic_scrolling = "no"
24 | display_bitrate = "yes"
25 | ignore_leading_the = "no"
26 | enable_window_title = "yes"
27 | progressbar_look = "─╼ "
28 | user_interface = "alternative"
29 | alternative_header_first_line_format = "{$b$2%a$9} {$5%t$9}"
30 | alternative_header_second_line_format = "{$3%b$9} {$4(%y)$9}"
31 | alternative_ui_separator_color = "blue"
32 | playlist_separate_albums = "no"
33 | colors_enabled = "yes"
34 | empty_tag_color = "blue"
35 | header_window_color = "white"
36 | display_volume_level = "yes"
37 | state_line_color = "cyan"
38 | state_flags_color = "red"
39 | main_window_color = "green"
40 | main_window_highlight_color = "blue"
41 | color1 = "white"
42 | color2 = "blue"
43 | progressbar_color = "yellow"
44 | statusbar_color = "cyan"
45 | active_column_color = "red"
46 | window_border_color = "red"
47 | active_window_border = "red"
48 | follow_now_playing_lyrics = "yes"
49 |
50 | #lyrics stuff
51 | store_lyrics_in_song_dir = "no"
52 |
53 | allow_for_physical_item_deletion = "yes"
54 | def_key "delete"
55 | delete_playlist_items
56 | def_key "delete"
57 | delete_browser_items
58 | def_key "delete"
59 | delete_stored_playlist
60 |
61 |
62 | ##############################################################################
63 | ## This is the example configuration file. Copy it to $HOME/.ncmpcpp/config ##
64 | ## or $XDG_CONFIG_HOME/ncmpcpp/config and set up your preferences. ##
65 | ##############################################################################
66 | #
67 | ##### directories ######
68 | ##
69 | ## Directory for storing ncmpcpp related files. Changing it is useful if you
70 | ## want to store everything somewhere else and provide command line setting for
71 | ## alternative location to config file which defines that while launching
72 | ## ncmpcpp.
73 | ##
74 | #
75 | #ncmpcpp_directory = ~/.ncmpcpp
76 | #
77 | ##
78 | ## Directory for storing downloaded lyrics. It defaults to ~/.lyrics since other
79 | ## MPD clients (eg. ncmpc) also use that location.
80 | ##
81 | #
82 | #lyrics_directory = ~/.lyrics
83 | #
84 | ##### connection settings #####
85 | #
86 | #mpd_host = localhost
87 | #
88 | #mpd_port = 6600
89 | #
90 | #mpd_connection_timeout = 5
91 | #
92 | ## Needed for tag editor and file operations to work.
93 | ##
94 | #mpd_music_dir = ~/music
95 | #
96 | #mpd_crossfade_time = 5
97 | #
98 | ##### music visualizer #####
99 | ##
100 | ## Note: In order to make music visualizer work you'll need to use mpd fifo
101 | ## output, whose format parameter has to be set to 44100:16:1 for mono
102 | ## visualization or 44100:16:2 for stereo visualization. Example configuration
103 | ## (it has to be put into mpd.conf):
104 | ##
105 | ## audio_output {
106 | ## type "fifo"
107 | ## name "Visualizer feed"
108 | ## path "/tmp/mpd.fifo"
109 | ## format "44100:16:2"
110 | ## }
111 | ##
112 | #
113 | #visualizer_fifo_path = /tmp/mpd.fifo
114 | #
115 | ##
116 | ## Note: Below parameter is needed for ncmpcpp to determine which output
117 | ## provides data for visualizer and thus allow syncing between visualization and
118 | ## sound as currently there are some problems with it.
119 | ##
120 | #
121 | #visualizer_output_name = Visualizer feed
122 | #
123 | ##
124 | ## If you set format to 44100:16:2, make it 'yes'.
125 | ##
126 | #visualizer_in_stereo = yes
127 | #
128 | ##
129 | ## Note: Below parameter defines how often ncmpcpp has to "synchronize"
130 | ## visualizer and audio outputs. 30 seconds is optimal value, but if you
131 | ## experience synchronization problems, set it to lower value. Keep in mind
132 | ## that sane values start with >=10.
133 | ##
134 | #
135 | #visualizer_sync_interval = 30
136 | #
137 | ##
138 | ## Note: To enable spectrum frequency visualization you need to compile ncmpcpp
139 | ## with fftw3 support.
140 | ##
141 | #
142 | ## Available values: spectrum, wave, wave_filled, ellipse.
143 | ##
144 | #visualizer_type = wave
145 | #
146 | #visualizer_look = ●▮
147 | #
148 | #visualizer_color = blue, cyan, green, yellow, magenta, red
149 | #
150 | ## Alternative subset of 256 colors for terminals that support it.
151 | ##
152 | #visualizer_color = 41, 83, 119, 155, 185, 215, 209, 203, 197, 161
153 | #
154 | ##### system encoding #####
155 | ##
156 | ## ncmpcpp should detect your charset encoding but if it failed to do so, you
157 | ## can specify charset encoding you are using here.
158 | ##
159 | ## Note: You can see whether your ncmpcpp build supports charset detection by
160 | ## checking output of `ncmpcpp --version`.
161 | ##
162 | ## Note: Since MPD uses UTF-8 by default, setting this option makes sense only
163 | ## if your encoding is different.
164 | ##
165 | #
166 | #system_encoding = ""
167 | #
168 | ##### delays #####
169 | #
170 | ## Time of inactivity (in seconds) after playlist highlighting will be disabled
171 | ## (0 = always on).
172 | ##
173 | #playlist_disable_highlight_delay = 5
174 | #
175 | ## Defines how long messages are supposed to be visible.
176 | ##
177 | #message_delay_time = 5
178 | #
179 | ##### song format #####
180 | ##
181 | ## For a song format you can use:
182 | ##
183 | ## %l - length
184 | ## %f - filename
185 | ## %D - directory
186 | ## %a - artist
187 | ## %A - album artist
188 | ## %t - title
189 | ## %b - album
190 | ## %y - date
191 | ## %n - track number (01/12 -> 01)
192 | ## %N - full track info (01/12 -> 01/12)
193 | ## %g - genre
194 | ## %c - composer
195 | ## %p - performer
196 | ## %d - disc
197 | ## %C - comment
198 | ## %P - priority
199 | ## $R - begin right alignment
200 | ##
201 | ## If you want to make sure that a part of the format is displayed only when
202 | ## certain tags are present, you can archieve it by grouping them with brackets,
203 | ## e.g. '{%a - %t}' will be evaluated to 'ARTIST - TITLE' if both tags are
204 | ## present or '' otherwise. It is also possible to define a list of
205 | ## alternatives by providing several groups and separating them with '|',
206 | ## e.g. '{%t}|{%f}' will be evaluated to 'TITLE' or 'FILENAME' if the former is
207 | ## not present.
208 | ##
209 | ## Note: If you want to set limit on maximal length of a tag, just put the
210 | ## appropriate number between % and character that defines tag type, e.g. to
211 | ## make album take max. 20 terminal cells, use '%20b'.
212 | ##
213 | ## In addition, formats support markers used for text attributes. They are
214 | ## followed by character '$'. After that you can put:
215 | ##
216 | ## - 0 - default window color (discards all other colors)
217 | ## - 1 - black
218 | ## - 2 - red
219 | ## - 3 - green
220 | ## - 4 - yellow
221 | ## - 5 - blue
222 | ## - 6 - magenta
223 | ## - 7 - cyan
224 | ## - 8 - white
225 | ## - 9 - end of current color
226 | ## - b - bold text
227 | ## - u - underline text
228 | ## - r - reverse colors
229 | ## - a - use alternative character set
230 | ##
231 | ## If you don't want to use a non-color attribute anymore, just put it again,
232 | ## but this time insert character '/' between '$' and attribute character,
233 | ## e.g. {$b%t$/b}|{$r%f$/r} will display bolded title tag or filename with
234 | ## reversed colors.
235 | ##
236 | ## If you want to use 256 colors and/or background colors in formats (the naming
237 | ## scheme is described below in section about color definitions), it can be done
238 | ## with the syntax $(COLOR), e.g. to set the artist tag to one of the
239 | ## non-standard colors and make it have yellow background, you need to write
240 | ## $(197_yellow)%a$(end). Note that for standard colors this is interchangable
241 | ## with attributes listed above.
242 | ##
243 | ## Note: colors can be nested.
244 | ##
245 | #
246 | #song_list_format = {%a - }{%t}|{$8%f$9}$R{$3(%l)$9}
247 | #
248 | #song_status_format = {{%a{ "%b"{ (%y)}} - }{%t}}|{%f}
249 | #
250 | #song_library_format = {%n - }{%t}|{%f}
251 | #
252 | #
253 | #alternative_header_first_line_format = $b$1$aqqu$/a$9 {%t}|{%f} $1$atqq$/a$9$/b
254 | #
255 | #alternative_header_second_line_format = {{$4$b%a$/b$9}{ - $7%b$9}{ ($4%y$9)}}|{%D}
256 | #
257 | #now_playing_prefix = $b
258 | #
259 | #now_playing_suffix = $/b
260 | #
261 | #browser_playlist_prefix = "$2playlist$9 "
262 | #
263 | #selected_item_prefix = $6
264 | #
265 | #selected_item_suffix = $9
266 | #
267 | #modified_item_prefix = $3> $9
268 | #
269 | ##
270 | ## Note: attributes are not supported for the following variables.
271 | ##
272 | #song_window_title_format = {%a - }{%t}|{%f}
273 | ##
274 | ## Note: Below variables are used for sorting songs in browser. The sort mode
275 | ## determines how songs are sorted, and can be used in combination with a sort
276 | ## format to specify a custom sorting format. Available values for
277 | ## browser_sort_mode are "name", "mtime", "format" and "noop".
278 | ##
279 | #
280 | #browser_sort_mode = name
281 | #
282 | #browser_sort_format = {%a - }{%t}|{%f} {(%l)}
283 | #
284 | ##### columns settings #####
285 | ##
286 | ## syntax of song columns list format is "column column etc."
287 | ##
288 | ## - syntax for each column is:
289 | ##
290 | ## (width of the column)[color of the column]{displayed tag}
291 | ##
292 | ## Note: Width is by default in %, if you want a column to have fixed size, add
293 | ## 'f' after the value, e.g. (10)[white]{a} will be the column that take 10% of
294 | ## screen (so the real width will depend on actual screen size), whereas
295 | ## (10f)[white]{a} will take 10 terminal cells, no matter how wide the screen
296 | ## is.
297 | ##
298 | ## - color is optional (if you want the default one, leave the field empty).
299 | ##
300 | ## Note: You can give a column additional attributes by putting appropriate
301 | ## character after displayed tag character. Available attributes are:
302 | ##
303 | ## - r - column will be right aligned
304 | ## - E - if tag is empty, empty tag marker won't be displayed
305 | ##
306 | ## You can also:
307 | ##
308 | ## - give a column custom name by putting it after attributes, separated with
309 | ## character ':', e.g. {lr:Length} gives you right aligned column of lengths
310 | ## named "Length".
311 | ##
312 | ## - define sequence of tags, that have to be displayed in case predecessor is
313 | ## empty in a way similar to the one in classic song format, i.e. using '|'
314 | ## character, e.g. {a|c|p:Owner} creates column named "Owner" that tries to
315 | ## display artist tag and then composer and performer if previous ones are not
316 | ## available.
317 | ##
318 | #
319 | #song_columns_list_format = (20)[]{a} (6f)[green]{NE} (50)[white]{t|f:Title} (20)[cyan]{b} (7f)[magenta]{l}
320 | #
321 | ##### various settings #####
322 | #
323 | ##
324 | ## Note: Custom command that will be executed each time song changes. Useful for
325 | ## notifications etc.
326 | ##
327 | #execute_on_song_change = ""
328 | #
329 | ##
330 | ## Note: Custom command that will be executed each time player state
331 | ## changes. The environment variable MPD_PLAYER_STATE is set to the current
332 | ## state (either unknown, play, pause, or stop) for its duration.
333 | ##
334 | #
335 | #execute_on_player_state_change = ""
336 | #
337 | #playlist_show_mpd_host = no
338 | #
339 | #playlist_show_remaining_time = no
340 | #
341 | #playlist_shorten_total_times = no
342 | #
343 | #playlist_separate_albums = no
344 | #
345 | ##
346 | ## Note: Possible display modes: classic, columns.
347 | ##
348 | #playlist_display_mode = columns
349 | #
350 | #browser_display_mode = classic
351 | #
352 | #search_engine_display_mode = classic
353 | #
354 | #playlist_editor_display_mode = classic
355 | #
356 | #discard_colors_if_item_is_selected = yes
357 | #
358 | #show_duplicate_tags = true
359 | #
360 | #incremental_seeking = yes
361 | #
362 | #seek_time = 1
363 | #
364 | #volume_change_step = 2
365 | #
366 | #autocenter_mode = no
367 | #
368 | #centered_cursor = no
369 | #
370 | ##
371 | ## Note: You can specify third character which will be used to build 'empty'
372 | ## part of progressbar.
373 | ##
374 | #progressbar_look = =>
375 | #
376 | ## Available values: database, playlist.
377 | ##
378 | #default_place_to_search_in = database
379 | #
380 | ## Available values: classic, alternative.
381 | ##
382 | #user_interface = classic
383 | #
384 | #data_fetching_delay = yes
385 | #
386 | ## Available values: artist, album_artist, date, genre, composer, performer.
387 | ##
388 | #media_library_primary_tag = artist
389 | #
390 | #media_library_albums_split_by_date = yes
391 | #
392 | ## Available values: wrapped, normal.
393 | ##
394 | #default_find_mode = wrapped
395 | #
396 | #default_tag_editor_pattern = %n - %t
397 | #
398 | #header_visibility = yes
399 | #
400 | #statusbar_visibility = yes
401 | #
402 | #titles_visibility = yes
403 | #
404 | #header_text_scrolling = yes
405 | #
406 | #cyclic_scrolling = no
407 | #
408 | #lines_scrolled = 2
409 | #
410 | #lyrics_fetchers = lyricwiki, azlyrics, genius, sing365, lyricsmania, metrolyrics, justsomelyrics, jahlyrics, plyrics, tekstowo, internet
411 | #
412 | #follow_now_playing_lyrics = no
413 | #
414 | #fetch_lyrics_for_current_song_in_background = no
415 | #
416 | #store_lyrics_in_song_dir = no
417 | #
418 | #generate_win32_compatible_filenames = yes
419 | #
420 | #allow_for_physical_item_deletion = no
421 | #
422 | ##
423 | ## Note: If you set this variable, ncmpcpp will try to get info from last.fm in
424 | ## language you set and if it fails, it will fall back to english. Otherwise it
425 | ## will use english the first time.
426 | ##
427 | ## Note: Language has to be expressed as an ISO 639 alpha-2 code.
428 | ##
429 | #lastfm_preferred_language = en
430 | #
431 | #space_add_mode = add_remove
432 | #
433 | #show_hidden_files_in_local_browser = no
434 | #
435 | ##
436 | ## How shall screen switcher work?
437 | ##
438 | ## - "previous" - switch between the current and previous screen.
439 | ## - "screen1,...,screenN" - switch between given sequence of screens.
440 | ##
441 | ## Screens available for use: help, playlist, browser, search_engine,
442 | ## media_library, playlist_editor, tag_editor, outputs, visualizer, clock,
443 | ## lyrics, last_fm.
444 | ##
445 | #screen_switcher_mode = playlist, browser
446 | #
447 | ##
448 | ## Note: You can define startup screen by choosing screen from the list above.
449 | ##
450 | #startup_screen = playlist
451 | #
452 | ##
453 | ## Note: You can define startup slave screen by choosing screen from the list
454 | ## above or an empty value for no slave screen.
455 | ##
456 | #startup_slave_screen = ""
457 | #
458 | #startup_slave_screen_focus = no
459 | #
460 | ##
461 | ## Default width of locked screen (in %). Acceptable values are from 20 to 80.
462 | ##
463 | #
464 | #locked_screen_width_part = 50
465 | #
466 | #ask_for_locked_screen_width_part = yes
467 | #
468 | #jump_to_now_playing_song_at_start = yes
469 | #
470 | #ask_before_clearing_playlists = yes
471 | #
472 | #clock_display_seconds = no
473 | #
474 | #display_volume_level = yes
475 | #
476 | #display_bitrate = no
477 | #
478 | #display_remaining_time = no
479 | #
480 | ## Available values: none, basic, extended, perl.
481 | ##
482 | #regular_expressions = perl
483 | #
484 | ##
485 | ## Note: if below is enabled, ncmpcpp will ignore leading "The" word while
486 | ## sorting items in browser, tags in media library, etc.
487 | ##
488 | #ignore_leading_the = no
489 | #
490 | ##
491 | ## Note: if below is enabled, ncmpcpp will ignore diacritics while searching and
492 | ## filtering lists. This takes an effect only if boost was compiled with ICU
493 | ## support.
494 | ##
495 | #ignore_diacritics = no
496 | #
497 | #block_search_constraints_change_if_items_found = yes
498 | #
499 | #mouse_support = yes
500 | #
501 | #mouse_list_scroll_whole_page = yes
502 | #
503 | #empty_tag_marker =
504 | #
505 | #tags_separator = " | "
506 | #
507 | #tag_editor_extended_numeration = no
508 | #
509 | #media_library_sort_by_mtime = no
510 | #
511 | #enable_window_title = yes
512 | #
513 | ##
514 | ## Note: You can choose default search mode for search engine. Available modes
515 | ## are:
516 | ##
517 | ## - 1 - use mpd built-in searching (no regexes, pattern matching)
518 | ##
519 | ## - 2 - use ncmpcpp searching (pattern matching with support for regexes, but
520 | ## if your mpd is on a remote machine, downloading big database to process
521 | ## it can take a while
522 | ##
523 | ## - 3 - match only exact values (this mode uses mpd function for searching in
524 | ## database and local one for searching in current playlist)
525 | ##
526 | #
527 | #search_engine_default_search_mode = 1
528 | #
529 | #external_editor = nano
530 | #
531 | ## Note: set to yes if external editor is a console application.
532 | ##
533 | #use_console_editor = yes
534 | #
535 | ##### colors definitions #####
536 | ##
537 | ## It is possible to set a background color by setting a color value
538 | ## "_", e.g. red_black will set foregound color to red
539 | ## and background color to black.
540 | ##
541 | ## In addition, for terminals that support 256 colors it is possible to set one
542 | ## of them by using a number in range [1, 256] instead of color name,
543 | ## e.g. numerical value corresponding to red_black is 2_1. To find out if the
544 | ## terminal supports 256 colors, run ncmpcpp and check out the bottom of the
545 | ## help screen for list of available colors and their numerical values.
546 | ##
547 | ## What is more, there are two special values for the background color:
548 | ## "transparent" and "current". The first one explicitly sets the background to
549 | ## be transparent, while the second one allows you to preserve current
550 | ## background color and change only the foreground one. It's used implicitly
551 | ## when background color is not specified.
552 | ##
553 | ## Moreover, it is possible to attach format information to selected color
554 | ## variables by appending to their end a colon followed by one or more format
555 | ## flags, e.g. black:b or red:ur. The following variables support this syntax:
556 | ## visualizer_color, color1, color2, empty_tag_color, volume_color,
557 | ## state_line_color, state_flags_color, progressbar_color,
558 | ## progressbar_elapsed_color, player_state_color, statusbar_time_color,
559 | ## alternative_ui_separator_color.
560 | ##
561 | ## Note: due to technical limitations of older ncurses version, if 256 colors
562 | ## are used there is a possibility that you'll be able to use only colors with
563 | ## transparent background.
564 | #
565 | #colors_enabled = yes
566 | #
567 | #empty_tag_color = cyan
568 | #
569 | #header_window_color = default
570 | #
571 | #volume_color = default
572 | #
573 | #state_line_color = default
574 | #
575 | #state_flags_color = default:b
576 | #
577 | #main_window_color = yellow
578 | #
579 | #color1 = white
580 | #
581 | #color2 = green
582 | #
583 | #main_window_highlight_color = yellow
584 | #
585 | #progressbar_color = black:b
586 | #
587 | #progressbar_elapsed_color = green:b
588 | #
589 | #statusbar_color = default
590 | #
591 | #statusbar_time_color = default:b
592 | #
593 | #player_state_color = default:b
594 | #
595 | #alternative_ui_separator_color = black:b
596 | #
597 | #active_column_color = red
598 | #
599 | #window_border_color = green
600 | #
601 | #active_window_border = red
602 | #
603 |
--------------------------------------------------------------------------------