Skip to content

Commit

Permalink
docs(readme): Update for Zsh configuration file break up
Browse files Browse the repository at this point in the history
WIP: #10
  • Loading branch information
Derek Michael Frank committed Dec 18, 2016
1 parent b6568f0 commit 0011734
Showing 1 changed file with 36 additions and 7 deletions.
43 changes: 36 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,42 @@ There's a few special files in the hierarchy.

- **bin/**: Anything in `bin/` will get added to your `$PATH` and be made
available everywhere.
- **Brewfile**: This is a list of applications for [Homebrew Cask](http://caskroom.io) to install: things like Chrome and 1Password and Adium and stuff. Might want to edit this file before running any initial setup.
- **topic/\*.zsh**: Any files ending in `.zsh` get loaded into your
environment.
- **topic/path.zsh**: Any file named `path.zsh` is loaded first and is
expected to setup `$PATH` or similar.
- **topic/completion.zsh**: Any file named `completion.zsh` is loaded
last and is expected to setup autocomplete.
- **Brewfile**: This is a list of applications for
[Homebrew Cask](http://caskroom.io) to install: things like Chrome and
1Password and Adium and stuff. Might want to edit this file before
running any initial setup.
- **topic/\*.zsh**: configuration files
- Environment configuration (i.e., `.zshenv`)
- **topic/\*path.zsh**: Any file ending with `path.zsh` (except
those ending with `fpath.zsh`) is loaded first and is expected
to setup `$PATH` or similar.
- **topic/\*env.zsh**: Any file ending with `env.zsh` is loaded
second and is expected to setup any additional environment
(e.g., shell options).
- Interactive configuration (i.e., `.zshrc`)
- **topic/\*fpath.zsh**: Any file ending with `fpath.zsh` is
loaded for interactive shells only. They are expected to
populate `$fpath`.
- **topic/\*.zsh**: Any files ending in `.zsh` (except those
specified elsewhere) are loaded for interactive shells only.
Interactive configuration can include aliases, color output,
prompt configuration, or anything else that should only be
loaded when a user is interacting with Zsh.
- **topic/\*completion.zsh**: Any file ending with
`completion.zsh` is loaded last for interactive shells only.
They are expected to setup autocomplete.
- Login configuration (i.e., `.zprofile`, `.zlogin`, `.zlogout`)
- **topic/\*profile.zsh**: Any file ending with `profile.zsh` is
loaded for login shells only. Unlike `.zlogin`, these files
are loaded before the interactive files above are loaded.
- **topic/\*login.zsh**: Any file ending in `login.zsh` is
loaded for login shells only. Unlike `.zprofile`, they are
loaded after your interactive files are loaded above. This is
the ideal place to put anything you want to see when you start
up a new login shell (e.g., cowsay, date, todo, fortune).
- **topic/\*logout.zsh**: Any file ending in `logout.zsh` is
loaded for login shells only and only when you exit/logout the
shell.
- **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
Expand Down

0 comments on commit 0011734

Please sign in to comment.