In /usr/bin/jw line 8:
SGML_HELP_MESSAGE="Usage: `basename $0` [<options>] <sgml_file>\n\
                          ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                                    ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
SGML_HELP_MESSAGE="Usage: $(basename "$0") [<options>] <sgml_file>\n\


In /usr/bin/jw line 62:
if [ $? -eq 0 ]
     ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/jw line 64:
  SGML_CONF=`sgmlwhich`
            ^---------^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
  SGML_CONF=$(sgmlwhich)


In /usr/bin/jw line 84:
  SGML_BASE_DIR=`grep $RE $SGML_CONF | sed "s/$RE//"`
                ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                      ^-^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  SGML_BASE_DIR=$(grep "$RE" $SGML_CONF | sed "s/$RE//")


In /usr/bin/jw line 86:
  SGML_CATALOGS_DIR=`grep $RE $SGML_CONF | sed "s/$RE//"`
                    ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                          ^-^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  SGML_CATALOGS_DIR=$(grep "$RE" $SGML_CONF | sed "s/$RE//")


In /usr/bin/jw line 107:
SGML_CURRENT_DIRECTORY=`pwd`
                       ^---^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
SGML_CURRENT_DIRECTORY=$(pwd)


In /usr/bin/jw line 181:
		  print|html)	echo "The marked section named \"$2\" is reserved for internal use by `basename $0`." >&2
                                                                                                      ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                                                                                                                ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
		  print|html)	echo "The marked section named \"$2\" is reserved for internal use by $(basename "$0")." >&2


In /usr/bin/jw line 190:
			printf "$SGML_WARNINGS_LIST\n"
                               ^---------------------^ SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".


In /usr/bin/jw line 198:
		        printf "$SGML_WARNINGS_LIST\n" >&2
                               ^---------------------^ SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".


In /usr/bin/jw line 205:
			printf "$SGML_ERRORS_LIST\n"
                               ^-------------------^ SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".


In /usr/bin/jw line 213:
		        printf "$SGML_ERRORS_LIST\n" >&2
                               ^-------------------^ SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".


In /usr/bin/jw line 218:
  -h|--help)	printf "`basename $0` - Jade Wrapper\n\n"
                       ^-- SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".
                        ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                                  ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  -h|--help)	printf "$(basename "$0") - Jade Wrapper\n\n"


In /usr/bin/jw line 219:
		printf "$SGML_HELP_MESSAGE\n"
                       ^--------------------^ SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".


In /usr/bin/jw line 222:
  -v|--version)	printf "$SGML_VERSION_MESSAGE\n"
                       ^-----------------------^ SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".


In /usr/bin/jw line 225:
  -*)		printf "$SGML_HELP_MESSAGE\n" >&2
                       ^--------------------^ SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".


In /usr/bin/jw line 236:
		  printf "$SGML_HELP_MESSAGE\n" >&2
                         ^--------------------^ SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".


In /usr/bin/jw line 246:
  printf "$SGML_HELP_MESSAGE\n" >&2
         ^--------------------^ SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".


In /usr/bin/jw line 249:
if [ ! -s $SGML_FRONTEND ]
          ^------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
if [ ! -s "$SGML_FRONTEND" ]


In /usr/bin/jw line 251:
  echo "`basename $0`: There is no frontend called \"$SGML_FRONTEND\"." >&2
        ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                  ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  echo "$(basename "$0"): There is no frontend called \"$SGML_FRONTEND\"." >&2


In /usr/bin/jw line 258:
  printf "$SGML_HELP_MESSAGE\n" >&2
         ^--------------------^ SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".


In /usr/bin/jw line 261:
if [ ! -s $SGML_BACKEND ]
          ^-----------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
if [ ! -s "$SGML_BACKEND" ]


In /usr/bin/jw line 263:
  echo "`basename $0`: There is no backend called \"$SGML_BACKEND\"." >&2
        ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                  ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  echo "$(basename "$0"): There is no backend called \"$SGML_BACKEND\"." >&2


In /usr/bin/jw line 270:
  printf "$SGML_HELP_MESSAGE\n" >&2
         ^--------------------^ SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".


In /usr/bin/jw line 273:
if [ ! -s $SGML_FILE ]
          ^--------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
if [ ! -s "$SGML_FILE" ]


In /usr/bin/jw line 275:
  echo "`basename $0`: Cannot open \"$SGML_FILE\"." >&2
        ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                  ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  echo "$(basename "$0"): Cannot open \"$SGML_FILE\"." >&2


In /usr/bin/jw line 280:
SGML_FILE_NAME=`basename $SGML_FILE`
               ^-------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                         ^--------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
SGML_FILE_NAME=$(basename "$SGML_FILE")


In /usr/bin/jw line 284:
SGML_XML=`head "$SGML_FILE" | grep "<?xml.*?>" | wc -l`
         ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                              ^--------------^ SC2126: Consider using grep -c instead of grep|wc -l.

Did you mean: 
SGML_XML=$(head "$SGML_FILE" | grep "<?xml.*?>" | wc -l)


In /usr/bin/jw line 285:
if [ $SGML_XML -eq 1 ]; then
     ^-------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
if [ "$SGML_XML" -eq 1 ]; then


In /usr/bin/jw line 292:
if [ "$SGML_DECL" = "" -a "$SGML_XML" = "xml" ]
                       ^-- SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined.


In /usr/bin/jw line 299:
  SGML_NORM=`which sgmlnorm 2>/dev/null`
            ^--------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
  SGML_NORM=$(which sgmlnorm 2>/dev/null)


In /usr/bin/jw line 300:
  if [ -z "SGML_NORM" ]
           ^-------^ SC2157: Argument to -z is always false due to literal strings.


In /usr/bin/jw line 302:
    SGML_NORM=`which osgmlnorm 2>/dev/null`
              ^---------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
    SGML_NORM=$(which osgmlnorm 2>/dev/null)


In /usr/bin/jw line 309:
	SGML_CENTRALIZED_CATALOG=`sh $SGML_FRONTEND centralized-catalog`
                                 ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                                     ^------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
	SGML_CENTRALIZED_CATALOG=$(sh "$SGML_FRONTEND" centralized-catalog)


In /usr/bin/jw line 310:
	if [ -s $SGML_CENTRALIZED_CATALOG ]
                ^-----------------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
	if [ -s "$SGML_CENTRALIZED_CATALOG" ]


In /usr/bin/jw line 314:
	  SGML_CATALOG_FILES=`find $SGML_BASE_DIR -name catalog`
                             ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                                   ^------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
	  SGML_CATALOG_FILES=$(find "$SGML_BASE_DIR" -name catalog)


In /usr/bin/jw line 315:
	  SGML_CATALOG_FILES=`echo "$SGML_CATALOG_FILES" | tr [:space:] :`
                             ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                                                              ^-------^ SC2060: Quote parameters to tr to prevent glob expansion.

Did you mean: 
	  SGML_CATALOG_FILES=$(echo "$SGML_CATALOG_FILES" | tr [:space:] :)


In /usr/bin/jw line 322:
SGML_CATALOG_FILES=`echo "$SGML_CATALOG_FILES" | sed 's/^://;s/:$//'`
                   ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
SGML_CATALOG_FILES=$(echo "$SGML_CATALOG_FILES" | sed 's/^://;s/:$//')


In /usr/bin/jw line 325:
  echo "`basename $0`: Please specify at least one catalog" >&2
        ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                  ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  echo "$(basename "$0"): Please specify at least one catalog" >&2


In /usr/bin/jw line 340:
if [ "$SGML_STYLESHEET" = "default" -o "$SGML_STYLESHEET" = "none" ]
                                    ^-- SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined.


In /usr/bin/jw line 343:
  SGML_STYLESHEET=`sh $SGML_FRONTEND style-sheet`
                  ^-----------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                      ^------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  SGML_STYLESHEET=$(sh "$SGML_FRONTEND" style-sheet)


In /usr/bin/jw line 346:
  then exit `expr 7 + $SGML_RETURN`
            ^---------------------^ SC2046: Quote this to prevent word splitting.
            ^---------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
             ^--^ SC2003: expr is antiquated. Consider rewriting this using $((..)), ${} or [[ ]].

Did you mean: 
  then exit $(expr 7 + $SGML_RETURN)


In /usr/bin/jw line 351:
  echo "`basename $0`: Please specify at least one stylesheet" >&2
        ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                  ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  echo "$(basename "$0"): Please specify at least one stylesheet" >&2


In /usr/bin/jw line 380:
  if [ $? -eq 0 ]
       ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/jw line 385:
    if [ $? -eq 0 ]
         ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/jw line 389:
      echo "`basename $0`: No parser available" >&2
            ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                      ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
      echo "$(basename "$0"): No parser available" >&2


In /usr/bin/jw line 395:
  if [ $? -ne 0 ]
       ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/jw line 397:
    echo "`basename $0`: parser $SGML_JADE is not available" >&2
          ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                    ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
    echo "$(basename "$0"): parser $SGML_JADE is not available" >&2


In /usr/bin/jw line 405:
  printf "$SGML_HELP_MESSAGE\n" >&2
         ^--------------------^ SC2059: Don't use variables in the printf format string. Use printf '..%s..' "$foo".


In /usr/bin/jw line 408:
if [ ! -d $SGML_OUTPUT_DIRECTORY ]
          ^--------------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
if [ ! -d "$SGML_OUTPUT_DIRECTORY" ]


In /usr/bin/jw line 410:
  mkdir $SGML_OUTPUT_DIRECTORY 2>/dev/null
        ^--------------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  mkdir "$SGML_OUTPUT_DIRECTORY" 2>/dev/null


In /usr/bin/jw line 411:
  if [ $? -ne 0 ]
       ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/jw line 413:
    echo "`basename $0`: Could not create \"$SGML_OUTPUT_DIRECTORY\" output directory" >&2
          ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                    ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
    echo "$(basename "$0"): Could not create \"$SGML_OUTPUT_DIRECTORY\" output directory" >&2


In /usr/bin/jw line 422:
echo "Using catalogs: `echo $SGML_CATALOG_FILES | sed 's/:/, /g'`"
                      ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                            ^-----------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
echo "Using catalogs: $(echo "$SGML_CATALOG_FILES" | sed 's/:/, /g')"


In /usr/bin/jw line 425:
cd $SGML_OUTPUT_DIRECTORY
^-----------------------^ SC2164: Use 'cd ... || exit' or 'cd ... || return' in case cd fails.
   ^--------------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
cd "$SGML_OUTPUT_DIRECTORY" || exit


In /usr/bin/jw line 428:
NOCHUNKS=`echo $SGML_OPTIONS | grep nochunks`
         ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
               ^-----------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
NOCHUNKS=$(echo "$SGML_OPTIONS" | grep nochunks)


In /usr/bin/jw line 431:
	sh $SGML_BACKEND
           ^-----------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
	sh "$SGML_BACKEND"


In /usr/bin/jw line 433:
	sh $SGML_BACKEND >$SGML_FILE_NAME.html
           ^-----------^ SC2086: Double quote to prevent globbing and word splitting.
                          ^-------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
	sh "$SGML_BACKEND" >"$SGML_FILE_NAME".html


In /usr/bin/jw line 436:
cd $SGML_CURRENT_DIRECTORY
^------------------------^ SC2164: Use 'cd ... || exit' or 'cd ... || return' in case cd fails.
   ^---------------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
cd "$SGML_CURRENT_DIRECTORY" || exit


In /usr/bin/jw line 439:
then exit `expr 7 + $SGML_RETURN`
          ^---------------------^ SC2046: Quote this to prevent word splitting.
          ^---------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
           ^--^ SC2003: expr is antiquated. Consider rewriting this using $((..)), ${} or [[ ]].

Did you mean: 
then exit $(expr 7 + $SGML_RETURN)

For more information:
  https://www.shellcheck.net/wiki/SC2157 -- Argument to -z is always false du...
  https://www.shellcheck.net/wiki/SC2046 -- Quote this to prevent word splitt...
  https://www.shellcheck.net/wiki/SC2060 -- Quote parameters to tr to prevent...