Skip to content
/ dotfiles Public

my home configuration

License

Notifications You must be signed in to change notification settings

ktor/dotfiles

Repository files navigation

Welcome to my home directory configuration.

XMonad Keyboard shortcuts

  • Mute, Volume Up, Volume Down - mapped to amixer commands

  • Ctrl-` - toggle copyq, seachable clipboard manager

  • Ctrl-Win-S - secure lock and suspend

  • Ctrl-Win-L - secure lock

  • Print Screen - capture selected fragment of a screen

  • Win-Enter - launch alacritty + tmux

  • Win-p - launch ./bin/menu.sh

  • Win-g - launch go to window menu

  • Enabled backlight controls

XMonad Features

  • Fixed Java GUI apps loading with setWMName "LG3D"

  • Startup: xmobar and wallpaper

  • Notifications

  • Use short CTRL tap as ESC (xcape)

  • Hide mouse cursor when not in use (unclutter)

Shell features

  • excellent bash history extension hsrt

    • history: ignore duplicates, million entries, ignore: ls,bg,df,history, save timestamps

  • ls, dir, vdir, grep, fgrep, egrep are colorfull

  • bash

    • bash completion - autocompletes command parameters

    • prompt: styled with utf icons, shows branch of git repo

    • Esc - vi mode for bash

  • syntax highlighting in less, more and cat

  • ghci convenience setup

  • git config

  • npm config

  • ssh config

  • tmux config

Scripts and aliases

  • $ alert - notifies when long running command has ended syntax: log_running_command; alert

  • $ tmux uses vi bindings for copy mode Ctrl-B [, paste in any tmux window with Ctrl-B ]

  • $ clean_maven_local_repository.sh cleans leftover files in maven repository that sometimes block library updates

  • $ patch_gradle.sh patches gradle libnative-platform.so for all gradle versions installed with wrapper

  • $ patch_node.sh patches node executables in recursively for current directory and all descendats, used when local node executable is installed with gradle/maven

  • $ catcolor adds code highlighting for cat output

  • $ curljson adds code prettyfier and highlighting for curl json output

  • $ commit-merge calls git commit with default merge commit message as a template that you can edit before commiting

  • $ wallpaper - command that downloads randomly one of 10 latest bing backgrounds and sets it as a desktop wallpaper (without actually saving a file on disk)

  • $ monitor-*.sh - commands that configure xinerama for different configurations of external monitors/beamers, location based

  • daily-home-backup.sh - incremental full system backup to external disk

  • gw - great scripts that runs nearest gradle wrapper

  • menu.sh - include PATH modified in bashrc in launcher environment

  • mime-type-setup.sh - normalize default apps for various mime types

  • vimurl - read web url in vim

  • weather.sh - great script that shows current weather forecast in your location within terminal

  • z - fuzzy jump to directory

  • f - fuzzy jump to directory with fzf selection

  • l - list files

  • la - list all files

  • ll - list all files and attributes

  • patch-* - modifies downloaded linux binaries to run on nixos

  • enable-elasticsearch-in-docker.sh - solved in nixos config, fixes: https://www.elastic.co/guide/en/elasticsearch/reference/current/vm-max-map-count.html