mirror of
https://github.com/dcarrillo/prezto.git
synced 2024-12-22 15:08:01 +00:00
d80e393f78
General purpose reformating and rewording in (a few places). This should also make markdown linting happier. Prefer back-ticks wherever useful and use `console` for code blocks to be executed on terminal. Also, update references links wherever possible (including update from 'http://' to 'https://').
75 lines
2.5 KiB
Markdown
75 lines
2.5 KiB
Markdown
# Contributing
|
|
|
|
This project would not exist without all of its users and [contributors][1].
|
|
|
|
If you have ideas on how to make the configuration easier to maintain or
|
|
improve its performance, do not hesitate to fork and send pull requests.
|
|
|
|
## Issue Reporting
|
|
|
|
- Check that the issue has not already been reported.
|
|
- Check that the issue has not already been fixed in the latest code.
|
|
- Open an issue with a clear title and description in grammatically correct,
|
|
complete sentences.
|
|
|
|
## Pull Request
|
|
|
|
- Read [how to properly contribute to open source projects on GitHub][2].
|
|
- Use a topic branch to easily amend a pull request later, if necessary.
|
|
- Write [good commit messages][3].
|
|
- Squash commits on the topic branch before opening a pull request.
|
|
- Use the same coding style and spacing.
|
|
- Open a [pull request][4] that relates to but one subject with a clear title
|
|
and description in grammatically correct, complete sentences.
|
|
|
|
### Code Style
|
|
|
|
This project follows the [Google Shell Style Guide][5] when possible. However,
|
|
there are a number of additional things to keep in mind.
|
|
|
|
- Local variables should be used whenever possible.
|
|
- Prefer `zstyle` over environment variables for configuration.
|
|
- Prefer (( ... )) over [[ ... ]] for arithmetic expression.
|
|
- Use the function keyword to define functions.
|
|
- The 80 character hard limit can be waived for readability.
|
|
|
|
### Using an Alternative *zprezto* Directory
|
|
|
|
To work on Prezto without affecting your current configuration:
|
|
|
|
```sh
|
|
mkdir devel-zprezto
|
|
cd devel-zprezto
|
|
git clone --recursive https://github.com/sorin-ionescu/prezto.git .zprezto
|
|
ZDOTDIR=$(pwd)
|
|
echo "Your development ZDOTDIR is $ZDOTDIR"
|
|
setopt EXTENDED_GLOB
|
|
for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do
|
|
ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}"
|
|
done
|
|
```
|
|
|
|
Then to start zsh in this development environment you will run:
|
|
|
|
```console
|
|
ZDOTDIR=/path/to/devel-zprezto zsh
|
|
```
|
|
|
|
### Modules
|
|
|
|
- A *README.md* must be present.
|
|
- Large functions must be placed in a *functions* directory.
|
|
- Functions that take arguments must have completion.
|
|
|
|
### Themes
|
|
|
|
- A screenshots section must be present in the file header.
|
|
- The pull request description must have [embedded screenshots][6].
|
|
|
|
[1]: https://github.com/sorin-ionescu/prezto/contributors
|
|
[2]: https://gun.io/blog/how-to-github-fork-branch-and-pull-request
|
|
[3]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
|
|
[4]: https://help.github.com/articles/using-pull-requests
|
|
[5]: https://google.github.io/styleguide/shell.xml
|
|
[6]: https://github.github.com/gfm/#images
|