The shell lexer does not include the in keyword. In particular, the BashLexer class contains the following basic tokens:
if|fi|else|while|do|done|for|then|return|function|case|select|continue|until|esac|elif
which does not include in. Thus Bash code like
for i in 1 2 3; do
echo $i
done
is not lexed and formatted correctly with respect to in (unlike the rendering above as done by GitHub).
This is easily fixed by just adding in to the list of tokens. I believe the in keyword is not present for any of the shell lexers in lexers/shell.py, though I do not know which of the non-Bash shells also supports this keyword.
The shell lexer does not include the
inkeyword. In particular, theBashLexerclass contains the following basic tokens:which does not include
in. Thus Bash code likeis not lexed and formatted correctly with respect to
in(unlike the rendering above as done by GitHub).This is easily fixed by just adding
into the list of tokens. I believe theinkeyword is not present for any of the shell lexers inlexers/shell.py, though I do not know which of the non-Bash shells also supports this keyword.