BashIt.kak a Kakoune in editor command line runner

Good news @duncan’s got his balls back, BashIt.kak a Kakoune in editor command line runner.

See or clone the docs/dokkaHtml and docs/coverageHtml for the API.

BashIt.kak the only plugin that does something no one was asking for.

My first to production kotlin.jar, so please be direct, honest, and questioning in your feedback. No rush, if you guys get a quite moment over xmas give the repo a look over. Love to get any insight that you may have, or any past mistakes that you see me repeating.

 USAGE:
  bashit [-i | -debug] <BINARY|JAR> [FLAGS] [args ...]

-i:
  ignore output in kakoune client

-debug:
  console debugging of a java.lang.Process
  
BINARY|JAR:
  is on your PATH|CLASSPATH

FLAGS:
  are native to the BINARY|JAR

DISCUSSION:
  BashIt a Kakoune command line runner. Easily invoke
  a binary or jar executable without leaving the 
  kakoune command line. With automated temp file setup
  and teardown on stdin/out/err. Default invocation 
  opens the temporary file in current kakoune client.
  The temporary file is deleted on programs exit, 
  invoke kakounes :write command to save the buffers 
  output to a file name and destination of your choosing. 
  
NOTE:
  java -jar is automatically prefixed to <name>.jar calls 
  kotlinc -script is automatically prefixed to <name>.kts calls

Woman had me my man-pants, press play on the motivational song spotify Schubert: Ave Maria, D.839 or youtube and put yourself in scrutineers mode. Peer review time!

137 passing tests with 100% coverage on interfaces/classes/functions/methods/properties (NON-Main-methods).

javadoc api with full documentation/docstrings coverage of interfaces/classes/functions/methods/properties.
javadoc api complete with UML diagrams.
javadoc api and documentation/docstrings complete with source code Harvard referencing.

bashit-1.0-javadoc.jar
bashit.jar

META-INF/MANIFEST.MF
Manifest-Version: 1.0
Created-By: kjd016 (Kirk Duncan)
Name: kjd/bashit/kak/
Sealed: true
Application-Name: bashit
Main-Class: org.kjd.bashit.kak.BashItKt



# kakoune command
define-command -params .. bashit %{ evaluate-commands %sh{ java -jar <YOUR-PATH-TO>/bashit.jar "${kak_session}" "$@" } }


# bash command
if [ -d "$HOME/.local/jar" ] ; then
    JARPATH="$HOME/.local/jar"
    export JARPATH
fi

javajar.sh
#!/usr/bin/env bash
# `.jar` suffix no longer needed from bash command line
exec java -jar "$JARPATH/$1.jar" "$@"

alias jj=PATH/javajar.sh


TODO:

/*
 * bitbucket repo  ✅
 * uml diagrams  ✅
 * logger  ✅
 * mockk  ✅
 * tests with coverage  ✅
 * dokka api, docstrings and references  ✅
 * build fatjar  ✅
 * post on discuss.kakoune  ✅ 
*/

I’ll be back in 2 weeks: Sun 22/12/2019.
If I have any feedback from this or outstanding QA from another thread I will get to it then. I promise.

Cooooool guys, feels good to do something on a bigger scale again!

Yah!!! Talk later. Bye :wave:

NOTE:
Hyperskill & Jetbrains Academy 2019, Theory: Java Archive, What is Java Archive?, viewed on 05 Dec 2019, https://hyperskill.org/learn/step/4311