On 05/25/13 05:40, Stuart Cassoff wrote: > On 05/25/13 05:12, Stuart Henderson wrote: >> On 2013/05/25 03:47, Stuart Cassoff wrote: >>>> instead of "#!/usr/bin/env ..." trick; >>> >>> It's not a trick, it's a perfectly cromulent way to start a script >>> and some people write their scripts like that. >> >> Using the full path protects against certain cases of blundering >> numbskullery where PATH might have been dangerously embiggened.. >> > > Decreased flexibility makes it harder to experiment, which is why I resisted > the change. > > * full-pathed the env > * removed leading / from bin > * voted for kang >
Hmm. Should've votes for Kodos. Removing the leading / was not a good idea. Now it's back, along with non-capturing parens. Index: tcl.port.mk =================================================================== RCS file: /cvs/ports/lang/tcl/tcl.port.mk,v retrieving revision 1.14 diff -u -p -u -p -r1.14 tcl.port.mk --- tcl.port.mk 2 Feb 2013 11:15:33 -0000 1.14 +++ tcl.port.mk 25 May 2013 10:35:29 -0000 @@ -34,9 +34,10 @@ MODTCL_WANTLIB ?= ${MODTCL_LIB} # Set 'tclsh' for executable scripts (in-place modification). MODTCL_TCLSH_ADJ = perl -pi \ - -e '$$. == 1 && s!env (tclsh|wish).*$$!env tclsh${MODTCL_VERSION}!;' \ - -e '$$. >= 3 && $$. <= 30 && s!exec (tclsh|wish).*$$!exec tclsh${MODTCL_VERSION} "\$$0" \$${1+"\$$@"}!;' \ - -e 'close ARGV if eof;' + -e '$$. == 1 && s!/\S*/env\s+(?:tclsh|wish)\S*(\s+.+)?$$!/usr/bin/env ${MODTCL_BIN}$$1!;' \ + -e '$$. == 1 && s!/\S*bin/(?:tclsh|wish)\S*(\s+.+)?$$!${MODTCL_BIN}$$1!;' \ + -e '$$. >= 3 && $$. <= 30 && s!exec\s+(?:tclsh|wish).*$$!exec ${MODTCL_BIN} "\$$0" \$${1+"\$$@"}!;' \ + -e 'close ARGV if eof;' # Set 'wish' for executable scripts (in-place modification). MODTCL_WISH_ADJ = ${MODTCL_TCLSH_ADJ:S/tclsh${MODTCL_VERSION}/wish${MODTCL_VERSION}/}