adding full emacs support