blob: c152476abf89e51bb08efd25a5b62bc74a0f7885 [file] [log] [blame]
# There is a group of contractions that are represented by one letter
# only. If they come as single words, they should be abbriviated
# normally. But if they come as a part of bigger word, dots 36 must be
# placed before the character that represents the abbreviated word.
# This is the most problematic rule for me so far. I should define
# every contraction twice, one with the "word" opcode, and another
# with the "partword" upcode.
# When I used the "word" upcode, a big problem happens with
# back-translation: if the contraction is part of a word, NVDA
# automatically assumes that the character before the dots 36 is a
# contraction as well and automatically expand it. An example if the
# "word" upcode is used:
table: |
include tables/unicode.dis
include tables/ar-ar-g1.utb
word ربما 1235
partword ربما 36-1235
word ليس 123
partword ليس 36-123
word ولما 2456
partword ولما 36-2456
tests:
# As separate words it works just fine:
- - ربما ليس هو
- ⠗ ⠇ ⠓⠺
# As part of a word, it fails:
- - وليس
- ⠺⠤⠇
- xfail: true
# What happens is that it assumes both characters as contractions,
# but it should only consider the one after dots 36:
- - وليس
- ⠤⠺⠤⠇
# The first character in the word is not an abbreviation, yet NVDA
# assumes that it is a seperate word as soon as I put dots 36 after
# it, because it thinks it is a dash symbol, not a contraction
# indicator. In grade1, the word "وليس" will be "ولماليس"
# Another example:
- - لربما
- ⠇⠤⠗
- xfail: true
# Incorrect back-translation:
- - لربما
- ⠤⠇⠤⠗
# To temporarily work around this issue, I used the "lowword"
# upcode. This resulted in good back-translation, but disabled the use
# of all these abbreviations if they come connected with punctuation
# marks, which is not desirable.
table: |
include tables/unicode.dis
include tables/ar-ar-g1.utb
lowword ربما 1235
partword ربما 36-1235
lowword ليس 123
partword ليس 36-123
lowword ولما 2456
partword ولما 36-2456
tests:
# As a seperate word it works fine:
- - ليس
-
# Due to the use of "lowword", they will not be translated next to punctuations:
- - ليس ربما.
- ⠇ ⠗⠲
- xfail: true
# What happens:
- - ليس ربما.
- ⠇ ⠗⠃⠍⠁⠲
# It solves the issue of the character that comes before dots 36.
- - لربما
- ⠇⠤⠗