"ooRexx packages with oorexxshell" (oorexx-packages)
====================================================
This is the readme file for "oorexxshell", an enhanced ooRexx shell that gives
immediate access to a number of Rexx packages, like:
- bsf4oorexx (ooRexx-Java bridge), which includes a powerful Java2D
command handler named JDOR (Java2D for ooRexx), see samples and
synopsis of the JDOR Rexx commands in
packages\bsf4oorexx\doc\jdor\jdor_doc.html
- dbus4oorexx (ooRexx-DBus bridge for Linux)
- log4rexx (logging for ooRexx)
- pipelines (a CMS-like pipeline implementation)
- procedural (implementation of some of Executor's extended methods)
- profiling (profile Rexx programs)
- regex (powerful regular expression implementation)
- rgf_util2 (utilities for ooRexx, e.g. caseless BIFs, easy sorting)
- utilities (indentable stream)
Directions in a nutshell
------------------------
- download the latest "ooRexx packages with oorexxshell"
(oorexx-packages) zip archive from
https://wi.wu.ac.at/rgf/rexx/tmp/oorexx-packages/
- UNBLOCK it before unzipping (see notes below)
- unzip the archive
- change into the unzipped directory and enter
Windows Unix Comment
------- ---- +------
setupoorexx.cmd ./setupoorexx.sh | create tailored scripts
setenv2rxenv.cmd source ./setenv2rxenv.sh | set environment
oorexxshell oorexxshell | run oorexxshell
Additional information
----------------------
To learn about the functionality of oorexxshell, take a few minutes and see the
asciinema demos at [4].
First feedback
--------------
- "install this bundle, you run a small, trivial setup program, and, poof,
you have immediate access to a real trove of packages -- no additional
installation needed"
(JMB)
- "I even was able to load the JDOR handler, then "address JDOR", and then
construct one of the JDOR samples step-by-step, by manually writing the
(quoted) JDOR commands. This is very impressive, and very useful too,
from a pedagogical point of view, since it provides immediate incremental
visual feedback for the JDOR commands. You just have to move the Java
window besides the command window and you have a fantastic experience."
(JMB)
-------------------------------------------------------------------------------
NOTES
-----
---------------------------------------
NOTE # 1: Microsoft and Apple do not allow programs from the Internet to run
if they are not signed using their fee-based service citing "security
reasons".
Therefore, before installing or unzipping open source projects you need
to remove the respective attributes.
Windows: after downloading, open with a right-mouse click the property
menu, mark the "unblock" check mark and click "apply".
Thereafter you can install or unzip the file. Or open a
command line window and run (change 'filename' to the name of
the downloaded file):
powershell Unblock-File filename
e.g.,
powershell Unblock-File oorexx-5.1.0-12838.windows.x86_64-portable-release.zip
macOS: after downloading, open a Terminal window and run "xattr filename"
to see the extended attributes of the downloaded file (replace
'filename' with the name of the zip archive), then issue (again,
change 'filename' to the name of the downloaded file):
xattr -d com.apple.quarantine filename
e.g.,
xattr -d com.apple.quarantine oorexx-5.1.0-12838.macos.arm64-portable-release.zip
---------------------------------------
NOTE # 2 for Unix versions.
In case the execution bit of shell scripts and executables got removed,
run the supplied script makeAllExecutable.sh from the unzipped
directory:
sh ./makeAllExecutable.sh
---------------------------------------
NOTE # 3: rerun the "setupoorexx. {cmd|sh}" script each time the portable files
get relocated or, if on a USB stick, each time you plug in the USB
stick. This will recreate the setenv2rxenv.{cmd|sh} script, thereby
adjusting them to their new location.
---------------------------------------
NOTE # 4: bsf4oorexx (ooRexx-Java bridge)
In order to load and run bsf4oorexx programs you need to have
Java/OpenJDK on your computer and either have PATH point to the
directory where the binary file java.exe (Windows)/java (Unix) can be
found or set the environment variable JAVA_HOME to point to the Java
home directory in which the Java subdirectories 'bin', 'lib' and the
like are located.
You can download Java/OpenJDK from the Internet (usually for free),
e.g., from Amazon, azul, bellsoft, IBM, Microsoft, ORACLE, SAP, and
many more sites (all distributions use the same Java/OpenJDK source
code).
Please make sure to pay attention to the following two important
points:
- download the "full version" respectively the version that includes
"JavaFX", otherwise the interesting bsf4oorexx JavaFX samples cannot
run
- download the Java/OpenJDK version matching your operating system
and the machine type of your computer, e.g., a 64-bit Intel (machine
type "x86_64") Windows version download the "x86_64" (Intel, AMD)
Windows Java/OpenJDK installation package or zip archive. If you
use macOS or Linux then download the respective full Java/OpenJDK
versions.
It is possible to have different versions of Java/OpenJDK present on
your computer at the same time. The environment variable JAVA_HOME
can then be used to point to the Java/OpenJDK directory that you wish
to use in your current session/terminal/command line window. This way
you can develop and test bsf4oorexx programs for different versions
of Java/OpenJDK on the same computer.
To see what becomes possible with bsf4oorexx, check out the samples
in packages/bsf4oorexx/samples which all get briefly described in the
index.html file located there as well.
bsf4oorexx programs can be executed directly with rexx[.exe] or via
Java using the shell scripts "rexxjh.cmd" (Windows)/"rexxjh.sh" (Unix),
e.g.,
cd packages/bsf4oorexx/samples
rexxjh.cmd 1-040_list_charsets.rxj -- Windows: Java loads ooRexx to run script
rexxjh.sh 1-040_list_charsets.rxj -- Unix: Java loads ooRexx to run script;
rexx 1-040_list_charsets.rxj -- Rexx loads Java to run script
Apple users please note: if running any bsf4oorexx script that creates a GUI, then
you must use the scripts rexxjh.sh to run them.
---
If you have any questions or comments please communicate via the RexxLA member's
mailing list (cf. https://www.RexxLA.org).
Alternatively, communicate via the ooRexx developer list (cf. [2], [3]).
[1] Portable ooRexx 5.1.0:
[2] ooRexx mailing list subscription page:
[3] ooRexx web mail interface to the developer mailing list:
[4] Jean Louis Faucher's asciinema demos, at the top the demos for ooRexxShell:
.
Please note that these demos may use experimental extensions of Jean Louis
executor (a special version based on ooRexx 4.2) which are not present
in the regular versions of ooRexx.
--------------
as of 20240621