делаю так...
пользуюсь UltraEdit-ом.... (просто редактор + подсветка синтаксиса, и все..)
при написании скрипта "с нуля" - придерживаюсь следующими "правилами":
* соответствующее "табулирование"( никаких "пробельных заменителей", только "табы")
* никаких "пустых" строк (для отделения чего-либо пользую "-- -----------------------------")
* каменты "--[[" и "--]]" ( ! но никак не "]]--" ! )
* имя_функции() или имя_функции( параметр, параметр, пара... ) (после имени нет пробела перед скобками, в скобках параметры отделены от скобок и друг от друга одним пробелом)
* после запятой всегда пробел
* в скобках, их содержимое, отделяется пробелами
* массивы - когда как... иногда лучше описывать в одну строку, иногда расписывать в каждой строке подтягивая "табом" к нужному месту, что бы получились "столбики".... (после "}" ставлю "," если только это не закрывающий символ, что бы легко было добавлять еще что-то к массиву)
* индексы - массива[ "индекс" ] или массива[ переменная ]
* синтаксис арифметике - "все через пробелы"
* else ifelse end всегда с новой строки и нужном кол-ве "табов" (если только очень короткие условия не описываются одной строкой =) )
вроде все... -=) (есть еще мелочи, но они не принципиальные...)
если редактирую "чье-то творение":
трачу до 5-ти минут на "форматирование" по вышеперечисленным правилам