In Chinese typography, it is customary to present personal names with an
underline, and place names with a dotted underline. ( Maybe I've crossed
these.)

You might consider distinguishing between the two types of names.



On Sun, May 25, 2025, 11:44 AM David Haslam <dfh...@protonmail.com> wrote:

> Dear *Sword-devel* community,
>
> I wish to propose a new SWORD configuration key,
> *GlobalOptionFilter=OSISNamesBold*, to enhance digital Bible displays by
> rendering proper names (tagged as in OSIS XML) in bold. This feature would
> improve readability for Bible students, particularly in *unicameral*
> scripts like Thai, Chinese, or Hebrew, where *capitalization* isn’t
> available to distinguish names.
>
> With the help of *Grok* (x.ai) I have explored this idea using *Hosea 1*
> from both the *KJV* and *ThaiKJV*, bolding names like Hosea, LORD, and
> Israel (KJV) or โฮเชยา, พระเยโฮวาห์ (Thai). Such a filter would need to
> apply *CSS font-weight: bold* to tags, making names visually distinct in
> front-ends. For *unicameral* languages, this addresses the lack of
> uppercase cues, as demonstrated in *Thai* (where spaces are minimal) with
> a *ZWSP* workaround for adjacent names possibly due to a
> *MarkdownViewer++* bug.
>
> *Aside*: A key challenge for the *KJV* is disambiguating short words like
> “On” (a place in *Genesis 41:45*; a preposition elsewhere) and “No” (a
> place in *Jeremiah 46:25*; the negative determiner), which can be
> capitalized sentence-initially, risking mis-tagging. A robust name list and
> contextual rules (e.g., checking for geographical vs. grammatical roles)
> would be needed to avoid errors.
>
> For details, see our discussion
> https://grok.com/share/bGVnYWN5_ebe228fc-db77-4801-b244-7335aad0da21
>
> I also experimented with Unicode bold characters for names (e.g.,
> 𝐇𝐨𝐬𝐞𝐚) for platforms like Facebook, but CSS-based bolding is more
> reliable for SWORD.
> Even so, a tick box option to use the same kludge as used by
> https://yaytext.com/ would be a cool addition to (eg) the *Export passage*
> dialog in *Xiphos*.
>
> I’d love feedback on implementing this filter, including handling edge
> cases and ensuring compatibility across front-ends.
> I'm not one of the back-end software developers, but when this idea came
> to me on Friday, I simply had to try it out with *Grok*.
>
> Could we therefore discuss adding *OSISNamesBold* to the SWORD API?
>
> Here’s the KJV *Hosea 1* text with names in bold, pasted from a Markdown
> code block for easy copying: (styled using Grok's capabilities).
>
> Hosea 1:1: The word of the **LORD** that came unto **Hosea**, the son of
> **Beeri**, in the days of **Uzziah**, **Jotham**, **Ahaz**, and
> **Hezekiah**, kings of **Judah**, and in the days of **Jeroboam** the son
> of **Joash**, king of **Israel**.
> Hosea 1:2: The beginning of the word of the **LORD** by **Hosea**. And the
> **LORD** said to **Hosea**, Go, take unto thee a wife of whoredoms and
> children of whoredoms: for the land hath committed great whoredom,
> departing from the **LORD**.
> Hosea 1:3: So he went and took **Gomer** the daughter of **Diblaim**;
> which conceived, and bare him a son.
> Hosea 1:4: And the **LORD** said unto him, Call his name **Jezreel**; for
> yet a little while, and I will avenge the blood of **Jezreel** upon the
> house of **Jehu**, and will cause to cease the kingdom of the house of
> **Israel**.
> Hosea 1:5: And it shall come to pass at that day, that I will break the
> bow of **Israel** in the valley of **Jezreel**.
> Hosea 1:6: And she conceived again, and bare a daughter. And **God** said
> unto him, Call her name **Lo-ruhamah**: for I will no more have mercy upon
> the house of **Israel**; but I will utterly take them away.
> Hosea 1:7: But I will have mercy upon the house of **Judah**, and will
> save them by the **LORD** their **God**, and will not save them by bow, nor
> by sword, nor by battle, by horses, nor by horsemen.
> Hosea 1:8: Now when she had weaned **Lo-ruhamah**, she conceived, and bare
> a son.
> Hosea 1:9: Then said **God**, Call his name **Lo-ammi**: for ye are not my
> people, and I will not be your **God**.
> Hosea 1:10: Yet the number of the children of **Israel** shall be as the
> sand of the sea, which cannot be measured nor numbered; and it shall come
> to pass, that in the place where it was said unto them, Ye are not my
> people, there it shall be said unto them, Ye are the sons of the living
> **God**.
> Hosea 1:11: Then shall the children of **Judah** and the children of
> **Israel** be gathered together, and appoint themselves one head, and they
> shall come up out of the land: for great shall be the day of **Jezreel**.
>
>
> You'd need to paste it into a Markdown editor or viewer to see it as we'd
> wish SWORD to render it.
>
> For a better impression of what it might look like on screen, here's the
> same passage, but using the *YayText* kludge:
>
> Hosea 1:1: The word of the 𝐋𝐎𝐑𝐃 that came unto 𝐇𝐨𝐬𝐞𝐚, the son of
> 𝐁𝐞𝐞𝐫𝐢, in the days of 𝐔𝐳𝐳𝐢𝐚𝐡, 𝐉𝐨𝐭𝐡𝐚𝐦, 𝐀𝐡𝐚𝐳, and
> 𝐇𝐞𝐳𝐞𝐤𝐢𝐚𝐡, kings of 𝐉𝐮𝐝𝐚𝐡, and in the days of 𝐉𝐞𝐫𝐨𝐛𝐨𝐚𝐦
> the son of 𝐉𝐨𝐚𝐬𝐡, king of 𝐈𝐬𝐫𝐚𝐞𝐥.
> Hosea 1:2: The beginning of the word of the 𝐋𝐎𝐑𝐃 by 𝐇𝐨𝐬𝐞𝐚. And
> the 𝐋𝐎𝐑𝐃 said to 𝐇𝐨𝐬𝐞𝐚, Go, take unto thee a wife of whoredoms and
> children of whoredoms: for the land hath committed great whoredom,
> departing from the 𝐋𝐎𝐑𝐃.
> Hosea 1:3: So he went and took 𝐆𝐨𝐦𝐞𝐫 the daughter of 𝐃𝐢𝐛𝐥𝐚𝐢𝐦;
> which conceived, and bare him a son.
> Hosea 1:4: And the 𝐋𝐎𝐑𝐃 said unto him, Call his name 𝐉𝐞𝐳𝐫𝐞𝐞𝐥;
> for yet a little while, and I will avenge the blood of 𝐉𝐞𝐳𝐫𝐞𝐞𝐥 upon
> the house of 𝐉𝐞𝐡𝐮, and will cause to cease the kingdom of the house of
> 𝐈𝐬𝐫𝐚𝐞𝐥.
> Hosea 1:5: And it shall come to pass at that day, that I will break the
> bow of 𝐈𝐬𝐫𝐚𝐞𝐥 in the valley of 𝐉𝐞𝐳𝐫𝐞𝐞𝐥.
> Hosea 1:6: And she conceived again, and bare a daughter. And 𝐆𝐨𝐝 said
> unto him, Call her name 𝐋𝐨-𝐫𝐮𝐡𝐚𝐦𝐚𝐡: for I will no more have mercy
> upon the house of 𝐈𝐬𝐫𝐚𝐞𝐥; but I will utterly take them away.
> Hosea 1:7: But I will have mercy upon the house of 𝐉𝐮𝐝𝐚𝐡, and will
> save them by the 𝐋𝐎𝐑𝐃 their 𝐆𝐨𝐝, and will not save them by bow, nor
> by sword, nor by battle, by horses, nor by horsemen.
> Hosea 1:8: Now when she had weaned 𝐋𝐨-𝐫𝐮𝐡𝐚𝐦𝐚𝐡, she conceived, and
> bare a son.
> Hosea 1:9: Then said 𝐆𝐨𝐝, Call his name 𝐋𝐨-𝐚𝐦𝐦𝐢: for ye are not
> my people, and I will not be your 𝐆𝐨𝐝.
> Hosea 1:10: Yet the number of the children of 𝐈𝐬𝐫𝐚𝐞𝐥 shall be as the
> sand of the sea, which cannot be measured nor numbered; and it shall come
> to pass, that in the place where it was said unto them, Ye are not my
> people, there it shall be said unto them, Ye are the sons of the living
> 𝐆𝐨𝐝.
> Hosea 1:11: Then shall the children of 𝐉𝐮𝐝𝐚𝐡 and the children of
> 𝐈𝐬𝐫𝐚𝐞𝐥 be gathered together, and appoint themselves one head, and
> they shall come up out of the land: for great shall be the day of
> 𝐉𝐞𝐳𝐫𝐞𝐞𝐥.
>
>
> Now for the *ThaiKJV* implementation: (back to using *Markdown*)
>
> Hosea 1:1: พระวจนะของ**พระเยโฮวาห์**ที่มายัง**โฮเชยา**
> บุตรชายของ**เบเออรี** ในรัชกาลของ**อุสซียาห์** **โยธาม**
> **อาหัส**และ**เฮเซคียาห์** กษัตริย์ทั้งหลายแห่ง**ยูดาห์**
> และในรัชกาลของ**เยโรโบอัม** ราชโอรสของ**โยอาช** กษัตริย์แห่ง**อิสราเอล**
> Hosea 1:2: การเริ่มต้นของพระวจนะของ**พระเยโฮวาห์**โดยทาง**โฮเชยา**
> และ**พระเยโฮวาห์**ตรัสกับ**โฮเชยา**ว่า “ไปซี
> จงไปรับภรรยาคนหนึ่งสำหรับเจ้าจากพวกหญิงเจ้าชู้ และจากลูก ๆ
> ของพวกหญิงเจ้าชู้ เพราะว่าแผ่นดินนี้ได้กระทำการเล่นชู้ใหญ่ยิ่ง
> โดยการไปจาก**พระเยโฮวาห์**”
> Hosea 1:3: ดังนั้นท่านจึงไปและรับนาง**โกเมอร์**บุตรสาวของ**ดิบลาอิม**
> ผู้ซึ่งได้ตั้งครรภ์ และคลอดบุตรชายคนหนึ่งให้ท่าน
> Hosea 1:4: และ**พระเยโฮวาห์**ตรัสกับท่านว่า “จงเรียกชื่อของเขาว่า
> **ยิสเรเอล** เพราะว่าอีกไม่นาน
> และเราจะแก้แค้นให้โลหิตของ**ยิสเรเอล**บนวงศ์วานของ**เยฮู**
> และจะทำให้ราชอาณาจักรของวงศ์วานแห่ง**อิสราเอล**สิ้นสุดลง
> Hosea 1:5: และต่อมาในวันนั้น
> เราจะหักคันธนูของ**อิสราเอล**ในหุบเขาแห่ง**ยิสเรเอล**”
> Hosea 1:6: และต่อมานางก็ตั้งครรภ์อีก และคลอดบุตรสาวคนหนึ่ง
> และ**พระเจ้า**ตรัสกับท่านว่า “จงเรียกชื่อของเธอว่า **โลรุหะมาห์**
> เพราะเราจะไม่มีความเมตตาต่อวงศ์วานแห่ง**อิสราเอล**อีกต่อไป
> แต่เราจะเอาพวกเขาออกไปให้พ้นเสียอย่างสิ้นเชิง
> Hosea 1:7: แต่เราจะมีความเมตตาต่อวงศ์วานของ**ยูดาห์**
> และจะช่วยพวกเขาให้รอดพ้นโดย**พระเยโฮวาห์**‌**พระเจ้า**ของพวกเขา
> และจะไม่ช่วยพวกเขาให้รอดพ้นโดยคันธนู หรือโดยดาบ หรือโดยการสู้รบ
> โดยม้าทั้งหลาย หรือโดยเหล่าทหารม้า”
> Hosea 1:8: บัดนี้เมื่อนางให้**โลรุหะมาห์**หย่านมแล้ว นางก็ตั้งครรภ์
> และคลอดบุตรชายคนหนึ่ง
> Hosea 1:9: แล้ว**พระเจ้า**ตรัสว่า “จงเรียกชื่อของเขาว่า **โลอัมมี**
> เพราะเจ้าทั้งหลายไม่ใชะประชากรของเรา และเราจะไม่เป็น**พระเจ้า**ของพวกเจ้า”
> Hosea 1:10: แต่จำนวนของลูกหลานของ**อิสราเอล**จะเป็นเหมือนเม็ดทรายแห่งทะเล
> ซึ่งไม่สามารถถูกตวงหรือนับได้ และต่อมาในสถานที่ซึ่งเคยกล่าวแก่พวกเขาว่า
> “เจ้าทั้งหลายไม่ใช่ประชากรของเรา” ที่นั่นจะกล่าวแก่พวกเขาว่า
> “เจ้าทั้งหลายเป็นบุตรชายทั้งหลายของ**พระเจ้า**ผู้ทรงพระชนม์อยู่”
> Hosea 1:11: และคน**ยูดาห์**กับคน**อิสราเอล**จะถูกรวมเข้าด้วยกัน
> และจะแต่งตั้งผู้หนึ่งให้เป็นหัวหน้าของพวกเขา
> และพวกเขาจะขึ้นมาจากแผ่นดินนั้น เพราะวันของ**ยิสเรเอล**จะยิ่งใหญ่
>
>
> I tested these Markdown outputs successfully using the *MarkdownViewer++*
> plugin for *Notepad++*
>
> In order to test such a software enhancement we, would need to build a
> Bible module in which every name in the text was wrapped in the OSIS XML
> *name* element.
> There is such a module called *KJVX*. It was being developed as an
> eXperimental version of the *KJV* module several years ago, but it's now
> out of date compared to the more recent updates to our flagship KJV module.
> I can send it to any developer upon request.
>
> Having seen Grok's capabilities, it's now not beyond the realm of
> possibility to automate the tagging of names in any OSIS XML file using the
> most suitable LLM AI agent.
>
> Best regards,
>
> David
>
> Sent with Proton Mail <https://pr.tn/ref/SWXT9A5YZ67G> secure email.
> _______________________________________________
> sword-devel mailing list: sword-devel@crosswire.org
> http://crosswire.org/mailman/listinfo/sword-devel
> Instructions to unsubscribe/change your settings at above page
>
_______________________________________________
sword-devel mailing list: sword-devel@crosswire.org
http://crosswire.org/mailman/listinfo/sword-devel
Instructions to unsubscribe/change your settings at above page

Reply via email to