New Ticket     Tickets     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Changes between Version 6 and Version 7 of NewHelpSystem


Ignore:
Timestamp:
04/10/09 14:11:15 (4 years ago)
Author:
ryandesign@…
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • NewHelpSystem

    v6 v7  
    33== Abstract == #abstract 
    44 
    5 The current help system in `port(1)` is very weak. The man pages are written in old roff format which is uneasy for maintenance by developers and got neglected for a long time. Therefore this document proposes to develop a new help system for `port(1)` which will make it both easier for users to access the help and for developers to write and maintain documentation. 
     5The current help system in `port(1)` is very weak. The man pages are written in old roff format which is difficult to maintain and got neglected for a long time. Therefore this document proposes to develop a new help system for `port(1)` which will make it both easier for users to access the help and for developers to write and maintain documentation. 
    66 
    77== Details == #details 
    88 
    9 The new help system will make use of [http://www.methods.co.nz/asciidoc/ asciidoc] which is already used in other Open Source projects such as git and mercurial. Existing man pages of these projects can serve as reference for ours. Using asciidoc allows to generate multiple output formats out of one single source, especially interesting for us are man pages and !DocBook XML. The resulting man page can be included in the base distribution, while the !DocBook XML could help to integrate the man pages into the guide. 
     9The new help system will make use of [http://www.methods.co.nz/asciidoc/ asciidoc] which is already used in other Open Source projects such as git and mercurial. Existing man pages of these projects can serve as reference for ours. Using asciidoc allows to generate multiple output formats out of one single source; especially interesting for us are man pages and !DocBook XML. The resulting man page can be included in the base distribution, while the !DocBook XML could help to integrate the man pages into the guide. 
    1010 
    11 Asciidoc is already available in MacPorts and therefore easy accessible to all developers. 
     11Asciidoc is already available in MacPorts and therefore easily accessible to all developers. 
    1212 
    1313== Help invocation from port(1) == #invocation 
    1414 
    15 As previous calls for participation to enhance `port help` went unheard, here is a proposasl for a totally different system inspired by git. The documentation will be available as man pages, therefore `port help <topic>` will become an alias of `man port-<topic>`. This means it can be easily accessed from the command line. Once the man pages are also available online, a new switch `port help --web <topic>` could open the requested topic in the browser instead for users preferring websites over man pages. 
     15As previous calls for participation to enhance `port help` went unheard, here is a proposal for a totally different system inspired by git. The documentation will be available as man pages, therefore `port help <topic>` will become an alias of `man port-<topic>`. This means it can be easily accessed from the command line. Once the man pages are also available online, a new switch `port help --web <topic>` could open the requested topic in the browser instead for users preferring websites over man pages. 
    1616 
    17 Man pages will at least exist for all port commands, which will go into the man1 category. Some similar port commands should be covered by the same man page, such as activate/deactivate, archive/unarchive, etc. Splitting out certain topics from the current port(1) into their own man page to provide more details and examples will be considered, these will go into the man7 category. 
     17Man pages will at least exist for all port commands, which will go into the man1 category. Some similar port commands should be covered by the same man page, such as activate/deactivate, archive/unarchive, etc. Splitting out certain topics from the current port(1) into their own man page to provide more details and examples will be considered; these will go into the man7 category. 
    1818 
    1919== Changes for base developers == #developers 
    2020 
    21 As asciidoc is not available on Mac OS X systems without installing MacPorts we should not add it as a new dependency for building base. Therefore, the generated man pages will be checked in into SVN in the same manner we already do for the `configure` script and other files generated by autoconf. Man pages will still reside in the `base/doc` directory. 
     21As asciidoc is not available on Mac OS X systems without installing MacPorts we should not add it as a new dependency for building base. Therefore, the generated man pages will be checked into SVN in the same manner we already do for the `configure` script and other files generated by autoconf. Man pages will still reside in the `base/doc` directory. 
    2222 
    2323== AsciiDoc References == 
     
    2828== Development Branch == #branch 
    2929 
    30 This features will be developed on a new branch yet to be named before being merged back to trunk. Depending on the progress of the Portfile writing it will either target 1.8.0 or 1.9.0. 
     30These features will be developed on [browser:branches/new-help-system the new-help-system branch] before being merged back to trunk. Depending on the progress of the manpage writing it will either target 1.8.0 or 1.9.0. 
    3131 
    3232== Current Status ==