fish-shell / fish-shell

The user-friendly command line shell.

Home Page:https://fishshell.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Alias escaping

DieracDelta opened this issue · comments

Version info: fish, version 3.7.0, NixOS 23.11.

Feature request, not a bug report. Is there a way to escape an alias? For example, I have cat aliased to bat. In bash and zsh, when I wanted to cat something using cat, I would do \cat and this would undo the alias. But in fish this syntax doesn't work. As a workaround I'm just doing \usr\bin\env cat in fish. I'm wondering if there's either: (1) a way to match the bash behavior (maybe using abbreviations?) or (2) plans to add this behavior.

Thanks!

Use command cat.

There is no need to make this a shortcut, and backslash is a terrible character to use for this given how overloaded it is (my theory has always been that the alias skipping is unintentional as a side-effect of the order expansions happen in - "cat" also skips the alias)

This syntax would not match fish's philosophy - we generally don't add sigil syntax for rarely used shortcuts, and it would also gel terribly with fish as it stands - in fish, \ca is the byte usually sent by ctrl-a (and e.g. \b is backspace). In bash, backslashes outside of $'' are basically vestigial syntax that will, for normal characters, just always yield the character - \x is x for any letter.