Skip to content

benutzer193/.dotfiles

 
 

Repository files navigation

my dotfiles

dotfile organization forked from holmans dotfiles

If you're interested in the philosophy behind why projects like these are awesome, you might want to read his post on the subject.

If you plan on using his system yourself, head over to his repository and fork it to have a clean start.

install

Run this:

cd
git clone --recursive https://github.com/benutzer193/.dotfiles.git ~/Dotfiles
cd Dotfiles
script/bootstrap

This will symlink the appropriate files in Dotfiles to your home directory. Everything is configured and tweaked within ~/Dotfiles.

I don't recommend to hide the Dotfiles like ~/.dotfiles because fzf is configured to exclude hidden folders and won't find files in ~/.dotfiles.

topical

Everything's built around topic areas. If you're adding a new area to your forked dotfiles — say, "Java" — you can simply add a java directory and put files in there. Anything with an extension of .zsh will get automatically included into your shell. Anything with an extension of .symlink and .cfolder will get symlinked without extension into $HOME when you run script/bootstrap.

components

There's a few special files in the hierarchy.

  • bin/: Anything in bin/ and private/bin will get added to your $PATH and be made available everywhere.
  • topic/*.symlink: Any files ending in *.symlink get symlinked into your $HOME. This is so you can keep all of those versioned in your dotfiles but still keep those autoloaded files in your home directory. These get symlinked in when you run script/bootstrap.
  • topic/*.cfolder: Any files ending in *.cfolder get symlinked into your $HOME/.config folder. This is so you can keep all of those versioned in your dotfiles but still keep those autoloaded files in your home directory. These get symlinked in when you run script/bootstrap.

The following files have to be located inside a topic/**/config-files/ folder:

  • *.zsh: Any files ending in .zsh get loaded into your environment.
  • completion.zsh: Any file named completion.zsh is loaded last and is expected to setup autocomplete.

Every file in a topic/**/env/ folder with a specific name will be added to the corresponding environmental variable.

Possible filenames are path.zsh, manpath.zsh and infopath.zsh. The files should contain only the paths separated by lines! e.g.:

path.zsh

/usr/bin
/usr/sbin

notes

The Dotfile directory is available as $DOTFILES.

Git will ignore everything inside private/!

bootstrap will also install and update Neovim or Vim plugins (incl. fzf), depending on what is installed on the system. If both is installed Neovim will be preferred.

thanks

Many thanks to Zach Holman for sharing his system.

About

My dotfiles inspired by holman.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 43.6%
  • Vim Script 36.9%
  • GLSL 10.3%
  • Python 6.3%
  • TeX 2.5%
  • CSS 0.4%