Вход Регистрация
Файл: htmlpurifier-4.3.0/maintenance/add-vimline.php
Строк: 94
#!/usr/bin/php
<?php

chdir
(dirname(__FILE__));
require_once 
'common.php';
assertCli();

/**
 * @file
 * Adds vimline to files
 */

chdir(dirname(__FILE__) . '/..');
$FS = new FSTools();

$vimline 'vim: et sw=4 sts=4';

$files $FS->globr('.''*');
foreach (
$files as $file) {
    if (
        !
is_file($file) ||
        
prefix_is('./docs/doxygen'$file) ||
        
prefix_is('./library/standalone'$file) ||
        
prefix_is('./docs/specimens'$file) ||
        
postfix_is('.ser'$file) ||
        
postfix_is('.tgz'$file) ||
        
postfix_is('.patch'$file) ||
        
postfix_is('.dtd'$file) ||
        
postfix_is('.ent'$file) ||
        
postfix_is('.png'$file) ||
        
postfix_is('.ico'$file) ||
        
// wontfix
        
postfix_is('.vtest'$file) ||
        
postfix_is('.svg'$file) ||
        
postfix_is('.phpt'$file) ||
        
postfix_is('VERSION'$file) ||
        
postfix_is('WHATSNEW'$file) ||
        
postfix_is('FOCUS'$file) ||
        
postfix_is('configdoc/usage.xml'$file) ||
        
postfix_is('library/HTMLPurifier.includes.php'$file) ||
        
postfix_is('library/HTMLPurifier.safe-includes.php'$file) ||
        
postfix_is('smoketests/xssAttacks.xml'$file) ||
        
// phpt files
        
postfix_is('.diff'$file) ||
        
postfix_is('.exp'$file) ||
        
postfix_is('.log'$file) ||
        
postfix_is('.out'$file) ||

        
$file == './library/HTMLPurifier/Lexer/PH5P.php' ||
        
$file == './maintenance/PH5P.php'
    
) continue;
    
$ext strrchr($file'.');
    if (
        
postfix_is('README'$file) ||
        
postfix_is('LICENSE'$file) ||
        
postfix_is('CREDITS'$file) ||
        
postfix_is('INSTALL'$file) ||
        
postfix_is('NEWS'$file) ||
        
postfix_is('TODO'$file) ||
        
postfix_is('WYSIWYG'$file) ||
        
postfix_is('Changelog'$file)
    ) 
$ext '.txt';
    if (
postfix_is('Doxyfile'$file)) $ext 'Doxyfile';
    if (
postfix_is('.php.in'$file)) $ext '.php';
    
$no_nl false;
    switch (
$ext) {
        case 
'.php':
        case 
'.inc':
        case 
'.js':
            
$line '// %s';
            break;
        case 
'.html':
        case 
'.xsl':
        case 
'.xml':
        case 
'.htc':
            
$line "<!-- %sn-->";
            break;
        case 
'.htmlt':
            
$no_nl true;
            
$line '--# %s';
            break;
        case 
'.ini':
            
$line '; %s';
            break;
        case 
'.css':
            
$line '/* %s */';
            break;
        case 
'.bat':
            
$line 'rem %s';
            break;
        case 
'.txt':
        case 
'.utf8':
            if (
                
prefix_is('./library/HTMLPurifier/ConfigSchema'$file) ||
                
prefix_is('./smoketests/test-schema'$file) ||
                
prefix_is('./tests/HTMLPurifier/StringHashParser'$file)
            ) {
                
$no_nl true;
                
$line '--# %s';
            } else {
                
$line '    %s';
            }
            break;
        case 
'Doxyfile':
            
$line '# %s';
            break;
        default:
            throw new 
Exception('Unknown file: ' $file);
    }

    echo 
"$filen";
    
$contents file_get_contents($file);

    
$regex '~' str_replace('%s''vim: .+'preg_quote($line'~')) .  '~m';
    
$contents preg_replace($regex''$contents);

    
$contents rtrim($contents);

    if (
strpos($contents"rn") !== false$nl "rn";
    elseif (
strpos($contents"n") !== false$nl "n";
    elseif (
strpos($contents"r") !== false$nl "r";
    else 
$nl PHP_EOL;

    if (!
$no_nl$contents .= $nl;
    
$contents .= $nl str_replace('%s'$vimline$line) . $nl;

    
file_put_contents($file$contents);

}

// vim: et sw=4 sts=4
Онлайн: 1
Реклама