Skip to content

Commit 58fafb0

Browse files
committed
feat: added scripts to run the examples
1 parent 4c3e22c commit 58fafb0

4 files changed

Lines changed: 156 additions & 0 deletions

File tree

examples/run

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
#!/usr/bin/env bash
2+
3+
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
4+
5+
if ! compgen -G "$SCRIPT_DIR/../miniterm/target/miniterm-*.jar" > /dev/null 2>&1; then
6+
echo "Warning: No jar files found. Please run 'mvn package' first."
7+
exit 1
8+
fi
9+
10+
mapfile -t files < <(find "$SCRIPT_DIR" -maxdepth 1 -name '*.java' -printf '%f\n' | sed 's/\.java$//' | sort)
11+
12+
if [[ ${#files[@]} -eq 0 ]]; then
13+
echo "No .java files found."
14+
exit 1
15+
fi
16+
17+
echo "Available examples:"
18+
for i in "${!files[@]}"; do
19+
echo " $((i + 1))) ${files[$i]}"
20+
done
21+
22+
echo
23+
read -rp "Enter number: " choice
24+
25+
if ! [[ "$choice" =~ ^[0-9]+$ ]] || (( choice < 1 || choice > ${#files[@]} )); then
26+
echo "Invalid selection."
27+
exit 1
28+
fi
29+
30+
selected="${files[$((choice - 1))]}"
31+
exec "$SCRIPT_DIR/../jbang" --cp "$SCRIPT_DIR/../miniterm/target/"miniterm-*.jar "$SCRIPT_DIR/${selected}.java"

examples/run-ffm

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
#!/usr/bin/env bash
2+
3+
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
4+
5+
if ! compgen -G "$SCRIPT_DIR/../miniterm-ffm/target/miniterm-*.jar" > /dev/null 2>&1; then
6+
echo "Warning: No jar files found. Please run 'mvn package' first."
7+
exit 1
8+
fi
9+
10+
mapfile -t files < <(find "$SCRIPT_DIR" -maxdepth 1 -name '*.java' -printf '%f\n' | sed 's/\.java$//' | sort)
11+
12+
if [[ ${#files[@]} -eq 0 ]]; then
13+
echo "No .java files found."
14+
exit 1
15+
fi
16+
17+
echo "Available examples:"
18+
for i in "${!files[@]}"; do
19+
echo " $((i + 1))) ${files[$i]}"
20+
done
21+
22+
echo
23+
read -rp "Enter number: " choice
24+
25+
if ! [[ "$choice" =~ ^[0-9]+$ ]] || (( choice < 1 || choice > ${#files[@]} )); then
26+
echo "Invalid selection."
27+
exit 1
28+
fi
29+
30+
selected="${files[$((choice - 1))]}"
31+
exec "$SCRIPT_DIR/../jbang" --java 22+ -R--enable-native-access=ALL-UNNAMED --cp "$SCRIPT_DIR/../miniterm-ffm/target/"miniterm-*.jar "$SCRIPT_DIR/${selected}.java"

examples/run-ffm.bat

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
@echo off
2+
setlocal enabledelayedexpansion
3+
4+
set "SCRIPT_DIR=%~dp0"
5+
6+
if not exist "%SCRIPT_DIR%..\miniterm-ffm\target\miniterm-*.jar" (
7+
echo Warning: No jar files found. Please run 'mvn package' first.
8+
exit /b 1
9+
)
10+
11+
set count=0
12+
for /f "delims=" %%f in ('dir /b /o:n "%SCRIPT_DIR%*.java" 2^>nul') do (
13+
set /a count+=1
14+
set "file[!count!]=%%~nf"
15+
)
16+
17+
if %count% equ 0 (
18+
echo No .java files found.
19+
exit /b 1
20+
)
21+
22+
echo Available examples:
23+
for /l %%i in (1,1,%count%) do (
24+
echo %%i^) !file[%%i]!
25+
)
26+
27+
echo.
28+
set /p choice=Enter number:
29+
30+
echo %choice%| findstr /r "^[0-9][0-9]*$" >nul 2>&1
31+
if errorlevel 1 (
32+
echo Invalid selection.
33+
exit /b 1
34+
)
35+
36+
if %choice% lss 1 (
37+
echo Invalid selection.
38+
exit /b 1
39+
)
40+
if %choice% gtr %count% (
41+
echo Invalid selection.
42+
exit /b 1
43+
)
44+
45+
set "selected=!file[%choice%]!"
46+
for /f "delims=" %%j in ('dir /b /o:n "%SCRIPT_DIR%..\miniterm-ffm\target\miniterm-*.jar" 2^>nul') do set "JARFILE=%%~j"
47+
"%SCRIPT_DIR%..\jbang.cmd" --java 22+ -R--enable-native-access=ALL-UNNAMED --cp "%SCRIPT_DIR%..\miniterm-ffm\target\!JARFILE!" "%SCRIPT_DIR%%selected%.java"

examples/run.bat

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
@echo off
2+
setlocal enabledelayedexpansion
3+
4+
set "SCRIPT_DIR=%~dp0"
5+
6+
if not exist "%SCRIPT_DIR%..\miniterm\target\miniterm-*.jar" (
7+
echo Warning: No jar files found. Please run 'mvn package' first.
8+
exit /b 1
9+
)
10+
11+
set count=0
12+
for /f "delims=" %%f in ('dir /b /o:n "%SCRIPT_DIR%*.java" 2^>nul') do (
13+
set /a count+=1
14+
set "file[!count!]=%%~nf"
15+
)
16+
17+
if %count% equ 0 (
18+
echo No .java files found.
19+
exit /b 1
20+
)
21+
22+
echo Available examples:
23+
for /l %%i in (1,1,%count%) do (
24+
echo %%i^) !file[%%i]!
25+
)
26+
27+
echo.
28+
set /p choice=Enter number:
29+
30+
echo %choice%| findstr /r "^[0-9][0-9]*$" >nul 2>&1
31+
if errorlevel 1 (
32+
echo Invalid selection.
33+
exit /b 1
34+
)
35+
36+
if %choice% lss 1 (
37+
echo Invalid selection.
38+
exit /b 1
39+
)
40+
if %choice% gtr %count% (
41+
echo Invalid selection.
42+
exit /b 1
43+
)
44+
45+
set "selected=!file[%choice%]!"
46+
for /f "delims=" %%j in ('dir /b /o:n "%SCRIPT_DIR%..\miniterm\target\miniterm-*.jar" 2^>nul') do set "JARFILE=%%~j"
47+
"%SCRIPT_DIR%..\jbang.cmd" --cp "%SCRIPT_DIR%..\miniterm\target\!JARFILE!" "%SCRIPT_DIR%%selected%.java"

0 commit comments

Comments
 (0)