Generate and update the CHANGELOG in the conventional-changelog style on Emacs.
This package provides the interface conventional-changelog-menu
, which is
built with transient, between command-line tool commit-and-tag-version and
Emacs. Call conventional-changelog-menu
to start.
This is based off the original work emacs-conventional-changelog by liuyinz. The
author has since deprecated the project and has since developed a new package,
git-cliff.el, that generates CHANGELOGs using git-cliff. To discern this project
from the original, the name is changed to commit-and-tag-version.el
.
- Implemented with transient:
- (OPTIONAL) Integrate with magit:
- commit-and-tag-version
npm install -g commit-and-tag-version
- (OPTIONAL) pandoc,
org-mode
required
Clone the project, add to load-path
, and require the package.
git clone https://github.com/arifer612/commit-and-tag-version.el
;; .emacs
(add-to-list 'load-path /path/to/conventional-changelog.el)
(require 'conventional-changelog)
Fetch the package through a Melpa recipe, and require the package.
;; .emacs
(conventional-changelog
:fetcher github
:repo "arifer612/commit-and-tag-version.el")
(require 'conventional-changelog)
;; Directly (require 'conventional-changelog)
(with-eval-after-load 'magit-tag ;; Integrate to `magit-tag'
(transient-append-suffix
'magit-tag
'(1 0 -1)
'("c" "changelog"
conventional-changelog-menu)))
;; Or with \`use-package', etc
(use-package conventional-changelog
:init
(with-eval-after-load 'magit-tag
(transient-append-suffix
'magit-tag
'(1 0 -1)
'("c" "changelog" conventional-changelog-menu))))
Call conventional-changelog-menu
- Totally compatible with commit-and-tag-version’s configuration by default.
- Supports both
CHANGELOG.md
andCHANGELOG.org
. The CHANGELOG file is automatically identified if it exists in the repository. - Options for
release-as
and-prerelease
are highly customizable. - Integration with magit.
- Uses
.versionrc
files in the repository root if available.
These are the comparisons against other packages that also generate CHANGELOG files that follow the semantic versioning standard.
- Not compatible with
commit-and-tag-version
. - Supports Org only.
- Does not follow the conventional style.
- Supports Markdown only.
- Deprecated.
- Not compatible with
commit-and-tag-version
. - Only supports
.versionrc
files in the home directory.
Refer to LICENSE.