rlwhitcomb / utilities

Some of my personal utility programs
MIT License
2 stars 0 forks source link

Java 8 Build Status Java Build Status Java 8 Windows Status Java Windows Status Java 8 MacOS Status Java MacOS Status

utilities

Some of my personal utility programs, collected over a number of years. Most were developed to be useful to me in my own programming, and so may be useful to others.

bat

Useful Windows batch files/programs.

c

C programs for use on the command line (mostly old/MS-DOS based).

java

Java command line programs. Many of the latest are translations from C to Java to be useful on multiple platforms.

Other pieces here include four new Ant conditions, a new Ant task, plus a preprocessor class invocable from the command line or as an Ant task.

Some GUI programs based on the Apache Pivot™ platform.

Building

The C programs are so old that they were originally built on 32-bit Windows / MS-DOS, and I have no idea whether they even build with the latest Visual Studio. Almost none are useful on non-WIndows platforms. I am in the process of converting the most useful ones to Java anyway.

The Java programs build with Java 8, 11, and also with 17, but do require close to the latest Apache Ant™ version (1.10.x). The Apache Pivot™ based programs need the trunk version of the Apache Pivot code (post 2.0.5) (included in the "external-files" directory).

Complete Javadoc for the straight Java code can be built using "ant doc" and will be available rooted at "doc/index.html" (has Frames support when built with Java 11 or earlier).

All the "java" directory classes are built into a single "utilities.jar" file, which can be used as the CLASSPATH for running any of the main program (such as Cat, Tree, DumpManifest, etc.). There are some wrapper shell/bat scripts ("tre", "tre.bat", etc.) to invoke these main programs, which are good examples of how to do any additional main programs.

Usage Notes

The "WordFind" program provides dictionary and thesaurus lookup of words, through the Merriam-Webster dictionary website. But, a developer API key is required, with the values provided via a "dictionary-api.properties" file placed in the "java" directory during the build. This file must be in the following format:

    # Keys for the Merriam-Webster Dictionary API

    dictionary.key  = xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    thesaurus.key   = yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy

where the xxx and yyy values must be obtained via the Merriam-Webster Developer Center website.

Current Work

Work currently planned includes:

Most of the bug and enhancement issues are current at https://github.com/rlwhitcomb/utilities/issues

Notes on New Programs and Features

Copyrights

Shell invoker

Boilerplate program

Paradigm for doing either command line or GUI (Pivot) depending on flags

Calc

Small Bugs / Fixes

WordFind

UUID

Options difficulties

Options suggestions

Translation

Character Sets