On Sat, 23 Jun 2012 20:07:25 +0200 Marco Marongiu <brontoli...@gmail.com> 
wrote: 

MM> On 22/06/12 20:05, Ted Zlatanov wrote:
>> Marco and others, do you want to suggest some good blank templates for
>> the various bundles and bodies?  I'll take care of integrating them with
>> cfengine-mode.el.  They'll be in the menus somewhere.

MM> Personally, I'd be content with a plain template for all those bundles
MM> that are tied to a normal ordering: press a few keys, and there comes a
MM> skeleton for (e.g.) a bundle agent with just all the naked promises in
MM> normal order to fill out. Should those few keys also require us to
MM> provide a name for the bundle, I wouldn't complain ;)

Yup, that's exactly what skeleton.el does.  Could you give me some
templates you'd use and tell me what portions should be parameterized?
I'll do the rest.

MM> One more thing while we are at it: what about a simple mode for cfengine
MM> templates? Marking the BEGIN/END lines with a different background and
MM> highlighting the class names should be more than enough; I expect it to
MM> be fairly simple, due to the limited number of different options and the
MM> syntax. But I am an emacs-internals illiterate and I don't know. Would
MM> that be complicated to make?

It's not complicated.  In fact highlighting keywords is trivial; here's
my slightly complicated setup that targets a few modes and installs some
typical programmerish keywords:

(defun tzz-highlighting-install ()
  (interactive)
  (font-lock-mode -1)
  (font-lock-mode 1)
  (font-lock-add-keywords nil `( ("\\(FIXME\\|TONOTE\\|TODO\\)" (1 
'font-lock-warning-face prepend)))))

(dolist  (hook '(prog-mode-hook
                 text-mode-hook
                 change-log-mode-hook
                 message-mode-hook
                 texinfo-mode-hook))
  (add-hook hook 'tzz-highlighting-install))

BTW, `prog-mode-hook' is the ancestor of most programming modes, which
includes cfengine3-mode, C, C++, etc. so this is a pretty comprehensive
list.

The problem is, CFEngine templates don't have their own mode or an
extension I could use to trigger the highlighting.  If you are happy
with editing them as plain text, then the above will work through
text-mode-hook.  If not, more work is needed.

Ted
_______________________________________________
Help-cfengine mailing list
Help-cfengine@cfengine.org
https://cfengine.org/mailman/listinfo/help-cfengine

Reply via email to