Closed jgmbenoit closed 9 years ago
Are there best practices regarding the formatting and content of the output of --help
and --version
? I am currently starting to implement command line switches. Currently, there are none, but this in on my list for a long time already.
The command line material implemented in jsurf-alggeo is fine, except that it might have a --version long options; see file
Ok, I will do what I can. Certainly, some options of surfer-alggeo-gtk will not make it into jsurfer-alggeo. I will make it possible to load jsurf script, switch to full screen etc. But the UI is pretty much hard-coded for exhibitions and there is no easy way to hide the galleries. As I said before: I hope that these things are changed in the OpenJFX version. Unfortunately, this project has very low priority in the project we currently get our funding from.
Having the possibility to load jsurf script is far more important than the Gallery hiding.
I am thinking about how to add the --version
functionality to SURFER. For jsurf, I implemented it via manifest attributes, which is the default in the Java world.
However, jsurf is self-contained, while SURFER is a collection of several different parts:
JFXSurfer.jar
(user interface)SurferLocalization_TLLC.jar
.rpm
.The development of SURFER is stalled, more of less, until the new non-JavaFX-1.3.1 user interface arrives. Hence, almost all updates are to the galleries (which are of major importance in exhibition setups). And I usually just update the version number in https://github.com/IMAGINARY/SURFER1-installer/ if a gallery is added or updated. This way, I avoid the recompilation and copying of JFXSurfer.jar
, if it has not changed at all.
This approach seems to be infeasible if I put the version number into JFXSurfer.jar
. I would need to build and upload the blob to https://github.com/IMAGINARY/SURFER1-installer/tree/master/libs for every tiny change in the galleries, for example.
How do I solve this? Any ideas?
I modified the ant build script to put the necessary information into the jar manifest. See also settings.properties
. If you don't use the ant script for building SURFER, you have to add the necessary data to the manifest yourself. See the <manifest>
tag in build.xml
for reference.
I am afraid that the added material depends on commons-cli version 1.3, which is not available in Jessie stable: this material must be downgraded to commons-cli version 1.2 . I will apply a patch.
The final executable might be accept at least the customey --version and --help long options (if possible, compatible with hep2man in view to generate effortlessly a man page).