読者です 読者をやめる 読者になる 読者になる

filegenでscaffold scriptを作れる様になった

python filegen

以下の様なことが出来るようになった

  • filegen.packageが簡単なpython packageの雛型を持つようになった
  • filegenに非依存なscaffold commandが生成出来るようになった。

python packageの生成

filegen.packageを呼び出すとpython packageのscaffoldとして機能する。

$ python -m filegen.package
package (package name)['foo-bar']:
version (version)['0.0.0']:
INFO:filegen:[d] create: ./foo-bar
INFO:filegen:[f] create: ./foo-bar/.gitignore
INFO:filegen:[f] create: ./foo-bar/README.rst
INFO:filegen:[f] create: ./foo-bar/CHANGES.rst
INFO:filegen:[d] create: ./foo-bar/foo_bar
INFO:filegen:[f] create: ./foo-bar/foo_bar/__init__.py
INFO:filegen:[d] create: ./foo-bar/foo_bar/tests
INFO:filegen:[f] create: ./foo-bar/foo_bar/tests/__init__.py
INFO:filegen:[f] create: ./foo-bar/setup.py

$ tree foo-bar
foo-bar
├── CHANGES.rst
├── README.rst
├── foo_bar
│   ├── __init__.py
│   └── tests
│       └── __init__.py
└── setup.py

2 directories, 5 files

scaffold scriptの生成

$ python -m filegen.package --action=code > gen.py
$ python gen.py .
package (package name)['foo-bar']:
version (version)['0.0.0']:
INFO:filegen:[d] create: ./foo-bar
INFO:filegen:[f] create: ./foo-bar/.gitignore
INFO:filegen:[f] create: ./foo-bar/README.rst
INFO:filegen:[f] create: ./foo-bar/CHANGES.rst
INFO:filegen:[d] create: ./foo-bar/foo_bar
INFO:filegen:[f] create: ./foo-bar/foo_bar/__init__.py
INFO:filegen:[d] create: ./foo-bar/foo_bar/tests
INFO:filegen:[f] create: ./foo-bar/foo_bar/tests/__init__.py
INFO:filegen:[f] create: ./foo-bar/setup.py

生成されるファイルは こののような汚いもの

ただ、filegenにも非依存で1ファイルで実行できるという強みがある。