plugins/geshi/geshi/smalltalk.php
author Dan
Fri, 29 May 2009 19:40:15 -0400
changeset 3 f3e2bbbd2155
parent 2 9e3258dfae15
permissions -rw-r--r--
Updated to latest GeSHi, 1.0.8.4, released May 23, 2009.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
     1
<?php
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
     2
/*************************************************************************************
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
     3
 * smalltalk.php
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
     4
 * --------
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
     5
 * Author: Bananeweizen (Bananeweizen@gmx.de)
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
     6
 * Copyright: (c) 2005 Bananeweizen (www.bananeweizen.de)
3
f3e2bbbd2155 Updated to latest GeSHi, 1.0.8.4, released May 23, 2009.
Dan
parents: 2
diff changeset
     7
 * Release Version: 1.0.8.4
0
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
     8
 * Date Started: 2005/03/27
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
     9
 *
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    10
 * Smalltalk language file for GeSHi.
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    11
 *
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    12
 * CHANGES
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    13
 * -------
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    14
 * 2006-05-24 (1.0.0)
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    15
 *   -  First Release
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    16
 *
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    17
 * TODO
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    18
 * -------------------------
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    19
 * * recognize nested array symbols correctly
2
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    20
 *
0
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    21
 *************************************************************************************
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    22
 *
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    23
 *     This file is part of GeSHi.
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    24
 *
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    25
 *   GeSHi is free software; you can redistribute it and/or modify
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    26
 *   it under the terms of the GNU General Public License as published by
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    27
 *   the Free Software Foundation; either version 2 of the License, or
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    28
 *   (at your option) any later version.
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    29
 *
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    30
 *   GeSHi is distributed in the hope that it will be useful,
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    31
 *   but WITHOUT ANY WARRANTY; without even the implied warranty of
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    32
 *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    33
 *   GNU General Public License for more details.
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    34
 *
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    35
 *   You should have received a copy of the GNU General Public License
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    36
 *   along with GeSHi; if not, write to the Free Software
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    37
 *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    38
 *
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    39
 ************************************************************************************/
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    40
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
    41
$language_data = array (
2
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    42
    'LANG_NAME' => 'Smalltalk',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    43
    'COMMENT_SINGLE' => array(),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    44
    'COMMENT_MULTI' => array('"' => '"'),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    45
    'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    46
    'QUOTEMARKS' => array("'"),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    47
    'ESCAPE_CHAR' => '',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    48
    'KEYWORDS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    49
        1 => array('self','super','true','false','nil')
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    50
        ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    51
    'SYMBOLS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    52
        '[', ']', '=' , ':=', '(', ')', '#'
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    53
        ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    54
    'CASE_SENSITIVE' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    55
        GESHI_COMMENTS => false,
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    56
        1 => true
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    57
        ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    58
    'STYLES' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    59
        'KEYWORDS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    60
            1 => 'color: #7f007f;'
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    61
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    62
        'COMMENTS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    63
            'MULTI' => 'color: #007f00; font-style: italic;'
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    64
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    65
        'ESCAPE_CHAR' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    66
            0 => ''
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    67
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    68
        'BRACKETS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    69
            0 => ''
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    70
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    71
        'STRINGS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    72
            0 => 'color: #7f0000;'
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    73
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    74
        'NUMBERS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    75
            0 => 'color: #7f0000;'
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    76
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    77
        'METHODS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    78
            0 => ''
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    79
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    80
        'SYMBOLS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    81
            0 => 'color: #000066; font-weight:bold;'
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    82
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    83
        'REGEXPS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    84
            0 => 'color: #0000ff;',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    85
            1 => 'color: #7f0000;',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    86
            2 => 'color: #7f0000;',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    87
            3 => 'color: #00007f;',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    88
            4 => 'color: #7f007f;',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    89
            5 => 'color: #00007f;',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    90
            6 => 'color: #00007f;'
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    91
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    92
        'SCRIPT' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    93
            0 => ''
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    94
            )
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    95
        ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    96
    'URLS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    97
        1 => ''
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    98
        ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
    99
    'OOLANG' => false,
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   100
    'OBJECT_SPLITTERS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   101
        ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   102
    'REGEXPS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   103
        0 => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   104
            GESHI_SEARCH => '([^a-zA-Z0-9_#<])([A-Z]+[a-zA-Z0-9_]*)(?!>)', //class names
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   105
            GESHI_REPLACE => '\\2',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   106
            GESHI_MODIFIERS => '',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   107
            GESHI_BEFORE => '\\1',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   108
            GESHI_AFTER => ''
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   109
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   110
        1 => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   111
            GESHI_SEARCH => '(#+)([a-zA-Z0-9_]+)', //symbols
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   112
            GESHI_REPLACE => '\\1\\2',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   113
            GESHI_MODIFIERS => '',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   114
            GESHI_BEFORE => '',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   115
            GESHI_AFTER => ''
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   116
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   117
        2 => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   118
            GESHI_SEARCH => '(#\s*\([^)]*\))', //array symbols
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   119
            GESHI_REPLACE => '\\1',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   120
            GESHI_MODIFIERS => '',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   121
            GESHI_BEFORE => '',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   122
            GESHI_AFTER => ''
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   123
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   124
        3 => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   125
            GESHI_SEARCH => '<PIPE>([a-zA-Z0-9_\s]+)<PIPE>', //temporary variables
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   126
            GESHI_REPLACE => '\\1',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   127
            GESHI_MODIFIERS => '',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   128
            GESHI_BEFORE => '|',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   129
            GESHI_AFTER => '|'
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   130
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   131
        4 => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   132
            GESHI_SEARCH => '(self|super|true|false|nil)', //keywords again (to avoid matching in next regexp)
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   133
            GESHI_REPLACE => '\\1',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   134
            GESHI_MODIFIERS => '',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   135
            GESHI_BEFORE => '',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   136
            GESHI_AFTER => ''
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   137
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   138
        5 => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   139
            GESHI_SEARCH => '([:(,=[.*\/+-]\s*)([a-zA-Z0-9_]+)', //message parameters, message receivers
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   140
            GESHI_REPLACE => '\\2',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   141
            GESHI_MODIFIERS => 's',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   142
            GESHI_BEFORE => '\\1',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   143
            GESHI_AFTER => ''
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   144
            ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   145
        6 => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   146
            GESHI_SEARCH => '([a-zA-Z0-9_]+)(\s*:=)', //assignment targets
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   147
            GESHI_REPLACE => '\\1',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   148
            GESHI_MODIFIERS => '',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   149
            GESHI_BEFORE => '',
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   150
            GESHI_AFTER => '\\2'
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   151
            )
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   152
        ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   153
    'STRICT_MODE_APPLIES' => GESHI_NEVER,
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   154
    'SCRIPT_DELIMITERS' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   155
        ),
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   156
    'HIGHLIGHT_STRICT_BLOCK' => array(
9e3258dfae15 Updated GeSHi. w00t.
Dan
parents: 0
diff changeset
   157
        )
0
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
   158
);
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
   159
441963e5b07a Initial population - based on GeSHi 1.0.7.20
Dan
parents:
diff changeset
   160
?>