1. Any function getting urls or math expressions (code expressions in general, in fact) is much more useable with noglob. And I have quite a few of such functions. 2. Probably an option set by oh-my-zsh is changing my which. I don’t want to disable such an option, though, since I greatly benefit from it. Another point I forgot; Aliases are generally not as good as functions, since you need to define the alias before you can use it. This introduces incidental complexity and a need to manage what came before what. > On Aug 15, 2019, at 7:55 PM, Daniel Shahaf wrote: > > Aryn Starr wrote on Thu, 15 Aug 2019 14:54 +00:00: >> A lot of functions need to be noglob. > > Why? What's the use-case? Maybe noglob isn't the right tool for the job. > >> My current workflow is to define the function as `function sth-raw()` >> and then `alias sth='noglob sth-raw'`. (I use different names so that >> I can use `which sth-raw` to easily inspect the source.) > > You don't need to use different names. «which foo» would only expand > «foo» if it were a global alias, which in your case it isn't. > >