in reply to [emacs] automatically indent to comment-column

The following code will let "backspace" correct an unwanted jump to comment-column, deleting all previously inserted whitespaces.

example of phases before and after typing bla();#<backspace> (cursor position marked by «)

... bla();« bla(); # « bla();«

elisp:

(defun my-cperl-electric-backspace (arg) "(Wrapper for my electric commands) Remove inserted whitespaces or call `cperl-electric-backspace'" (interactive "p") (if (not (eq last-command 'my-indent-for-comment )) (cperl-electric-backspace arg) (setq p (point)) (skip-chars-backward "# \t") (delete-region (point) p) ) ) (add-hook 'cperl-mode-hook (lambda () (local-set-key (kbd "C-#") 'comment-dwim) (local-set-key (kbd "#") 'my-indent-for-comment) (local-set-key (kbd "DEL") 'my-cperl-electric-backspace) (set-variable 'cperl-comment-column 60 ) ))

Cheers Rolf