1
0
mirror of synced 2026-01-22 02:45:23 +00:00
Interlisp.medley/scripts/medley/medley_geometry.sh
Frank Halasz 415a698df5
Overhaul of loadup scripts (#1699)
* Make medley.sh and its associated scripts POSIX compliant - i.e., debashify them

* Added config file for medley script, medley now reads from config file and prepends arguemnts from file to the copmmand line arguments

* WIP. Updates to medley.sh scripts.

* WIP.  More on medley.sh and friends update.

* WIP. Medley redo

* WIP.  Debugging new medley scripts

* Renamed medley.sh/medley.command to be medley_main.sh.  Added code to compile single medley.sh/medley.command script by inlining all of the source'd medley_*.sh files.

* Add temp fix for cygwin Issue #1685

* Minor fixup to medley_utils.sh; take debug code out out of run_medley

* Add README to medley directory to explain how to compile medley.sh (medley.command).

* Ooops. This time really adding the README file to the medley directory explaining how to compile medley.sh (medley.command)

* Update loadup- scripts to use updated medley scripts rather than run-medley

* Fix default setting of $config_file in medley_configfile.sh

* Redo medley compile to pick up last commikt

* Fixing how maiko exe is found and sysout argument error processing - both issues discovered testing on MAcOS

* In medley_configfile, replace echo with printf %s because echo - does not work in zsh

* Supress config file on loadups calls to Medley

* Add oldschool support (use original run-medley) to loadup scripts; improve FAILURE detection so loadup-all won't proceed once one of the components fails

* Add in medley_args.sh add -prog as synonym to --maikoprog to aid in loadup scripts; in medley_run.sh script try to get a good exit code for call to maiko, especially useful for loadup scripts

* Run loadup scripts thru shellcheck and update as necessary to make Posix compliant

* Get rid of -nt comparisons in loadup-setup.sh because they are not posix-complaint.  They were not really needed anyway.

* Removing (for now) use of lde exit codes to decide FAILURE case in loadup-setup.sh since exit codes from lde apperar to be inverted on MacOS.

* Update medley man page.  Add - functionality to more args is medley_args.sh

* Compile medley.sh with changes from last commit

* Ooops.  Left medley_args.sh changes out of last commit.  Rectifying here.

* Added support for LDEKEYBOARDTYPE to medley_run to match run-medley

* Add to medley.sh: auto numbered id's and titles with id's inserted

* Cleanup some shellcheck issues in medley_main.sh

* fix maiko args -nh-xxx.  were -nethub-xxxx. In medley_run.sh

* Overhaul handling of pass-on args to manage the quoting issues prevelant in the previous implementation

* Cleanup minor shellcheck issues in medley_*.sh scripts

* Add underscore as character allowed in ids - makes things clearer when id used with +

* Add a self-numbering id to medley calls in loadup scripts

* Put workaround in medley_run.sh for Issue #1702 - issues with sysout arg processing in Maiko

* Oops.  messed up LDESRCSYSOUT in last commit.  should be LDESOURCESYSOUT

* compile medley.sh
2024-05-09 21:31:27 -07:00

81 lines
2.2 KiB
Bash
Executable File

#!only-to-be-sourced
# shellcheck shell=sh
# shellcheck disable=SC2154,SC2269
###############################################################################
#
# medley_geometry.sh - script for computing the geometry and screensize
# parameters for a medley session
#
# !!!! This script is meant to be SOURCEd from the scripts/medley.sh script.
# !!!! It should not be run as a standlone script.
#
# 2023-01-17 Frank Halasz
#
# Copyright 2023 Interlisp.org
#
###############################################################################
if [ "${noscroll}" = false ];
then
scroll=22
else
scroll=0
fi
if [ -n "${geometry}" ] && [ -n "${screensize}" ]
then
gw=$(expr "${geometry}" : "\([0-9]*\)x[0-9]*$")
gh=$(expr "${geometry}" : "[0-9]*x\([0-9]*\)$")
if [ -z "${gw}" ] || [ -z "${gh}" ]
then
err_msg="Error: Improperly formed -geometry or -dimension argument: ${geometry}"
usage "${err_msg}"
fi
geometry="${geometry}"
#
sw=$(expr "${screensize}" : "\([0-9]*\)x[0-9]*$")
sh=$(expr "${screensize}" : "[0-9]*x\([0-9]*\)$")
if [ -z "${sw}" ] || [ -z "${sh}" ]
then
err_msg="Error: Improperly formed -screensize argument: ${screensize}"
usage "${err_msg}"
fi
screensize="${screensize}"
elif [ -n "${geometry}" ]
then
gw=$(expr "${geometry}" : "\([0-9]*\)x[0-9]*$")
gh=$(expr "${geometry}" : "[0-9]*x\([0-9]*\)$")
if [ -n "${gw}" ] && [ -n "${gh}" ]
then
sw=$(( (((31+gw)/32)*32)-scroll ))
sh=$(( gh - scroll ))
geometry="${gw}x${gh}"
screensize="${sw}x${sh}"
else
err_msg="Error: Improperly formed -geometry or -dimension argument: ${geometry}"
usage "${err_msg}"
fi
elif [ -n "${screensize}" ]
then
sw=$(expr "${screensize}" : "\([0-9]*\)x[0-9]*$")
sh=$(expr "${screensize}" : "[0-9]*x\([0-9]*\)$")
if [ -n "${sw}" ] && [ -n "${sh}" ]
then
sw=$(( (31+sw)/32*32 ))
gw=$(( scroll+sw ))
gh=$(( scroll+sh ))
geometry="${gw}x${gh}"
screensize="${sw}x${sh}"
else
err_msg="Error: Improperly formed -screensize argument: ${screensize}"
usage "${err_msg}"
fi
else
screensize="1440x900"
if [ "${noscroll}" = false ];
then
geometry="1462x922"
else
geometry="1440x900"
fi
fi