diff --git a/tmkproject.rst b/tmkproject.rst index eca40e1..f89b1bc 100644 --- a/tmkproject.rst +++ b/tmkproject.rst @@ -14,7 +14,7 @@ where, name Name of the project - type Programmnig lanuage (pl, py, sh ...) + type Programmnig language (pl, py, sh ...) cost What you wish to charge ($0.99 ...) 'description' A brief description of the project Must be passed as a single argument @@ -41,8 +41,8 @@ produced in a wide variety of formats including ``html``, ``PostScript``, ``pdf``, ``man``, and plain text. -The package comes with a default ``Makefile`` usefull when creating a -``FreeBSD`` port of your project. +The package comes with a default ``Makefile``that is useful when +creating a ``FreeBSD`` port of your project. Because everything is template-driven, it is simple to customize the "standard" program and documentation templates to suit your needs. It @@ -63,9 +63,8 @@ Restructured Text source document: - ``CVS`` (You must have this properly configured for checkin, checkout.) - - ``python 2.x`` - ``docutils`` - - ``TeX/LaTex`` (A full implementaiton w/utilities.) + - ``TeX/LaTex`` (A full implementation w/utilities.) - ``enscript`` - ``flip`` @@ -76,7 +75,7 @@ BRANDING -------- -Before using ``mkproject`` you have to customize it for your +Before using ``mkproject``, you have to customize it with your site-specific information. You do this by editing the ``.mkprojectrc`` file. This branding information is then passed on to every project you create thereafter. @@ -85,7 +84,7 @@ CREATING A NEW PROJECT ---------------------- -Once you've edited ``.mkprojectrc``, you a ready to create a new +Once you've edited ``.mkprojectrc``, you are ready to create a new project. Recall that you do this:: mkproject.sh name type cost 'description` @@ -93,6 +92,20 @@ This will generate a project under the ``PROJECTSDIR`` directory defined in ``.mkproject``, and check them in to ``CVS``. +For example:: + + mkproject.sh MyFineProject py $0.98 'A Cheap Program That Does Nothing` + +Would create the directory ``${PROJECTSDIR}/MyFineProject``. This +directory would contain all the program, documentation, and licensing +files needed to start the project, along with a ``makefile`` to +support document creation and project packaging. + +The``MyFineProject-license.txt`` would have the price of $0.98 +embedded in it. The various program and documentation files would +have the description "A Cheap Program That Does Nothing" embedded +appropriately. + MAKE OPTIONS ------------ @@ -109,8 +122,8 @@ directory. The tarball will contain both the name and version number of the project. - clean Remove the intermediate files produced during - the documentation process. + clean Remove the intermediate files created during + the documentation production process. scrub Remove (almost) everything, except for the makefile itself and the support/release directories. @@ -127,8 +140,8 @@ You can add new language support pretty trivially: - Edit ``mkproject.sh`` and add a stanza to the ``case`` statement - near the top to define the ``INTERPERTER`` and ``LANGUAGE`` - variables appropriately to the new language. + near the top to define the ``INTERPRETER`` and ``LANGUAGE`` + variables appropriately for the new language. - Create a new directory named after the language type - usually it is the suffix used to name source files in that language. Under this @@ -143,14 +156,35 @@ - When writing your skeleton code and documentation files, there are a number of tokens you can use which ``mkproject`` will fill in - when it creates a new project: + when it creates a new project. You can see examples of how these + are used in the example skeletons provided with ``mkproject``:: + Token Replaced By + ----- ----------- + + __AUTHOR__ The name of the program's author defined in``.mkprojectrc`` + __COPYRIGHT__ The full copyright string defined in``.mkprojectrc`` + __COST__ The cost passed on the command line + __DESCRIPTION__ The project description passed on the command line + __EDITOR__ The name of the editor defined in``.mkprojectrc`` + __EDITARGS__ The editor arguments defined in``.mkprojectrc`` + __EMAILSUPPORT__ The email support address defined in``.mkprojectrc`` + __ID__ The CVS version string, ``$Id`` + __INTERPRETER__ The "hash bang" string used for the selected language. + __LANGUAGE__ The name of the language + __LICENSE__ The full name of the license file + __PROJECTNAME__ The name of the project passed on the command line + __RESERVED__ A reference to the license file for terms of use + __TYPE__ The program type passed on the command line + __UPDATES__ A reference to the website that has updates defined in``.mkprojectrc`` + __VENDORNAME__ The name of the project vendor defined in``.mkprojectrc`` + __WEBSITE__ The website where updates can be found defined in``.mkprojectrc`` OTHER ----- -You must have a reasonably current version of the shell interpreter installed. +None. BUGS AND MISFEATURES @@ -167,11 +201,6 @@ For terms of use, see the ``mkproject-license.txt`` file in the program distribution. -If you install **mkproject** on a FreeBSD system using the 'ports' -mechanism, you will also find this file in:: - - /usr/local/share/doc/mkproject - AUTHOR ------ @@ -187,7 +216,7 @@ :: - $Id: tmkproject.rst,v 1.101 2012/06/01 21:44:35 tundra Exp $ + $Id: tmkproject.rst,v 1.102 2012/06/01 22:18:44 tundra Exp $ You can find the latest version of this program at: @@ -196,6 +225,3 @@ - - -