Skip to Content.
Sympa Menu

texmacs-users - [TeXmacs] Re: drd-props on macros made by macros

Subject: mailing-list for TeXmacs Users

List archive

[TeXmacs] Re: drd-props on macros made by macros


Chronological Thread 
  • From: Sam Liddicott <address@hidden>
  • To: address@hidden
  • Subject: [TeXmacs] Re: drd-props on macros made by macros
  • Date: Sat, 10 Mar 2012 13:40:27 +0000

err... it works now. I did update-styles before. but now it works.

Sam

On Sat, Mar 10, 2012 at 1:08 PM, Sam Liddicott <address@hidden> wrote:
Literate programming chunks are a special form of enum (to get the lines numbered).

Currently the name of the counter is derived from a parameter to the macro, but this spoils texmacs mechanism to work out which parts of the document tree need re-evaluating when one part changes, as it seems to detect that my macro actually updates ALL of the enum counters used in the whole document.

I'm trying to move to the pattern used by enums and have a general macro that defines an enum macro for each named chunk. This also has the advantage of evaluating as much of the macro definition as possible up front as it creates a specialised macro for each chunk.

However macros generated by another macro seem to have their args to be inaccessible despite drd-props.

e.g.

<assign|new-fangle|<\macro|name|lang|args>
  <fangle-chunk-init|<arg|name>|<arg|args>>

  <quasi|<style-with|src-compact|none|<assign|<arg|name>|<\macro|body>
    <small|<with|item-vsep|0fn|item-nr|<value|<unquote|<merge|code-line-|<arg|name>|-nr>>>|<fangle-list|<value|nf-render-line-no>|<value|identity>|<prog-f|<unquote|<arg|lang>>|<arg|body>>>>>
  </macro>><drd-props|<unquote|<arg|name>>|accessible|all>>>
</macro>>
If I call <new-fangle|message> to define a macro called message (which takes one parameter) I find that the argument is inaccessible unless I go to source mode.
Setting drd-props in the defining macro or explicitly afterwards does not help.

I tried defining the macro manually and drd-props worked and the argument was accessible:

<assign|message|<\macro|body>
  <small|<with|item-vsep|0fn|item-nr|<value|<merge|code-line-|message|-nr>>|<fangle-list|<value|nf-render-line-no>|<value|identity>|<prog-f|C|<arg|body>>>>>
</macro>>

<drd-props|message|accessible|all>

This is with svn commit 4971 (todays SVN).

What am I doing wrong?




Archive powered by MHonArc 2.6.19.

Top of Page