These dotfiles personalize my system, which are based + inspired by
thoughtbot/dotfiles and work together
using the *.local
convention.
The dotfiles focus on ruby development with tools like git, tmux, vim and Ethan Schoonover solarized-theme in a Lubuntu Xfce4-terminal environment.
See also the unofficial guide to dotfiles on GitHub, why you want to track down your dotfiles and how to get started with a bootstrap!
Set zsh as your login shell:
chsh -s /bin/zsh
Than echo $0 will tell you /usr/bin/zsh :-)
Set in the LXterminal the color scheme to Solarized or any other prefered one:
[Edit] > [Settings] > [Colors] > [Presets > Solarized(dark)]
Heads-up - If you run into trouble concerning terminal colors, check this excellent post from Peter Harkins for a general overview and "how things supposed to work" or a more specific approach concerning 256 colors in vim!
Get rcm:
sudo add-apt-repository ppa:martin-frost/thoughtbot-rcm
sudo apt-get update && apt-get install rcm
Or on iOS run brew install rcm!
Clone onto your laptop:
cd ~/Development
git clone git@github.com:netzfisch/dotfiles.git
git clone git@github.com:thoughtbot/dotfiles.git dotfiles/thoughtbot
Generate the "glue":
env RCRC=$HOME/Development/dotfiles/rcrc rcup
This will create symlinks for config files in your home directory. To list all
created ones use lsrc or delete all with rcdn! See man rcup for the
full feature set.
Do once:
cd ~/Development/dotfiles/thoughtbot
git remote add upstream git@github.com:thoughtbot/dotfiles.git
Each time you want to update from upstream/master:
git fetch upstream
git rebase upstream/master
To install more or update VIM plugins do
rcup
vim$ :PlugInstall
You can safely run $ rcup multiple times to update.
zsh configuration:
bforbundle.gwith no arguments isgit statusand with arguments acts likegit.migrateforbin/rails db:migrate db:rollback && bin/rails db:migrate db:test:prepare.mcdto make a directory and change into it.replace foo bar **/*.rbto find and replace within a given list of files.tatto attach to tmux session named the same as the current directory.vfor$VISUAL.- local additions
- aliases
tde,ted,tds,tsdto translate between englisch, german and spanisch with termittodoto edit a plain text todo-file, located in the Dropbox folder
PATHadditions for
- aliases
tmux configuration:
- Improve color resolution.
- Remove administrative debris (session name, hostname, time) in status bar.
- Set prefix to
Ctrl+s - Soften status bar color from harsh green to light gray.
git configuration:
- Adds a
create-branchalias to create feature branches. - Adds a
delete-branchalias to delete feature branches. - Adds a
merge-branchalias to merge feature branches into master. - Adds an
upalias to fetch and rebaseorigin/masterinto the feature branch. Usegit up -ifor interactive rebases. - Adds
post-{checkout,commit,merge}hooks to re-index your ctags. - Adds
pre-commitandprepare-commit-msgstubs that delegate to your local config. - Adds
trust-binalias to append a project'sbin/directory to$PATH. - local additions:
- Adds a
lalias for tight, colored, log output - configures 'name and email'
- Adds a
Ruby configuration:
- Add trusted binstubs to the
PATH. - Load the ASDF version manager.
vim configuration:
- fzf for fuzzy file/buffer/tag finding.
- Rails.vim for enhanced navigation of
Rails file structure via
gfand:A(alternate),:Rextractpartials,:Rinvertmigrations, etc. - Run many kinds of tests from vim
- Set
<leader>to a single space. - Switch between the last two files with space-space.
- Syntax highlighting for Markdown, HTML, JavaScript, Ruby, Go, Elixir, more.
- Use Ag instead of Grep when available.
- Map
<leader>ctto re-index ctags. - Use vim-mkdir for automatically creating non-existing directories before writing the buffer.
- Use vim-plug to manage plugins.
- local added plugins:
- lean & mean status/tabline
- github color scheme
- typescript syntax highlighting
- NERDTree
- find further plugins at VimAwesome
Thanks to ThoughtBot and all contributors!
These dotfiles are free software and may be redistributed under the terms specified in the LICENSE.