我想讓jsdoc在保存我的javascript文件時自動生成。我有一個工作腳本,用於存儲文件的最後更新時間(當前是硬編碼的),並與該文件的當前時間戳進行比較。我在一個按下CTRL-C的while循環中運行它,並插入0.1秒的睡眠來停止處理器被佔用。linux(和OSX)shell命令在每次保存文件時執行
這是工作腳本:
while :
do
if [ $((lastTime)) -ne `stat -f %m -t %s javascript.js` ]
then
lastTime=`stat -f %m -t %s javascript.js`
# custom jsdoc generating script
jsdoc javascript.js
echo +++ Run: `date` +++
fi
# stops while loop from consuming a lot of resources
# and making my fan whirr like he wants the computer to take off
sleep .1
done
我知道有一種更好的方法 - 只要不是這樣的是什麼。任何幫助讚賞。
編輯:更新在安裝了此inotify工具Linux機器應該工作
#!/bin/bash
# with inotify-tools installed...
# only watches first parameter for modification
while inotifywait -e modify $1; do
echo
echo +++ Building JSDocs +++
jsdoc [email protected]
echo +++ Last run: `date` +++
done
不過,我想這對Linux和OSX外殼的工作,這樣我就可以在這兩種環境中使用
只是一個建議,你爲什麼不把它編碼到你的編輯器 - vi/emacs?創建一個保存文件並運行jsdoc的宏。在vi中,您可以使用':!jsdoc%'%展開爲當前正在編輯的文件的名稱。保存並在一行中運行 - ':w | !jsdoc%' – arunkumar