0 votes

A team I’m helping would like the name of God to display as all caps (not small caps). What do I need to put in Changes.txt to get the contents of \nd…\nd* to display as all caps?

PTXprint by (132 points)

2 Answers

0 votes

Hmm. if you want it to apply to all letters, not just a few given sequences, then that sounds more like a ‘translation’ problem than a regular expression substitution. I don’t think python’s regex module can do that, unless you had a whole load of "a">"A" entries.
I guess you could use the TeX primitive \uppercase, and the private-use-area characters U+FDEE and U_FDEF, which we make available as alternatives to { and } respectively (as they are printable characters in USFM, not grouping characters). Hopefully ptxprint will at most moan about uppercase not being a recognised marker, but it might crash you use this in a diglot):

"(\\nd )([^\\]*)(\\nd\*)" > "\1 \\uppercase\uFDEE\2\uFDEF\3"

This of course depends on XeTeX’s idea of what’s upper-case for your characters, and it might need to be educated if you have any more interesting letters.

by (608 points)
0 votes

Ruth, are you saying that the scripture text is already marked up with something like \nd Lord\nd* but you want it to show up as LORD? (not small caps)

Why not try a very simple change like this (substituting your language’s name for God) to see if it solves the problem:

"\\nd Lord\\nd\*" > "LORD"

Note that the double \\ is needed because \n is a special character and needs to be ‘escaped’ with an additional \.

by (2.4k points)
reshown

mjpenny is of course correct, I assumed that you needed something more complex (e.g. due to affixation). If you are struggling with affixation, the team might want to think about whether it would look better with only the name portion of the word in all-caps. (Some romani translatoins have RAIesqo [of the LORD], for example). That can be done with either \nd Rai\nd*esqo and a changes.txt like mjpenny gives, Or there are also sub-matches.
I think the format is:

in "\\nd .*\\nd\*": "Lord" > "LORD"

(Meaning change Lord to LORD, when it’s in a chunk \nd ....\nd*)

For testing purposes, I’d be very tempted to enable coloured text and set a colour for text marked as \nd (see the styling tab), just in case something goes wrong. If you are doing this, then mjpenny’s example would also include the \\nd bits in the right hand side of the arrow.

Related questions

0 votes
6 answers
0 votes
2 answers
PTXprint Feb 28, 2023 asked by mnjames (1.6k points)
0 votes
6 answers
PTXprint Feb 20, 2021 asked by anon054969 (123 points)
0 votes
2 answers
Paratext Oct 15, 2019 asked by binoy (327 points)
0 votes
3 answers
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
And let us consider how we may spur one another on toward love and good deeds, not giving up meeting together, as some are in the habit of doing, but encouraging one another—and all the more as you see the Day approaching.
Hebrews 10:24-25
2,479 questions
5,174 answers
4,872 comments
1,283 users