Looking at LyXAction.C, I see the following kind of attributes used for the different LFUNs. What do they mean? (I've inserted some guesses below, please verify - and expand if necessary):
The attribute 'Noop' is the default attribute, i.e. doesn't mean anything. I'm slightly confused by the choice of "Noop" though... Noop usually means "No Operation" to me. Example: break-line The attribute 'ReadOnly' means that the LFUN will not modify the current buffer, i.e. it can be used when a buffer is read-only. Example: char-forward The attribute 'NoBuffer' means that the LFUN can be used regardless if a current buffer exists (a document is open). Example: file-open The attribute 'Argument' means that the LFUN requires an argument. Example: help-open (this is the only LFUN that uses 'Argument' btw) The attribute 'NoUpdate' means that invoking the LFUN usually does not (usually??) required <what??> to be updated. Example: char-backward The attribute 'SingleParUpdate' means invoking the LFUN usually (?) only requires the current paragraph to be updated (?). Example: delete-backward (I'm slightly confused though... why is 'down-select' SingleParUpdate, couldn't that cross a paragraph boundary, or is that the "usually" bit?) According to LyXAction.h, these seem to be all the attributes, is this correct? Are these attributes meaningful to know about for an (expert) user, or are they strictly useful for developers? When defining a new command sequence... is that sequence automatically given the correct attribute (based on the LFUNs it is comprised of)? Or does a command sequence not have an attribute by itself? /Christian -- Christian Ridderström, +46-8-768 39 44 http://www.md.kth.se/~chr