Skip to content

proycon/dotfiles

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
July 30, 2022 14:24
July 6, 2020 23:32
March 15, 2022 14:04
August 19, 2023 13:05
October 3, 2020 00:31
December 2, 2023 22:41
December 5, 2014 17:07
lf
August 30, 2023 11:44
December 28, 2022 19:28
February 11, 2023 23:30
June 6, 2023 23:49
mpv
September 11, 2023 12:58
fix
May 15, 2023 22:25
December 6, 2023 22:05
October 1, 2017 18:09
August 30, 2020 22:45
December 31, 2022 16:53
December 2, 2023 15:08
August 19, 2023 17:20
January 4, 2020 13:06
September 16, 2023 14:22
July 30, 2022 15:26
January 5, 2020 22:47
August 3, 2020 14:10
tut
December 20, 2022 10:39
November 17, 2022 21:38
xkb
October 13, 2019 15:48
May 17, 2023 21:15
May 13, 2023 22:54
May 17, 2023 22:08
August 27, 2023 14:45
September 11, 2023 12:58
May 17, 2023 22:08
March 13, 2023 23:03
August 10, 2013 14:40
February 3, 2020 00:37
October 28, 2015 10:37
December 20, 2014 18:47
January 7, 2021 13:24
February 18, 2023 17:58
May 12, 2023 14:29
May 22, 2015 11:46
November 2, 2022 22:26
October 20, 2021 18:46
November 18, 2013 20:42
July 29, 2022 00:28
March 16, 2021 17:58
August 8, 2014 23:03
August 19, 2023 15:57
fix
September 19, 2016 14:42
September 27, 2020 10:43
May 26, 2023 21:27
May 30, 2013 13:06
January 17, 2023 20:05
November 10, 2022 11:04
June 4, 2013 12:04
July 30, 2022 15:26
January 23, 2018 10:34
January 25, 2023 23:14
August 27, 2022 17:25
October 8, 2023 13:10

My dotfiles

Software

Current setup:

  • ๐Ÿง OS: Arch Linux
  • โš™ Compositor: Hyprland
  • ๐Ÿซ Bar: waybar
  • ๐Ÿš Shell: zsh
  • ๐Ÿค– Terminal: foot
  • ๐Ÿค– Terminal Multiplexer: tmux
  • ๐Ÿ“ฎ Mail Client: aerc
  • ๐ŸŒ Web Browser: Firefox
  • ๐Ÿงฎ Code/Text Editor: neovim
  • ๐Ÿ“œ Word Processing: LaTeX (but more often via Markdown + pandoc)
  • ๐Ÿ“Š Presentations: LaTeX with beamer (more often via Markdown + pandoc)
  • ๐Ÿ“œ PDF viewer: zathura
  • ๐ŸŽฅ Media Player: mpv
  • ๐ŸŽต Music: ncmpcpp (client) + mpd + snapcast
  • ๐Ÿ“ Notes: neovim and markdown files in a git repo
  • โœ… To-Do: todo.txt with my own todo.txt-more extension.
  • ๐Ÿ“† Calendar: todo.txt-more
  • ๐Ÿ—ž๏ธ RSS Client: newsboat
  • ๐ŸŽค Podcasts: podboat (comes with newsboat)
  • โŒจ๏ธ Launcher: bemenu
  • ๐ŸŒ… Photo viewer: imv
  • ๐ŸŒ… Photo editing: gimp
  • ๐ŸŒ… Image editing (vector): inkscape
  • ๐Ÿ“น Video editing: kdenlive
  • ๐Ÿ’ฌ Chat: senpai + soju (IRC), bitlbee (XMPP), gomuks (Matrix), Telegram (or tg)
  • ๐Ÿ”– Bookmarks: buku + bemenu script
  • ๐Ÿ” Password Management: pass
  • ๐Ÿคฆ Social Media: Mastodon (sometimes via tut)

Install

You probably don't want to use the install method if you're not me, but rather just pick and copy things you like into your own setup.

If you are me, you (me) can install all dotfiles including all system packages I use for my system as follows:

$ make install

On Arch Linux this essentially provisions and entire desktop system. The script is idempotent so can be rerun freely.

However, to forcibly update some things as well, use this instead:

$ make update

Key bindings

  • hyprland
    • TODO, very comparable to what I had for dwm though
  • dwm
    • cmd+1,2,3,4,5,6,7,8,9 - switch tags/workspace
    • cmd+Shift+1,2,3,4,5,6,7,8,9 - move window to selected workspaces
    • cmd+tab - Switch to last used workspace (and back)
    • cmd+period - switch to right monitor
    • cmd+comma - switch to left monitor
    • cmd+Shift+period - switch to right monitor
    • cmd+Shift+comma - switch to left monitor
    • cmd+space - Launcher (rofi)
    • cmd+enter - Put window in focus/master area
    • cmd+Shift+enter - New terminal
    • cmd+j|k - cycle window focus
    • cmd+l|h - resize master window
    • cmd+s - toggle sticky
    • cmd+Shift+backspace - Quit dwm (auto restarts)
    • cmd+Escape - Lock
    • cmd+Shift+Escape - Suspend
    • Layouts:
      • cmd+t - Switch to tiling layout
      • cmd+m - Monocle layout
      • cmd+apostrophe - cycle layouts
      • cmd+Shift+apostrophe - toggle floating
    • Timetracker:
      • cmd+slash - Timetracker
      • cmd+Shift+slash - Timetracker 15 minutes back
      • cmd+Ctrl+Shift+slash - Timetracker 60 minutes back
  • tmux
    • alt+left/right/up/down - Switch pane
    • alt+pageup/pagedown - Switch window
    • ctrl+a (prefix)
      • (number) - Switch window
      • c - New window
      • " - New pane (horizontal split)
      • % - New pane (vertical split)
      • ctrl+a - Switch to last window (and back)
      • ; - Switch to last pane (and back)
      • space - Switch pane layout (cycles through a few), good for turning vertical panes horizontal and vice versa
      • , - Rename window
      • / - Flip/swap
      • x - Kill pane
      • z - zoom pane
      • ! - Break pane (to its own window)
      • l - Clear history
      • r - reload
      • v - copy mode
        • VI bindings (v,y,w,/,hjkl etc..)
      • P - paste buffer
      • Y - copy existing buffer to X clipboard and ~/.vbuf
      • I - Paste from ~/.vbuf (mnemonic: Insert from vim)
      • O - Paste from X clipboard
      • W - Swap window
      • Q - Swap pane
      • M - Move pane (to another window or tmux)
      • F - Fingers mode
  • vim
    • leader is space
    • navigate popup menus with C-j C-k
    • spelling
      • z= -- spelling suggestion
      • :set spelllang
    • buffers
      • C-^ -- previous buffer
    • telescope
      • <leader> o - git files
      • <leader> f - find files
      • <leader> b - find buffers
      • <leader> F - find inside files (live grep)
    • building
      • F4 - Build and preview (syncronously) (tex, markdown); pip install . (python)
      • F5 - Build and preview (asyncronously) (tex, markdown); pip install . (python)
    • git (tpope/fugitive)
      • F9 - Commit
      • F10 - Push
    • documentation/navigation/LSP
      • K - documentation
      • <space>lc - Incoming calls
      • <space>lC - Outgoing calls
      • gd - Goto definition
      • gi - Goto implementation
      • gr - goto references
      • <space>ld - Goto definition
      • ga - show (unicode) character information
    • editing
      • <space>_ - strip trailing whitespace
      • visual mode
        • gc - (un)comment selection
    • copy/paste
      • ,y - yank selection (to ~/.vbuf and X clipboard)
      • ,p - paste
      • ,P - paste before
  • weechat
    • ctrl+s or ctrl+u - Set unread marker on all windows
    • ctrl+n - Switch to next buffer
    • ctrl+p - Switch to previous buffer
    • alt+a - Switch to buffer with activity
    • alt+0..9 - Switch to buffer
    • F9/F10 - Scroll buffer title
    • F11/F12 - Scroll nick list
    • ctrl+r - Search
      • Enter, ctrl+j, ctrl+m - Stop search
    • alt+= - Disabled filters (hide/join) (alt+- for current buffer)
      • /filter add irc_smart * irc_smart_filter * - Smart hide/join/filter
    • alt+t - Toggle nick list
      • /key bind meta-t /bar toggle nicklist
    • /mob - Mobile layout
    • /desk - Desktop layout
  • sxiv
    • ctrl+x and:
      • e - Edit in the Gimp
      • r - Rotate 90 degrees clockwise
      • R - Rotate 90 degrees clockwise
      • d - Delete (asks confirmation)
      • n - Copy to nettmp
      • t - Copy to shared/transfer
      • T - Copy to /tmp