The development is halted indefinitely as the author discovered the
built-in CMake support is so much better in certain IDEs (Clion, and at
the time of this writing, the upcoming Visual Studio 2017) and in the
author's opinion it is also much more productive when working with certain
IDEs compared with the old-school text-editor plus miscellaneous tools
approach; feel free to use certain vi emulator plugins in those IDEs if you
think the default text editing capability is severvely limited.
Skaff is a Python library for building programming language dependent
scaffolding of software projects, and a command-line tool that uses this
library with built-in (CMake-based) C/C++ support.
Click any of the following badges to see details.
Getting Started
To create a project directory named nihil:
skaff nihil
then a directory tree like the following will be created
(configuration files are not shown):
Show usage help by:
skaff --help
For the detailed command-line reference manual, use man as usual:
man 1 skaff
A few more examples along with its detailed developers' documentation
will be
given on ReadTheDocs
later on.
Versioning
Before version v0.5 this project is in alpha stage, there may be
serious bugs.
Beta stage starts at v0.5 at which point all the necessary test
cases would be added.
Once the version number gets to v1.0 it goes out of beta stage and
would be released on PyPI as well; more
features may be added later on.
Once downloaded, make sure the version of python is at least 3.5:
which python3 && python3 --version
And also remember to have python3-setuptools installed:
Ubuntu (>= 16.04)
sudo apt-get install python3-setuptools
FreeBSD (>= 10.3)
The pkg package manager requires a specific version number; unlike the
Ubuntu linux distribution listed above, so either install a version that
supports python version 3.5 or use the following command to install the
most recent version:
To ensure there are no problems caused by Python version skew, run the
bundled unit test suite (done automatically by the continuous integration
system):
python3 ./setup.py test
Installation
As mentioned in the Versioning section, for now the only way to get the
package is here as well as the
BitBucket mirror;
there is no binary (or compiled-bytecode, if you prefer) package
available.
First grab the source code from here and then simply change directory to
where the un-compressed source directory resides and install by:
Alternatively, to install (mininal changes to the file system: only a single
python script pointing to the 'cli.py' executable of source directory is
actually installed to one of the system $PATH; manual pages and
system-wide configuration files are not installed) the development version:
sudo python3 ./setup.py develop
To try out the program without installing anything, simply treat it as an
ordinary Python package (note this method is preferred if you are using
Windows since the setup.py script would fail):
python3 -m skaff.cli -h
To uninstall the skaff program along with its data and manual pages
(before doing so, make sure there is no whitespace character in all the
paths recorded in the install_log.txt file created by the previous
install pass; you have been warned):
The Tidelift Subscription provides access to a continuously curated stream of human-researched and maintainer-verified data on open source packages and their licenses, releases, vulnerabilities, and development practices.