Skip to content

Latest commit

History

834 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Mahdi's Dotfiles

These are my dotfiles. I keep things as minimal as possible — no flashy colors, no distractions.

Tools that I use:

Terminal Emulator: Suckless ST

I used to have my own build, but as bugs started occuring especially with regards to sixel image generation, I started using st-flexipatch.

Window Manager: i3

A manual TWM is always better than a dynamic WM.


Along with i3blocks (scripts used are at bin/statusbar):

File Manager: LF

LF is by far the most feature-rich terminal file manager I've ever used. For image generation I use SIXEL, which is much better than using something like ueberzug.

Text Editors

For note taking I ues Emacs+org-mode.

For software development I've been using Neovim for 6 years now.

Browser: Firefox+Arkenfox.js

I use my modified version of arkenfox (See: https://github.com/arkenfox/user.js/):

Custom Keybindings

Using keyd, I remap my capslock key to Control, and my rightalt to Super.

[main]
capslock = layer(control)
rightalt = layer(meta)
i3 Keybindings
KeysAction
Super + Shift + QPower menu
Super + Shift + XKill window (xkill)
Super + F1mykdc
Super + Shift + F1mykdc -s
Super + ZLaunch boomer
Super + ReturnLaunch terminal
Super + WLaunch vuetify-api
Super + Shift + WFocus/launch browser
Super + TLaunch transs
Super + EEmoji selector
Super + VClipmenu
Super + Shift + VPulsemixer
Super + CColor picker
Super + NOpen todo.org
Super + ORerun menu-wrapper
Super + Shift + OHandler menu
Super + UDrag clipboard URL with class
Super + Shift + UDrag clipboard URL
Super + Shift + NOpen http://127.0.0.1:8087
Super + Shift + ROpen readlater
Super + PFlameshot GUI
Super + Shift + PScreenshot menu
Super + Alt + PDelayed screenshot menu
XF86AudioLowerVolumeVolume down 5%
XF86AudioRaiseVolumeVolume up 5%
Super + MinusVolume down 5%
Super + EqualVolume up 5%
Super + Shift + MinusToggle mute
Super + Shift + EqualVolume max
Super + F9mpc-wrapper -r
Super + F10mpc-wrapper -p
Super + Shift + F10mpc-wrapper -P
Super + F11mpc-wrapper -t
Super + Shift + F11Pause all players
Super + F12mpc-wrapper -n
Super + Shift + F12mpc-wrapper -N
Super + BackspaceClose all notifications
Super + Shift + BackspaceDunst history pop
Super + Alt + BackspaceToggle Dunst paused
Super + CommaBrightness down 5%
Super + Shift + CommaBrightness 1%
Super + PeriodBrightness up 5%
Super + Shift + PeriodBrightness 100%
Super + F5Set brightness via tee
Super + IRescan Wi-Fi and wait
Super + Shift + ILaunch nmtui
Super + Inserttranss -p
Super + Shift + Inserttranss -c
Super + Deletetranss -ap
Super + Shift + Deletetranss -ac
tmux Keybindings
KeysAction
M-;Split window (vertical) in current path
M-:Split window (horizontal) in current path
C-1 to C-8Go to or create window 1–8 in current path
C-9Go to last window
M-1 to M-8Go to or create window 1–8 in current path
M-9Go to last window
M-iGo to last used window
M-wShow popup-main
M-lScratchpad: lfrun
M-qDetach client
C-tRotate window
CNew window in current path (prefix + C)
M-oNew window with htop
y (in copy mode)Copy selection using xclip-or-wl-copy
lf Keybindings
KeysAction
DDMove to trash (trash-put)
DLDelete permanently
DSShred file
TTGo to trash folder
TRClear screen and restore from trash
TEClear screen and empty trash
ZConvert PDF (pdfConvert)
YCopy to
MMove to
Alt+MMove to
oOpen with default app
OOpen with menu
Ctrl+OAsk default open with mimeopen
xExecute file with !clear; $f
Xchmod
wOpen terminal with setsid
UShow dir size (du -sh)
uUnselect
Alt+RReload config (so)
Ctrl+RReload and redraw
Ctrl+GGlob-select all
Ctrl+Jzi
Ctrl+F:fzf_jump
gs:fzf_search
Ctrl+SpaceToggle select and move up
/Search forward
?Search backward
Alt+/Search forward
Alt+?Search backward
KLaunch $kdcfiles-menu with selection
PRun $myscp with selection
)Upload to 0x0
ARename (end)
aRename (after extension)
IRename (start)
iRename (before extension)
rPush rename command
BBulk rename
bSet wallpaper/background
Alt+EEcho filename
LCreate link
VInvert below
yyCopy
ypYank path
ynYank name
yPYank full path
Ctrl+A ZZip file
Ctrl+A TTar file
Ctrl+A GTar.gz file
Ctrl+A BTar.bz2 file
EExtract
mMake directory
fCreate file
SSelect all files
RResize image
CrConvert image to JPG
CoCompress video
sSStrip whitespace
TabPrepend line in file (replace command)
ddCut
drDrag-and-drop with dragon
dmMove via dragon
dcCopy via dragon
dlDownload file (drag-related)
POpen current dir in pcmanfm
Emacs (Evil) Keybindings
KeysAction
Alt+Space(insert) — disabled
Ctrl+U(insert) — kill to line start
Alt+UUniversal argument
Alt+Shift+UNegative argument
Alt+DDuplicate line
z dDictionary lookup
SPC wSave buffer
SPC WWrite file
SPC =Indent buffer
-Open dired in current dir
SPC aOpen org-agenda
SPC BMagit blame toggle
SPC gMagit status
SPC yYank history popup
gsRipgrep search
SPC RFind file as root
SPC uUndo tree visualize
SPC MOpen new frame
SPC OOpen URL with xdg-open
SPC fFind file
SPC vFind alternate file
SPC bSwitch buffer
SPC rRecent files
SPC jJump to bookmark
SPC JSet bookmark
SPC kClose current buffer
Ctrl+Shift+TOpen last closed
SPC PProject switch
SPC pProject find file
SPC cOrg capture
SPC COpen calc
SPC dOpen diary
SPC DOpen journal
SPC tOpen org TODO
SPC sOpen vterm
SPC TOrg capture TODO
SPC nOpen notes
SPC RReload init file
SPC o (html)Open buffer URL (html-mode)
SPC / (org)Org sparse tree
Alt+P (org)Push Anki notes
SPC e (org)Emphasize
Alt+B (org)Emphasize bold
SPC A (org)Mark done and archive
SPC i (org)Org goto
SPC E (org)Show inline images
SPC xiOrg clock-in
SPC xoOrg clock-out
SPC xxOrg clock display
SPC lOrg store link
SPC LOrg insert link
SPC o (org)Org open at point
SPC e (elisp)Eval last sexp
SPC E (elisp)Eval region or buffer
(Prev open paren (elisp)
)Next close paren (elisp)
Ctrl+C (minib)Abort minibuffer
Ctrl+C (ins)Exit insert state
Ctrl+C (vis)Exit visual state

About

My public dotfiles

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages