Compare commits

...

3 Commits

Author SHA1 Message Date
Andrew Cassidy 8462861479 Fix readme 3 years ago
Andrew Cassidy d170e0b1e7 Version 1.0.0
### Changed

- Updated API for yaclog to 1.0.0
- Renamed '--input' option to '--path' for consistency with yaclog, and added an environment variable for its value
3 years ago
Andrew Cassidy 1861f7a4b6 Consistancy with yaclog 3 years ago

@ -1,7 +1,7 @@
# This workflow will upload a Python Package using Twine when a release is created
# For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries
name: Upload Python Package
name: build
on: [ push, pull_request ]
jobs:

@ -2,11 +2,13 @@
All notable changes to this project will be documented in this file.
## Unreleased
## 1.0.0 - 2021-05-07
### Changed
- Updated API for yaclog to 1.0.0
- Renamed '--input' option to '--path' for consistency with yaclog, and added an environment variable for its value
## 0.2.0 - 2021-05-06
@ -16,6 +18,7 @@ All notable changes to this project will be documented in this file.
- Tweaks and fixes to project metadata in setup.cfg.
- Marked version compatibility with yaclog.
## 0.1.1 - 2021-04-16
yaclog-ksp is [now available on PyPi!](https://pypi.org/project/yaclog-ksp/)
@ -24,6 +27,7 @@ yaclog-ksp is [now available on PyPi!](https://pypi.org/project/yaclog-ksp/)
- Generator will now use change values instead of nodes when possible for more concise output files.
## 0.1.0 - 2021-04-16
First release

@ -1,5 +1,7 @@
# yaclog-ksp
[![PyPI version](https://badge.fury.io/py/yaclog-ksp.svg)](https://badge.fury.io/py/yaclog-ksp)
A command line tool based on [yaclog] for converting markdown changelogs to [KerbalChangelog] config files.
![a yak who is a log](https://github.com/drewcassidy/yaclog/raw/main/logo.png)
@ -18,9 +20,7 @@ Usage: yaclog-ksp [OPTIONS]
Converts markdown changelogs to KSP changelog configs.
Options:
-i, --input FILE Input markdown file to read from. [default:
CHANGELOG.md]
--path FILE Location of the changelog file. [default: CHANGELOG.md]
-o, --output FILE Output file to write to. Uses
'GameData/{name}/Versioning/{name}ChangeLog.cfg' by
default.
@ -30,10 +30,9 @@ Options:
--version Show the version and exit.
--help Show this message and exit.
```
for example, running `yaclog-ksp -i MyLog.md -n "My KSP Mod"`
for example, running `yaclog-ksp --path MyLog.md -n "My KSP Mod"`
would output to `GameData/MyKSPMod/Versioning/MyKSPModChangeLog.cfg`
Input files are in markdown, and use a certain syntax to be readable by the tool. Metadata is included in a table at the

@ -10,7 +10,7 @@ long_description_content_type = text/markdown
keywords = changelog, commandline, markdown, KSP
classifiers =
Development Status :: 4 - Beta
Development Status :: 5 - Production/Stable
Intended Audience :: Developers
License :: OSI Approved :: GNU Affero General Public License v3
Operating System :: OS Independent

@ -23,17 +23,16 @@ from yaclog_ksp.cfgnode import ConfigNode
@click.command()
@click.option('-i', '--input', 'inpath',
default='CHANGELOG.md', show_default=True,
type=click.Path(readable=True, exists=True, dir_okay=False),
help="Input markdown file to read from.")
@click.option('--path', envvar='YACLOG_PATH', default='CHANGELOG.md', show_default=True,
type=click.Path(dir_okay=False, writable=True, readable=True),
help='Location of the changelog file.')
@click.option('-o', '--output', 'outpath',
default=None,
type=click.Path(writable=True, dir_okay=False),
help="Output file to write to. Uses 'GameData/{name}/Versioning/{name}ChangeLog.cfg' by default.")
@click.option('-n', '--name', help="The name of the mod. Derived from the current directory by default.")
@click.version_option()
def main(inpath, outpath, name):
def main(path, outpath, name):
""" Converts markdown changelogs to KSP changelog configs."""
if not name:
# try to guess name from current directory
@ -48,7 +47,7 @@ def main(inpath, outpath, name):
# default is in GameData/{name}/Versioning/{name}ChangeLog.cfg
outpath = pathlib.Path('GameData', modslug, 'Versioning', modslug + 'ChangeLog.cfg')
log = yaclog.read(inpath)
log = yaclog.read(path)
node = ConfigNode()
# find metadata table rows

Loading…
Cancel
Save