These are my configuration files for Linux and Mac. It is still work in progress, so expect a lot of changes, but I think it is stable enough to be usable. I put this README together, because I (like most of other programmers) do not have any life. I even added CI to this repo, because I was bored. Yes, you hear right, COUNTINUOS INTEGRATION TO FUCKING DOTFILES REPO. I doubt anyone will ever appreciate my effort, but frankly, my dear, I don't give a damn. Expect a lot of changes in this repo, because most of the time I just cannot make up my mind, and I change my decisions very often.
- python - Required for dotbot to work properly. Python is installed by default on most Linux distributions and also on Mac.
- git - Most of the installation process is managed via Git, so you need this one.
- zsh - Zsh is awesome. I was using bash, but then switched to zsh, and it is pretty much compatible with all bash stuff and it is also faster and nicer.
- tmux - Terminal multiplexer. Awesome stuff, but I find myself to use it less and less, because I started using tiling window manager's features more. But still, tmux is really awesome, and have some great features what screen do not have. I have some really nice Tmux stuff in my repository, so feel free to try it, maybe you will like it.
- neovim - Required for Vim stuff (of course). Needs to be installed with python
support for all plugins to work correctly. If you are just starting with Vim, then I recommend you to run
vimtutor
from your CLI. Thank me later. - Firefox - The only browser I found that can be properly styled to my likings (for example, doing what I did with my Firefox is with browsers like Chrome just not possible)
- vimfx - Vim for your firefox. No need to say more.
- Stylish - Just cool extension that can style your browser. I do not found nice solution how to store my custom Firefox style in some dotfile, so this is last thing I do not like in this setup, you need to install my style manually from Addon menu (yes, I know, it is horrible, but it is only way that is currently working and styles entire top menu properly on my Mac OS).
- editorconfig - For editorconfig plugin. This is not necessary at all, but EditorConfig is super awesome portable thing to configure indentation and whitespace settings for your project, and it works in most of editors, not only in Vim.
- kwm - Awesome tiling window manager for macOS. Noticed that I am using macOS instead of OSX? It is because Apple rebranded OSX to macOS in latest Sierra update. You can read more about it here. Great stuff, right? Anyway, back to the point. Kwm is a lot better than Amethyst, if you are still using it. Are you asking why? Because it can be configured from dotfile, that is why. Also, it have nice focus borders, and is more similar to window managers on Linux, what I really miss on OSX, but I am not going to use XQuartz just to have i3 for my terminals here, lol.
- khd - Hotkey daemon for macOS, required to have keybindings in kwm. Originally these two was one project, but they got split, what is imo great thing.
- karabiner-elements - Can remap our Caps-Lock key to Hyper key, what I am using in khd config as mod key for everything. You will need specifically this build what have support for hyper key remapping. Rest of configuration that will remap caps lock to hyper is in dotfiles.
- Alfred 3 - Used as launcher application in my kwm/khd config. Not needed, you can just adjust keybindings in khdrc to use Spotlight, but Alfred is just too awesome to pass.
It is simple, just use integrated dotbot installer
git clone https://github.com/deathbeam/dotfiles.git ~/.dotfiles && \
~/.dotfiles/install
These dotfiles are configured with Terminus font in mind, so better install it.
To install Firefox theme, use Stylish and enter this URL to
Install from URLs
:
https://raw.githubusercontent.com/deathbeam/dotfiles/master/lib/firefox/firefox.css
You can just use Git:
git -C $DOTHOME pull --rebase
After you have installed dotfiles, you can start including your own stuff by creating appropriate dotfiles in usr directory:
vim $DOTHOME/usr/zshrc
vim $DOTHOME/usr/vimrc
vim $DOTHOME/usr/tmux.conf
vim $DOTHOME/usr/gitconfig
To add your own Vim plugin you can use clone it to proper directory. For example to add SuperTab, all you need to do is run this command:
git clone https://github.com/ervandew/supertab.git $DOTHOME/usr/vim/supertab
- base-16-shell: A shell script to change your shell's default ANSI colors but most importantly, colors 17 to 21 of your shell's 256 colorspace (if supported by your terminal)
- fzf: A command-line fuzzy finder written in Go
- zim: ZIM - Zsh IMproved
- base16-vim: Base16 for Vim
- comittia.vim: A Vim plugin for more pleasant editing on commit messages
- deoplete.nvim: 🌠 Dark powered asynchronous completion framework for neovim
- editorconfig-vim: EditorConfig plugin for Vim
- fzf.vim: fzf ❤️ vim
- syntastic: Syntax checking hacks for vim
- tmux-complete.vim: Vim plugin for insert mode completion of words in adjacent tmux panes
- tsuquyomi: A Vim plugin for TypeScript
- ultisnips: The ultimate snippet solution for Vim
- vaxe: A modern, modular vim mode for Haxe.
- vim-commentary: comment stuff out
- vim-dirvish: Directory viewer for Vim ⚡️
- vim-fugitive: A Git wrapper so awesome, it should be illegal
- vim-gutentags: A Vim plugin that manages your tag files
- vim-javacomplete2: Updated javacomplete plugin for vim
- vim-logreview: vim plugin for log navigation
- vim-obsession: continuously updated session files
- vim-pathogen: Manage your runtimepath
- vim-polyglot: A solid language pack for Vim.
- vim-repeat: enable repeating supported plugin maps with "."
- vim-rooter: Changes Vim working directory to project root (identified by presence of known directory or file)
- vim-snippets: contains snippets files for various programming languages
- vim-surround: quoting/parenthesizing made simple
- vim-test: Run your tests at the speed of thought
- vim-unimpaired: pairs of handy bracket mappings
- vim-wiki: Personal Wiki for Vim
- yang.vim: YANG syntax highlighting for VIM
- tmux-continuum: Continuous saving of tmux environment. Automatic restore when tmux is started. Automatic tmux start when computer is turned on.
- tmux-copycat: Enhances tmux search
- tmux-open: Tmux key bindings for quick opening of a highlighted file or url
- tmux-resurrect: Persists tmux environment across system restarts
- tmux-sensible: basic tmux settings everyone can agree on
- tmux-yank: Plugin for copying to system clipboard
- vim-tmux-navigator: Seamless navigation between tmux panes and vim splits
- skwp/dotfiles for some sane .gitignore config for ignoring Vim and ctags stuff
- mathiasbynens/dotfiles for sane .gitconfig and some things in .gitignore, and also for enabling Bash 4 features for tab completion if possible
- amix/vimrc for a lot of stuff in my vimrc. Without configurations, what are really nicely explained in that repo, I would be lost like forever
- twily for his awesome Firefox stylish theme, what I configured to suit my needs
- nerdbar.widget for awesome widget for Ubersicht on what I based on mine
- thoughtbot/dotfiles for some parts of tmux configuration. I also want to mention that I absolutely love their youtube channel
- I also found some things in other dotfile repositories (for example most of the great config in vimperatorrc), but I totally lost track, so sorry if I forgot to mention anyone here