Re: [Psgml-user] Auto-inserting <![CDATA[ ... ]]>
Brought to you by:
lenst
From: Peter F. <pe...@si...> - 2004-02-23 22:10:08
|
On Mon, 2004-02-23 at 10:46, D. D. Brierton wrote: > /*<![CDATA[*/ > if (i < foo && j < bar) { Ah. Can't you just say if (i < foo && j < bar) { Or do browsers screw it up even in XHTML? > > I've never investigated Custom Markup. Why not just record the > > relevant keystrokes and save them in your .emacs bound to an > > unused key (eg F12)? > > Because I don't now how to do that! Also, I'd really like something I > didn't have to memorise, but instead was available from a menu. I don't know how to poke recorded keystroke macros into the menus, maybe one of the mode authors can reply. To DIY: C-x ( <![CDATA[]]> C-b C-b C-b C-x ) that records the insert sequence and leaves the cursor in the marked section. To replay this to test it, use C-x e Now give it a name: M-x name-last-kbd-macro RET sgml-insert-CDATA RET Then bind it to a key, eg F12 M-x local-set RET F12 sgml-insert-CDATA RET (that's the F12 key there, not the separate keystrokes). Now you can press F12 to insert a CDATA marked section. Finally open your .emacs and go to the bottom and type M-x insert-kbd-macro RET sgml-insert-CDATA RET and then (global-set-key [f12] 'sgml-insert-CDATA) Unfortunately I don't know how to do this and make it active ONLY in sgml-mode or xml-mode. The above makes it globally active in all modes. I think it's something to do with one of the -hook variables: doubtless someone else can explain. Save .emacs and type M-x eval-buffer to make it work now (it will auto-load in future sessions). ///Peter |