summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDamien Doligez <damien.doligez-inria.fr>1999-11-29 19:17:20 +0000
committerDamien Doligez <damien.doligez-inria.fr>1999-11-29 19:17:20 +0000
commitc86025c0749a4636464a117eaaf87b3805f1d47d (patch)
treeac5e8b5149a23a515301fe8a9d200c5bd39d74c4
parentddc7d63689f3f07fe07f317c05e4626d4f07af04 (diff)
MacOS: coloriage syntaxique
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2640 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
-rw-r--r--tools/.cvsignore1
-rw-r--r--tools/keywords.r120
2 files changed, 121 insertions, 0 deletions
diff --git a/tools/.cvsignore b/tools/.cvsignore
index f10e168cf..61be471d9 100644
--- a/tools/.cvsignore
+++ b/tools/.cvsignore
@@ -10,3 +10,4 @@ ocamlcp
ocamlmktop
primreq
ocamldumpobj
+keywords
diff --git a/tools/keywords.r b/tools/keywords.r
new file mode 100644
index 000000000..8fc6fce32
--- /dev/null
+++ b/tools/keywords.r
@@ -0,0 +1,120 @@
+/***********************************************************************/
+/* */
+/* Objective Caml */
+/* */
+/* Damien Doligez, projet Para, INRIA Rocquencourt */
+/* */
+/* Copyright 1996 Institut National de Recherche en Informatique et */
+/* en Automatique. All rights reserved. This file is distributed */
+/* under the terms of the GNU Library General Public License. */
+/* */
+/***********************************************************************/
+
+/* $Id$ */
+
+type 'Odds' {
+ longint; /* resource ID of corresponding 'Sods' */
+ longint = $$CountOf (suffixes);
+ wide array suffixes { pstring; };
+};
+
+type 'Sods' {
+ longint = 0xA5666D66;
+ pstring; /* default token breaks */
+ longint = $$CountOf (keywords);
+ wide array keywords {
+ pstring; /* the keyword itself */
+ longint /* the keyword type */
+ case=0,
+ caseWord=1,
+ noCase=2,
+ noCaseWord=3,
+ line=4,
+ mystery=0xB,
+ opening=0x10000,
+ closing=0x20000,
+ openingFill=0x50000,
+ closingFill=0x60000,
+ quote=0x80000;
+ literal longint; /* scoping parameter */
+ longint /* color */
+ red=0,
+ blue=1,
+ bluegreen=2,
+ bluepurple=3,
+ grey=4,
+ darkgreen=7,
+ black=255;
+ };
+};
+
+resource 'Odds' (26087, "O'Caml") {
+ 26087,
+ { ".ml", ".mli", ".mll", ".mly", ".mlp" }
+};
+
+resource 'Sods' (26087, "O'Caml Keywords") {
+ "\t\r\n ~!$%^&*()/-+=<>,:[]{};",
+ {
+ "(*", openingFill, '(**)', red,
+ "*)", closingFill, '(**)', red,
+ "\"", quote, 0, grey,
+#define KEY caseWord, 0, blue
+ "and", KEY,
+ "as", KEY,
+ "assert", KEY,
+ "begin", KEY,
+ "class", KEY,
+ "constraint", KEY,
+ "do", KEY,
+ "done", KEY,
+ "downto", KEY,
+ "else", KEY,
+ "end", KEY,
+ "exception", KEY,
+ "external", KEY,
+ "false", KEY,
+ "for", KEY,
+ "fun", KEY,
+ "function", KEY,
+ "functor", KEY,
+ "if", KEY,
+ "in", KEY,
+ "include", KEY,
+ "inherit", KEY,
+ "initializer", KEY,
+ "lazy", KEY,
+ "let", KEY,
+ "match", KEY,
+ "method", KEY,
+ "module", KEY,
+ "mutable", KEY,
+ "new", KEY,
+ "object", KEY,
+ "of", KEY,
+ "open", KEY,
+ "or", KEY,
+ "parser", KEY,
+ "private", KEY,
+ "rec", KEY,
+ "sig", KEY,
+ "struct", KEY,
+ "then", KEY,
+ "to", KEY,
+ "true", KEY,
+ "try", KEY,
+ "type", KEY,
+ "val", KEY,
+ "virtual", KEY,
+ "when", KEY,
+ "while", KEY,
+ "with", KEY,
+ "mod", KEY,
+ "land", KEY,
+ "lor", KEY,
+ "lxor", KEY,
+ "lsl", KEY,
+ "lsr", KEY,
+ "asr", KEY,
+ }
+};