Perltidy всегда печатает на стандартный - PullRequest
0 голосов
/ 17 января 2019

My Perltidy всегда печатает в стандартном формате вместо стандартного test.pl.tdy:

perltidy test.pl

А вот и мой .perltidyrc:

-pbp # Start with Perl Best Practices
-w
-l=100   # 100 characters per line
-ce # 'cuddled' elses. elses appear on the same line as last brace
-pt=2 # no parentheses spacing
-pt=2    # High parenthesis tightness
-bt=2    # High brace tightness
-sbt=2   # High square bracket tightness
-bar # opening braces right
-nsbl # open subroutine brace on right
-bbvt=1 # Block Brace Vertical Tightness
-sot # stack opening tokens
-sct # stack closing tokens
-nsfs # no For Loop Semicolon Spaces
-nolq # don't outdent long strings

Даже если я это сделаю:

perltidy -b test.pl

Он все равно будет печататься в стандартном формате и не перейдет к test.pl.bak. Единственный способ заставить его перейти в другой файл - это:

perltidy test.pl > test.pl.tdy

Есть ли что-то в моем .perltidyrc, что может быть причиной этого? Кажется, я не могу найти ничего, чтобы объяснить это.

1 Ответ

0 голосов
/ 17 января 2019

Документация гласит раздел Стили

-pbp, --perl-best-practice
-pbp - это сокращение от параметров в книге Perl Best Practices Дамиана Конвея:

-l=78 -i=4 -ci=4 -st -se -vt=2 -cti=0 -pt=1 -bt=1 -sbt=1 -bbt=1 -nsfs -nolq
-wbb="% + - * / x != == >= <= =~ !~ < > | & =
      **= += *= &= <<= &&= -= /= |= >>= ||= //= .= %= ^= x="

Обратите внимание, что этот набор параметров включает флаги -st и -se , которые заставляют perltidy действовать как фильтр только для одного файла. Они могут быть переопределены путем помещения -nst и / или -nse после параметра -pbp.

(мой акцент) & thinsp; Соответствующие флаги описаны в разделе управления вводом / выводом .

Я не знаю, почему -pbp включает флаги для печати в стандартные потоки, что подразумевает, что должен быть только один входной файл, но может быть причина; так что может быть хорошей идеей детально проверить, что делают все эти флаги под ним.

Я считаю, что -nst (--nostandard-ouput) работает даже вправо после -pbp в той же строке.

...