Changeset 93278 in spip-zone


Ignore:
Timestamp:
Nov 28, 2015, 10:43:22 PM (4 years ago)
Author:
cedric@…
Message:

Version 1.5.5 de CSSTidy (bugfix font shorthand avec font-family:inherit)

Location:
_core_/branches/spip-3.0/plugins/compresseur
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _core_/branches/spip-3.0/plugins/compresseur/lib/csstidy/class.csstidy.php

    r81332 r93278  
    3434
    3535/**
    36  * Defines ctype functions if required
    37  * @todo make them methods of csstidy class
    38  * @version 1.0
     36 * Defines ctype functions if required.
     37 *
     38 * @TODO: Make these methods of CSSTidy.
     39 * @since 1.0.0
    3940 */
    40 if (!function_exists('ctype_space')) {
    41         /* ctype_space  Check for whitespace character(s) */
    42         function ctype_space($text) {
    43                 return!preg_match("/[^\s\r\n\t\f]/", $text);
    44         }
    45 
     41if (!function_exists('ctype_space')){
     42        /* ctype_space Check for whitespace character(s) */
     43        function ctype_space($text){
     44                return (1===preg_match("/^[ \r\n\t\f]+$/", $text));
     45        }
    4646}
    47 if (!function_exists('ctype_alpha')) {
    48         /* ctype_alpha  Check for alphabetic character(s) */
    49         function ctype_alpha($text) {
    50                 return preg_match("/[a-zA-Z]/", $text);
    51         }
    52 
     47if (!function_exists('ctype_alpha')){
     48        /* ctype_alpha Check for alphabetic character(s) */
     49        function ctype_alpha($text){
     50                return (1===preg_match('/^[a-zA-Z]+$/', $text));
     51        }
     52}
     53if (!function_exists('ctype_xdigit')){
     54        /* ctype_xdigit Check for HEX character(s) */
     55        function ctype_xdigit($text){
     56                return (1===preg_match('/^[a-fA-F0-9]+$/', $text));
     57        }
    5358}
    5459
     
    9095 * @package csstidy
    9196 * @author Florian Schmitz (floele at gmail dot com) 2005-2006
    92  * @version 1.5.2
     97 * @version 1.5.5
    9398 */
    9499class csstidy {
     
    143148         * @access private
    144149         */
    145         public $version = '1.5.2';
     150        public $version = '1.5.5';
    146151        /**
    147152         * Stores the settings
     
    298303                $this->settings['optimise_shorthands'] = 1;
    299304                $this->settings['remove_last_;'] = true;
     305                $this->settings['space_before_important'] = false;
    300306                /* rewrite all properties with low case, better for later gzip OK, safe*/
    301307                $this->settings['case_properties'] = 1;
     
    617623                                                }
    618624                                                // fix for complicated media, i.e @media screen and (-webkit-min-device-pixel-ratio:1.5)
    619                                                 elseif (in_array($string{$i}, array('(', ')', ':', '.'))) {
     625                                                elseif (in_array($string{$i}, array('(', ')', ':', '.', '/'))) {
    620626                                                        $this->at .= $string{$i};
    621627                                                }
     
    695701                                                } elseif ($string{$i} === '\\') {
    696702                                                        $this->selector .= $this->_unicode($string, $i);
    697                                                 } elseif ($string{$i} === '*' && @in_array($string{$i + 1}, array('.', '#', '[', ':'))) {
    698                                                         // remove unnecessary universal selector, FS#147
     703                                                } elseif ($string{$i} === '*' && @in_array($string{$i + 1}, array('.', '#', '[', ':')) && ($i==0 OR $string{$i - 1}!=='/')) {
     704                                                        // remove unnecessary universal selector, FS#147, but not comment in selector
    699705                                                } else {
    700706                                                        $this->selector .= $string{$i};
  • _core_/branches/spip-3.0/plugins/compresseur/lib/csstidy/class.csstidy_optimise.php

    r81332 r93278  
    270270        public function compress_important(&$string) {
    271271                if ($this->parser->is_important($string)) {
    272                         $string = $this->parser->gvw_important($string) . '!important';
     272                        $important = $this->parser->get_cfg('space_before_important') ? ' !important' : '!important';
     273                        $string = $this->parser->gvw_important($string) . $important;
    273274                }
    274275                return $string;
     
    900901                $important = '';
    901902                // Skip if not font-family and font-size set
    902                 if (isset($input_css['font-family']) && isset($input_css['font-size'])) {
     903                if (isset($input_css['font-family']) && isset($input_css['font-size']) && $input_css['font-family'] != 'inherit') {
    903904                        // fix several words in font-family - add quotes
    904905                        if (isset($input_css['font-family'])) {
  • _core_/branches/spip-3.0/plugins/compresseur/lib/csstidy/class.csstidy_print.php

    r81332 r93278  
    257257                                case AT_END:
    258258                                        $out = & $output;
    259                                         $out .= $template[10] . str_replace("\n", "\n" . $template[10], $in_at_out);
     259                                        $in_at_out = str_replace("\n\n", "\r\n", $in_at_out); // don't fill empty lines
     260                                        $in_at_out = str_replace("\n", "\n" . $template[10], $in_at_out);
     261                                        $in_at_out = str_replace("\r\n", "\n\n", $in_at_out);
     262                                        $out .= $template[10] . $in_at_out . $template[9];
    260263                                        $in_at_out = '';
    261                                         $out .= $template[9];
    262264                                        break;
    263265
  • _core_/branches/spip-3.0/plugins/compresseur/paquet.xml

    r87125 r93278  
    22        prefix="compresseur"
    33        categorie="performance"
    4         version="1.8.11"
     4        version="1.8.12"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.1.*]"
Note: See TracChangeset for help on using the changeset viewer.