Skip to content

Commit

Permalink
slighty changed the colors implementation
Browse files Browse the repository at this point in the history
  • Loading branch information
Michael Klier committed Jun 4, 2010
1 parent cc73d2e commit 4892386
Show file tree
Hide file tree
Showing 2 changed files with 148 additions and 165 deletions.
151 changes: 0 additions & 151 deletions colors.php

This file was deleted.

162 changes: 148 additions & 14 deletions syntax/color.php
Expand Up @@ -17,6 +17,149 @@
* need to inherit from this class
*/
class syntax_plugin_bbcode_color extends DokuWiki_Syntax_Plugin {

static $browsercolors = array (
'aliceblue' => '#f0f8ff' ,
'antiquewhite' => '#faebd7' ,
'aqua' => '#00ffff' ,
'aquamarine' => '#7fffd4' ,
'azure' => '#f0ffff' ,
'beige' => '#f5f5dc' ,
'bisque' => '#ffe4c4' ,
'black' => '#000000' ,
'blanchedalmond' => '#ffebcd' ,
'blue' => '#0000ff' ,
'blueviolet' => '#8a2be2' ,
'brown' => '#a52a2a' ,
'burlywood' => '#deb887' ,
'cadetblue' => '#5f9ea0' ,
'chartreuse' => '#7fff00' ,
'chocolate' => '#d2691e' ,
'coral' => '#ff7f50' ,
'cornflowerblue' => '#6495ed' ,
'cornsilk' => '#fff8dc' ,
'crimson' => '#dc143c' ,
'cyan' => '#00ffff' ,
'darkblue' => '#00008b' ,
'darkcyan' => '#008b8b' ,
'darkgoldenrod' => '#b8860b' ,
'darkgray' => '#a9a9a9' ,
'darkgreen' => '#006400' ,
'darkkhaki' => '#bdb76b' ,
'darkmagenta' => '#8b008b' ,
'darkolivegreen' => '#556b2f' ,
'darkorange' => '#ff8c00' ,
'darkorchid' => '#9932cc' ,
'darkred' => '#8b0000' ,
'darksalmon' => '#e9967a' ,
'darkseagreen' => '#8fbc8f' ,
'darkslateblue' => '#483d8b' ,
'darkslategray' => '#2f4f4f' ,
'darkturquoise' => '#00ced1' ,
'darkviolet' => '#9400d3' ,
'deeppink' => '#ff1493' ,
'deepskyblue' => '#00bfff' ,
'dimgray' => '#696969' ,
'dodgerblue' => '#1e90ff' ,
'firebrick' => '#b22222' ,
'floralwhite' => '#fffaf0' ,
'forestgreen' => '#228b22' ,
'fuchsia' => '#ff00ff' ,
'gainsboro' => '#dcdcdc' ,
'ghostwhite' => '#f8f8ff' ,
'gold' => '#ffd700' ,
'goldenrod' => '#daa520' ,
'gray' => '#808080' ,
'green' => '#008000' ,
'greenyellow' => '#adff2f' ,
'honeydew' => '#f0fff0' ,
'hotpink' => '#ff69b4' ,
'indianred' => '#cd5c5c' ,
'indigo' => '#4b0082' ,
'ivory' => '#fffff0' ,
'khaki' => '#f0e68c' ,
'lavender' => '#e6e6fa' ,
'lavenderblush' => '#fff0f5' ,
'lawngreen' => '#7cfc00' ,
'lemonchiffon' => '#fffacd' ,
'lightblue' => '#add8e6' ,
'lightcoral' => '#f08080' ,
'lightcyan' => '#e0ffff' ,
'lightgoldenrodyellow' => '#fafad2' ,
'lightgrey' => '#d3d3d3' ,
'lightgreen' => '#90ee90' ,
'lightpink' => '#ffb6c1' ,
'lightsalmon' => '#ffa07a' ,
'lightseagreen' => '#20b2aa' ,
'lightskyblue' => '#87cefa' ,
'lightslategray' => '#778899' ,
'lightsteelblue' => '#b0c4de' ,
'lightyellow' => '#ffffe0' ,
'lime' => '#00ff00' ,
'limegreen' => '#32cd32' ,
'linen' => '#faf0e6' ,
'magenta' => '#ff00ff' ,
'maroon' => '#800000' ,
'mediumaquamarine' => '#66cdaa' ,
'mediumblue' => '#0000cd' ,
'mediumorchid' => '#ba55d3' ,
'mediumpurple' => '#9370d8' ,
'mediumseagreen' => '#3cb371' ,
'mediumslateblue' => '#7b68ee' ,
'mediumspringgreen' => '#00fa9a' ,
'mediumturquoise' => '#48d1cc' ,
'mediumvioletred' => '#c71585' ,
'midnightblue' => '#191970' ,
'mintcream' => '#f5fffa' ,
'mistyrose' => '#ffe4e1' ,
'moccasin' => '#ffe4b5' ,
'navajowhite' => '#ffdead' ,
'navy' => '#000080' ,
'oldlace' => '#fdf5e6' ,
'olive' => '#808000' ,
'olivedrab' => '#6b8e23' ,
'orange' => '#ffa500' ,
'orangered' => '#ff4500' ,
'orchid' => '#da70d6' ,
'palegoldenrod' => '#eee8aa' ,
'palegreen' => '#98fb98' ,
'paleturquoise' => '#afeeee' ,
'palevioletred' => '#d87093' ,
'papayawhip' => '#ffefd5' ,
'peachpuff' => '#ffdab9' ,
'peru' => '#cd853f' ,
'pink' => '#ffc0cb' ,
'plum' => '#dda0dd' ,
'powderblue' => '#b0e0e6' ,
'purple' => '#800080' ,
'red' => '#ff0000' ,
'rosybrown' => '#bc8f8f' ,
'royalblue' => '#4169e1' ,
'saddlebrown' => '#8b4513' ,
'salmon' => '#fa8072' ,
'sandybrown' => '#f4a460' ,
'seagreen' => '#2e8b57' ,
'seashell' => '#fff5ee' ,
'sienna' => '#a0522d' ,
'silver' => '#c0c0c0' ,
'skyblue' => '#87ceeb' ,
'slateblue' => '#6a5acd' ,
'slategray' => '#708090' ,
'snow' => '#fffafa' ,
'springgreen' => '#00ff7f' ,
'steelblue' => '#4682b4' ,
'tan' => '#d2b48c' ,
'teal' => '#008080' ,
'thistle' => '#d8bfd8' ,
'tomato' => '#ff6347' ,
'turquoise' => '#40e0d0' ,
'violet' => '#ee82ee' ,
'wheat' => '#f5deb3' ,
'white' => '#ffffff' ,
'whitesmoke' => '#f5f5f5' ,
'yellow' => '#ffff00' ,
'yellowgreen' => '#9acd32' ,
);

function getType() { return 'formatting'; }
function getAllowedTypes() { return array('formatting', 'substition', 'disabled'); }
Expand Down Expand Up @@ -52,10 +195,11 @@ function render($mode, &$renderer, $data) {
list($state, $match) = $data;
switch ($state) {
case DOKU_LEXER_ENTER :
if ($match = $this->_isValid($match) ||
($match = $this->_getBrowserColor($match) ) )
if ($match = $this->_isValid($match)) {
$renderer->doc .= '<span style="color:'. $match. '">'; // addition #2: SVG browser colors
else $renderer->doc .= '<span>';
} else {
$renderer->doc .= '<span>';
}
break;

case DOKU_LEXER_UNMATCHED :
Expand Down Expand Up @@ -85,18 +229,8 @@ function _isValid($c) {
/x";

if (preg_match($pattern, $c)) return $c;

if (!empty($this->browsercolors[$c])) return $this->browsercolors[$c];
return "";
}

// request browser color $c
// this validates against accepted "SVG colors" implemented by most browsers,
// but will convert the values back to #rrggbb instead of using them directly,
// thus ensuring visual consistency among clients
function _getBrowserColor($c) {
require_once(DOKU_PLUGIN.'bbcode/colors.php');
return lcase(self::$browsercolors ($c));
}

}
// vim:ts=4:sw=4:et:enc=utf-8:

0 comments on commit 4892386

Please sign in to comment.