diff options
author | Haru <haru@dotalux.com> | 2013-08-27 08:08:34 +0200 |
---|---|---|
committer | Haru <haru@dotalux.com> | 2013-11-05 04:17:39 +0100 |
commit | 97001710c06ed7053d18c8baaac602eb563b64b3 (patch) | |
tree | a4f08884917a5934e9b7ba66b39cd5e25db92e54 /script-checker | |
parent | 0a5abb6de766be6a5068da08eb6477e343f2d7b3 (diff) | |
download | hercules-97001710c06ed7053d18c8baaac602eb563b64b3.tar.gz hercules-97001710c06ed7053d18c8baaac602eb563b64b3.tar.bz2 hercules-97001710c06ed7053d18c8baaac602eb563b64b3.tar.xz hercules-97001710c06ed7053d18c8baaac602eb563b64b3.zip |
Introducing the Hercules Standalone Script Syntax Checker
- Added a command line argument '--script-check' to check a script's
syntax without running the server (and without requiring a SQL
connection). Usage: ./map-server --script-check /path/to/the/script.txt
- For convenience, a script-checker bash script is provided, to set the
path correctly when called from a different directory. Usage:
/path/to/Hercules/script-checker /path/to/the/script/to/check.txt
- While the script checker will supposedly work under windows as well,
no convenience scripts are currently provided for platforms other than
UNIX (feel free to open a pull request with a .bat launcher or
whatever you like)
- Integration with IDEs or text editors is possible. In fact, I already
have a fully functional plugin for vim (through vim-syntastic), and if
there's enough interest, I'll publish it. - screenshot: http://d.pr/i/NOBD
- If you want an online checker, http://haru.ws/scriptchecker/ is
running this code, without modifications and will be kept up to date
(without any warranty though.)
- Special thanks to Ind, Yommy, Streusel, who helped making this
possible, in a way or another.
Diffstat (limited to 'script-checker')
-rwxr-xr-x | script-checker | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/script-checker b/script-checker new file mode 100755 index 000000000..ec79fcc61 --- /dev/null +++ b/script-checker @@ -0,0 +1,18 @@ +#!/bin/bash + +ORIG_CWD="$(pwd)" +BASEDIR="$(dirname "$0")" +EXECUTABLE="./map-server" + +cd "${BASEDIR}" +if [ -z "$1" ]; then + exit -1 +elif [[ "$1" =~ ^\/ ]]; then + FILE="$1" +else + FILE="${ORIG_CWD}/$1" +fi +if [ ! -x "$EXECUTABLE" ]; then + exit -1 +fi +"$EXECUTABLE" --script-check "${FILE}" 2>&1 |