Skip to content
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

[Bug] Shift-Backspace doesn't work in pattern editor #1409

Closed
1 task done
arcusmaximus opened this issue Nov 9, 2023 · 9 comments
Closed
1 task done

[Bug] Shift-Backspace doesn't work in pattern editor #1409

arcusmaximus opened this issue Nov 9, 2023 · 9 comments
Labels
bug Something isn't working

Comments

@arcusmaximus
Copy link

Operating System

Windows

What's the issue you encountered?

In single-line text editors like those in the Find tab, Shift-Backspace does the same as Backspace as expected. In the Pattern editor, however, this doesn't work - meaning that if you make a mistake while typing an all-caps enum member, you need to let go of Shift, hit Backspace, and hold down Shift again, which gets a bit annoying after a few times.

How can the issue be reproduced?

Place the focus on the Pattern editor and, with Shift held down, press A and then Backspace. The A you just typed is not deleted.

ImHex Version

1.31.0 d12f501

ImHex Build Type

  • Nightly or built from sources

Installation type

Portable

Additional context?

No response

@arcusmaximus arcusmaximus added the bug Something isn't working label Nov 9, 2023
@Nemoumbra
Copy link
Contributor

The pattern editor is like a black box that we can't influence. It's really faulty, but there is a workaround - you can use the VS Code extension to write the code there and sync it with ImHex. The name is hexpat-language-server.

@arcusmaximus
Copy link
Author

Thank you for the suggestion. I installed the extension and sadly found it to be worse:

image

Include files aren't found despite the base path being set up correctly in the extension settings. Syntax hilighting is all over the place despite VSCode applying the "Hexpat" file format and its Hexpat Language Server log showing that it works. (Installing the separate extension "Imhex Hexpat support" doesn't help.) Also, I wouldn't know how to synchronize with ImHex - the extension's page doesn't tell you how to do it, and pressing F5 does nothing. ImHex's builtin "Auto evaluate" feature, which I find to be very handy, presumably can't be replicated at all.

I understand this is a third party component which is out of your hands, but would it at least be possible to log a ticket over there?

@StArBoY-Works
Copy link

@WerWolv Assign me this issue too

@paxcut
Copy link
Contributor

paxcut commented Nov 10, 2023

The extension is not integrated into Imhex so for now it cannot be used as a full replacement for the editor, but I know the headers work correctly once you set it up properly.

I don't think it is hard to add the shift key so that delete works, but the issue is that there are so many other things that the editor needs first (like a search/replace) than adding little tweaks like this doesn't seem worth the effort.

I think there is a key mapper that has been discussed before that would allow users to choose what each key does. Why not use Caps lock instead of shift in the mean time? There are also things like AutoIt that allow you to customize how input devices map to functions.

@Nemoumbra
Copy link
Contributor

Not to mention stuff like
image

@paxcut
Copy link
Contributor

paxcut commented Nov 10, 2023

The problem is not the fact that it is third party, but original project seems abandoned. I did find a fork which has a find function implementation and was updated just last week with hundreds of commits after the original. Find it here.

Also note that the same person submitted a pr to the project that implements a ctrl -delete function to the editor here.

@arcusmaximus
Copy link
Author

arcusmaximus commented Nov 10, 2023

That updated text editor would certainly be good to have. I only seriously started using ImHex yesterday, so I didn't discover yet that this 150MB program with node-based data transformation and 3D visualization doesn't have search&replace 😅

Concerning your other suggestions - a key mapper seems overkill for this, and Caps Lock would mean an extra keypress even if I don't make a typo. The VSCode extension is so broken for me that it complains about syntax errors inside comments. So until ImHex's builtin editor is updated, I'll probably just live with its limitations.

@paxcut
Copy link
Contributor

paxcut commented Nov 10, 2023

When I first started using ImHex the lack of search/replace in the pattern editor (there is search elsewhere) has always been the only reason that made me wonder if it was a good idea to switch, but by then I had already read the long list of really cool features so there was simply no contest.

The key mapper is not just to help this issue. It was discussed in the context of implementing a way to allow users to choose the shortcuts they are comfortable using which for some it of the utmost importance. I don't consider the last Caps lock to be an extra key when one hand is stuck at the shift key while I type a possibly long name which is why I suggested it, but i am terrible at typing so I see your point.

The pr implementing the ctrl - delete may be an easy way to find what exactly needs to be changed in the black box. I am currently working on a massive upgrade to the 3-d visualizer (funny you mentioning that) but I'll take a look as to whats needed sometime soon. I really want that find/replace function if it works.. it is boost based so we'll see.

@arcusmaximus
Copy link
Author

WerWolv closed this as completed

Nice, thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

4 participants