## ## stmux -- Simple Terminal Multiplexing for Node Environments ## Copyright (c) 2017-2026 Dr. Ralf S. Engelschall ## ## Permission is hereby granted, free of charge, to any person obtaining ## a copy of this software and associated documentation files (the ## "Software"), to deal in the Software without restriction, including ## without limitation the rights to use, copy, modify, merge, publish, ## distribute, sublicense, and/or sell copies of the Software, and to ## permit persons to whom the Software is furnished to do so, subject to ## the following conditions: ## ## The above copyright notice and this permission notice shall be included ## in all copies or substantial portions of the Software. ## ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ## EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ## MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. ## IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY ## CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, ## TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ## SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ## # [stmux] static code analysis (linting) lint eslint --config etc/eslint.mjs src markdownlint-cli2 --config etc/markdownlint.yaml src/**/*.md # [stmux] static code analysis (linting) with file watching lint-watch nodemon --exec "stx lint" --watch src --ext ts,pegjs # [stmux] code compilation/transpiling (building) build : lint peggy --format es --allowed-start-rules split --dts \ -o src/stmux-2-parser.gen.js src/stmux-2-parser.pegjs tsc --project etc/tsconfig.json shx cp src/stmux-2-parser.gen.js dst/stmux-2-parser.gen.js shx chmod a+x dst/stmux.js remark --quiet --use remark-man --output dst/stmux.1 src/stmux.md # [stmux] code compilation/transpiling (building) with file watching build-watch : build nodemon --exec "stx build" --watch src --ext ts,pegjs # [stmux] run program test : build node -- ./dst/stmux.js -n -w error -e "ERROR,!style errors" -m beep,system -- \ [ -s 2/3 [ -s 60% -e foo -t shell $SHELL .. 'date; true' ] : 'date; true' ] # [stmux] remove all files regularly generated clean shx rm -rf dst shx rm -f src/stmux-2-parser.gen.js src/stmux-2-parser.gen.d.ts # [stmux] remove all files generated clean-dist : clean shx rm -f package-lock.json shx rm -rf node_modules