commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Per Cederberg (JIRA)" <j...@apache.org>
Subject [jira] Created: (CLI-212) Impossible to print command-line options in same order as added
Date Sun, 07 Nov 2010 10:17:05 GMT
Impossible to print command-line options in same order as added
---------------------------------------------------------------

                 Key: CLI-212
                 URL: https://issues.apache.org/jira/browse/CLI-212
             Project: Commons CLI
          Issue Type: Bug
          Components: Help formatter
    Affects Versions: 1.2
            Reporter: Per Cederberg


Using the current HelpFormater and Options classes it is impossible to print command-line
options in the same order as they were added.

In some applications this is critical, since option grouping is important for understanding
how to use a program. Also, the programmer might have good reasons for adding options in a
particular order. The default could remain printing sorted options, however.

Two small changes need to be made to allow this:

1. Change to use LinkedHashMap instead of HashMap in Options class:

    private Map shortOpts = new LinkedHashMap(); // keeps original order by default
    private Map optionGroups = new LinkedHashMap(); 

2. Change the "null" formatter option in HelpFormatter to actually skip sorting:

    public void setOptionComparator(Comparator comparator)
        this.optionComparator = comparator; // allow null values, default ordering
    }

Fix #2 above isn't strictly necessary, but would avoid forcing users to create boiler-plate
code for this.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message