-
Notifications
You must be signed in to change notification settings - Fork 162
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cannot type curly brackets in engine-q #169
Comments
In theory, this line should take care of it. Do you mind running reedline with the flag -k (cargo run -- -k)? |
Building and compiling last commit on reedline's main branch prints:
Everything seems ok, there! |
Oohh... you see that your input requires SHIFT CONTROL ALT can you try adding that case to the line I showed you? And run again reedline |
Adding the following case allows me to write
However, the "phantom character" problem is still there. |
Would you mind opening a PR for the change? For the phantom character problem could you check if the non brace The cursor flickering is a known issue due to the current (re)paint implementation and shouldnt be related to the input side. |
That cursor flickering happens to me as well. I don't know why it does it. |
Could you try typing a |
@sholderbach I can open the PR with that change, no problem! |
On Linux I wasn't able to reproduce the phantom characters with Examples: |
Great @aslynatilla! |
I also tested typing in the middle of an existing line; the cursor jumps back to its "current" position, not the end of the line.
Instead, pressing Enter places a new line. Maybe this can reveal something more about the other problem - which probably is not related to the current issue, though. |
There is a brace matching logic that will continue to a new line if the brace is not closed included with the demo binary. so
should result in
but after
the program should exit. Implementation: Line 21 in e159f3f
|
My bad, then, since it looks like it works, consistently, as intended! (I didn't consider/notice that...!) |
Can you narrow down for which characters you observe the phantom character 👻 ? Maybe let's compare the signals with the enhanced |
It looks like it is related to typing anything that requires EDIT: Also note that running with
...one of the Backspace inputs is not considered. However, pressing another "normal" key works as intended and you may continue typing. |
@aslynatilla forgot to mention, could you add the same case for the vim event file? |
Support for Shift-AltGr is required for several European keyboards (e.g. italian) #169 #136 #139 #171 * Curly braces fix * Curly braces fix for vim events Co-authored-by: Antonio Natilla <[email protected]>
@aslynatilla On which platform/terminal emulator are you testing? |
@sholderbach I forgot about the Typing My gut feeling says it might be something related to |
OK either we deal with an invisible character/unicode scalar on the reedline side or there is a bug on the crossterm side. |
Tried a run with
It apparently makes sense. The same considerations from above are still valid. You need to press Backspace twice to delete a bracket, if it is the last printed character; it "goes back to normal" if you typed something after that - you can delete both the following character and the bracket by pressing Backspace twice. |
@aslynatilla I would vote for closing the issue here as your fixed the direct input problem with your PR. Would you mind describing the issue of the invisible character to delete on crossterm's bugtracker with info regarding platform, terminal emulator etc.? |
I won't probably be able to do it tonight, but... it's definitely something I can do in the next days! Should I quote this issue? |
While I was documenting the bug on |
Can you reproduce the same issue with the mainline |
OK after discussing with @aslynatilla the remaining invisible character issue seems to be stemming from VS codes internal terminal and key detection. No need to file with |
After building and running
engine-q
, I cannot type{
or}
.I use an italian keyboard, where opening and closing curly brackets implies pressing: Shift + Alt Gr + Key.
Note that even just typing
[
or]
seems to present a problem, and it implies pressing: Alt Gr + Key.In this case, the square brackets are printed, but they can only be cancelled by pressing Backspace twice; it looks like "two characters were pushed" instead of one.
The text was updated successfully, but these errors were encountered: