I cant decide if this is a bug or a feature, but this trips me up at least once a day. This example is sort of indicative of the majority of interface errors I run across with fish, having come from bash.
This command has a * in it, which has a slightly different series of consequences in this context for fish than for bash, so I hit this error:
> rake resque:work QUEUE=* COUNT=1 VERBOSE=1
fish: No matches for wildcard 'QUEUE=*'.
rake resque:work QUEUE=* COUNT=1 VERBOSE=1
As a result, I up-arrow, left-arrow over, and insert a backslash:
> rake resque:work QUEUE=\* COUNT=1 VERBOSE=1
With my cursor still positioned on the * after the backslash, I hit enter expecting the command to run. Instead, the query editor splits my line:
> rake resque:work QUEUE=\
* COUNT=1 VERBOSE=1
So, in order to get the command to run, I have to hit ^e or End before hitting enter.
As I said, I'm not entirely sure if this is expected behavior or a bug involving the editor. My instinct says probably the latter.
Yes 👍 for this. Also noticed and run in to this a lot and it bothers me. But I still kind of like it in the proper place where you'd like to split the line, so haven't come up with a better solution.
Maybe make sure it is a white space character after the \ to do a split.
Let's try terlar's suggestion. Now a backslash has to terminate a line, or be followed by whitespace, for the return key to break a line.
Thanks for taking the time to write a detailed bug report.
Return key should only insert a newline if backslashed character is w…
…hitespace, or backslash terminates the line