From ea211500227aa58f5e495777743c5d391cbc3110 Mon Sep 17 00:00:00 2001 From: Yigit Sever Date: Sun, 17 Mar 2019 23:09:49 +0300 Subject: Initial commit --- .config/betterlockscreen/betterlockscreenrc | 15 + .config/compton/compton.conf | 86 ++ .config/conky/conky.conf | 101 ++ .config/conky/scripts/conky_lua_scripts.lua | 3 + .config/dunst/dunstrc | 59 + .config/i3/config | 202 +++ .config/kitty/kitty.conf | 265 ++++ .config/mpv/mpv.conf | 141 ++ .config/nvim/init.vim | 443 +++++++ .config/polybar/config | 256 ++++ .config/polybar/focus | 42 + .config/polybar/launch.sh | 12 + .config/ranger/commands.py | 62 + .config/ranger/commands_full.py | 1836 +++++++++++++++++++++++++++ .config/ranger/ranger_new/commands.py | 62 + .config/ranger/ranger_new/commands_full.py | 1836 +++++++++++++++++++++++++++ .config/ranger/ranger_new/rc.conf | 725 +++++++++++ .config/ranger/ranger_new/rifle.conf | 256 ++++ .config/ranger/ranger_new/scope.sh | 216 ++++ .config/ranger/rc.conf | 725 +++++++++++ .config/ranger/rifle.conf | 256 ++++ .config/ranger/scope.sh | 216 ++++ .config/redshift.conf | 13 + .config/redshift/hooks/notify.sh | 6 + .config/rofi/config | 11 + .config/rtv/rtv.cfg | 162 +++ .config/zathura/zathurarc | 6 + .gitconfig | 33 + .ledgerrc | 1 + .ncmpcpp/bindings | 543 ++++++++ .ncmpcpp/config | 543 ++++++++ .newsboat/config | 5 + .newsboat/urls | 19 + .tmux.conf | 84 ++ .ycm_extra_conf.py | 184 +++ .zshrc | 169 +++ bin/bukuadd_c | 29 + bin/type.sh | 13 + 38 files changed, 9636 insertions(+) create mode 100644 .config/betterlockscreen/betterlockscreenrc create mode 100644 .config/compton/compton.conf create mode 100644 .config/conky/conky.conf create mode 100644 .config/conky/scripts/conky_lua_scripts.lua create mode 100755 .config/dunst/dunstrc create mode 100644 .config/i3/config create mode 100644 .config/kitty/kitty.conf create mode 100644 .config/mpv/mpv.conf create mode 100755 .config/nvim/init.vim create mode 100644 .config/polybar/config create mode 100755 .config/polybar/focus create mode 100755 .config/polybar/launch.sh create mode 100644 .config/ranger/commands.py create mode 100644 .config/ranger/commands_full.py create mode 100644 .config/ranger/ranger_new/commands.py create mode 100644 .config/ranger/ranger_new/commands_full.py create mode 100644 .config/ranger/ranger_new/rc.conf create mode 100644 .config/ranger/ranger_new/rifle.conf create mode 100755 .config/ranger/ranger_new/scope.sh create mode 100644 .config/ranger/rc.conf create mode 100644 .config/ranger/rifle.conf create mode 100755 .config/ranger/scope.sh create mode 100644 .config/redshift.conf create mode 100755 .config/redshift/hooks/notify.sh create mode 100644 .config/rofi/config create mode 100644 .config/rtv/rtv.cfg create mode 100644 .config/zathura/zathurarc create mode 100644 .gitconfig create mode 100644 .ledgerrc create mode 100644 .ncmpcpp/bindings create mode 100644 .ncmpcpp/config create mode 100644 .newsboat/config create mode 100644 .newsboat/urls create mode 100644 .tmux.conf create mode 100644 .ycm_extra_conf.py create mode 100644 .zshrc create mode 100755 bin/bukuadd_c create mode 100755 bin/type.sh diff --git a/.config/betterlockscreen/betterlockscreenrc b/.config/betterlockscreen/betterlockscreenrc new file mode 100644 index 0000000..2b71c1a --- /dev/null +++ b/.config/betterlockscreen/betterlockscreenrc @@ -0,0 +1,15 @@ +# configuration file for betterlockscreen + +insidecolor=00000000 +ringcolor=ffffffff +keyhlcolor=d23c3dff +bshlcolor=d23c3dff +separatorcolor=00000000 +insidevercolor=00000000 +insidewrongcolor=d23c3dff +ringvercolor=ffffffff +ringwrongcolor=ffffffff +verifcolor=ffffffff +timecolor=ffffffff +datecolor=ffffffff +loginbox=00000066 diff --git a/.config/compton/compton.conf b/.config/compton/compton.conf new file mode 100644 index 0000000..223411d --- /dev/null +++ b/.config/compton/compton.conf @@ -0,0 +1,86 @@ +# Shadow +shadow = true; +shadow-radius = 0; +shadow-offset-x = 10; +shadow-offset-y = 5; +log-level = "warn"; +# log-file = "/path/to/your/log/file"; +shadow-opacity = 0.8; +#shadow-red = 0.33; +#shadow-green = 0.33; +#shadow-blue = 0.33; +shadow-exclude = [ + "name = 'Notification'", + "class_g = 'Conky'", + "class_g ?= 'Notify-osd'", + "class_g = 'Cairo-clock'", + "_GTK_FRAME_EXTENTS@:c" +]; +# shadow-exclude = "n:e:Notification"; +# shadow-exclude-reg = "x10+0+0"; +# xinerama-shadow-crop = true; + +# Opacity +inactive-opacity = 0.95; +# active-opacity = 0.8; +frame-opacity = 0.7; +inactive-opacity-override = false; +inactive-dim = 0.0; +# inactive-dim-fixed = true; +#blur-background = true; +# blur-background-frame = true; +blur-kern = "3x3box"; +# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"; +# blur-background-fixed = true; +blur-background-exclude = [ + "window_type = 'dock'", + "window_type = 'desktop'", + "_GTK_FRAME_EXTENTS@:c" +]; +# opacity-rule = [ "80:class_g = 'URxvt'" ]; + +# Fading +fading = true; +# fade-delta = 30; +fade-in-step = 0.03; +fade-out-step = 0.03; +# no-fading-openclose = true; +# no-fading-destroyed-argb = true; +fade-exclude = [ ]; + +# Other +backend = "xrender"; +mark-wmwin-focused = true; +mark-ovredir-focused = true; +# use-ewmh-active-win = true; +detect-rounded-corners = true; +detect-client-opacity = true; +refresh-rate = 0; +vsync = "none"; +# sw-opti = true; +# unredir-if-possible = true; +# unredir-if-possible-delay = 5000; +# unredir-if-possible-exclude = [ ]; +focus-exclude = [ "class_g = 'Cairo-clock'" ]; +detect-transient = true; +detect-client-leader = true; +invert-color-include = [ ]; +# resize-damage = 1; + +# GLX backend +# glx-no-stencil = true; +# glx-no-rebind-pixmap = true; +glx-swap-method = "undefined"; +# glx-use-gpushader4 = true; +# xrender-sync = true; +# xrender-sync-fence = true; + +# Window type settings +wintypes: +{ + tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; }; + dock = { shadow = false; } + dnd = { shadow = false; } + popup_menu = { fade = true; shadow = true; opacity = 1; focus = true; full-shadow = true; } + dropdown_menu = { opacity = 1; } +}; diff --git a/.config/conky/conky.conf b/.config/conky/conky.conf new file mode 100644 index 0000000..e968e47 --- /dev/null +++ b/.config/conky/conky.conf @@ -0,0 +1,101 @@ +conky.config = { + alignment = 'top_right', + background = true, + + draw_borders = false, + draw_graph_borders = true, + border_width = 1, + border_outer_margin = 5, + stippled_borders = 6, + + cpu_avg_samples = 2, + default_color = 'white', + default_outline_color = '#555', + default_shade_color = 'black', + draw_outline = false, + draw_shades = true, + use_xft = true, + font = 'FuraCode Nerd Font Mono:size=10', + + gap_x = 35, + gap_y = 35, + + minimum_height = 5, + minimum_width = 5, + net_avg_samples = 2, + no_buffers = true, + out_to_console = false, + out_to_stderr = false, + extra_newline = false, + own_window = true, + own_window_class = 'Conky', + own_window_type = 'override', + own_window_transparent = true, + own_window_hints = 'below,undecorated,skip_taskbar,skip_pager,sticky', + short_units = true, + update_interval = 1.0, + uppercase = false, + use_spacer = 'left', + pad_percents = 2, + show_graph_scale = false, + show_graph_range = false, + double_buffer = true, + + lua_load = '~/.config/conky/scripts/conky_lua_scripts.lua', + + color0 = '#e74c3c', + color1 = '#bdc3c7', + color3 = '#7a3900', + color4 = '#ff8a00', + color5 = '#ffe3a0', + color6 = '#bdc3c7', + color7 = '#ff8a00', + color8 = '#ffe3a0' +} + +conky.text = [[ +${color}${alignc}$sysname $kernel on $machine +${color}${alignc}${exec whoami} @ $nodename +${color0}$hr${color} +${color0}${alignc} +${alignc}${color}${time %d %B %A} +${voffset 1} +${color0}${offset 40}羽${alignr}${offset -30} +${color}$uptime${alignr} ${color}${time %k:%M:%S} +${voffset 1} +${color0}${alignc} +${color1}cpu ${color}${platform coretemp.0/hwmon/hwmon1 temp 1}${alignr} ${color1}mobo ${color}${acpitemp} +${voffset 1} +${color0}${offset 3}${color} +${cpubar cpu1 6,45} ${freq_g 1}GHz ${cpu cpu1}% ${alignr}${cpubar cpu2 6,45} ${freq_g 2}GHz${alignr}${cpu cpu2}% +${cpubar cpu3 6,45} ${freq_g 3}GHz ${cpu cpu3}% ${alignr}${cpubar cpu4 6,45} ${freq_g 4}GHz${alignr}${cpu cpu4}% +${cpubar cpu5 6,45} ${freq_g 5}GHz ${cpu cpu5}% ${alignr}${cpubar cpu6 6,45} ${freq_g 6}GHz${alignr}${cpu cpu6}% +${cpubar cpu7 6,45} ${freq_g 7}GHz ${cpu cpu7}% ${alignr}${cpubar cpu8 6,45} ${freq_g 8}GHz${alignr}${cpu cpu8}% +${voffset 1} +${color0}${offset 3}${color} +${color1}cpu${color} ${cpubar cpu0 6, 120}${alignr}${freq_g}GHz ${cpu cpu0}% +${color1}ram${color} ${membar 6, 120}${alignr}$mem/$memmax $memperc% +${color1}swp${color} ${swapbar 6,120}${alignr}$swap/$swapmax $swapperc% +${voffset 1} +${color0}${offset 3}${color} +${color1}/ ${color}${fs_bar 6, 130 /}${alignr}${fs_used /} /${fs_size /} ${color} +${color1}~ ${color}${FS_BAR 6, 130 /home}${alignr}${fs_used /home} /${fs_size /home} ${color} +${voffset 1} +${color0}${offset 3}ﯱ${color} +${color1}down${color} ${downspeed eno1}/s${alignr}${color1}up${color} ${upspeed eno1}/s +${color}${downspeedgraph eno1 32,150 2980b9 e74c3c}${color} ${upspeedgraph eno1 32,150 2980b9 e74c3c} +${color1}address${color} ${addr eno1}${alignr}updates ${execi 3600 checkupdates | wc -l} +${color1}inbound${color} ${tcp_portmon 1 32767 count}${color1} outbound${color} ${tcp_portmon 32768 61000 count}${alignr}${color1}all${color} ${tcp_portmon 1 65535 count} +${voffset 1} +${color0}${offset 3}${color} +${color}${alignc} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1} +${color}${alignc} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2} +${color}${alignc} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3} +${color}${alignc} ${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4} +${voffset 3} +${texeci 1800 curl -s wttr.in/ank | sed -n '3,7{s/\d27\[[0-9;]*m//g;s/^..//;s/ *$//;p}'} +${voffset 1} +${color0}$stippled_hr${color} +${voffset 1} +${execp TODAY=`date +%_d`; cal | tail -n+2 | sed -e '1 s:.*:\${color3}&\${color6}:' -e '1 s:'"$(date +%a |cut -c 1-2)"':\${color4}&\${color5}:' -e '0,/'"$TODAY"'/{s/'"$TODAY"'/\${color7}'"$TODAY"'\${color8}/}' | sed s/^/'${alignc}'/} +]] diff --git a/.config/conky/scripts/conky_lua_scripts.lua b/.config/conky/scripts/conky_lua_scripts.lua new file mode 100644 index 0000000..9751a21 --- /dev/null +++ b/.config/conky/scripts/conky_lua_scripts.lua @@ -0,0 +1,3 @@ +function conky_format( format, number ) + return string.format( format, conky_parse( number ) ) +end diff --git a/.config/dunst/dunstrc b/.config/dunst/dunstrc new file mode 100755 index 0000000..138a1d7 --- /dev/null +++ b/.config/dunst/dunstrc @@ -0,0 +1,59 @@ +[global] +monitor = 0 +follow = mouse +geometry = "248x64-32+48" +indicate_hidden = true +shrink = no +transparency = 10 +separator_height = 2 +padding = 16 +horizontal_padding = 16 +frame_width = 2 +sort = no +idle_threshold = 120 +font = Lato 10 +line_height = 4 +markup = full +format = "%s from %a\n%b" +alignment = left +show_age_threshold = 60 +word_wrap = true +ignore_newline = no +stack_duplicates = true +hide_duplicate_count = false +show_indicators = true +icon_position = left +max_icon_size = 64x64 +icon_path = "/usr/share/icons/Papirus-Dark/16x16/status/:/usr/share/icons/Papirus-Dark/16x16/devices/:/usr/share/icons/Papirus-Dark/16x16/actions/:/usr/share/icons/Papirus-Dark/16x16/places/" +sticky_history = yes +dmenu = "/usr/bin/rofi" +history_length = 20 +browser = /usr/bin/firefox +title = Dunst +class = Dunst + +[shortcuts] +close = ctrl+space +close_all = ctrl+shift+space +history = ctrl+grave +context = ctrl+shift+period + +[urgency_low] +background = "#2f343f" +foreground = "#d8dee8" +timeout = 6 + +[urgency_normal] +background = "#2f343f" +foreground = "#d8dee8" +timeout = 6 + +[urgency_critical] +background = "#2f343f" +foreground = "#d8dee8" +frame_color = "#bf616a" +timeout = 0 + +[Spotify] +appname = Spotify +format = "Now Playing\n%s\n%b" diff --git a/.config/i3/config b/.config/i3/config new file mode 100644 index 0000000..043eff8 --- /dev/null +++ b/.config/i3/config @@ -0,0 +1,202 @@ +# i3 config file (v4) +# Please see https://i3wm.org/docs/userguide.html for a complete reference! + +# set modifiers +set $mod Mod4 +set $alt Mod1 + +#autostart +exec --no-startup-id xsettingsd & +exec --no-startup-id compton -b & +exec --no-startup-id dropbox & +exec --no-startup-id copyq & +exec --no-startup-id redshift-gtk & +exec --no-startup-id nm-applet & +exec --no-startup-id xrandr --output DVI-D-0 --off --output HDMI-0 --mode 1920x1080 --pos 0x0 --rotate left --output DVI-I-1 --primary --mode 1920x1080 --pos 1132x608 --rotate normal --output DVI-I-0 --off --output DP-1 --off --output DP-0 --off & + +#launch polybar +exec--no-startup-id $HOME/.config/polybar/launch.sh + +# swap caps lock and escape, set keyboard layout +exec --no-startup-id setxkbmap -model pc105 -layout us,tr -option grp:alt_shift_toggle,caps:swapescape + +#launch conky windows +exec --no-startup-id conky --daemonize -c ~/.config/conky/conky.conf +exec --no-startup-id conky --daemonize -c ~/.config/conky/task.conf + +# set the wallpaper last (hopefully after xrandr) +exec --no-startup-id hsetroot -fill ~/Dropbox/Wallpapers/yousef-espanioly-541259-unsplash.jpg + +# lock screen +exec --no-startup-id xidlehook --not-when-fullscreen --not-when-audio --timer normal 300 'i3lock-fancy -f Lato-Light -t "welcome back" -- scrot -z' '' + +gaps inner 0 +gaps outer 0 + +# Font for window titles +font pango:Lato 11 + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $alt + +# bindings + +# shoo the mouse +bindsym $mod+o exec --no-startup-id xdotool mousemove 1087 1101 + +# i switched back to firefox can you tell +bindsym Ctrl+q exec --no-startup-id true + +# bookmark from clipboard +bindsym $mod+u exec --no-startup-id ~/bin/bukuadd_c + +# swap caps lock and escape, set keyboard layout +bindsym $mod+p exec --no-startup-id "setxkbmap -model pc105 -layout us,tr -option grp:alt_shift_toggle,caps:swapescape" + +# use flameshot with print screen +bindsym Print exec flameshot gui + +# media keys +bindsym $mod+m exec "pactl set-sink-mute @DEFAULT_SINK@ toggle" +bindsym $mod+Up exec "pactl set-sink-volume @DEFAULT_SINK@ +5%" +bindsym $mod+Down exec "pactl set-sink-volume @DEFAULT_SINK@ -5%" +bindsym $mod+q exec mpc toggle +#bindsym XF86AudioStop exec mpc stop +bindsym $mod+Left exec /home/yigit/bin/mpvPrev +bindsym $mod+Right exec mpc next + +# start a terminal +bindsym $mod+Return exec kitty + +# kill focused window +bindsym $mod+Shift+q kill + +# start rofi (a program launcher) +bindsym $mod+d exec rofi -show combi + +# change focus +bindsym $mod+h focus left +bindsym $mod+j focus down +bindsym $mod+k focus up +bindsym $mod+l focus right + +# move focused window +bindsym $mod+Shift+h move left +bindsym $mod+Shift+j move down +bindsym $mod+Shift+k move up +bindsym $mod+Shift+l move right + +# split in horizontal orientation +bindsym $mod+b split h + +# split in vertical orientation +bindsym $mod+v split v + +# enter fullscreen mode for the focused container +bindsym $mod+f fullscreen toggle + +# change container layout (stacked, tabbed, toggle split) +bindsym $mod+s layout stacking +bindsym $mod+w layout tabbed +bindsym $mod+e layout toggle split + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# focus the parent container +bindsym $mod+a focus parent + +# Define names for default workspaces for which we configure key bindings later on. +# We use variables to avoid repeating the names in multiple places. +set $ws1 "1" +set $ws2 "2" +set $ws3 "3" +set $ws4 "4" +set $ws5 "5" +set $ws6 "6" +set $ws7 "7" +set $ws8 "8" +set $ws9 "9" +set $ws10 "10" + +# switch to workspace +bindsym $mod+1 workspace $ws1 +bindsym $mod+2 workspace $ws2 +bindsym $mod+3 workspace $ws3 +bindsym $mod+4 workspace $ws4 +bindsym $mod+5 workspace $ws5 +bindsym $mod+6 workspace $ws6 +bindsym $mod+7 workspace $ws7 +bindsym $mod+8 workspace $ws8 +bindsym $mod+9 workspace $ws9 +bindsym $mod+0 workspace $ws10 + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace $ws1 +bindsym $mod+Shift+2 move container to workspace $ws2 +bindsym $mod+Shift+3 move container to workspace $ws3 +bindsym $mod+Shift+4 move container to workspace $ws4 +bindsym $mod+Shift+5 move container to workspace $ws5 +bindsym $mod+Shift+6 move container to workspace $ws6 +bindsym $mod+Shift+7 move container to workspace $ws7 +bindsym $mod+Shift+8 move container to workspace $ws8 +bindsym $mod+Shift+9 move container to workspace $ws9 +bindsym $mod+Shift+0 move container to workspace $ws10 + +# reload the configuration file +bindsym $mod+Shift+c reload +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r restart + +# resize window (you can also use the mouse for that) +mode "resize" { + # These bindings trigger as soon as you enter the resize mode + + # Pressing left will shrink the window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s height. + bindsym h resize shrink width 10 px or 10 ppt + bindsym j resize grow height 10 px or 10 ppt + bindsym k resize shrink height 10 px or 10 ppt + bindsym l resize grow width 10 px or 10 ppt + + # back to normal: Enter or Escape or $mod+r + bindsym Return mode "default" + bindsym Caps_Lock mode "default" + bindsym $mod+r mode "default" +} + +# session +mode "(L)ock, (S)ignout, (R)eboot, (P)oweroff" { + bindsym $mod+l exec i3lock-fancy -f Lato-Light -t 'welcome back' -- scrot -z + bindsym $mod+r exec systemctl reboot + bindsym $mod+p exec systemctl poweroff + bindsym $mod+s exit + bindsym Escape mode "default" +} +bindsym $mod+Shift+e mode "(L)ock, (S)ignout, (R)eboot, (P)oweroff" + +bindsym $mod+r mode "resize" + +for_window [class=".*"] border pixel 4 + +assign [class="^Steam$"] 9 +assign [class="^Thunderbird$"] 8 + +# class border backgr. text indicator child_border +client.focused #458588 #285577 #ffffff #458588 #285577 +client.focused_inactive #b16286 #5f676a #ffffff #484e50 #5f676a +client.unfocused #927374 #222222 #888888 #292d2e #222222 +client.urgent #2f343a #900000 #ffffff #900000 #900000 +client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c + +client.background #ffffff + +# config +hide_edge_borders smart +workspace_auto_back_and_forth yes +focus_follows_mouse no diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf new file mode 100644 index 0000000..8fb681f --- /dev/null +++ b/.config/kitty/kitty.conf @@ -0,0 +1,265 @@ +# vim:fileencoding=utf-8:ft=conf:foldmethod=marker + +#: Fonts {{{ --> Ligature Support + +font_family Fira Code +bold_font Fira Code Bold +italic_font Fira Code Light +bold_italic_font Fira Code Retina + +font_size 10.0 + +adjust_line_height 0 +adjust_column_width 0 + +box_drawing_scale 0.001, 1, 1.5, 2 + +#: }}} + +#: Cursor customization {{{ + +cursor_shape block +cursor #FDE311 +cursor_text_color background + +cursor_blink_interval 0 + +#: }}} + +#: Scrollback {{{ + +scrollback_lines 2000 +wheel_scroll_multiplier 5.0 + +#: }}} + +#: Mouse {{{ + +url_color #2aa889 +url_style curly +open_url_modifiers ctrl+shift +open_url_with firefox + +#: }}} + +#: Terminal bell {{{ + +enable_audio_bell no +visual_bell_duration 0.0 + +#: }}} + +#: Window layout {{{ + +remember_window_size no +initial_window_width 80c +initial_window_height 24c + +window_padding_width 5.0 + +#: }}} + +#: Tab bar {{{ + +tab_bar_edge bottom +tab_bar_style separator +tab_separator " ┇" + +active_tab_foreground #d5c4a1 +active_tab_background #504945 +active_tab_font_style italic +inactive_tab_foreground #a89984 +inactive_tab_background #7c6f64 +inactive_tab_font_style normal + +#: }}} + +#: Color scheme {{{ + +foreground #ebdbb2 +background #282828 + +#: The foreground and background for text selected with the mouse +selection_foreground #fbf1c7 +selection_background #d65d0e + +#: black +color0 #282828 +color8 #928374 + +#: red +color1 #cc241d +color9 #fb4934 + +#: green +color2 #97971a +color10 #b8bb26 + +#: yellow +color3 #d79921 +color11 #fabd2f + +#: blue +color4 #458588 +color12 #83a598 + +#: purple +color5 #b16286 +color13 #d3869b + +#: cyan +color6 #689d6a +color14 #8ec07c + +#: white +color7 #a89984 +color15 #ebdbb2 + +#: }}} + +#: Advanced {{{ +editor nvim +#: }}} + +#: Keyboard shortcuts {{{ + +#: Finally, you can use raw system key codes to map keys. To see the +#: system key code for a key, start kitty with the kitty --debug- +#: keyboard option. Then kitty will output some debug text for every +#: key event. In that text look for ``native_code`` the value of that +#: becomes the key name in the shortcut. For example: + +#: .. code-block:: none + +#: on_key_input: glfw key: 65 native_code: 0x61 action: PRESS mods: 0x0 text: 'a' + +#: Here, the key name for the A key is 0x61 and you can use it with:: + +#: map ctrl+0x61 something + +#: to map ctrl+a to something. + +#: You can use the special action no_op to unmap a keyboard shortcut +#: that is assigned in the default configuration. + +#: You can combine multiple actions to be triggered by a single +#: shortcut, using the syntax below:: + +#: map key combine action1 action2 action3 ... + +#: For example:: + +#: map kitty_mod+e combine : new_window : next_layout + +#: this will create a new window and switch to the next available +#: layout + +#: You can use multi-key shortcuts using the syntax shown below:: + +#: map key1>key2>key3 action + +#: For example:: + +#: map ctrl+f>2 set_font_size 20 + +kitty_mod ctrl+shift + +#: The value of kitty_mod is used as the modifier for all default +#: shortcuts, you can change it in your kitty.conf to change the +#: modifiers for all the default shortcuts. + +# clear_all_shortcuts no + +#: You can have kitty remove all shortcut definition seen up to this +#: point. Useful, for instance, to remove the default shortcuts. + +#: Clipboard {{{ + +map kitty_mod+c copy_to_clipboard +map kitty_mod+v paste_from_clipboard +map kitty_mod+s paste_from_selection +map shift+insert paste_from_selection +map kitty_mod+o pass_selection_to_program + +#: }}} + +#: Scrolling {{{ + +map kitty_mod+up scroll_line_up +map kitty_mod+k scroll_line_up +map kitty_mod+down scroll_line_down +map kitty_mod+j scroll_line_down +map kitty_mod+page_up scroll_page_up +map kitty_mod+page_down scroll_page_down +map kitty_mod+home scroll_home +map kitty_mod+end scroll_end +map kitty_mod+h show_scrollback + +#: }}} + +#: Window management {{{ + +# map kitty_mod+enter new_window +# map kitty_mod+n new_os_window +# map kitty_mod+w close_window +# map kitty_mod+] next_window +# map kitty_mod+[ previous_window +# map kitty_mod+f move_window_forward +# map kitty_mod+b move_window_backward +# map kitty_mod+` move_window_to_top +# map kitty_mod+r start_resizing_window +# map kitty_mod+1 first_window +# map kitty_mod+2 second_window +# map kitty_mod+3 third_window +# map kitty_mod+4 fourth_window +# map kitty_mod+5 fifth_window +# map kitty_mod+6 sixth_window +# map kitty_mod+7 seventh_window +# map kitty_mod+8 eighth_window +# map kitty_mod+9 ninth_window +# map kitty_mod+0 tenth_window +#: }}} + +#: Tab management {{{ + +# map kitty_mod+right next_tab +# map kitty_mod+left previous_tab +# map kitty_mod+t new_tab +# map kitty_mod+q close_tab +# map kitty_mod+. move_tab_forward +# map kitty_mod+, move_tab_backward +# map kitty_mod+alt+t set_tab_title + +#: }}} + +#: Layout management {{{ + +# map kitty_mod+l next_layout +# map ctrl+alt+p last_used_layout + +#: }}} + +#: Font sizes {{{ + +# map kitty_mod+equal change_font_size all +2.0 +# map kitty_mod+minus change_font_size all -2.0 +# map kitty_mod+backspace change_font_size all 0 + +#: }}} + +#: Miscellaneous {{{ + +# map kitty_mod+f11 toggle_fullscreen +# map kitty_mod+u kitten unicode_input +# map kitty_mod+f2 edit_config_file +# map kitty_mod+escape kitty_shell window + +# map kitty_mod+a>m set_background_opacity +0.1 +# map kitty_mod+a>l set_background_opacity -0.1 +# map kitty_mod+a>1 set_background_opacity 1 +# map kitty_mod+a>d set_background_opacity default +# map kitty_mod+delete clear_terminal reset active + +#: }}} + +# }}} diff --git a/.config/mpv/mpv.conf b/.config/mpv/mpv.conf new file mode 100644 index 0000000..bea2261 --- /dev/null +++ b/.config/mpv/mpv.conf @@ -0,0 +1,141 @@ +# +# Example mpv configuration file +# +# Warning: +# +# The commented example options usually do _not_ set the default values. Call +# mpv with --list-options to see the default values for most options. There is +# no builtin or example mpv.conf with all the defaults. +# +# +# Configuration files are read system-wide from /usr/local/etc/mpv.conf +# and per-user from ~/.config/mpv/mpv.conf, where per-user settings override +# system-wide settings, all of which are overridden by the command line. +# +# Configuration file settings and the command line options use the same +# underlying mechanisms. Most options can be put into the configuration file +# by dropping the preceding '--'. See the man page for a complete list of +# options. +# +# Lines starting with '#' are comments and are ignored. +# +# See the CONFIGURATION FILES section in the man page +# for a detailed description of the syntax. +# +# Profiles should be placed at the bottom of the configuration file to ensure +# that settings wanted as defaults are not restricted to specific profiles. + +term-playing-msg='Title: ${media-title}' +term-status-msg='${time-pos} / ${duration}${?percent-pos: (${percent-pos}%)}${?frame-drop-count:${!frame-drop-count==0: Dropped: ${frame-drop-count}}}\n${?chapter:Chapter: ${chapter}}' + +################## +# video settings # +################## + +# Start in fullscreen mode by default. +#fs=yes + +# force starting with centered window +#geometry=50%:50% + +# don't allow a new window to have a size larger than 90% of the screen size +#autofit-larger=90%x90% + +# Do not close the window on exit. +#keep-open=yes + +# Do not wait with showing the video window until it has loaded. (This will +# resize the window once video is loaded. Also always shows a window with +# audio.) +#force-window=immediate + +# Disable the On Screen Controller (OSC). +#osc=no + +# Keep the player window on top of all other windows. +#ontop=yes + +# Specify high quality video rendering preset (for --vo=gpu only) +# Can cause performance problems with some drivers and GPUs. +#profile=gpu-hq + +# Force video to lock on the display's refresh rate, and change video and audio +# speed to some degree to ensure synchronous playback - can cause problems +# with some drivers and desktop environments. +#video-sync=display-resample + +# Enable hardware decoding if available. Often, this does not work with all +# video outputs, but should work well with default settings on most systems. +# If performance or energy usage is an issue, forcing the vdpau or vaapi VOs +# may or may not help. +#hwdec=auto + +################## +# audio settings # +################## + +# Specify default audio device. You can list devices with: --audio-device=help +# The option takes the device string (the stuff between the '...'). +#audio-device=alsa/default + +# Do not filter audio to keep pitch when changing playback speed. +#audio-pitch-correction=no + +# Output 5.1 audio natively, and upmix/downmix audio with a different format. +#audio-channels=5.1 +# Disable any automatic remix, _if_ the audio output accepts the audio format. +# of the currently played file. See caveats mentioned in the manpage. +# (The default is "auto-safe", see manpage.) +#audio-channels=auto + +################## +# other settings # +################## + +# Pretend to be a web browser. Might fix playback with some streaming sites, +# but also will break with shoutcast streams. +#user-agent="Mozilla/5.0" + +# cache settings +# +# Use 150MB input cache by default. The cache is enabled for network streams only. +#cache-default=153600 +# +# Use 150MB input cache for everything, even local files. +#cache=153600 +# +# Disable the behavior that the player will pause if the cache goes below a +# certain fill size. +#cache-pause=no +# +# Read ahead about 5 seconds of audio and video packets. +#demuxer-readahead-secs=5.0 +# +# Raise readahead from demuxer-readahead-secs to this value if a cache is active. +#cache-secs=50.0 + +# Display English subtitles if available. +#slang=en + +# Play Finnish audio if available, fall back to English otherwise. +#alang=fi,en + +# Change subtitle encoding. For Arabic subtitles use 'cp1256'. +# If the file seems to be valid UTF-8, prefer UTF-8. +# (You can add '+' in front of the codepage to force it.) +#sub-codepage=cp1256 + +# You can also include other configuration files. +#include=/path/to/the/file/you/want/to/include + +############ +# Profiles # +############ + +# The options declared as part of profiles override global default settings, +# but only take effect when the profile is active. + +# The following profile can be enabled on the command line with: --profile=eye-cancer + +#[eye-cancer] +#sharpen=5 diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim new file mode 100755 index 0000000..af2cedc --- /dev/null +++ b/.config/nvim/init.vim @@ -0,0 +1,443 @@ +"{{{ + +call plug#begin('~/.local/share/nvim/plugged') + +"A code-completion engine for Vim +Plug 'Valloric/YouCompleteMe' +"syntax checking +Plug 'w0rp/ale' +"manages tag files +Plug 'ludovicchabant/vim-gutentags' +"language pack +"Plug 'sheerun/vim-polyglot' + +"snippet solution +Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets' +"autopair plugin +Plug 'tmsvg/pear-tree' + +" Plugin outside ~/.vim/plugged with post-update hook +Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } + +"tree explorer +Plug 'scrooloose/nerdtree' +"displays tags ordered by scope +Plug 'majutsushi/tagbar' +"status/tabline +Plug 'bling/vim-airline' + +" color theme. +Plug 'morhetz/gruvbox' + +"Personal wiki +Plug 'vimwiki/vimwiki' +"distraction-free writing +Plug 'junegunn/goyo.vim' +" latex +Plug 'lervag/vimtex' + +"visual display of indent levels +Plug 'nathanaelkane/vim-indent-guides' +"text alignment +Plug 'godlygeek/tabular' +"access cheat.sh sheets +Plug 'dbeniamine/cheat.sh-vim' +"color code highlight +Plug 'chrisbra/Colorizer' +"comment helper +Plug 'scrooloose/nerdcommenter' +"folding ledger files +Plug 'ledger/vim-ledger' +"reporen files at your last edit position +Plug 'farmergreg/vim-lastplace' +"toggle, display and navigate marks +Plug 'kshenoy/vim-signature' +"git diff in the sign column +Plug 'airblade/vim-gitgutter' + +Plug 'svermeulen/vim-cutlass' +Plug 'svermeulen/vim-subversive' +Plug 'svermeulen/vim-yoink' + +"enable repeating supported plugin maps with '.' +Plug 'tpope/vim-repeat' +"quoting/parenthesizing made simple +Plug 'tpope/vim-surround' +"pairs of handy bracket mappings +Plug 'tpope/vim-unimpaired' +"git wrapper +Plug 'tpope/vim-fugitive' +"increment dates, times & more +Plug 'tpope/vim-speeddating' +"search, substitute and abbreviate +Plug 'tpope/vim-abolish' +"helpers for unix +Plug 'tpope/vim-eunuch' +"unicode character metadata +Plug 'tpope/vim-characterize' + +"fancy start screen +Plug 'mhinz/vim-startify' +Plug 'ryanoasis/vim-devicons' " asks to be placed last, sure + +call plug#end() " required + +"}}} + +"{{{Auto Commands + +" Automatically cd into the directory that the file is in +autocmd BufEnter * silent! lcd %:p:h + +" Remove any trailing whitespace that is in the file +autocmd BufRead,BufWrite * if ! &bin | silent! %s/\s\+$//ge | endif + +" Close vim if the only window left open is NERDTree +autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif + +"}}} + +"{{{Misc Settings + +let g:ycm_global_ycm_extra_conf = '~/.ycm_extra_conf.py' + +" necesary for lots of cool vim things +set nocompatible + +" See below +" https://stackoverflow.com/a/33380495 +if !exists("g:syntax_on") + syntax enable +endif + +set grepprg=grep\ -nH\ $* " DONT KNOW WHAT THIS DOES + +" Tab stuff +set autoindent +set expandtab " Use appropriate number of spaces to insert a +set smarttab +set shiftwidth=4 +set softtabstop=4 +set tabstop=8 + +" Visual aid to deter from typing past column 110 +"set colorcolumn=110 + +" Use english for spellchecking, but don't spellcheck by default +set spell spelllang=en_us +set nospell + +" Cool tab completion stuff +set wildmenu +set wildmode=list:longest,full +set wildignore=*.o,*.obj,*.class + +set encoding=utf-8 +set scrolloff=4 " Keep n lines above/below cursor +set mouse=c +set backspace=2 " make backspace work like most other programs +set number " line numbers +set history=1000 " number of lines that are remembered +set showcmd " this shows what you are typing as a command. I love this! +set foldmethod=marker " folding stuffs +set incsearch " search as you type (before ) +set hlsearch " highlight things that we find with the search +set nohidden " when i close a tab, remove the buffer +set title " set terminal title +set showmatch " jump to the matching bracket briefly, REMOVE AFTER TESTING +set linebreak " wrap using 'breakat' character +set splitbelow " new split panes will split to below and right +set splitright + +" lower case searches ignore case, upper case searches do not +set ignorecase +set smartcase + +" This is totally awesome - remap jj to escape in insert mode. You'll never type jj anyway, so it's great! +inoremap jj +nnoremap JJJJ + +" https://stackoverflow.com/a/3445040/ +" switch case labels +set cinoptions=l1 + +" }}} + +"{{{Look and Feel + +" Color Scheme +" gruvbox_color_column works as expected IF the order is: +" set termguicolors +" colorscheme gruvbox +" ... +" set background=dark +" Investigate later + +"let $NVIM_TUI_ENABLE_TRUE_COLOR=1 +set termguicolors + +colorscheme gruvbox + +let g:gruvbox_bold=1 +let g:gruvbox_color_column='red' +let g:gruvbox_underline=1 +let g:gruvbox_contrast_dark='medium' +let g:gruvbox_contrast_light='hard' +let g:gruvbox_vert_split='aqua' + +set background=dark " Setting dark mode + +"highlight ColorColumn guibg='DarkRed' +highlight NormalNC guibg='Black' +"highlight NormalNC guifg='Cyan' + + +" }}} + +"{{{ Functions + +"{{{ Open URL in browser + +function! Browser () + let line = getline (".") + let line = matchstr (line, "http[^ ]*") + exec "!firefox ".line +endfunction + +"}}} + +"{{{Theme Rotating +"let themeindex=0 +"function! RotateColorTheme() + "let y = -1 + "while y == -1 + "let colorstring = "#gotham#" + "let x = match( colorstring, "#", g:themeindex ) + "let y = match( colorstring, "#", x + 1 ) + "let g:themeindex = x + 1 + "if y == -1 + "let g:themeindex = 0 + "else + "let themestring = strpart(colorstring, x + 1, y - x - 1) + "return ":colorscheme ".themestring + "endif + "endwhile +"endfunction +" }}} + +"}}} + +"{{{ Mappings + +" Open Url on this line with the browser \w +map w :call Browser () + +" Open the TagBar Plugin +nnoremap :TagbarToggle + +" Open NERDTree +nnoremap :NERDTreeToggle + +" Next Tab +nnoremap :tabnext + +" Previous Tab +nnoremap :tabprevious + +" New Tab +nnoremap :tabnew + +" Rotate Color Scheme +"nnoremap :execute RotateColorTheme() + +" FixIt from YCM +map :YcmCompleter FixIt + +" Edit vimrc \ev +nnoremap ev :tabnew:e ~/.config/nvim/init.vim + +" Up and down are more logical with g.. +nnoremap k gk +nnoremap j gj +inoremap gka +inoremap gja + +" quicker window movement +nnoremap j +nnoremap k +nnoremap h +nnoremap l + +" Disable highlight when is pressed +map :noh + +" Space will toggle folds! +nnoremap za + +" Search mappings: These will make it so that going to the next one in a +" search will center on the line it's found in. +map N Nzz +map n nzz + +"Insert timestamp +nnoremap "=strftime("%F %T")P +inoremap =strftime("%F %T") + +nnoremap t "=strftime("%F")P + +"}}} + +"{{{Tagbar + +let g:tagbar_autofocus = 1 +let g:tagbar_compact = 1 +let g:tagbar_sort = 0 +let g:tagbar_width = 25 + +"}}} + +"{{{ Airline + +let g:airline_powerline_fonts = 1 " fira code + +let g:airline#extensions#tabline#formatter = 'unique_tail' +let g:airline#extensions#ycm#enabled = 1 + +"}}} + +"{{{ NERDTree + +let g:NERDTreeWinSize=25 + +"}}} + +"{{{ Ale + +let g:ale_sign_error = '✗' +let g:ale_sign_warning = '⚑' + +"}}} + +"{{{ YouCompleteMe + +let g:ycm_autoclose_preview_window_after_completion = 1 +let g:ycm_always_populate_location_list = 1 +let g:ycm_error_symbol = '✗' +let g:ycm_warning_symbol = '⚑' + +map g :YcmCompleter GoToDefinition + +let g:ycm_filetype_blacklist = { + \ 'tagbar': 1, + \ 'qf': 1, + \ 'notes': 1, + \ 'markdown': 1, + \ 'unite': 1, + \ 'text': 1, + \ 'startify': 1, + \ 'vimwiki': 1, + \ 'pandoc': 1, + \ 'infolog': 1, + \ 'mail': 1 + \} + +let g:ycm_filetype_specific_completion_to_disable = { + \ 'gitcommit': 1, + \ 'vim': 1 + \} + +"}}} + +"{{{ Ledger + +let g:ledger_extra_options = '--pedantic --explicit --check-payees' +au FileType ledger noremap { ?^\d +au FileType ledger noremap } /^\d + +"}}} + +"{{{ UltiSnips/YouCompleteMe +set runtimepath+=~/.vim/my-snippets/ +let g:UltiSnipsEditSplit="vertical" +let g:UltiSnipsSnippetsDir=$HOME.'/.vim/my-snippets/UltiSnips' + +" these navigate ycm +let g:ycm_key_list_select_completion = ['', ''] +let g:ycm_key_list_previous_completion = ['', ''] + +" ctrl + l expands the snippet, c + j/k navigates placeholders +let g:UltiSnipsExpandTrigger = "" +let g:UltiSnipsJumpForwardTrigger = "" +let g:UltiSnipsJumpBackwardTrigger = "" +let g:UltiSnipsListSnippets = "" +"}}} + +"{{{ vim-startify + +function! StartifyEntryFormat() + return 'WebDevIconsGetFileTypeSymbol(absolute_path) ." ". entry_path' +endfunction + +let entry_format = "' ['. index .']'. repeat(' ', (3 - strlen(index)))" + +if exists('*WebDevIconsGetFileTypeSymbol') " support for vim-devicons + let entry_format .= ". WebDevIconsGetFileTypeSymbol(entry_path) .' '. entry_path" +else + let entry_format .= '. entry_path' +endif + + + +let g:ascii = [ + \' | ', + \'\ \ \ / -_) | _| _ \ ` \ -_)', + \' \_/\_/\___|_|\__|\___/_|_|_|\___|', + \ '', + \] + +let g:startify_custom_header = + \ 'map(g:ascii + startify#fortune#boxed(), "\" \".v:val")' + +"}}} + +"{{{ vimwiki +let g:vimwiki_list = [{'path': '/home/yigit/Dropbox/personal_wiki', + \ 'path_html': '~/Dropbox/personal_wiki_html', + \ 'css_name': 'tufte.css', + \ 'auto_export': 1}] +let g:vimwiki_global_ext = 0 +map b VimwikiToggleListItem +"}}} + +"{{{ yanks/registers and clips + +set clipboard=unnamed,unnamedplus + +" s for substitute +nmap s (SubversiveSubstitute) +nmap ss (SubversiveSubstituteLine) +nmap S (SubversiveSubstituteToEndOfLine) + +nmap s (SubversiveSubstituteRange) +xmap s (SubversiveSubstituteRange) +nmap ss (SubversiveSubstituteWordRange) + +nmap (YoinkPostPasteSwapBack) +nmap (YoinkPostPasteSwapForward) + +let g:yoinkIncludeDeleteOperations = 1 + +nmap p (YoinkPaste_p) +nmap P (YoinkPaste_P) + +nnoremap x d +xnoremap x d + +nnoremap xx dd +nnoremap X D +"}}} + +" {{{ vimtex +let g:vimtex_view_method = 'zathura' + +" }}} diff --git a/.config/polybar/config b/.config/polybar/config new file mode 100644 index 0000000..144597e --- /dev/null +++ b/.config/polybar/config @@ -0,0 +1,256 @@ +;========================================================== +; +; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗ +; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗ +; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝ +; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗ +; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║ +; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ +; +;========================================================== + +[colors] +background = #0c1014 +background_alt = #0a3749 +background_modules = #fbf1c7 +foreground = #d3ebe9 +foreground_alt = #99d1ce +foreground_modules = #282828 +red = #9d0006 +green = #427b58 +yellow = #b56714 +blue = #458588 +purple = #8f3f71 +aqua = #689d6a +orange = #d65d0e +primary = #d26937 +secondary = #888ca6 +alert = #c23127 + +[bar/top] +monitor = DVI-I-1 +width = 100% +height = 20 +offset-x = 0 +offset-y = 0 +radius = 0 +fixed-center = true + +background = ${colors.background} +foreground = ${colors.foreground} + +border-top-size = 0 +border-bottom-size = 0 +border-top-color = ${colors.background} +border-bottom-color = ${colors.background} + +padding = 2 +module-margin = 1 + +font-0 = scientifica:antialias=false;0 +font-1 = Lato:size=10;1 +font-2 = Raleway:size=10;1 +font-3 = FuraCode Nerd Font Mono:size=12;2 + +modules-left = i3 pulseaudio mpd +modules-center = xwindow +modules-right = focus download upload date time xkeyboard + +tray-position = right + +[module/focus] +type = custom/script +exec = ~/.config/polybar/focus +interval = 10 + +[module/mpd] +type = internal/mpd +host = 127.0.0.1 +port = 6600 + +format-online = +label-song = %artist% - %title% +icon-pause =  +icon-play =  +icon-random = 咽 + +toggle-on-foreground = ${colors.background_modules} +toggle-off-foreground = ${colors.foreground_modules} + +format-offline = +label-offline = mpd is offline + +[module/xwindow] +type = internal/xwindow +format =