0
0
mirror of https://github.com/ezyang/htmlpurifier.git synced 2024-11-10 07:38:41 +00:00
htmlpurifier/maintenance/remove-trailing-whitespace.php

44 lines
1.1 KiB
PHP
Raw Normal View History

#!/usr/bin/php
<?php
chdir(dirname(__FILE__));
require_once 'common.php';
assertCli();
/**
* @file
* Removes trailing whitespace from files.
*/
chdir(dirname(__FILE__) . '/..');
$FS = new FSTools();
function prefix_is($comp, $subject) {
return strncmp($comp, $subject, strlen($comp)) === 0;
}
function postfix_is($comp, $subject) {
return strlen($subject) < $comp ? false : substr($subject, -strlen($comp)) === $comp;
}
$files = $FS->globr('.', '{,.}*', GLOB_BRACE);
foreach ($files as $file) {
if (
!is_file($file) ||
prefix_is('./.git', $file) ||
prefix_is('./docs/doxygen', $file) ||
postfix_is('.ser', $file) ||
postfix_is('.tgz', $file) ||
postfix_is('.patch', $file) ||
postfix_is('.dtd', $file) ||
postfix_is('.ent', $file) ||
$file == './library/HTMLPurifier/Lexer/PH5P.php' ||
$file == './maintenance/PH5P.php'
) continue;
$contents = file_get_contents($file);
$result = preg_replace('/^(.*?)[ \t]+(\r?)$/m', '\1\2', $contents, -1, $count);
if (!$count) continue;
echo "$file\n";
file_put_contents($file, $result);
}