feat: adjust project structure (#16)
This commit is contained in:
1 parent
7e3f47093f
commit
005d23030d
15 files changed
+19
-19
No files matched your search
+7
-7
@@ -46,14 +46,14 @@ build-bin() {
|
||||
for name in "${names[@]}"; do
|
||||
basename="${name%.*}"
|
||||
lang="${name##*.}"
|
||||
func_file="$lang/$name"
|
||||
func_file="tools/$lang/$name"
|
||||
if [[ -f "$func_file" ]]; then
|
||||
if _is_win; then
|
||||
bin_file="$BIN_DIR/$basename.cmd"
|
||||
_build_win_shim $lang > "$bin_file"
|
||||
else
|
||||
bin_file="$BIN_DIR/$basename"
|
||||
ln -s "$PWD/cmd/cmd.$lang" "$bin_file"
|
||||
ln -s "$PWD/run/tool.$lang" "$bin_file"
|
||||
fi
|
||||
else
|
||||
not_found_funcs+=("$name")
|
||||
@@ -85,7 +85,7 @@ build-declarations-json() {
|
||||
build_failed_funcs=()
|
||||
for name in "${names[@]}"; do
|
||||
lang="${name##*.}"
|
||||
func_file="$lang/$name"
|
||||
func_file="tools/$lang/$name"
|
||||
if [[ ! -f "$func_file" ]]; then
|
||||
not_found_funcs+=("$name")
|
||||
continue;
|
||||
@@ -112,7 +112,7 @@ build-single-declaration() {
|
||||
func="$1"
|
||||
lang="${func##*.}"
|
||||
cmd="$(_lang_to_cmd "$lang")"
|
||||
LLM_FUNCTION_ACTION=declarate "$cmd" "cmd/cmd.$lang" "$func"
|
||||
LLM_FUNCTION_ACTION=declarate "$cmd" "run/tool.$lang" "$func"
|
||||
}
|
||||
|
||||
# @cmd List functions that can be put into functions.txt
|
||||
@@ -154,8 +154,8 @@ test-functions() {
|
||||
echo "Test $cmd_path: $(cat)"
|
||||
}
|
||||
if ! _is_win; then
|
||||
"$cmd" "cmd/cmd.$lang" "$func" "$data" | {
|
||||
echo "Test $cmd cmd/cmd.$lang $func: $(cat)"
|
||||
"$cmd" "run/tool.$lang" "$func" "$data" | {
|
||||
echo "Test $cmd run/tool.$lang $func: $(cat)"
|
||||
}
|
||||
fi
|
||||
fi
|
||||
@@ -242,7 +242,7 @@ _choice_func() {
|
||||
lang="${item%:*}"
|
||||
cmd="${item#*:}"
|
||||
if command -v "$cmd" &> /dev/null; then
|
||||
ls -1 $lang | grep "\.$lang$"
|
||||
ls -1 tools/$lang | grep "\.$lang$"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
@@ -76,7 +76,7 @@ The project supports write functions in bash/js/python.
|
||||
|
||||
### Bash
|
||||
|
||||
Create a new bashscript (.e.g. `may_execute_command.sh`) in the [./sh](./sh/) directory.
|
||||
Create a new bashscript in the [./tools/sh](./tools/sh/) directory (.e.g. `may_execute_command.sh`).
|
||||
|
||||
```sh
|
||||
#!/usr/bin/env bash
|
||||
@@ -109,7 +109,7 @@ The relationship between comment tags and parameters in function declarations is
|
||||
|
||||
### Javascript
|
||||
|
||||
Create a new javascript (.e.g. `may_execute_command.js`) in the [./js](./js/) directory.
|
||||
Create a new javascript in the [./tools/js](./tools/js/) directory (.e.g. `may_execute_command.js`).
|
||||
|
||||
```js
|
||||
exports.declarate = function declarate() {
|
||||
@@ -139,7 +139,7 @@ exports.execute = function execute(data) {
|
||||
|
||||
### Python
|
||||
|
||||
Create a new python script in the [./py](./py/) directory (e.g., `may_execute_py_code.py`).
|
||||
Create a new python script in the [./tools/py](./tools/py/) directory (e.g., `may_execute_py_code.py`).
|
||||
|
||||
```py
|
||||
def declarate():
|
||||
@@ -167,7 +167,7 @@ def execute(data):
|
||||
|
||||
### Ruby
|
||||
|
||||
Create a new ruby script in the [./rb](./rb/) directory (e.g., `may_execute_rb_code.rb`).
|
||||
Create a new ruby script in the [./tools/rb](./tools/rb/) directory (e.g., `may_execute_rb_code.rb`).
|
||||
|
||||
```rb
|
||||
def declarate
|
||||
|
||||
@@ -6,7 +6,7 @@ function parseArgv() {
|
||||
let func_file = process.argv[1];
|
||||
let func_data = null;
|
||||
|
||||
if (func_file.endsWith("cmd.js")) {
|
||||
if (func_file.endsWith("tool.js")) {
|
||||
func_file = process.argv[2]
|
||||
func_data = process.argv[3]
|
||||
} else {
|
||||
@@ -22,7 +22,7 @@ function parseArgv() {
|
||||
}
|
||||
|
||||
function loadFunc(func_file) {
|
||||
const func_path = path.resolve(__dirname, `../js/${func_file}`)
|
||||
const func_path = path.resolve(__dirname, `../tools/js/${func_file}`)
|
||||
try {
|
||||
return require(func_path);
|
||||
} catch {
|
||||
@@ -9,7 +9,7 @@ def parse_argv():
|
||||
func_file = sys.argv[0]
|
||||
func_data = None
|
||||
|
||||
if func_file.endswith("cmd.py"):
|
||||
if func_file.endswith("tool.py"):
|
||||
func_file = sys.argv[1] if len(sys.argv) > 1 else None
|
||||
func_data = sys.argv[2] if len(sys.argv) > 2 else None
|
||||
else:
|
||||
@@ -23,7 +23,7 @@ def parse_argv():
|
||||
|
||||
def load_func(func_file):
|
||||
base_dir = os.path.dirname(os.path.abspath(__file__))
|
||||
func_path = os.path.join(base_dir, f"../py/{func_file}")
|
||||
func_path = os.path.join(base_dir, f"../tools/py/{func_file}")
|
||||
if os.path.exists(func_path):
|
||||
spec = importlib.util.spec_from_file_location(func_file, func_path)
|
||||
module = importlib.util.module_from_spec(spec)
|
||||
@@ -7,7 +7,7 @@ def parse_argv
|
||||
func_file = __FILE__
|
||||
func_data = nil
|
||||
|
||||
if func_file.end_with?("cmd.rb")
|
||||
if func_file.end_with?("tool.rb")
|
||||
func_file = ARGV[0]
|
||||
func_data = ARGV[1]
|
||||
else
|
||||
@@ -21,7 +21,7 @@ def parse_argv
|
||||
end
|
||||
|
||||
def load_func(func_file)
|
||||
func_path = File.expand_path("../rb/#{func_file}", __dir__)
|
||||
func_path = File.expand_path("../tools/rb/#{func_file}", __dir__)
|
||||
|
||||
begin
|
||||
require func_path
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
|
||||
if [[ "$0" == *cmd.sh ]]; then
|
||||
if [[ "$0" == *tool.sh ]]; then
|
||||
FUNC_FILE="$1"
|
||||
FUNC_DATA="$2"
|
||||
else
|
||||
@@ -13,7 +13,7 @@ if [[ "$FUNC_FILE" != *'.sh' ]]; then
|
||||
fi
|
||||
|
||||
PROJECT_DIR="$(cd -- "$( dirname -- "${BASH_SOURCE[0]}" )/.." &> /dev/null && pwd)"
|
||||
FUNC_FILE="$PROJECT_DIR/sh/$FUNC_FILE"
|
||||
FUNC_FILE="$PROJECT_DIR/tools/sh/$FUNC_FILE"
|
||||
|
||||
if [[ "$OS" == "Windows_NT" ]]; then
|
||||
FUNC_FILE="$(cygpath -w "$FUNC_FILE")"
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Reference in new issue
Block a user