ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* [NTG-context] How to print the book title and section title where \reference is located?
       [not found] <1304025475.3496876.1707277653314.ref@mail.yahoo.com>
@ 2024-02-07  3:47 ` Joel via ntg-context
  2024-02-09 15:13   ` [NTG-context] " Bruce Horrocks
  0 siblings, 1 reply; 2+ messages in thread
From: Joel via ntg-context @ 2024-02-07  3:47 UTC (permalink / raw)
  To: Mailing List for ConTeXt Users; +Cc: Joel


[-- Attachment #1.1: Type: text/plain, Size: 2415 bytes --]

I have an extensive multi-book project. Each book has a nickname, like TB for "Textbook", "WB 1" for the "Workbook, Vol. 1":

TB -- 01_textbook.texWB 1 -- 03_workbook.texWB 2 -- 04_workbook.texWB 3 -- 05_workbook.tex
WB 4 -- 06_workbook.tex
TG -- 08_teachersguide.tex
I have to prove to a government agency that the content meets several requirements, so I'm giving them a simple file that says something like "Requirement A is met in TB, "Cats", p. 11" basically letting the reader know its in the textbook, section called "Cats", on p. 11. To mark the pages, I'm simply dropping in macros called "\requirementA" "\requirementB" on whichever page of whichever book demonstrates it meets the requirement, then the file will aquatically list the book, section, and page number by searching for that macro.

\define\requirementA{
    \reference[markerA]{This is a comment.}
}

\define\requirementB{
    \reference[markerB]{This is a comment.}
}

\define\requirementC{
    \reference[markerC]{This is a comment.}
}

\starttext

    \section{Cats}
        \requirementA
        \input knuth
        \requirementC
        \requirementB
    
    \pagebreak
    
    \section{Fish}
        \input knuth
        \input knuth
        \input knuth
        \input knuth
        \requirementC
        \requirementB
    
    \pagebreak
    
    \section{Frogs}
        \input knuth
        \requirementB
    
    \pagebreak
    
    \section{Markers}
    
        \startitemize
            \item Requirement A is met \at{page}[markerA].
            \item Requirement B is met \at{page}[markerB].
            \item Requirement C is met \at{page}[markerC].
        \stopitemize    
    
\stoptext



I have this sample code, but it only works for a single document, and only displays page number. I tried looking at the \about and other related command, but that requires giving a reference name and referring to the titles, not my dropped macro. How can I modify this to display a message like below, plus also scans the other files. *It only needs to reference the first found occurrence.*
Here is a sample message what the output should give:
"Requirement A is met in WB 3, "Bears", p. 33."
--Joel

[-- Attachment #1.2: Type: text/html, Size: 4309 bytes --]

[-- Attachment #2: Type: text/plain, Size: 511 bytes --]

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / https://mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl
webpage  : https://www.pragma-ade.nl / https://context.aanhet.net (mirror)
archive  : https://github.com/contextgarden/context
wiki     : https://wiki.contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [NTG-context] Re: How to print the book title and section title where \reference is located?
  2024-02-07  3:47 ` [NTG-context] How to print the book title and section title where \reference is located? Joel via ntg-context
@ 2024-02-09 15:13   ` Bruce Horrocks
  0 siblings, 0 replies; 2+ messages in thread
From: Bruce Horrocks @ 2024-02-09 15:13 UTC (permalink / raw)
  To: ntg-context mailing list



> On 7 Feb 2024, at 03:47, Joel via ntg-context <ntg-context@ntg.nl> wrote:
> 
> I have an extensive multi-book project. Each book has a nickname, like TB for "Textbook", "WB 1" for the "Workbook, Vol. 1":
> 
> TB -- 01_textbook.tex
> WB 1 -- 03_workbook.tex
> WB 2 -- 04_workbook.tex
> WB 3 -- 05_workbook.tex
> WB 4 -- 06_workbook.tex
> TG -- 08_teachersguide.tex
> 
> I have to prove to a government agency that the content meets several requirements, so I'm giving them a simple file that says something like "Requirement A is met in TB, "Cats", p. 11" basically letting the reader know its in the textbook, section called "Cats", on p. 11. To mark the pages, I'm simply dropping in macros called "\requirementA" "\requirementB" on whichever page of whichever book demonstrates it meets the requirement, then the file will aquatically list the book, section, and page number by searching for that macro.

[snip]

> Here is a sample message what the output should give:
> 
> "Requirement A is met in WB 3, "Bears", p. 33."

Taking you literally in that you want a *file* listing the occurences and not a typeset page listing the occurrences then you could try using the following in your document at the places where you currently put \requirementA etc:

\writestatus{RequirementMet}{Requirement A is met in section \fetchmark[section][current], p. \pagenumber}

This will write the current section title and page number to the console listing, prefixed by the word "RequirementMet". To produce the file for your customer all you have to do is filter these lines out of the .log file that is produced when you compile your book. In Unix-like systems that is a simple: grep RequirementMet file.log

Regards,
—
Bruce Horrocks
Hampshire, UK

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / https://mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl
webpage  : https://www.pragma-ade.nl / https://context.aanhet.net (mirror)
archive  : https://github.com/contextgarden/context
wiki     : https://wiki.contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-02-09 15:17 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <1304025475.3496876.1707277653314.ref@mail.yahoo.com>
2024-02-07  3:47 ` [NTG-context] How to print the book title and section title where \reference is located? Joel via ntg-context
2024-02-09 15:13   ` [NTG-context] " Bruce Horrocks

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).