When writing a script I found that use of << causes problems with bash's ( ) notation. Ex: Run joe similar to this: $ joe test.sh Type in these 3 lines: #!/bin/bash (x = 1 << 2) if [ The 3rd line is incomplete, however, the "if [" is not colored correctly. By adding a space between the <<, the coloring becomes correct. Joe 3.3 did not have this problem. Have not tested on any versions between 3.3 and 3.7 I have joe 3.5-1, 3.5-1.1 and 3.5-2 incase I need to test with those versions. I modified my sh.jsf on line 42 from * inc buffer noeat to * idle Which fixes the problem for me. I know this is not the proper solution but I unfortunately don't understand the highlighting syntax.