On 05/16/2016 05:18 PM, racoon wrote: > On 16.05.2016 22:52, racoon wrote: >> On 16.05.2016 22:22, Richard Heck wrote: >>> On 05/15/2016 05:20 AM, racoon wrote: >>>> On 15.05.2016 03:41, Richard Heck wrote: >>>>> On 05/14/2016 05:46 PM, racoon wrote: >>>>>> On 14.05.2016 08:29, racoon wrote: >>>>>>> On 14.05.2016 06:21, Richard Heck wrote: >>>>>>>> On 05/13/2016 03:38 PM, racoon wrote: >>>>>>>>> Hi! >>>>>>>>> >>>>>>>>> The LyX manual on customization has not much explanation. I >>>>>>>>> want to >>>>>>>>> create a simple module that inserts a label with >>>>>>>>> "footnotemark" and >>>>>>>>> the command \footnotemark in the source. >>>>>>>>> >>>>>>>>> The LyxType sounds like the right thing to use. But >>>>>>>>> unfortunately, I >>>>>>>>> have no idea where I can find this kind of inset. The >>>>>>>>> documentation >>>>>>>>> states "Among other things, [LyXType] determines on which menu >>>>>>>>> this >>>>>>>>> inset will appear." (46, LyX 2.2) But it does not state where the >>>>>>>>> inset will appear. >>>>>>>> >>>>>>>> This does sound like a job for a Flex inset. Can you explain in >>>>>>>> detail >>>>>>>> what you want to accomplish, in terms of LaTeX? Is there preamble >>>>>>>> code? >>>>>>>> What do you want to appear where this new inset would appear? >>>>>>>> >>>>>>>> I'd suggest you look at endnotes.module for an example you >>>>>>>> should be >>>>>>>> able to adapt. >>>>>>>> >>>>>>>> As for LyXType, the only genuine options here are CharStyle and >>>>>>>> Custom. >>>>>>>> The former is intended, as it says, for character styles, such as >>>>>>>> noun >>>>>>>> and small caps. They appear under Edit> TextStyle. The latter is >>>>>>>> intended for custom insets such as endnote. They appear under >>>>>>>> Insert> >>>>>>>> Custom Insets. >>>>>>> >>>>>>> Ah, I see. Then charstyle is seems not to be the right thing. >>>>>>> >>>>>>> I want to implement http://www.lyx.org/trac/ticket/9998 via a >>>>>>> module. >>>>>>> >>>>>>> I have the current code inserted below. Problems at the moment: >>>>>>> >>>>>>> For the Footnotemark: >>>>>>> >>>>>>> - It should contain no arguments. >>>>>>> - It should also be possible to insert it in math mode. >>>>>>> - Can it count up the standard footnote counter that is shown on >>>>>>> the >>>>>>> footnote in the editor? >>>>>>> >>>>>>> >>>>>>> >>>>>>> #\DeclareLyXModule{Footnote} >>>>>>> #DescriptionBegin >>>>>>> #Adds the footnotemark and footnotetext command >>>>>>> #DescriptionEnd >>>>>>> >>>>>>> Format 59 >>>>>>> >>>>>>> InsetLayout Flex:Footnotetext >>>>>>> LyXType custom >>>>>>> LatexName footnotetext >>>>>>> LatexType command >>>>>>> Decoration classic >>>>>>> Font >>>>>>> Size Small >>>>>>> EndFont >>>>>>> MultiPar true >>>>>>> LabelString fntext >>>>>>> End >>>>>>> >>>>>>> InsetLayout Flex:Footnotemark >>>>>>> LyXType custom >>>>>>> LatexName footnotemark >>>>>>> LatexType command >>>>>>> Decoration classic >>>>>>> Font >>>>>>> Size Small >>>>>>> EndFont >>>>>>> LabelString fnmark >>>>>>> End >>>>>>> >>>>>>> >>>>>> >>>>>> Okay, maybe I found my answer: it is not possible for now. >>>>>> >>>>>> http://lyx-devel.lyx.narkive.com/i8i3itVw/lyx-construct-for-latex-commands-having-no-arguments >>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>>> Yes, the part about "no arguments" means we're dealing with a >>>>> command-type inset, not a collapsable inset, and there are no custom >>>>> versions of the former. >>>>> >>>> >>>> Thanks. Well, I tried to make a virtue out of it and looked up the >>>> \footnotemark command and it can actually has an optional argument. >>>> >>>> There are two more obstacles: >>>> >>>> 1. \footnotetext actually also takes an optional argument. So far I >>>> have implemented it with only with the required argument. Is it >>>> possible to add an optional argument to it? >>> >>> Yes. See the discussion of the Argument tag in section 5.3.6 of the >>> Customization manual. You only need to declare the optional argument, I >>> believe. Have a look at some of the InsetLayout definitions is >>> beamer.layout. Most of these have optional arguments. >>> >>>> 2. a minor one: \footnotemark receives only an optional argument. Is >>>> it possible to give only an optional argument to a command, i.e. to >>>> give it directly to [] rather than {} in the latex command? Right now >>>> I just make a new command that gives it's required argument to >>>> footnotemark as an optional argument. It's a bit indirect. >>> >>> Yes, I see. I don't think we have the ability to output the "main" >>> argument with customized delimiters. You can ADD delimiters with the >>> LeftDelim and RightDelim tags, but these just seem to appear inside the >>> usual brackets. I suspect this is a bug, actually. With other arguments >>> you can specify the delimitersl, and they override the default. >>> >>> Richard >>> >>> >> >> Thanks. The hint at the beamer.layout was useful. (Somehow I thought >> that Argument 1 must be the argument that is always present but it is >> actually the first "additional" argument it seems.) >> >> Actually, the \footnotemark command works in math mode as well. But I >> guess there is no chance of using my module inset in math mode, right? > > A couple more things that would be nice: > > - the footnotetext was added to the list of footnotes.
This would definitely take some work. > - one could refer to the standard names of other insets, like the > LabelString of the standard footnotes. For example, I have renamed the > standard "foot x" to "fn x". So I would like to have a reference to > that name ("foot" or "fn") so that others can have whatever they like > and it will automatically be used. You want something like: LabelString [[LabelString:Foot]] where the thing in brackets picks up the other one's name? Richard