Tuesday, February 21, 2017

A Caveman's Bash Editor

WSO2 is in the process of improving its CI/CD pipeline in preparation for a bunch of new products(btw did you hear about our exciting new integration language? find more information here: http://ballerinalang.org/) and yours truly was given the awesome responsibility of creating a jenkins post build shell script inline with this goal. During this process I noticed a serious lack of tools for shell/bash script writers and so i wrote this simple helper script.

bash script
#!/bin/bash
#A convenient way to check if bash scripts contain syntax errors using the bash -n command.
INTERVAL=10
while [ 1 -gt 0 ]; do
bash -n "$1"
if [ $? == 0 ]; then
echo 'No Syntax errors were found. Keep marching on soldier!'
fi
sleep $INTERVAL; #check interval
clear
done

vim script
autocmd CursorHold,CursorHoldI * update
view raw vimrc hosted with ❤ by GitHub



How to get it working,

  1. Install vim if you don’t have it in your box.
  2. Copy the vimrc file to $HOME/.vim/
  3. Move CavemansBashEditor.sh to a location of your liking and run it providing the bash script that needs to be syntax checked as a script parameter e.g. ./CavemansBashEditor.sh /home/dumiduh/myscript.sh
  4. Leave the script running and refer to it while editing your script(Refer screenshot below).




Notes,

  • The script uses ‘bash -n’ linux command and will only pick up syntax errors it picks up.
  • The vimrc file changes the vim editors behavior so that it automatically saves changes, this behavior can be a pain at times so remove the file from $HOME/.vim/ when the script is not used.
  • The script was tested on Ubuntu 14.04 with vim 2:7.4.052-1ubuntu3


No comments:

Post a Comment

What's in my Bag? EDC of a Tester