Sjur Moshagen wrote: > Den 9. apr. 2010 kl. 13.18 skrev Hussein Shafie: > >>> Combined with some macro commands it should be possible to get the >>> attribute value of the preceeding sibling (the old element), and add the >>> attribute with the specified value to the current element. But I'm unable >>> to see how to tie these things together, and I could find no examples of >>> using that java command. >>> >>> Could you give me some hints on how to proceed? >> There is no way to do this by simply recording a macro. You need to >> write the macro by hand and use in it: >> >> * The (XPath-based) <get> child element of <macro> to obtain the value >> of the attribute. >> >> See http://www.xmlmind.com/xmleditor/_distrib/doc/commands/xpath_get.html >> >> * The (XPath-based) <set> child element of <macro> to save the value of >> the attribute in a variable. >> >> * Command putAttribute to set the attribute on the newly created element. >> >> See http://www.xmlmind.com/xmleditor/_distrib/doc/commands/putAttribute.html > > Thanks for the suggestions - that solved it. The complete macro I ended up > with looks like the following (posted here in case it could be useful for > others searching through the archives) - it will cut the selection, insert a > new element after the current one, paste in the selection just cut out, and > finally copy one attribute to the new element: > > <cfg:command name="dvgt.convertToTranslation"> > <cfg:macro> > <cfg:sequence> > <cfg:command name="cut" parameter="[implicitElement]"/> > <cfg:command name="insert" parameter="after[implicitElement] t"/> > <cfg:command name="cancelSelection"/> > <cfg:command name="paste" parameter="toOrInto"/> > > <cfg:get context="$implicitElement/preceding-sibling::*/@pos" > expression="."/> > <cfg:set variable="POS" expression="%_" plainString="true" /> > > <cfg:get expression="$POS" /> > <cfg:command name="putAttribute" parameter="[implicitElement] pos %_" > /> > > </cfg:sequence> > </cfg:macro> > </cfg:command> > >
Congratulations! -- XMLmind XML Editor Support List [email protected] http://www.xmlmind.com/mailman/listinfo/xmleditor-support

