some support for separate .js files
use with-current-buffer instead of save-excursion