| <?php |
| /************************************************************************************* |
| * csharp.php |
| * ---------- |
| * Author: Alan Juden (alan@judenware.org) |
| * Copyright: (c) 2004 Alan Juden, Nigel McNie (http://qbnz.com/highlighter/) |
| * Release Version: 1.0.8.3 |
| * Date Started: 2004/06/04 |
| * |
| * C# language file for GeSHi. |
| * |
| * CHANGES |
| * ------- |
| * 2008/05/25 (1.0.7.22) |
| * - Added highlighting of using and namespace directives as non-OOP |
| * 2005/01/05 (1.0.1) |
| * - Used hardquote support for @"..." strings (Cliff Stanford) |
| * 2004/11/27 (1.0.0) |
| * - Initial release |
| * |
| * TODO (updated 2004/11/27) |
| * ------------------------- |
| * |
| ************************************************************************************* |
| * |
| * This file is part of GeSHi. |
| * |
| * GeSHi is free software; you can redistribute it and/or modify |
| * it under the terms of the GNU General Public License as published by |
| * the Free Software Foundation; either version 2 of the License, or |
| * (at your option) any later version. |
| * |
| * GeSHi is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| * GNU General Public License for more details. |
| * |
| * You should have received a copy of the GNU General Public License |
| * along with GeSHi; if not, write to the Free Software |
| * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| * |
| ************************************************************************************/ |
| |
| $language_data = array ( |
| 'LANG_NAME' => 'C#', |
| 'COMMENT_SINGLE' => array(1 => '//', 2 => '#'), |
| 'COMMENT_MULTI' => array('/*' => '*/'), |
| 'COMMENT_REGEXP' => array( |
| //Using and Namespace directives (basic support) |
| //Please note that the alias syntax for using is not supported |
| 3 => '/(?:(?<=using[\\n\\s])|(?<=namespace[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*[a-zA-Z0-9_]+[\n\s]*(?=[;=])/i'), |
| 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, |
| 'QUOTEMARKS' => array("'", '"'), |
| 'HARDQUOTE' => array('@"', '"'), |
| 'HARDESCAPE' => array('""'), |
| 'ESCAPE_CHAR' => '\\', |
| 'KEYWORDS' => array( |
| 1 => array( |
| 'as', 'auto', 'base', 'break', 'case', 'catch', 'const', 'continue', |
| 'default', 'do', 'else', 'event', 'explicit', 'extern', 'false', |
| 'finally', 'fixed', 'for', 'foreach', 'goto', 'if', 'implicit', |
| 'in', 'internal', 'lock', 'namespace', 'null', 'operator', 'out', |
| 'override', 'params', 'partial', 'private', 'protected', 'public', |
| 'readonly', 'ref', 'return', 'sealed', 'stackalloc', 'static', |
| 'switch', 'this', 'throw', 'true', 'try', 'unsafe', 'using', |
| 'virtual', 'void', 'while' |
| ), |
| 2 => array( |
| '#elif', '#endif', '#endregion', '#else', '#error', '#define', '#if', |
| '#line', '#region', '#undef', '#warning' |
| ), |
| 3 => array( |
| 'checked', 'is', 'new', 'sizeof', 'typeof', 'unchecked' |
| ), |
| 4 => array( |
| 'bool', 'byte', 'char', 'class', 'decimal', 'delegate', 'double', |
| 'enum', 'float', 'int', 'interface', 'long', 'object', 'sbyte', |
| 'short', 'string', 'struct', 'uint', 'ulong', 'ushort' |
| ), |
| 5 => array( |
| 'Microsoft.Win32', |
| 'System', |
| 'System.CodeDOM', |
| 'System.CodeDOM.Compiler', |
| 'System.Collections', |
| 'System.Collections.Bases', |
| 'System.ComponentModel', |
| 'System.ComponentModel.Design', |
| 'System.ComponentModel.Design.CodeModel', |
| 'System.Configuration', |
| 'System.Configuration.Assemblies', |
| 'System.Configuration.Core', |
| 'System.Configuration.Install', |
| 'System.Configuration.Interceptors', |
| 'System.Configuration.Schema', |
| 'System.Configuration.Web', |
| 'System.Core', |
| 'System.Data', |
| 'System.Data.ADO', |
| 'System.Data.Design', |
| 'System.Data.Internal', |
| 'System.Data.SQL', |
| 'System.Data.SQLTypes', |
| 'System.Data.XML', |
| 'System.Data.XML.DOM', |
| 'System.Data.XML.XPath', |
| 'System.Data.XML.XSLT', |
| 'System.Diagnostics', |
| 'System.Diagnostics.SymbolStore', |
| 'System.DirectoryServices', |
| 'System.Drawing', |
| 'System.Drawing.Design', |
| 'System.Drawing.Drawing2D', |
| 'System.Drawing.Imaging', |
| 'System.Drawing.Printing', |
| 'System.Drawing.Text', |
| 'System.Globalization', |
| 'System.IO', |
| 'System.IO.IsolatedStorage', |
| 'System.Messaging', |
| 'System.Net', |
| 'System.Net.Sockets', |
| 'System.NewXml', |
| 'System.NewXml.XPath', |
| 'System.NewXml.Xsl', |
| 'System.Reflection', |
| 'System.Reflection.Emit', |
| 'System.Resources', |
| 'System.Runtime.InteropServices', |
| 'System.Runtime.InteropServices.Expando', |
| 'System.Runtime.Remoting', |
| 'System.Runtime.Serialization', |
| 'System.Runtime.Serialization.Formatters', |
| 'System.Runtime.Serialization.Formatters.Binary', |
| 'System.Security', |
| 'System.Security.Cryptography', |
| 'System.Security.Cryptography.X509Certificates', |
| 'System.Security.Permissions', |
| 'System.Security.Policy', |
| 'System.Security.Principal', |
| 'System.ServiceProcess', |
| 'System.Text', |
| 'System.Text.RegularExpressions', |
| 'System.Threading', |
| 'System.Timers', |
| 'System.Web', |
| 'System.Web.Caching', |
| 'System.Web.Configuration', |
| 'System.Web.Security', |
| 'System.Web.Services', |
| 'System.Web.Services.Description', |
| 'System.Web.Services.Discovery', |
| 'System.Web.Services.Protocols', |
| 'System.Web.UI', |
| 'System.Web.UI.Design', |
| 'System.Web.UI.Design.WebControls', |
| 'System.Web.UI.Design.WebControls.ListControls', |
| 'System.Web.UI.HtmlControls', |
| 'System.Web.UI.WebControls', |
| 'System.WinForms', |
| 'System.WinForms.ComponentModel', |
| 'System.WinForms.Design', |
| 'System.Xml', |
| 'System.Xml.Serialization', |
| 'System.Xml.Serialization.Code', |
| 'System.Xml.Serialization.Schema' |
| ), |
| ), |
| 'SYMBOLS' => array( |
| '+', '-', '*', '?', '=', '/', '%', '&', '>', '<', '^', '!', ':', ';', |
| '(', ')', '{', '}', '[', ']', '|' |
| ), |
| 'CASE_SENSITIVE' => array( |
| GESHI_COMMENTS => false, |
| 1 => false, |
| 2 => false, |
| 3 => false, |
| 4 => false, |
| 5 => false, |
| ), |
| 'STYLES' => array( |
| 'KEYWORDS' => array( |
| 1 => 'color: #0600FF;', |
| 2 => 'color: #FF8000; font-weight: bold;', |
| 3 => 'color: #008000;', |
| 4 => 'color: #FF0000;', |
| 5 => 'color: #000000;' |
| ), |
| 'COMMENTS' => array( |
| 1 => 'color: #008080; font-style: italic;', |
| 2 => 'color: #008080;', |
| 3 => 'color: #008080;', |
| 'MULTI' => 'color: #008080; font-style: italic;' |
| ), |
| 'ESCAPE_CHAR' => array( |
| 0 => 'color: #008080; font-weight: bold;', |
| 'HARD' => 'color: #008080; font-weight: bold;' |
| ), |
| 'BRACKETS' => array( |
| 0 => 'color: #000000;' |
| ), |
| 'STRINGS' => array( |
| 0 => 'color: #666666;', |
| 'HARD' => 'color: #666666;' |
| ), |
| 'NUMBERS' => array( |
| 0 => 'color: #FF0000;' |
| ), |
| 'METHODS' => array( |
| 1 => 'color: #0000FF;', |
| 2 => 'color: #0000FF;' |
| ), |
| 'SYMBOLS' => array( |
| 0 => 'color: #008000;' |
| ), |
| 'REGEXPS' => array( |
| ), |
| 'SCRIPT' => array( |
| ) |
| ), |
| 'URLS' => array( |
| 1 => '', |
| 2 => '', |
| 3 => 'http://www.google.com/search?q={FNAMEL}+msdn.microsoft.com', |
| 4 => '', |
| 5 => '' |
| ), |
| 'OOLANG' => true, |
| 'OBJECT_SPLITTERS' => array( |
| 1 => '.', |
| 2 => '::' |
| ), |
| 'REGEXPS' => array( |
| ), |
| 'STRICT_MODE_APPLIES' => GESHI_NEVER, |
| 'SCRIPT_DELIMITERS' => array( |
| ), |
| 'HIGHLIGHT_STRICT_BLOCK' => array( |
| ), |
| 'TAB_WIDTH' => 4, |
| 'PARSER_CONTROL' => array( |
| 'KEYWORDS' => array( |
| 'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])", |
| 'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])" |
| ) |
| ) |
| ); |
| |
| ?> |