Pressing Ctrl+Space in the code editor shows a popup of possible completions for the current word. However its definition of "current word" does not include the period . or other non-ASCII characters. As a result, the auto-completion shows incorrect results if you have a period in what you typed.
This behavior is reproducible as far back as 7.0.0, which is when auto-completion was first implemented.
The problem is thatCLogoCodeCtrl::AutoComplete() calls wxStyledTextCtrl::WordStartPosition to get the start of the procedure, but CLogoCodeCtrl is configured with the default work break characters, which includes the period.
How Reproducible:
Every Time
Steps to Reproduce:
1) In an logo editor (including the commander) type .SET
2) With the cursor positioned just after the "T", press Ctrl+Space
What Happens:
A popup appears with choices like SETACTIVEAREA, SETBITINDEX, and SETBINMODE.
Selecting one of these leaves the dot in-place at the beginning. For example, selecting SETACTIVEAREA results in .SETACTIVEAREA, which does not exist.
What Happens:
A popup appears with choices like .SETBF, .SETFIRST, and .SETITEM.
Selecting one the first one changes the text to match the selection.
This is fixed by [r5202]. The fix will be available in FMSLogo 7.7.0.
Related
Commit: [r5202]