In /usr/bin/dotty line 8:
usage='echo "usage: dotty [-V] [-lm (sync|async)] [-el (0|1)] <filename>"'
      ^-- SC2089: Quotes/backslashes will be treated literally. Rewrite using set/"$@" or functions.


In /usr/bin/dotty line 11:
    set -- $DOTTYOPTIONS $*
           ^-----------^ SC2086: Double quote to prevent globbing and word splitting.
                         ^-- SC2048: Use "$@" (with quotes) to prevent whitespace problems.
                         ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
    set -- "$DOTTYOPTIONS" "$*"


In /usr/bin/dotty line 29:
        if [ "x$LMODE" != 'xsync' -a "x$LMODE" != 'xasync' ]; then
                                  ^-- SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined.


In /usr/bin/dotty line 30:
            $usage
            ^----^ SC2090: Quotes/backslashes in this variable will not be respected.


In /usr/bin/dotty line 38:
        if [ "x$MLEVEL" != 'x0' -a "x$MLEVEL" != 'x1' ]; then
                                ^-- SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined.


In /usr/bin/dotty line 39:
            $usage
            ^----^ SC2090: Quotes/backslashes in this variable will not be respected.


In /usr/bin/dotty line 45:
        FILES=`echo $FILES \"$1\"`
              ^------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
              ^------------------^ SC2116: Useless echo? Instead of 'cmd $(echo foo)', just use 'cmd foo'.
                    ^----^ SC2086: Double quote to prevent globbing and word splitting.
                             ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
        FILES=$(echo "$FILES" \""$1"\")


In /usr/bin/dotty line 49:
        $usage
        ^----^ SC2090: Quotes/backslashes in this variable will not be respected.


In /usr/bin/dotty line 53:
        FILES=`echo $FILES \"$1\"`
              ^------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
              ^------------------^ SC2116: Useless echo? Instead of 'cmd $(echo foo)', just use 'cmd foo'.
                    ^----^ SC2086: Double quote to prevent globbing and word splitting.
                             ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
        FILES=$(echo "$FILES" \""$1"\")


In /usr/bin/dotty line 65:
CMDS="dotty.protogt.layoutmode = '$LMODE';"
      ^--------------------------^ SC2089: Quotes/backslashes will be treated literally. Rewrite using set/"$@" or functions.


In /usr/bin/dotty line 67:
CMDS=`echo $CMDS dotty.mlevel = $MLEVEL";"`
     ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
     ^-- SC2116: Useless echo? Instead of 'cmd $(echo foo)', just use 'cmd foo'.
           ^---^ SC2090: Quotes/backslashes in this variable will not be respected.
           ^---^ SC2086: Double quote to prevent globbing and word splitting.
                                ^-----^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
CMDS=$(echo "$CMDS" dotty.mlevel = "$MLEVEL"";")


In /usr/bin/dotty line 70:
    CMDS=`echo $CMDS load \("'"$loadfile"'"\)";"`
         ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
         ^-- SC2116: Useless echo? Instead of 'cmd $(echo foo)', just use 'cmd foo'.
               ^---^ SC2086: Double quote to prevent globbing and word splitting.
                               ^-------^ SC2027: The surrounding quotes actually unquote this. Remove or escape them.
                               ^-------^ SC2086: Double quote to prevent globbing and word splitting.
                                           ^-- SC2140: Word is of the form "A"B"C" (B indicated). Did you mean "ABC" or "A\"B\"C"?

Did you mean: 
    CMDS=$(echo "$CMDS" load \("'""$loadfile""'"\)";")


In /usr/bin/dotty line 78:
    CMDS=`echo $CMDS $FUNC \($i, "'"file"'", null, null\)";"`
         ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
         ^-- SC2116: Useless echo? Instead of 'cmd $(echo foo)', just use 'cmd foo'.
               ^---^ SC2086: Double quote to prevent globbing and word splitting.
                                    ^--^ SC2140: Word is of the form "A"B"C" (B indicated). Did you mean "ABC" or "A\"B\"C"?

Did you mean: 
    CMDS=$(echo "$CMDS" $FUNC \($i, "'"file"'", null, null\)";")


In /usr/bin/dotty line 81:
leftypath=`which lefty`
          ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
leftypath=$(which lefty)


In /usr/bin/dotty line 89:
exec $leftypath $FLAGS -e "
     ^--------^ SC2086: Double quote to prevent globbing and word splitting.
                ^----^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
exec "$leftypath" "$FLAGS" -e "

For more information:
  https://www.shellcheck.net/wiki/SC2027 -- The surrounding quotes actually u...
  https://www.shellcheck.net/wiki/SC2048 -- Use "$@" (with quotes) to prevent...
  https://www.shellcheck.net/wiki/SC2089 -- Quotes/backslashes will be treate...