+2
2.0k 次浏览

大家好,我想讨论一下在数字出版时代不换行空格(no-break spaces,U+00A0)的问题。

我工作在一个官方双语(法语和英语)的国家。在英语国家,不换行空格和半角空格很少见。你可能会在 1·Chronicles 的各部分之间发现不换行空格。

相比之下,我们大多数来自法语区的翻译人员希望遵循法语的空格规则。在法语世界,标点符号(; ! : ? « »)前后需要空格。不换行空格通常用作大数字中的千位分隔符,例如 1·000(数字设置 - 千位分隔符被重置 - #3 by jeffh)。出版标准各不相同,但这种情况的理想候选者通常是普通不换行空格(U+00A0)和窄不换行空格(U202F)。这可以防止结束标点符号被挤到下一行,尤其是在多栏布局中。这些空格使文本能够在世界各地的计算机上流畅显示。标准空格(U+0020)、细空格(U+2009)和发丝空格(U+022A)宽度各异,但无法提供必要的孤行保护。

一些工具选择将不换行空格可视化为淡点或灰色方框。Paratext 会自动将不换行空格(U+00A0)替换为一个巨大的波浪号(~,U+007E)。在当前的版本中,输入 00A0 并按下 ALT-X 会将本应是不换行空格的地方替换为普通空格(0020),这完全是错误的。这个巨大的波浪号非常分散我们翻译人员的注意力,因此大多数时候,法语翻译人员被指示使用普通空格,或者不在标点符号前使用空格,并理解排版人员会在打印前的最后一刻根据他们的决定来标准化空格。我完全意识到,在预览模式下,巨大的波浪号会被替换为不换行空格,并且可以通过 Print Draft 更改或 ptxPrint 进行替换。有创意的技术人员可以配置 PTX print 在这些字符前插入空格,但那样它们在 Paratext 中就完全看不见了。

来自 Paratext 文档:

因此,Paratext 不再支持使用不换行空格。如果你想在文本中使用不换行空格,你应该在不换行空格的位置输入波浪号。这些可以在排版时转换为不换行空格。在文本中输入的波浪号在预览视图中显示为不换行空格。

如果这是很少见的情况(就像在英语中那样),我也不会担心,但在法语文本中,几乎每段都会出现。我的担忧是:1) 波浪号对于花费时间在标准视图中的翻译人员以及那些从他们肩膀后阅读的人来说是分散注意力的;2) 在数字出版和共享的时代,这种限制站不住脚。

技术上,~one~can~get~by~and~publish~via~the~intervening~tildes。现场工作人员对波浪号的反应是忽略不换行空格直到排版,这已经不可行,因为文本不仅由排版人员准备用于打印。单本书在当地出版,数字版本被放入 DBL 并提供,并且制作了 Scripture Apps。这意味着在 Paratext 版本中具有“最终”空格变得越来越重要,而 Paratext 仍然没有“真正”支持这一点。(我今天刚发现窄不换行空格(U202F)没有视觉指示器,但谢天谢地它不会被波浪号化。)关于 U+202F 的不一致显示/处理(它应该更窄)在这里有讨论(项目中删除 Unicode 202F ("narrow no break space"))

LibreOffice 使用灰色方框来区分不换行空格和普通空格。Word 的显示/隐藏功能使用空心圆圈表示不换行空格,使用居中点表示普通空格。

Paratext 开发人员是否考虑过在界面中弃用波浪号,并使用更清晰、更不分散注意力的东西?这需要更改 USFM,还是只需更改 Paratext?翻译人员已经习惯于文本中灰色的元数据,如 USFM 标记。在标准视图中使用淡灰色的点 · 来区分特殊空格和普通空格会有帮助,对吧?改用灰色方块将显示不换行特性和长度,我想这就是 LibreOffice 选择它们的原因。这将是一个跨文化兼容性的巨大胜利,我希望其他在法语世界工作的人能发表意见。@jeffh @dhigby @anon023887 ?

我从这篇帖子(不换行空格问题)中了解到,波浪号化是为了对抗 Internet Explorer 的一个交替问题。即使现在,网页中两个连续的空格也需要至少一个转换为 NBSP。是的,视觉上区分空格很难,但团队仍然必须标准化它们。
~ Matthew_Lee
语言技术顾问
SIL 喀麦隆

更糟糕的是,Paratext 帮助将不换行空格视为需要根除的祸害(见下文)。

为什么我在文本中看到波浪号而不是空格?
不换行空格是看起来像空格但不允许…
不换行空格是看起来像空格但不允许在该位置换行的字符。打开包含不换行空格的文本时,如果你发现这些空格似乎被波浪号字符(~)替换了,这是故意的。Paratext 通过显示波浪号使不换行空格可见。
关于这一点我至少需要知道什么?
早期版本的 Paratext 偶尔会错误地在不换行空格的位置插入普通空格。因此,如果你在文本中某个你确信不需要不换行空格的地方看到偶尔出现的波浪号,你可以直接用空格替换波浪号。
如果我想一次性解决这个问题怎么办?
如果你没有有意在文本中插入任何不换行空格或波浪号,因此想要删除所有不换行空格和波浪号,请遵循选项 1 中的说明。如果你不确定波浪号或不换行空格是否有意插入,请在删除所有之前咨询你的 CAP 支持人员,否则你可能需要手动重新输入它们。

             Option 1 (To get rid of all no-break spaces and tildes):
             
                Click the tab of your project to make it the active tab.
                From the Tools menu, point to Advanced and then select Replace No-Break Spaces With Normal Spaces.
                Read the warning message and click Yes if you are sure you wish to continue.

        If your project has been following the USFM manual and so has been manually inserting tildes either to represent no-break spaces or for some other function, follow the instructions in Option 2. Doing this sooner rather than later prevents Paratext from inserting any more occasional unwanted tildes.

             Option 2 (To get rid of no-break spaces, but keep all tildes):
             
                Click the tab of your project to make it the active tab.
                From the Tools menu, point to Advanced and then select Replace No-Break Spaces With Normal Spaces But Keep Tildes.
                Read the warning message and click Yes if you are sure you wish to continue.
        
         See also:
        
          Important information about no-break spaces and tildes
机器翻译自 English
Paratext (231 分) 发布
已重新显示 | 2.0k 次浏览

11 个回答

+1
最佳答案

Yes, I agree with Matthew_Lee that this is an important issue, especially in the French-speaking world.There are a number of things I want to mention in my analysis, but I will try to summarize (TLDR) at the bottom of this post.

A little online research shows some interesting things, which are not really “beside the point”:

image

And some humorous failures (where they obviously were using a normal space - that broke in this case):

image

That’s exactly what we want to avoid - bits of punctuation not connected to its associated text. So if we are going to use a some sort of space character to set off punctuation, we must ALWAYS use a non-breaking space of some sort.

The main two options are the full No-Break Space (NBSP, U+00A0), or the Narrow No-Break Space (NNBSP, U+202F), whose definitions can be found in the Unicode standard, at https://unicode.org/charts/PDF/U0090.pdf and https://unicode.org/charts/PDF/U2000.pdf, respectively:

image
image

As you can see, the definition of the NNBSP says it is typically the width of a thin space, which is defined in that same chart as :

image

So a NNBSP would typically be a fifth of an em (0.2em). How big is a normal space or a NBSP? These metrics are font-dependent, but a rough calculation with the Charis SIL font shows that the space and NBSP characters are about 0.34em. The NNBSP is about 0.22em. This is a significant difference, and if you use a NBSP (or as a temporary measure a regular space, which has the disadvantage of breaking across lines) around punctuation, the typesetters I know will say that that space is too large. Using the NNBSP helps significantly, and can be done fairly easily in PTXprint with changes like the following lines in PrintDraftChanges.txt:

' *:'  >    '\u202f:'     # Place non-breaking thin space before colon
'« *' >    '«\u202f'     # Place non-breaking thin space after opening guillemets
' *»' >    '\u202f»'     # Place non-breaking thin space before closing guillemets
'‹ *' >    '‹\u202f'     # Place non-breaking thin space after opening guillemets
' *›' >    '\u202f›'     # Place non-breaking thin space before closing guillemets

This puts a NNBSP before or after (as necessary) the punctuation, and also removes any spaces that are there (if any). That means that whether or not the team puts in spaces, they will be normalized to NNBSP characters. E.g. in this project the team is inconsistent and uses (regular) spaces around question marks and colons, but not around quote marks (guillemets):

Note that you can see that these are just regular spaces if you adjust the zoom and/or pane size just right, as they will allow a break across a line, like this:

But the changes above should be able to handle both those cases OK, and insert the NNBSP for the typesetting.

In a similar way, you would want to put change rules in your SAB projects, to make sure that your Scripture apps handle the spaces properly. Check out this post for sample rules: https://community.scripture.software.sil.org/t/suggestions-for-changes-gallery/590/3.

Note that the rules in this post do not handle the space or no-space as elegantly as the rules above, but you can adjust them with tricks like the " *" used above.

And one further point before we get to Paratext… In recent typesetting jobs we have actually used one tenth of an em (0.1em) as space around the punctuation, i.e. smaller than NNBSP. Here is the punctuation definition we used:

\catcode`\:=\active \def:{\unskip\kern0.1em\char`\:{}} % colon

Note: this was done in XeTeX, but the same could be done with PTXprint. I believe you would want it defined in the ptxprint-mods.tex configuration file available on the Advanced tool tab. This gives a fairly minimal space around the punctuation, as seen in this sample:

But the teams have felt that that is sufficient space to meet their felt need of space around the punctuation that is required in French. (Of course, the French may disagree, but it’s not their language!)

Conclusion (TLDR): So what does this mean for Paratext?

If the team uses regular spaces in the text to offset their punctuation, then sometimes it will appear incorrectly on their screen in Paratext (i.e. with punctuation not properly attached to its text, as shown above), which is distracting but not the end of the world. In this case, the onus is on the typesetter or app builder to change those regular spaces appropriately. Unfortunately, if this is the form that is put into the DBL (highly likely), then apps like YouVersion are going to have problems, because they notoriously DON’T handle those spaces appropriately.

Given this tendency to smaller and smaller no-break spaces to set off the punctuation (first the NNBSP at 0.2em, then manually typesetting at 0.1em with PTXprint) that I’ve seen in my typesetting projects, I almost always recommend that teams put NO spaces around their punctuation in Paratext, and then just trust the typesetting or app building to do the right thing around those punctuation marks. This means that when the text is put into the DBL, YouVersion is not going to have any hanging puctuation. (It won’t have spaces around the punctuation either, but that is a lesser problem IMHO.)

So with this specific plan of action, no changes are required in Paratext. If you wanted, as Matthew_Lee suggested, a way to show NNBSP or NBSP characters, I think that would be a good idea, but our keyboards would also need a way to type those characters (which they don’t always), and Paratext would need to know not to mess with those characters. (And punctuation inventories would need to show all of the combinations with those spaces, to make sure that they were being used consistently, e.g. always with a NNBSP.)

This post isn’t so much proposing solutions as providing more background and information. I really don’t like the way this tilde / NBSP stuff works in Paratext now, and agree that it should change. It seems like Paratext should assume that it should take every character in the text at face value, whether it is a tilde, NBSP or NNBSP. And a way to see them (subtly) would be nice. Should two or more spaces be automatically combined (responding to @anon942452)? Maybe if they are identical characters? That would still allow the automated Paratext spacing fix, but also provide some options for getting around it. And one would also need to come up with a way to deal with all of the legacy projects that have tildes for non-breaking spaces, maybe just a conversion, to convert them all to NBSP, once that’s handled properly in Paratext.

Anyway, some more food for thought…

(1.4k 分) 发布

东南亚的一些民族语言在短语之间使用空格,而不是在单词之间。使用这些文字的一些少数民族语言选择在每个单词之间使用普通空格,在短语停顿处使用更宽的空格。如果在 Paratext 中使用 EM SPACE(\u2003)来表示这些宽空格短语停顿,那么字符和标点符号清单会将 EM SPACE 视为构词字符而不是标点符号,这使得无法检查正确的序列。我已将此报告为 PTXS-31753。

当 jeffh 建议翻译者完全将法语空格从 Paratext 中省略时,他正在帮助确保 Paratext 中的文本无歧义地标记结构/含义,代价是呈现效果较差。当我建议在 Paratext 内部使用逗号而不是 EM SPACE 时,我也这样做。但用户有理由对这两个建议提出反对意见;我也非常偏好 Microsoft Word 中的所见即所得(WYSIWYG),而不是我在第一台计算机上使用的 WordStar 点命令。

我很希望看到 Paratext 添加一个“显示不可见字符”选项,例如,将空格字符显示为灰色方框。这个“显示不可见字符”功能对于在单词之间输入零宽空格(\u0200b)的语言将极其有益。目前,Paratext 建议在每个单词之间输入斜杠(/)。这个斜杠然后在除预览视图之外的所有视图中(难看地)可见。

我在想,法语区是否能找到一种字体,要么(1)使 ~ 不那么显眼,要么(2)根据上下文自动调整标点符号周围的空格。

祝福,
LivingField

机器翻译自 English

Paratext 有时迎合定制请求可能会造成损害。当定制在其他软件中不受支持,或者当它允许的选择与商业软件的发展方向背道而驰时,尤其如此。语言社区随后做出的选择对于 Paratext 之外的未来发展来说是死胡同。(当然,在其他情况下它也非常有帮助,只是问题复杂,需要仔细思考。)

但在这次对话中,我们谈论的是对商业软件中目前可用的选择以及一个已经普遍可用的工具的适应。如果以这种方式提出功能请求,我认为我们可以有所进展。也许最了解情况的人可以在列表外就如何最好地提出功能请求以及实际最需要什么进行单独的对话。

祝福,

机器翻译自 English
0

谢谢你,Matthew_Lee,你提供了有用且信息丰富的邮件。我没有什么解决方案可以提供,但我对这个话题非常感兴趣,并从你的详尽中了解到了更多。我特别在与 RTL 和 LTR 不可见字符的斗争中感到困难,这些字符影响了我们的复杂脚本。如果有一种方法可以使所有不可见字符稍微可见(或者也许用 ctrl 键打开/关闭可见性),那将有助于更容易地解决我们遇到的一些棘手问题。这种方法也可能使普通的不换行空格在 Paratext 中变得可行,尽管我不知道在编程方面使用它可能存在的其他障碍。

祝福,

机器翻译自 English
(1.3k 分) 发布
已重新显示
+1

亲爱的 Matthew_Lee,谢谢你提出这个问题。我工作在北美原住民语言,这些语言使用非罗马字母(加拿大音节文字),并且使用该文字的几种主要正字法使用各种宽度(三种宽度)的空格来表示词素和单词边界。在首选的音节字体中,普通单词空格 0020 明显更宽,在 Paratext 中表现良好。但窄不换行空格(U+202F)是普通单词空格宽度的 1/3。这种空格的使用在我们的语言中也是至关重要的——它需要在单词内部用作词素边界,并且(就像在法语中那样)用于将标点符号与句子末尾分开。最后,在许多情况下,需要第三种宽度的不换行空格。多年来,我们合作的语言社区一直连续使用两个窄不换行空格(U+202F U+202F)来提供前缀和词干之间的不换行空格,防止行尾孤行,并提供词干开始的视觉线索。这些的宽度相当于 2/3 个标准单词空格。

不幸的是,自 Paratext 7 以来,有一个 Paratext 算法会删除任何两个连续相同的空白字符,并用一个替换它们。我们不得不想出一个笨拙的变通方法,通过创建一个 Keyman 键盘来插入零宽不换行空格(U+200D),以防止 Paratext 将我们有意的双细空格(U+202F U+202F)替换为一个。

当我们将经文导出到 DBL 时,这种序列是不可接受的,所以我们必须先运行一个转换程序,将所有序列(U+202F U+200D U+202F)替换为“标准”不换行空格(在 Paratext 中,“波浪号”,即 U+00A0)。

总之,我想说的是,我支持你关于重新审视波浪号作为不换行空格的主题,原因如你所给,我想用一个使用三种不同宽度空格的脚本来发表意见。

诚挚地,anon942452 J

机器翻译自 English
(106 分) 发布

现代 Web 技术倾向于在未经询问的情况下压缩重复的空格,但通常允许在多种类型的空格之间交替使用。因此,网页设计师长期以来一直滥用空格,通过交替使用普通空格和不换行空格(nbsp)来代替设置缩进。@anon942452 发现了一种方法,可以以相同的方式覆盖自动清理垃圾代码的功能。

如果我理解得没错,我同意 @Shegnada 的观点,即允许用户在 Paratext 中执行那些在企业级工具中已经可以正常运行的操作,风险应该很低;但创建仅在 Paratext 中才能工作的全新自定义工作流程,会让社区在未来面临识字率和出版方面的挑战。我曾见过有人把自己困在修改过的字体和旧宏中。

我希望 Paratext 能够学会支持所有这些空格,从而使 Paratext 项目成为黄金标准。

第一个挑战是接受这些空格,并允许它们传递到 DBL 以及数字/印刷出版流程中。也许我是个乐观主义者,但移动应用、inDesign 和 HTML 不应该有问题,因为在建议的字体中,这些只是 Unicode 字形。TeX(PTXPrint)需要一点预处理,但 TeX 中存在管理此问题的工具。如果像 YouVersion 这样的下游工具需要学习使用高级空格/换行符,那值得进行讨论。

第二个挑战是在 Paratext 中更轻松地处理高级空格。我非常希望看到不换行空格显示为灰色方块。标点符号工具可能可以直接使用,因为它已经显示组合的 Unicode 值。

机器翻译自 English
0

我认为作为一个初步提案,我们可以要求 Paratext 在“项目视图”(Project View)菜单中添加一个“显示隐藏格式”(Show hidden formatting)选项。在 Word 中执行此操作时,对于三个普通空格、三个不换行空格(NBSP)和三个窄不换行空格(NNBSP,202F)的序列,你会得到以下结果:
image
在 LibreOffice Writer 中,你会得到:
image

LO Writer 不显示 NBSP,而且两者都不显示 NNBSP。要成为黄金标准,我们希望做到这一点。但你也不希望为每种可能的隐藏格式使用不同的符号,所以我们是否应该改为显示字符代码,除了像空格和 NBSP 这样的几个主要字符(它们会有符号),也许采用小的对角线图案?比如这样:

我认为以不同的颜色显示隐藏格式很有帮助。Matthew_Lee 建议灰色,LO Writer 使用蓝色,Word 则继续使用黑色。我也喜欢灰色的想法,但难点在于找到正确的灰色色调,使其可见但又不显眼。

显然,如果我们显示字符代码,那么字符的实际宽度就无从谈起了。在 Word 或 LO Writer 中显示隐藏格式时也是如此。

至于 Paratext 对空格的“简化”,我建议 Paratext 继续将多个空格压缩为单个空格,但仅限实际的空格 U+0020。其他任何空格或隐藏格式字符都应保留。

最终,我们可能希望有一些快捷键,以便直接在 Paratext 中输入这些隐藏格式字符,但就目前而言,我们可以依靠 AUTOCORRECT.TXT 和/或 Keyman 键盘来输入这些字符。

好的,这就是一个抛到竞技场里的想法……它的优缺点是什么?你们还有什么其他想法吗?

机器翻译自 English
(1.4k 分) 发布

这就是我所说的 LibreOffice (6) 显示 NBSP 的意思,正如我记忆中的那样:这甚至不是“显示所有字符”模式,只是普通视图。我相信这是默认设置。LO 7 中不是这样吗?

image

你说得对,它不显示 NNBSP(即使在显示所有模式下也是如此),但我们确实得到了方便的、可计数的点来表示 NBSP 和空格。

image

jeffh 的对角线提案很优雅,但我们需要一种包含这些字母的字体。现有的一些字体使用字母数字方块来显示字体的 Unicode 值。

image

我确实担心允许重复的非普通空格会导致多空格缩进,就像人们已经在 Word 中滥用这种可能性一样,但这与其他 Web 标准的文本流动方式是一致的。

我的键盘上有 NBSP 已经好几年了,但我也有像 dagger(†)、版权符号(©)和空心圆圈这样的字符。

机器翻译自 English

在我的 LO Writer 7 配置中,工具 - 选项 - LibreOffice Writer - 格式辅助(Tools - Options - LibreOffice Writer - Formatting Aids)中有一个选项被禁用了,“不换行空格”(Non-breaking spaces)选项处于关闭状态。开启后,我确实得到了你所说的灰色方块:
image
但不是点……

机器翻译自 English
+1

这是一次非常令人鼓舞的对话。很高兴能了解到在 Paratext 及其他工具背景下的需求以及潜在的解决方案。我预计这会是“对许多人有用”的功能,因此可能会优先于一些实用性较低的功能被考虑。

(顺便提一下——因为我觉得我看到了一些关于如何在键盘上输入标准键盘上不存在的字符的提及……对于还不知道的人来说,如果不使用第三方应用程序,可以通过使用 Windows 中的 Character Map(字符映射表)应用程序来更轻松地在键盘上输入不常见的字符。当您在字符映射表中点击某个字符时,对于许多字符,应用程序右下角会显示一个“Keystroke”(按键)快捷键。该快捷键可以通过按住 Alt 键并从numpad(数字小键盘,而不是字母上方的数字键)输入四个数字来键入。例如:Alt+0160 输入不换行空格 (U+00A0),Alt+0169 生成 © 符号,短破折号是 Alt+0150 –,而长破折号是 Alt+0151 —。)

机器翻译自 English
[Moderator]
(1.2k 分) 发布

已重新显示
0

仅就通过 DBL 进行数字出版发表一点评论。Paratext 上传器在创建我们与出版商共享的 USX 捆绑包时,会去除不换行空格。不幸的是,当文本以数字形式共享时,不换行空格历来会导致问题。

机器翻译自 English
(192 分) 发布

那如果不使用不换行空格呢?这是《生命之言》(Parole de Vie)的一页随机内容,这是一份备受尊敬的法语译本,在备受尊敬的圣经应用 YouVersion 中查看时的样子:

请注意高亮显示的断裂(问题)标点符号换行。每次看到这种情况我都会感到不适,而且我在从 DBL 提取的文本中经常看到这种情况,我猜想(我想象)这是因为有效的不换行空格被转换成了普通空格。

如果我们在 Paratext 中很好地处理不换行空格,那么我认为上传器在上传到 DBL 时不应该去除它们。所以让我们这样做吧!

机器翻译自 English

我同意它们“历来”会导致问题。在 Unicode 之前,这在所有方面都是正确的,但如果内容制作方和下游出版商仍然没有学会支持特殊空格,那么是时候让他们这样做了。

如今去除 NBSP 是一个错误,因为我们使用的显示技术(HTML、XML、TeX、inDesign)都有一个处理正确编码空格的过程,而且这些空格是许多世界主要和少数民族语言风格指南的一部分。Paratext 下的任何代码都有可能被更改,包括内部显示和 USX 导出。TeX 和 SAB 已经处理所有这些空格,否则 print-draft-changes 黑客手段在印刷草稿或 ptxPrint 中就不会起作用(也许 PTXPrint 的某人可以发表意见)。如果 USFM 和 USX 标准目前不允许不换行空格,它们需要被修订。

我知道这项更改需要对整个管道进行,但这并不使其重要性降低。Paratext、Chorus、USFM、USX 等都需要停止去除它们,并开始支持和显示它们。我怀疑主要的边缘情况是,如果有人选择用 NBSP 替换每个空格并导致行溢出。

在这里,在喀麦隆,我仍然将该语言中的 IPA 字符称为“特殊字符”,但鉴于我们拥有的广泛支持,这里的一位语言学家最近提醒我,我们应该只称它们为“字符”。无法支持文本中各种字符的工具正变得越来越少。最后的边疆似乎是支持命令行 Windows 软件中文件夹名称中的特殊字符。Windows 多年来一直支持这一点,但事情仍然会出错。

~Matthew_Lee

机器翻译自 English

你好 jeffh,

我已经将你的顾虑发送给了我们在 YouVersion 的朋友……尽管我相信将不换行空格转换为普通空格的过程是在 Paratext 上传器中完成的,而不是在 YouVersion(或任何其他出版商)端。

机器翻译自 English

感谢 @anon175865 与 YouVersion 的人员建立联系。是的,正如你提到的,我想象任何不换行空格在 DBL 中已经不存在了,被 Paratext 上传器去除了。所以这不是他们的错。不过,@Matthew_Lee 和我所说的是,我们需要修复我们的管道,以便 Paratext 能够舒适地并轻松地处理这些特殊空格,并且上传器不会去除它们。这样它们就会存在于 DBL 中,当 YouVersion 使用这些文本时,它们会在屏幕上正确显示。

机器翻译自 English
+1

WSTech 在这个帖子中讨论了一些问题,我想发送一个摘要:

  • 我怀疑显示的非常大的波浪号(用于 NBSP)来自 Charis SIL 字体。如果使用不同的拉丁文字体,波浪号的大小会改变吗?
  • 有一些字体可以自动调整标点符号周围的间距(在法语区是必需的),但似乎很少见。因此,插入所需的空格似乎是最佳方法。
  • 使用单独的字体来显示空格的 Unicode 值(即,不是用于文本的主要字体)应该可行。
  • PTXprint 可以处理各种空格字符。
机器翻译自 English
(185 分) 发布

WSTech 最近也调整了我们字体中空格的大小。为了向后兼容,拉丁文字体(可能还有其他一些字体)并不遵循我们对所有空格的新建议,只遵循部分空格的建议。

机器翻译自 English

听到来自这么多人(包括 WSTech 和 Paratext)的反馈,我感到很鼓舞。我们该如何推进此事?是否需要将其撰写为功能请求(feature request)并经过正常的优先级排序流程?

主要问题(可以分开处理)如下:

  1. 允许 NBSP 及本线程中提到的类似字符存在于 PTX/USFM/USX/DBL 管道中(并根据需要处理由此产生的显示问题)。这是首要且最重要的障碍。之后,我们可以在后续的项目中“修复”间距问题。
  • 这些字符需要在 PTX 标准视图和预览中正确显示。
  • 在标点符号和字符检查(Punctuation and Character checks)中被单独识别。
  • 在引号和数字设置(Quotation and Number settings)中被接受(注意 FLEx 在“配置词典”(Configure Dictionary)中使用点来表示空格)。
  1. 提供一种在 Paratext 内部可视化这些字符的方法。
  • 有人建议可以使用特殊的临时字体。
  • 有人建议始终显示灰色方块。
  • 类似 Word/LibreOffice 的“显示所有字符”功能。
    • 我的一位用户建议,显示/隐藏功能可以打开一个对话框(类似于“基本检查”(Basic Checks)对话框),允许用户指定要显示哪些特殊字符(普通空格、NB 空格、连接符、不换行连字符、双向标记、软回车和硬回车)。我可以想象技术人员希望高亮显示所有标记的情况(我在外部工具中经常这样做),也可以想象团队只需要高亮显示“特殊”标记的情况。
    • image

~Matthew_Lee

机器翻译自 English

是的,那是最佳选择。在任何功能请求中链接此线程也会有帮助。

对于不熟悉提出功能请求流程的人——它对所有 Paratext 用户开放。从 Paratext 的主菜单中选择 Help > Give feedback,然后在出现的表单中选择 Make a suggestion... 选项。

如果有人认为某个功能请求特别重要或有用,值得让负责您所在区域或组织的 Paratext 代表知晓此事。他们可能会选择在季度 Paratext 优先级会议上提出该请求。

机器翻译自 English
+1
机器翻译自 English
(231 分) 发布
已重新显示

我在 YouTrack 中添加的另一条评论:

不可见字符应列在字符和标点符号清单(Character and Punctuation inventories)中,这将是我们了解它们是否存在以及存在于哪些上下文中的最佳指示。它们还需要在引号设置(Quotation settings)([NBSP]”)、经文引用设置(Scripture reference settings)(1[NBSP]Kings)和数字设置(Number settings)(10[NBSP]000)中被允许作为有效的分隔符。这将涵盖许多使用场景。

机器翻译自 English
0

我来得有点晚,刚刚发现这个主题。

我对这些拟议的功能投 +1,或者更确切地说是 +100000。我从事另一种语言的工作,由于历史和共存的原因,其正字法试图尽可能接近法语。

我想提醒大家在做出任何技术更改之前先阅读关于法语的资料。法语排版甚至比外行人所知的更复杂。是的,某些标点符号周围有空格,但它们并不相同。例如,冒号前面(左侧)的空格应该是全尺寸的。

我有一份文档,收集自多个来源,而主要来源不幸已不再在线。

也有有用的纸质书籍,例如法国国家印刷厂(imprimerie nationale)的《排版规则词典》(Lexique des règles typographiques)以及 Yves Perrousseaux 的《适用于在 MAC 或 PC 上从事活动人员的法语排版书写规则》(Règles de l’écriture typographique du français à l’usage des personnes qui exercent une activité sur MAC ou PC)。

机器翻译自 English
(934 分) 发布
已重新显示
0

到目前为止,我们在 PT 中完全使用并接受了波浪号(tilde),就像其他人应对 XeTeX 一样,我对此表示钦佩——但我并不想成为他们那样的人。

通过应用程序和按经文部分频繁出版的逻辑也与我们的语境相关。而且波浪号必须很快被移除。

此外,更多的字体需要提供窄不换行空格(narrow-non-breaking)。似乎甚至不是所有 SIL 字体都提供。如果它们确实提供,请大声告诉我;那对我来说将是好消息,值得大喊一声。

为了现在输入波浪号(希望很快是 NNBSP),我为 PT 发明了一个巧妙功能,我使用内置的 autocorrect.txt 功能。例如,要获得波浪号加感叹号,我按三次感叹号,PT 会以正确的方式完成其余部分。我为所有需要特殊处理的标点符号都设置了这样的配置。

(我也使用此功能来输入常用词,如 Abraham、Jesus 或 Jerusalem。)

机器翻译自 English
(934 分) 发布
已重新显示

相关问题

0
4 个回答 532 次浏览
Tildes (used in USFMs as non-breaking spaces) disappear when the view is changed in Preview view, as expected. ... . Am I missing some step that would make these disappear?
Alex W. 191 发布 提问于 七月 13, 2018
0
0 个回答 171 次浏览
(anon451647 writes) This line (in PrintDraftChanges.txt) will change a plus sign to a thin space if it has a non- ... not match them (especially if they are non-Roman letters).
匿名用户 发布 提问于 四月 10, 2015
0
1 个回答 64 次浏览
由于很久没有查看词汇表(Wordlist),我很惊讶看到一个红色大框提到编码不一致 所以问题是是否要开启规范化(normalisation) 在阅读了以下建议后: 我们不建议选择 关闭(无规范化) ,除非 项目语言的拼写以非标准方式使 ... ɛ̀ɛ̀ ɔ̀,ɔ́ 这被认为是标准使用还是非标准使用? 关于如何处理此问题的建议或技巧都非常欢迎 Bart.
goodgoan 347 发布 提问于 十一月 13, 2024
0
0 个回答 156 次浏览
We are having difficulties in parts of Paratext 8 with non-roman front rendering. The Karenni Unicode font we are ... KB Paratext 8 Conflicts Display Problem.jpg1298 866 178 KB
anon281504 144 发布 提问于 二月 22, 2018
0
2 个回答 47 次浏览
我们的项目使用阿拉伯字母,且属于黏着语 由于我们语言的拼写要求,许多单词内部需要某种不换行空格 在 Paratext 9.5 发布之前,我们使用的是零宽不连字(zero width non joiner),但随着空白控制功能的引入,我们正尝 ... ? 我非常感谢 Paratext 开发团队希望将空白控制功能纳入程序的意愿 我预见这将是一个巨大的帮助!谢谢!
Nathaniel Shaver 102 发布 提问于 四月 16, 2025
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
For we were all baptized by one Spirit so as to form one body—whether Jews or Gentiles, slave or free—and we were all given the one Spirit to drink.
1 Corinthians 12:13
3,045 个问题
6,005 个回答
5,671 条评论
2,026 位用户