Contributions are welcome. If you discover bugs or issues, or have ideas for improvements or new features, please file a report on the issue tracker for this repository. Follow the guidelines below to make sure everything goes smoothly.
- 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
- Write as grammatically correct as you can in the description.
- Perform all changes on a topic branch for easier merging
- Follow the coding conventions already in use
- Verify Emacs Lisp code with
checkdoc,byte-compile-file,package-lint-current-buffer - Add unit tests whenever possible
- Open a pull request relating to a single issue.
- Use a
gptel-cpp-complete-prefix for all public names. - Use a
gptel-cpp-complete--prefix for all internal names.
Write meaningful docstrings for all functions and vars.
- Document all functions and variables as directed by
checkdoc. - Consider using Flycheck to automate
checkdocwhile you're editing.
Use cl-lib instead of cl. The cl library pollutes the global namespace and
its usage is therefore discouraged.
- Use
cl-lib, which adds prefixes to all cl function names - Use noflet instead of
fletwhen you need to dynamically rebind functions.