Это очень правильный вопрос. Наверняка Perl::Tidy можно хорошо нстроить,
чтобы
он исправлял все проблемы с непечатными символами. Но у меня не получилось
реализовать все проверки, которые я хотел. У меня еще была задача исправлять
пробельные символы не только в файлах с Perl кодом, а в тестовых файлах и в
шаблонах. Perl::Tidy не может работать ни с чем кроме перла, поэтому я решил
эту задача с помощью написания еще одного модуля (ну и получил кучу
удовольствия, пока его писал =).



12 февраля 2013 г., 15:31 пользователь oleg alexeenkov
<[email protected]>написал:

> Иван Бессарабов <[email protected]> писал(а) в своём письме Mon, 11 Feb
> 2013 20:38:33 +0400:
>
>
>  Привет.
>>
>> Я тут написал маленький модуль. Модуль решает одну очень простую, но
>> иногда
>> досаждающую проблему — проверяет что в коде нет проблем с табами,
>> пробелами
>> и
>> переносами строк.
>>
>
> А хорошо настроеннный perltidy разве не решает такие проблемы?
>
>
>
>> Вот правила, которые проверяет модуль:
>>
>>  * все строки заканчиваются на "\n" (включая и последюю строку)
>>  * UNIX way переноса строк ("\n", а не "\r\n")
>>  * не табы, а 4 пробела
>>  * нет пробелов на концах строк
>>  * нет пустых строк в конце файла
>>
>> Кроме того что этот модуль можно подключить к проекту как тест, в
>> дистрибутиве
>> есть скрипт `test_whitespaces` с помощью которого можно проверить файлы
>> просто
>> передав их в качестве параметров и скрипт `whiter`, который фиксит все
>> проблемы.
>>
>> Вот пример как скрипт `test_whitespaces` показывает ошибки:
>> http://upload.bessarabov.ru/**bessarabov/**vxX47FlsOP6X73nsHDsEc_LzL_s.**
>> png<http://upload.bessarabov.ru/bessarabov/vxX47FlsOP6X73nsHDsEc_LzL_s.png>
>>
>> Буду очень рад если вам пригодится этот модуль. И буду благодарен за любой
>> фидбек. =)
>>
>> Ссылка на модуль: 
>> https://metacpan.org/module/**Test::Whitespaces<https://metacpan.org/module/Test::Whitespaces>
>>
> --
> Moscow.pm mailing list
> [email protected] | http://moscow.pm.org
>
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить