Bug 129144 - Cycle case changes strings that are the same as the string where the cursor is placed
Summary: Cycle case changes strings that are the same as the string where the cursor i...
Status: RESOLVED DUPLICATE of bug 49033
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
6.3.3.2 release
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: Character CaseFolding
  Show dependency treegraph
 
Reported: 2019-12-02 17:20 UTC by sdc.blanco
Modified: 2021-10-18 10:42 UTC (History)
1 user (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description sdc.blanco 2019-12-02 17:20:38 UTC
How to produce the bug.

Variation 1:

1.  Make a sentence that has the same string (one or more times).

For example:

Another Text test text is twice Text Text.

2.  Place cursor within one of the "Text" strings.

3.  Shift-F3  (or Format > Text > Cycle Case)

Actual Result:  In the example:  All three "Text" are changed to lowercase.

Expected Result:  Only the "Text" with the cursor changes case.



Variation 2:  The string can also be within another "word".

1.  For example, try this text:  Here is another xHere text test.

2.  Place cursor on the first "Here"

3.  Shift-F3 (or Format > Text > Cycle Case)(a few times)

Actual Result:   The xHere is changed to "xhere" 

Expected result:  Only the "Here" with the cursor changes.

Additional information.

1. After the other non-cursor strings are changed, then further cycling with Shift-F3 only changes the word with the cursor.

2. I could not see any online (or offline) help that has any discussion of Cycle Case.
Comment 1 sdc.blanco 2019-12-02 17:46:55 UTC
Variation 3:

1.  Use this string:  Making hci theory work HCI.

2.  Using Shift-F3, and shifting the cursor to each "hci", try to make both "hci" be uppercase (i.e., HCI).

Actual result:  Impossible to do.

Expected result:  Able to make both "hci" into "HCI".


Additional information.  All the variations appear in:

Version: 6.3.3.2 (x64)
Build ID: a64200df03143b798afd1ec74a12ab50359878ed

and

Version: 6.4.0.0.beta1 (x64)
Build ID: 4d7e5b0c40ed843384704eca3ce21981d4e98920
Comment 2 V Stuart Foote 2019-12-02 20:01:55 UTC
The <Shift>+F3 cycle case inmplemented ICU libs transliterations expands the selection from Word bounds to Sentence bounds as it is cycled onto the Sentence case selection.. Useful if that is what you need, but making the 'cycle case' control erratic during use.

Anyhow dupe of bug 49033...

*** This bug has been marked as a duplicate of bug 49033 ***
Comment 3 sdc.blanco 2019-12-02 22:07:29 UTC
(In reply to V Stuart Foote from comment #2)
> The <Shift>+F3 cycle case inmplemented ICU libs transliterations expands the
> selection from Word bounds to Sentence bounds as it is cycled onto the
> Sentence case selection.. Useful if that is what you need, but making the
> 'cycle case' control erratic during use.
> 
> Anyhow dupe of bug 49033...

Not to dispute your judgement -- but just as a naive question -- I can see that this situation was "created" by adding the Sentence Case to Cycle Case (bug #116315). 

But when I look in Format > Text  then I can see the possibilities:  Cycle Case, Sentence Case, and tOGGLE cASE.   Given that these are broken out from each other, then I do not understand why that Sentence Case should be included in Cycle Case.

Or alternatively, as I understand from the discussion in bug #116315, some languages have an advantage with this configuration.  But as my example in Comment #1 shows, it is impossible to use Cycle Case for what should be an obvious and simple case.  Not a catastrophe, but inelegant. 

Would it would be meaningful to have an "option" to control whether "Sentence Case" is included or not in Cycle Case?
Comment 4 V Stuart Foote 2019-12-02 22:35:23 UTC
(In reply to sdc.blanco from comment #3)

Thoughts on how to handle things are as in cmt#57 of bug 49033 [1], that is to retain the sentence case rotation, but apply to selection only and suppress the expand to ICU lib sentence bounds keeping to just the word at cursor position when no selection has been made. With some potential to do more ambitious things.

But regardless to keep the 'Sentence case' UNO control in the 'Cycle-case' <Shift>-F3 widget.


=-ref-=

[1] https://bugs.documentfoundation.org/show_bug.cgi?id=49033#c57
Comment 5 sdc.blanco 2019-12-02 23:52:09 UTC
(In reply to V Stuart Foote from comment #4)
> (In reply to sdc.blanco from comment #3)

> But regardless to keep the 'Sentence case' UNO control in the 'Cycle-case'
> <Shift>-F3 widget.

Right. I was not proposing to remove it from the Case statement, but only to give the possibility to set in an Option (in Tools > Option) to choose whether to use the Sentence Case or not.  (If this is a stupid suggestion, then do not bother to answer.)

Meanwhile, thanks for explanations.  I can see (from comment 57 -- and other discussion) that it is a paradoxical problem (where satisfying some dissatisfies others) - presumably with no obvious solution.