| # Converted from present_progressive.c with additional tests by buevest | |
| # Note that this test used to fail worse than it does now. The | |
| # current situation isn't hugely critical, though probably still | |
| # incorrect. | |
| # There are two key portions of the string: the "ing" (which gets | |
| # contracted to one character) and the double space at the end. When | |
| # translated, you get: "greetings " -> "greet+s " Notice that the | |
| # translation also contracts the double space into a single space. | |
| # With regard to cursor position, compbrlAtCursor is set, which means | |
| # that the word encompassed by the cursor will be uncontracted | |
| # (computer braille). This means that if the cursor is anywhere | |
| # within "greetings", the translated output will also be "greetings", | |
| # so the cursor positions are identical up to the end of the s | |
| # (position 8). | |
| # It gets more interesting at position 9 (the first space). Now, | |
| # greetings gets contracted, so the output cursor position becomes 7. | |
| # Still correct so far. | |
| # Position 10 (the second space) is the problem. Because | |
| # compbrlAtCursor is set, the current word should probably be | |
| # expanded. In this case, it is just a space. However, the two spaces | |
| # are still compressed into one, even though the second should have | |
| # been expanded. The translation has still contracted the second | |
| # space, even though it should have stopped contracting at the | |
| # cursor. | |
| # See also the description in | |
| # http://code.google.com/p/liblouis/issues/detail?id=4 | |
| # buevest: | |
| # To me, it looks as follows: | |
| # if compbrlAtCursor is selected, all compressed spaces in the string | |
| # are expanded. | |
| # The only exception is if the cursor is placed on the last of a | |
| # series of otherwise compressed spaces. Then that exact space is | |
| # removed, making 2 spaces into 1, 3 into 2 etc. | |
| table: | | |
| include tables/unicode-without-blank.dis | |
| include tables/spaces.uti | |
| include tables/latinLetterDef6Dots.uti | |
| math + 346 | |
| include tables/compress.cti | |
| midendword ing 346 | |
| tests: | |
| - - 'greetings ' | |
| - '⠛⠗⠑⠑⠞⠬⠎ ' | |
| - - 'greetings ' | |
| - '⠛⠗⠑⠑⠞⠊⠝⠛⠎ ' | |
| - mode: [compbrlAtCursor] | |
| cursorPos: [1,1] | |
| xfail: true | |
| # actual output: '⠛⠗⠑⠑⠞⠊⠝⠛⠎ ' | |
| - - 'greetings greetings ' | |
| - '⠛⠗⠑⠑⠞⠊⠝⠛⠎ ⠛⠗⠑⠑⠞⠬⠎ ' | |
| - mode: [compbrlAtCursor] | |
| cursorPos: [1,1] | |
| xfail: true | |
| # actual output: '⠛⠗⠑⠑⠞⠊⠝⠛⠎ ⠛⠗⠑⠑⠞⠬⠎ ' | |
| - - 'greetings ' | |
| - '⠛⠗⠑⠑⠞⠬⠎ ' | |
| - mode: [compbrlAtCursor] | |
| cursorPos: [9,7] | |
| - - 'greetings ' | |
| - '⠛⠗⠑⠑⠞⠬⠎ ' | |
| - mode: [compbrlAtCursor] | |
| cursorPos: [10,8] | |
| xfail: true | |
| # actual output: '⠛⠗⠑⠑⠞⠬⠎ ' | |
| - - 'greetings ' | |
| - '⠛⠗⠑⠑⠞⠬⠎ ' | |
| - mode: [compbrlAtCursor] | |
| cursorPos: [9,7] | |
| - - 'greetings ' | |
| - '⠛⠗⠑⠑⠞⠬⠎ ' | |
| - mode: [compbrlAtCursor] | |
| cursorPos: [10,8] | |
| - - 'greetings ' | |
| - '⠛⠗⠑⠑⠞⠬⠎ ' | |
| - mode: [compbrlAtCursor] | |
| cursorPos: [11,9] | |
| xfail: true | |
| # actual output: '⠛⠗⠑⠑⠞⠬⠎ ' | |
| - - 'greetings g' | |
| - '⠛⠗⠑⠑⠞⠬⠎ ⠛' | |
| - mode: [compbrlAtCursor] | |
| cursorPos: [11,9] | |
| xfail: true | |
| # actual output: '⠛⠗⠑⠑⠞⠬⠎ ⠛' |