In /usr/bin/pdfroff line 37: CMD=`exec 2>$NULLDEV; basename $0` || CMD=$0 ^----------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: CMD=$(exec 2>$NULLDEV; basename "$0") || CMD=$0 In /usr/bin/pdfroff line 67: test x${ZSH_VERSION+"set"} = x"set" && NULLCMD=":" \ ^-----^ SC2034: NULLCMD appears unused. Verify use (or export if used externally). In /usr/bin/pdfroff line 74: CAT=`searchpath cat "$PATH"` ^----------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: CAT=$(searchpath cat "$PATH") In /usr/bin/pdfroff line 75: GREP=`searchpath grep "$PATH"` ^-----------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: GREP=$(searchpath grep "$PATH") In /usr/bin/pdfroff line 76: SED=`searchpath sed "$PATH"` ^----------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: SED=$(searchpath sed "$PATH") In /usr/bin/pdfroff line 86: GROFF=`searchpath groff "$GROFF_BIN_DIR"` ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: GROFF=$(searchpath groff "$GROFF_BIN_DIR") In /usr/bin/pdfroff line 91: GROFF=`searchpath groff "$GROFF_BIN_PATH"` ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: GROFF=$(searchpath groff "$GROFF_BIN_PATH") In /usr/bin/pdfroff line 95: GROFF=`searchpath groff "$PATH"` ^------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: GROFF=$(searchpath groff "$PATH") In /usr/bin/pdfroff line 101: test "$CAT" = ":" && echo >&2 "$NOPROG 'cat' in PATH" && NO="$NO 'cat'" ^----^ SC2089: Quotes/backslashes will be treated literally. Rewrite using set/"$@" or functions. In /usr/bin/pdfroff line 107: set $NO ^-^ SC2090: Quotes/backslashes in this variable will not be respected. ^-^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: set "$NO" In /usr/bin/pdfroff line 133: GROFF_GHOSTSCRIPT_INTERPRETER=`set command ${PDFROFF_POSTPROCESSOR_COMMAND}; ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^-----^ SC2121: To assign a variable, use just 'var=value', no 'set ..'. ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: GROFF_GHOSTSCRIPT_INTERPRETER=$(set command "${PDFROFF_POSTPROCESSOR_COMMAND}"; echo $2) In /usr/bin/pdfroff line 134: echo $2` ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: echo "$2"` In /usr/bin/pdfroff line 144: if GROFF_TMPDIR=`exec 2>${NULLDEV}; mktemp -dt pdfroff-XXXXXXXXXX` ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: if GROFF_TMPDIR=$(exec 2>${NULLDEV}; mktemp -dt pdfroff-XXXXXXXXXX) In /usr/bin/pdfroff line 150: trap "rm -rf ${GROFF_TMPDIR}" 0 ^-------------^ SC2064: Use single quotes, otherwise this expands now rather than when signalled. In /usr/bin/pdfroff line 159: trap "rm -f ${GROFF_TMPDIR}/pdf$$.*" 0 ^-------------^ SC2064: Use single quotes, otherwise this expands now rather than when signalled. ^-- SC2064: Use single quotes, otherwise this expands now rather than when signalled. In /usr/bin/pdfroff line 168: trap "exit 1" 1 2 3 13 15 ^-- SC2172: Trapping signals by number is not well defined. Prefer signal names. In /usr/bin/pdfroff line 207: MATCH="" OPTNAME=`IFS==; set dummy $1; echo $2` ^----------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC1097: Unexpected ==. For assignment, use =. For comparison, use [/[[. ^---^ SC2121: To assign a variable, use just 'var=value', no 'set ..'. ^-- SC2086: Double quote to prevent globbing and word splitting. ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: MATCH="" OPTNAME=$(IFS==; set dummy "$1"; echo "$2") In /usr/bin/pdfroff line 210: MATCH="$MATCH"`echo --$OPT | $GREP "^$OPTNAME"` ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^--^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: MATCH="$MATCH"$(echo --"$OPT" | $GREP "^$OPTNAME") In /usr/bin/pdfroff line 216: OPTARG=`echo $1 | $SED -n s?"^${OPTNAME}="??p` ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: OPTARG=$(echo "$1" | $SED -n s?"^${OPTNAME}="??p) In /usr/bin/pdfroff line 302: SHOW_PROGRESS=echo ^-----------^ SC2209: Use var=$(command) to assign output (or quote to assign string). In /usr/bin/pdfroff line 374: shift; set reparse "$OPTNAME$@" ^-----^ SC2121: To assign a variable, use just 'var=value', no 'set ..'. ^-- SC2145: Argument mixes string and array. Use * or separate argument. In /usr/bin/pdfroff line 390: -h*) set redirect --help ^------^ SC2121: To assign a variable, use just 'var=value', no 'set ..'. In /usr/bin/pdfroff line 393: -v*) shift; set redirect --version "$@" ^------^ SC2121: To assign a variable, use just 'var=value', no 'set ..'. In /usr/bin/pdfroff line 418: echo >&2; eval $GROFF_STYLE $INPUT_FILES ^----------^ SC2086: Double quote to prevent globbing and word splitting. ^----------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: echo >&2; eval "$GROFF_STYLE" "$INPUT_FILES" In /usr/bin/pdfroff line 425: case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in ^----------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^---------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2039: In POSIX sh, echo flags are undefined. Did you mean: case $(echo "testing\c"; echo 1,2,3),$(echo -n testing; echo 1,2,3) in In /usr/bin/pdfroff line 436: test -n "$STREAM" && $CAT > ${GROFF_TMPDIR}/pdf$$.in ^-------------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: test -n "$STREAM" && $CAT > "${GROFF_TMPDIR}"/pdf$$.in In /usr/bin/pdfroff line 445: >> $REFFILE ^---------^ SC2188: This redirection doesn't have a command. Move to its command (or use 'true' as no-op). In /usr/bin/pdfroff line 447: test x${SHOW_PROGRESS+"set"} = x"set" && SAY=echo ^-^ SC2209: Use var=$(command) to assign output (or quote to assign string). In /usr/bin/pdfroff line 460: AWK=`searchpath $prog "$PATH"` ^------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: AWK=$(searchpath $prog "$PATH") In /usr/bin/pdfroff line 464: DIFF=`searchpath diff "$PATH"` ^-----------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: DIFF=$(searchpath diff "$PATH") In /usr/bin/pdfroff line 465: test "$AWK" = ":" && echo >&2 "$NOPROG 'awk' in PATH" && NO="$NO 'awk'" ^----^ SC2089: Quotes/backslashes will be treated literally. Rewrite using set/"$@" or functions. In /usr/bin/pdfroff line 469: set $NO ^-^ SC2090: Quotes/backslashes in this variable will not be respected. ^-^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: set "$NO" In /usr/bin/pdfroff line 489: $SAY >&2 $n Resolving references ..$c ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: $SAY >&2 "$n" Resolving references ..$c In /usr/bin/pdfroff line 497: $SAY >&2 $n .$c ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: $SAY >&2 "$n" .$c In /usr/bin/pdfroff line 515: $DIFF -c0 $NULLDEV $NULLDEV 1>$NULLDEV 2>&1 && DIFFOPT='-c0' ^------^ SC2094: Make sure not to read and write the same file in the same pipeline. ^------^ SC2094: Make sure not to read and write the same file in the same pipeline. ^------^ SC2094: Make sure not to read and write the same file in the same pipeline. In /usr/bin/pdfroff line 516: $DIFF -u0 $NULLDEV $NULLDEV 1>$NULLDEV 2>&1 && DIFFOPT='-u0' ^------^ SC2094: Make sure not to read and write the same file in the same pipeline. ^------^ SC2094: Make sure not to read and write the same file in the same pipeline. ^------^ SC2094: Make sure not to read and write the same file in the same pipeline. In /usr/bin/pdfroff line 533: eval $STREAM $GROFF_STYLE -Z 1>$NULLDEV 2>$WRKFILE $REFCOPY $INPUT_FILES ^-----^ SC2086: Double quote to prevent globbing and word splitting. ^----------^ SC2086: Double quote to prevent globbing and word splitting. ^------^ SC2086: Double quote to prevent globbing and word splitting. ^----------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: eval "$STREAM" "$GROFF_STYLE" -Z 1>$NULLDEV 2>"$WRKFILE" $REFCOPY "$INPUT_FILES" In /usr/bin/pdfroff line 534: $AWK '/^gropdf-info:href/ {$1 = ".pdfhref D -N"; print}' $WRKFILE > $REFFILE ^-- SC2016: Expressions don't expand in single quotes, use double quotes for that. ^------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: $AWK '/^gropdf-info:href/ {$1 = ".pdfhref D -N"; print}' "$WRKFILE" > $REFFILE In /usr/bin/pdfroff line 557: GS=`searchpath $prog "$PATH"` ^------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: GS=$(searchpath $prog "$PATH") In /usr/bin/pdfroff line 581: $AWK '/^grohtml-info/ {print ".pdfhref Z", $2, $3, $4}' $WRKFILE >> $REFCOPY ^-- SC2016: Expressions don't expand in single quotes, use double quotes for that. ^------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: $AWK '/^grohtml-info/ {print ".pdfhref Z", $2, $3, $4}' "$WRKFILE" >> $REFCOPY In /usr/bin/pdfroff line 593: eval `$SED -n '/^ *pdfroff-option:set */s///p' $WRKFILE` ^-- SC2046: Quote this to prevent word splitting. ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: eval $($SED -n '/^ *pdfroff-option:set */s///p' "$WRKFILE") In /usr/bin/pdfroff line 599: if test x${toc_relocation-"auto"} != xenabled ^----------------------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: if test x"${toc_relocation-"auto"}" != xenabled In /usr/bin/pdfroff line 613: test x${SHOW_PROGRESS+"set"} = x"set" && SAY=echo ^-^ SC2209: Use var=$(command) to assign output (or quote to assign string). In /usr/bin/pdfroff line 622: $SAY >&2 $n "Formatting document ... front cover section ..$c" ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: $SAY >&2 "$n" "Formatting document ... front cover section ..$c" In /usr/bin/pdfroff line 624: eval $CS_FILTER $INPUT_FILES | eval $GROFF_STYLE $STYLESHEET - > $CS_DATA ^--------^ SC2086: Double quote to prevent globbing and word splitting. ^----------^ SC2086: Double quote to prevent globbing and word splitting. ^----------^ SC2086: Double quote to prevent globbing and word splitting. ^---------^ SC2086: Double quote to prevent globbing and word splitting. ^------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: eval "$CS_FILTER" "$INPUT_FILES" | eval "$GROFF_STYLE" "$STYLESHEET" - > "$CS_DATA" In /usr/bin/pdfroff line 633: $SAY >&2 $n "Formatting document ... table of contents ..$c" ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: $SAY >&2 "$n" "Formatting document ... table of contents ..$c" In /usr/bin/pdfroff line 634: eval $STREAM $GROFF_STYLE $TOC_FORMAT $REFCOPY $INPUT_FILES > $TC_DATA ^-----^ SC2086: Double quote to prevent globbing and word splitting. ^----------^ SC2086: Double quote to prevent globbing and word splitting. ^---------^ SC2086: Double quote to prevent globbing and word splitting. ^----------^ SC2086: Double quote to prevent globbing and word splitting. ^------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: eval "$STREAM" "$GROFF_STYLE" "$TOC_FORMAT" $REFCOPY "$INPUT_FILES" > "$TC_DATA" In /usr/bin/pdfroff line 640: $SAY >&2 $n "Formatting document ... body section ..$c" ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: $SAY >&2 "$n" "Formatting document ... body section ..$c" In /usr/bin/pdfroff line 641: eval $STREAM $GROFF_STYLE $BODY_FORMAT $REFCOPY $INPUT_FILES > $BD_DATA ^-----^ SC2086: Double quote to prevent globbing and word splitting. ^----------^ SC2086: Double quote to prevent globbing and word splitting. ^----------^ SC2086: Double quote to prevent globbing and word splitting. ^----------^ SC2086: Double quote to prevent globbing and word splitting. ^------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: eval "$STREAM" "$GROFF_STYLE" "$BODY_FORMAT" $REFCOPY "$INPUT_FILES" > "$BD_DATA" In /usr/bin/pdfroff line 648: $SAY >&2 $n "Writing PDF output ..$c" ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: $SAY >&2 "$n" "Writing PDF output ..$c" In /usr/bin/pdfroff line 651: PDFROFF_POSTPROCESSOR_COMMAND="$GS -dQUIET -dBATCH -dNOPAUSE -dSAFER ^-- SC1078: Did you forget to close this double quoted string? In /usr/bin/pdfroff line 652: -sDEVICE=pdfwrite -sOutputFile="${PDF_OUTPUT-"-"} ^-- SC1079: This is actually an end quote, but due to next char it looks suspect. In /usr/bin/pdfroff line 661: ${PDFROFF_COLLATE-"$SED"} ${PDFROFF_KILL_NULL_PAGES-' ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: ${PDFROFF_COLLATE-"$SED"} "${PDFROFF_KILL_NULL_PAGES-' /%%Page:/{ N /%%BeginPageSetup/b again } b :again /%%EndPageSetup/b finish /%%Page:/{ N b again } b :finish N /^%%Page:.*\n0 Cg EP$/d '}" $TC_DATA $BD_DATA | $PDFROFF_POSTPROCESSOR_COMMAND $CS_DATA - In /usr/bin/pdfroff line 677: '} $TC_DATA $BD_DATA | $PDFROFF_POSTPROCESSOR_COMMAND $CS_DATA - ^------^ SC2086: Double quote to prevent globbing and word splitting. ^------^ SC2086: Double quote to prevent globbing and word splitting. ^------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: '} "$TC_DATA" "$BD_DATA" | $PDFROFF_POSTPROCESSOR_COMMAND "$CS_DATA" - For more information: https://www.shellcheck.net/wiki/SC1097 -- Unexpected ==. For assignment, us... https://www.shellcheck.net/wiki/SC2145 -- Argument mixes string and array. ... https://www.shellcheck.net/wiki/SC1078 -- Did you forget to close this doub...