1 |
|
|
|
2 |
|
|
/*************************************** |
3 |
|
|
Auteur : Pierre Aubert |
4 |
|
|
Mail : pierre.aubert@lapp.in2p3.fr |
5 |
|
|
Licence : CeCILL-C |
6 |
|
|
****************************************/ |
7 |
|
|
|
8 |
|
|
#include "OptionParser.h" |
9 |
|
|
|
10 |
|
|
///Create the OptionParser of this program |
11 |
|
|
/** @return OptionParser of this program |
12 |
|
|
*/ |
13 |
|
3 |
OptionParser createOptionParser(){ |
14 |
✓✓ |
3 |
std::cerr << "createOptionParser : create the option parser :" << std::endl; |
15 |
✓✓ |
6 |
OptionParser parser(true, "1.0.0"); |
16 |
✓✓ |
3 |
parser.setExampleLongOption("phoenix_tex2html --input=fileInput.tex --output=\"output/Directory\""); |
17 |
✓✓ |
3 |
parser.setExampleShortOption("phoenix_tex2html -i fileInput.tex -o output/Directory"); |
18 |
|
|
|
19 |
✓✓✓✓
|
3 |
parser.addOption("input", "i", OptionType::FILENAME, true, "name of the input file"); |
20 |
|
|
|
21 |
✓ |
6 |
std::string defaultOutputDir("."); |
22 |
✓✓✓✓ ✓ |
3 |
parser.addOption("output", "o", defaultOutputDir, "output directory where the files will be generated"); |
23 |
|
|
|
24 |
✓ |
6 |
std::string bibliographyFile(""); |
25 |
✓✓✓✓ ✓ |
3 |
parser.addOption("bibliography", "b", bibliographyFile, "input bibliography file"); |
26 |
✓ |
6 |
std::string includeDir("."); |
27 |
✓✓✓✓ ✓ |
3 |
parser.addOption("includedirs", "I", includeDir, "list of include directories"); |
28 |
|
|
|
29 |
✓✓✓✓
|
3 |
parser.addOption("mathjax", "j", OptionType::NONE, false, "enable the MathJax backend instead of the Latex one"); |
30 |
|
6 |
return parser; |
31 |
|
|
} |
32 |
|
|
|
33 |
|
3 |
int main(int argc, char** argv){ |
34 |
✓ |
6 |
OptionParser parser = createOptionParser(); |
35 |
✓✓ |
3 |
std::cerr << "createOptionParser : parse the argument" << std::endl; |
36 |
✓ |
3 |
parser.parseArgument(argc, argv); |
37 |
|
|
|
38 |
✓ |
3 |
const OptionMode & defaultMode = parser.getDefaultMode(); |
39 |
|
6 |
std::string inputFile; |
40 |
✓✓ |
3 |
defaultMode.getValue(inputFile, "input"); |
41 |
✓✓✓✓
|
3 |
std::cout << "inputFile = '" << inputFile << "'" << std::endl; |
42 |
|
|
|
43 |
✓ |
6 |
std::string outputDir("."); |
44 |
✓✓ |
3 |
defaultMode.getValue(outputDir, "output"); |
45 |
|
|
|
46 |
✓✓ |
3 |
if(outputDir == ""){ |
47 |
✓ |
1 |
outputDir = "."; |
48 |
|
|
} |
49 |
✓✓✓✓
|
3 |
std::cout << "outputDir = '" << outputDir << "'" << std::endl; |
50 |
|
|
|
51 |
✓ |
6 |
std::string inputBibliography(""); |
52 |
✓✓ |
3 |
defaultMode.getValue(inputBibliography, "bibliography"); |
53 |
✓✓✓✓
|
3 |
std::cout << "inputBibliography = '" << inputBibliography << "'" << std::endl; |
54 |
|
|
|
55 |
|
3 |
std::list<std::string> listInclude; |
56 |
✓✓ |
3 |
defaultMode.getValue(listInclude, "includedirs"); |
57 |
✓✓ |
3 |
std::cout << "listInclude :" << std::endl; |
58 |
✓✓ |
6 |
for(std::list<std::string>::iterator it(listInclude.begin()); it != listInclude.end(); ++it){ |
59 |
✓✓✓ |
3 |
std::cout << "\t" << (*it) << std::endl; |
60 |
|
|
} |
61 |
|
|
|
62 |
✓✓ |
3 |
bool useMathJax = defaultMode.isOptionExist("mathjax"); |
63 |
✓✓✓ |
3 |
std::cout << "useMathJax = " << useMathJax << std::endl; |
64 |
|
|
|
65 |
|
3 |
return 0; |
66 |
|
|
} |
67 |
|
|
|
68 |
|
|
|