Use puts() for the version and help messages.
[sigilutils.git] / spec.org
blob047d51d076e1b9817c0981b0377daeee3cd2da52
2 #+title: Sigil Utilities
3 #+author: theblacksquid <theblacksquid@protonmail.com>
5 * Feature List
6 ** DONE Process a Statement of Intent (SOI)
7 ** DONE Return the Numeric value of a given SOI
8 ** TODO Create a Word Square from SOI
9    
10 * Usage
11   sigutils [options] <STATEMENT OF INTENT>
13 ** <no options> (default)
14    Processes the given statement of intent.
16 ** -I <STATEMENT OF INTENT>
17    specify the Statement of intent
19 ** -n
20    return the numerical value of the statement of intent
22 ** -W <Single-Digit Number>
23    return an N by N square from the statement of intent.
25 * Architectural TODO List
26 ** DONE replace absorb_words()
27    Right now the binary is only able to take raw input from the
28    command line arguments that are passed to it. We need to replace
29    this with a way to process command switches, and implement a
30    function that takes command line arguments, and returns an
31    associative array that has the switches and their corresponding
32    values.
33    
34    - [X] Learn how to use getopt
35    - [X] Revise code to use getopt
37    [2020-10-21 Wed] 
39    I didn't exactly go and replace absorb_words(), but instead changed
40    it to start at where getopt() ends.
41    
42 ** TODO get pipes to work
44    I just tested it out with `fortune` and was unpleasantly surprised
45    by the fact that it didn't read the input.