I ended up creating an API that only replaces strings outside of quotes in this commit however it breaks a number of use-cases that uses nested filters within whitespace syntax, e.g:
This needs to replace the {} in select('{it}\n') that using the new API doesn’t replace and we can’t use select('{{it}}\n') because {{ }} are global markers which identify the start and end of a filter, the only solution would be to use an external assigned variable or partial for all sub expressions which is cumbersome.
As it can’t support both use-cases I’m going to retain the existing behavior where all { } within a whitespace expression are replaced with {{ }} which means you wont be able to use '{0:00}' | fmt(it) inline and would need to either use an external variable, e.g: