From: Paul S. <ps...@gn...> - 2013-03-26 13:29:04
|
On Sat, 2013-03-23 at 21:32 +0000, Alan Mackenzie wrote: > One slight irritation will be that there are no "electric" characters > (such as ";", "(", ...) in "FOR_CLOSE", so there is nothing to cause > it to indent automatically at EOL. Yes I did notice that. I either have to reindent by hand or add a semicolon (then delete it again, if I want "clean" code). > If you are using GNU Emacs, you could hitch "FOR_CLOSE" and friends > onto the abbreviation setup, which is designed to reindent keywords > like "else" and "while" (as part of do while). You'd need code > something like this: > > (abbrev-table-put c-mode-abbrev-table ':regexp "\\s \\(\\(\\sw\\|_\\)+\\)") > (define-abbrev c-mode-abbrev-table "FOR_CLOSE" "FOR_CLOSE" > 'indent-according-to-mode '(:case-fixed t)) I'm not so familiar with abbrev details. What is the purpose of the first line, setting the :regexp property? Thanks Alan! |