kovidgoyal / kitty

Cross-platform, fast, feature-rich, GPU based terminal
https://sw.kovidgoyal.net/kitty/
GNU General Public License v3.0
24.12k stars 971 forks source link

Kitten hints should ignore current shell prompt #7224

Closed Xadeck closed 7 months ago

Xadeck commented 7 months ago

Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

I'm using Fish + Tide.

Screenshot from 2024-03-14 09-18-19 Screenshot from 2024-03-14 09-18-46

Describe the solution you'd like

There would be an option for Kitty hints to ignore the shell prompt. Naively, the shell integration seems to provide all the information so it feels like this shouldn't be too hard to achieve (but I haven't looked into it)!

Describe alternatives you've considered

I can't think of anything to workaround, apart from completely customizing the matching, but that seems like duplicating existing logic, and I will anyway have to come up with a broken heuristic to filter out the prompt (for the current prompt, that's probably easy: just ignore last 2 lines).

kovidgoyal commented 7 months ago

Not worth it as far as I am concerned. All it means is that there are a couple of extra matches found, which doesnt materially affect using the hints kitten. If it bothers you a simple solution would be to use a prompt style that replaces / as the path separator. For instance my personal prompt style uses powerline segments, or you could use U+2215 ∕ instead of /.

Note that your proposed fix of using shell integration doesnt really work, as shell integration tell you only while lines contain prompts not where in the line is part of the prompt and where it is the command you are typing.

Xadeck commented 6 months ago

The trick with a / like character in the prompt is a good idea. That should get rid of hints 5 and 2 in the screenshot.

I would still like to get rid of 1, because it is never the one I want (otherwise I would not trigger the kitten, I would just accept fish suggestion). If I could ignore that line entirely, I would be happy (yes, it means I could not get path already on that line, that's fine in my case).

I understand it's not worth the effort for you, thanks for having considered the FR and thanks again for the work on Kitty!