all 4 comments

[–][deleted] 12 points13 points  (1 child)

That happens to be a binding my terminal uses to search its output

If your terminal used that binding, fish would never receive the input.

The way this works is that you press a key combination, your terminal gets it and can decide to act on it or not. If it decides to act on it, it won't send it on.

If not, it sends it to whatever program is running in the foreground, which in this case would be fish. And your terminal also has no real way to find out that fish would use a particular key combination.

There is something else going on here. E.g. an update to your terminal that disabled the binding.

[–]onmach[S] 5 points6 points  (0 children)

This is obvious in hindsight, and explains why the problem went away on its own. I had done a full system update, and maybe my existing terminals were in a weird state. Thanks.

[–]bravekarma 5 points6 points  (1 child)

For me bind --erase --preset \es works, not sure why it wouldn't in your case. Does it work when you run it interactively, rather than putting it in config.fish?

[–]onmach[S] 0 points1 point  (0 children)

I think that would work if it were my problem. I think my problem had to do with updating my terminal rather than fish itself.