Is there an alternative to \reference[]{} that won't interfere with the document design?
I had to place \reference[]{} in various places in my document as I need to refer to page numbers of a lot of various items in the document. There are hundreds of these. When placing them, I hadn't realized it would impact the document design--I assumed such a command would be invisible. Though I've tried placing as many inside the section titles, where they become invisible, I've found just placing \reference[]{} anywhere on a page will create extra blank spaces, leading my document to expand from 440 lines to 448. It added up quite quickly to 8 whole pages. No matter how much I use % or try to hide it within the page, it still produces weird results. It isn't invisible, its doing things to the document, moving text around, leaving gaps. In addition, it makes the document look haphazard, creating random formatting "glitches". I'm assuming because \reference has a curly bracket {} that its causing something to be rendered, even it its not really something visible always, it often makes a carriage return on the page if placed say after a table, or before a section title. Sadly, the way the document was designed I don't have a way to integrate them inside the section titles everywhere, there are too many and some need to mark a specific page within a section. I haven't placed anything inside the {} and only use the square brackets to mark the reference name. Is there an alternative command that won't occupy space like this? --Joel
Joel via ntg-context schrieb am 31.08.2024 um 16:37:
I had to place \reference[]{} in various places in my document as I need to refer to page numbers of a lot of various items in the document. There are hundreds of these. When placing them, I hadn't realized it would impact the document design--I assumed such a command would be invisible.
Though I've tried placing as many inside the section titles, where they become invisible, I've found just placing \reference[]{} anywhere on a page will create extra blank spaces, leading my document to expand from 440 lines to 448. It added up quite quickly to 8 whole pages. No matter how much I use % or try to hide it within the page, it still produces weird results. It isn't invisible, its doing things to the document, moving text around, leaving gaps. In addition, it makes the document look haphazard, creating random formatting "glitches".
I'm assuming because \reference has a curly bracket {} that its causing something to be rendered, even it its not really something visible always, it often makes a carriage return on the page if placed say after a table, or before a section title. Sadly, the way the document was designed I don't have a way to integrate them inside the section titles everywhere, there are too many and some need to mark a specific page within a section.
I haven't placed anything inside the {} and only use the square brackets to mark the reference name. Is there an alternative command that won't occupy space like this?
Did you learn anything from the answers of your last question [1] with similar content? Hint: Minimal example! [1] https://www.mail-archive.com/ntg-context@ntg.nl/msg108092.html Wolfgang
On 31 Aug 2024, at 15:37, Joel via ntg-context
wrote: I've found just placing \reference[]{} anywhere on a page will create extra blank spaces,
In the following MWE you should get two spaces, no spaces and one space respectively. If you get spaces with some other combination then please try and produce a short example. \starttext This is my text \reference[a]{} and more following. This is my text\reference[b]{}and more following. This is my text\reference[c]{} and more following. \stoptext Regards, — Bruce Horrocks Hampshire, UK
I recently learned not to leave a space before and after \reference ,
but have not seen
further complex problems as you describe so far. Can you give more
specific examples for these,
I have to check, because I am also finalising a book at the moment.
Best wishes,
Jürgen
----- Nachricht von Bruce Horrocks
On 31 Aug 2024, at 15:37, Joel via ntg-context
wrote: I've found just placing \reference[]{} anywhere on a page will create extra blank spaces,
In the following MWE you should get two spaces, no spaces and one space respectively. If you get spaces with some other combination then please try and produce a short example.
\starttext This is my text \reference[a]{} and more following.
This is my text\reference[b]{}and more following.
This is my text\reference[c]{} and more following.
\stoptext
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 ___________________________________________________________________________________
----- Ende der Nachricht von Bruce Horrocks
Jürgen Hanneder via ntg-context schrieb am 31.08.2024 um 17:27:
I recently learned not to leave a space before and after \reference , but have not seen further complex problems as you describe so far. Can you give more specific examples for these, I have to check, because I am also finalising a book at the moment.
References need an anchor to know on which page they end up because a page is finished you don't know the answer. The following example sets three references, one and three marks the start of each paragraph but where should two end up? %%%% begin example \usemodule[visual] \setuppapersize[A6,landscape] \setupwhitespace[line] \starttext \showmakeup[hbox] \pagereference[one]\fakelines{10}{10} \pagereference[two] \pagereference[three]\fakelines{10}{10} \page \showmakeup[reset] \starttabulate \NC one \NC \at[one] \NC\NR \NC two \NC \at[two] \NC\NR \NC three \NC \at[three] \NC\NR \stoptabulate \stoptext %%%% end example When you process the example you get page 1 as output, but why is this the case. Take a look the the tracing information and you can see a "H" at the left bottom on page 1 which is missing on page 2, this is where ConTeXt places reference two. You get this "H" mark because \pagereference starts a new paragraph to ensure the is a anchorpoint but as a side effect you can end up with unwanted empty lines in your document, to test this change the argument of the first \fakelines from 10 to 12 and now the stray "H" appears at the top left on the second page but in addition you get 2 empty lines at the top (1 for the reference and another 1 for the parskip). Wolfgang
participants (4)
-
Bruce Horrocks
-
hanneder@staff.uni-marburg.de
-
Joel
-
Wolfgang Schuster