updated testsuite + added nano + joe
This commit is contained in:
parent
ceacb4fa41
commit
12f05205fa
181 changed files with 58641 additions and 7 deletions
14
joe/.env
Executable file
14
joe/.env
Executable file
|
|
@ -0,0 +1,14 @@
|
|||
#!/bin/sh
|
||||
dir=$(pwd)
|
||||
|
||||
# overlay our directories
|
||||
test -f /.overlayfs || {
|
||||
find . -type d -mindepth 1 | while read dir; do
|
||||
cp -d -r ./$dir/* /$dir/.
|
||||
done
|
||||
echo 1 > /.overlayfs
|
||||
echo "[i] imported overlay fs"
|
||||
echo "[i] editor 'joe' installed" | logger
|
||||
}
|
||||
|
||||
|
||||
11
joe/build.sh
Executable file
11
joe/build.sh
Executable file
|
|
@ -0,0 +1,11 @@
|
|||
#!/bin/sh
|
||||
set -e
|
||||
name=joe
|
||||
../build_nixpkg.sh $name
|
||||
out=$(pwd)
|
||||
set -x
|
||||
rm -rf *.zip bin usr etc || true
|
||||
cp -r result/{bin,etc} .
|
||||
mkdir usr
|
||||
cp -r result/share usr/.
|
||||
zip -r package.$name.zip bin usr etc root .env
|
||||
923
joe/etc/joe/ftyperc
Normal file
923
joe/etc/joe/ftyperc
Normal file
|
|
@ -0,0 +1,923 @@
|
|||
File Type table. This is :included by the joerc file.
|
||||
Scripts can look like this '#!/usr/bin/python' or this '#! /usr/bin/env python3'
|
||||
|
||||
A text file
|
||||
[text]
|
||||
No '.' in file name? Assume it's a text file and we want wordwrap on.
|
||||
*
|
||||
Text file.
|
||||
*.txt
|
||||
|
||||
Not a text file
|
||||
[not_text]
|
||||
File name with '.'? It's probably not a text file.
|
||||
*.*
|
||||
-wordwrap
|
||||
|
||||
Diff
|
||||
[diff]
|
||||
*
|
||||
+\? [A-Za-z]
|
||||
+Index: [A-Za-z]
|
||||
+Only in
|
||||
+Nur in
|
||||
+---
|
||||
+\*\*\*
|
||||
+[1-9][0-9]*[cda]
|
||||
*.diff
|
||||
*.patch
|
||||
-syntax diff
|
||||
|
||||
Troff
|
||||
[troff]
|
||||
*.1
|
||||
*.1.in
|
||||
-wordwrap
|
||||
-syntax troff
|
||||
|
||||
TeX
|
||||
[tex]
|
||||
*.tex
|
||||
*.sty
|
||||
-syntax tex
|
||||
-tex_comment
|
||||
-no_double_quoted
|
||||
-wordwrap
|
||||
|
||||
News/mail files.
|
||||
[email]
|
||||
*.article*
|
||||
*.followup
|
||||
*.letter
|
||||
NN newsreader
|
||||
*tmp/nn.*
|
||||
mail
|
||||
*tmp/Re*
|
||||
elm
|
||||
*tmp/snd.*
|
||||
dmail
|
||||
*tmp/dmt*
|
||||
pine
|
||||
*tmp/pico.*
|
||||
Mutt
|
||||
*tmp/mutt-*
|
||||
-wordwrap
|
||||
-syntax mail
|
||||
|
||||
AVR assembly language
|
||||
[avr]
|
||||
*.avr
|
||||
*.inc
|
||||
-syntax avr
|
||||
-autoindent
|
||||
-wordwrap
|
||||
-tab 8
|
||||
|
||||
Generic assembly language
|
||||
[assembly]
|
||||
*.asm
|
||||
*.s
|
||||
*.S
|
||||
-highlighter_context
|
||||
-wordwrap
|
||||
-syntax asm
|
||||
|
||||
Mason (Perl in HTML)
|
||||
[mason]
|
||||
*.mas
|
||||
-autoindent
|
||||
-title
|
||||
-syntax mason
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-highlighter_context
|
||||
|
||||
SML
|
||||
[sml]
|
||||
*.sml
|
||||
-autoindent
|
||||
-title
|
||||
-syntax sml
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-istep 2
|
||||
-highlighter_context
|
||||
|
||||
OCaml
|
||||
[ocaml]
|
||||
*.ml
|
||||
OCaml language interface
|
||||
*.mli
|
||||
-autoindent
|
||||
-title
|
||||
-syntax ocaml
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-istep 2
|
||||
-highlighter_context
|
||||
|
||||
Ruby
|
||||
[ruby]
|
||||
*.rb
|
||||
*
|
||||
+#![ ]*[^\n]*ruby[0-9.]*\>
|
||||
*.gemspec
|
||||
*Gemfile
|
||||
*Rakefile
|
||||
*Guardfile
|
||||
*.rabl
|
||||
-autoindent
|
||||
-title
|
||||
-pound_comment
|
||||
-syntax ruby
|
||||
-text_delimiters do=end
|
||||
-highlighter_context
|
||||
|
||||
Perl
|
||||
[perl]
|
||||
*
|
||||
+#![ ]*[^\n]*perl[0-9.]*\>
|
||||
*.pl
|
||||
*.pm
|
||||
*.t
|
||||
-autoindent
|
||||
-title
|
||||
-syntax perl
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-pound_comment
|
||||
-single_quoted
|
||||
-highlighter_context
|
||||
|
||||
SQL
|
||||
[sql]
|
||||
*.sql
|
||||
-autoindent
|
||||
-title
|
||||
-syntax sql
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-c_comment
|
||||
-vhdl_comment
|
||||
-cpp_comment
|
||||
-text_delimiters BEGIN|Begin|begin=END|End|end
|
||||
-cpara >#!;*/%
|
||||
-highlighter_context
|
||||
|
||||
AWK
|
||||
[awk]
|
||||
*.awk
|
||||
-autoindent
|
||||
-title
|
||||
-syntax awk
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-pound_comment
|
||||
-highlighter_context
|
||||
|
||||
YACC
|
||||
[yacc]
|
||||
*.y
|
||||
-autoindent
|
||||
-title
|
||||
-syntax c
|
||||
-highlighter_context
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-c_comment
|
||||
-cpp_comment
|
||||
-text_delimiters #if|#ifdef|#ifndef=#elif=#else=#endif
|
||||
-cpara >#!;*/%
|
||||
|
||||
Lex
|
||||
[lex]
|
||||
*.l
|
||||
*.lex
|
||||
-autoindent
|
||||
-title
|
||||
-syntax c
|
||||
-highlighter_context
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-c_comment
|
||||
-cpp_comment
|
||||
-text_delimiters #if|#ifdef|#ifndef=#elif=#else=#endif
|
||||
-cpara >#!;*/%
|
||||
|
||||
Ada
|
||||
[ada]
|
||||
*.adb
|
||||
*.ads
|
||||
-syntax ada
|
||||
-autoindent
|
||||
-title
|
||||
-istep 2
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-vhdl_comment
|
||||
-text_delimiters declare|Declare|DECLARE|exception|Exception|EXCEPTION|if|If|IF|loop|Loop|LOOP|case|Case|CASE|package|Package|PACKAGE|procedure|Procedure|PROCEDURE|record|Record|RECORD|function|Function|FUNCTION=end|End|END
|
||||
-highlighter_context
|
||||
|
||||
COBOL
|
||||
[cobol]
|
||||
*.cbl
|
||||
*.cob
|
||||
-syntax cobol
|
||||
-highlighter_context
|
||||
|
||||
REXX
|
||||
[rexx]
|
||||
*.rex
|
||||
*.REX
|
||||
*
|
||||
+#![ ]*[^\n]*rexx[0-9.]*\>
|
||||
-syntax rexx
|
||||
-autoindent
|
||||
-title
|
||||
-highlighter_context
|
||||
|
||||
SED script
|
||||
[sed]
|
||||
*.sed
|
||||
-syntax sed
|
||||
-highlighter_context
|
||||
|
||||
Postscript
|
||||
[postscript]
|
||||
*.ps
|
||||
*.eps
|
||||
-syntax ps
|
||||
-highlighter_context
|
||||
|
||||
C language
|
||||
[c]
|
||||
*.c
|
||||
*.cpp
|
||||
*.cc
|
||||
*.c++
|
||||
C language header file
|
||||
*.h
|
||||
*.h.in
|
||||
*.hpp
|
||||
*.h++
|
||||
*.hh
|
||||
*.mm
|
||||
-autoindent
|
||||
-title
|
||||
-syntax c
|
||||
-highlighter_context
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-c_comment
|
||||
-cpp_comment
|
||||
-text_delimiters #if|#ifdef|#ifndef=#elif=#else=#endif
|
||||
-cpara >#!;*/%
|
||||
|
||||
Verilog
|
||||
[verilog]
|
||||
*.v
|
||||
Verilog header file
|
||||
*.vh
|
||||
-autoindent
|
||||
-syntax verilog
|
||||
-istep 2
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-c_comment
|
||||
-cpp_comment
|
||||
-text_delimiters `ifdef|`ifndef=`else=`endif:begin=end:case|casex|casez=endcase:function=endfunction:module=endmodule:task=endtask:attribute=endattribute:primitive=endprimitive:table=endtable
|
||||
-cpara >#!;*/%
|
||||
-highlighter_context
|
||||
|
||||
VHDL
|
||||
[vhdl]
|
||||
*.vhd
|
||||
-autoindent
|
||||
-syntax vhdl
|
||||
-istep 2
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-vhdl_comment
|
||||
-text_delimiters entity|ENTITY|if|IF|component|COMPONENT|loop|LOOP|configuration|CONFIGURATION|units|UNITS|record|RECORD|case|CASE|function|FUNCTION|package|PACKAGE|architecture|ARCHITECTURE|block|BLOCK|process|PROCESS|generate|GENERATE=end|END
|
||||
-cpara >#!;*-/%
|
||||
-highlighter_context
|
||||
|
||||
XML
|
||||
[xml]
|
||||
*.xml
|
||||
*.xsd
|
||||
*
|
||||
+<.xml
|
||||
*.jnlp
|
||||
RESX/.NET resource files
|
||||
*.resx
|
||||
Ant's build.xml
|
||||
*build.xml
|
||||
-autoindent
|
||||
-syntax xml
|
||||
-highlighter_context
|
||||
|
||||
Apple plists
|
||||
[plist]
|
||||
*.plist
|
||||
-autoindent
|
||||
-syntax xml
|
||||
|
||||
HTML
|
||||
[html]
|
||||
*.htm
|
||||
*.html
|
||||
-wordwrap
|
||||
-autoindent
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-syntax html
|
||||
|
||||
CSS
|
||||
[css]
|
||||
*.css
|
||||
-wordwrap
|
||||
-autoindent
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-syntax css
|
||||
|
||||
JAVA
|
||||
[java]
|
||||
*.java
|
||||
-autoindent
|
||||
-title
|
||||
-syntax java
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-c_comment
|
||||
-cpp_comment
|
||||
-purify
|
||||
-cpara >#!;*/%
|
||||
-highlighter_context
|
||||
|
||||
Javascript
|
||||
[javascript]
|
||||
*.js
|
||||
*
|
||||
+#![ ]*[^\n]*nodejs[0-9.]*\>
|
||||
-autoindent
|
||||
-title
|
||||
-syntax js
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-c_comment
|
||||
-cpp_comment
|
||||
-cpara >#!;*/%
|
||||
-highlighter_context
|
||||
|
||||
JSON
|
||||
[json]
|
||||
*.json
|
||||
-autoindent
|
||||
-syntax json
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-highlighter_context
|
||||
|
||||
Typescript
|
||||
[typescript]
|
||||
*.ts
|
||||
-autoindent
|
||||
-title
|
||||
-syntax typescript
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-c_comment
|
||||
-cpp_comment
|
||||
-cpara >#!;*/%
|
||||
-highlighter_context
|
||||
|
||||
Hypertext preprocessor file
|
||||
[php]
|
||||
*.php
|
||||
-autoindent
|
||||
-title
|
||||
-syntax php
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-highlighter_context
|
||||
|
||||
Python
|
||||
[python]
|
||||
*
|
||||
+#![ ]*[^\n]*python[0-9.]*\>
|
||||
*.py
|
||||
-autoindent
|
||||
-title
|
||||
-syntax python
|
||||
-highlighter_context
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-pound_comment
|
||||
|
||||
C-shell
|
||||
[csh]
|
||||
*
|
||||
+#![ ]*[^\n ]*/csh\>
|
||||
+#![ ]*[^\n ]*/tcsh\>
|
||||
*.csh
|
||||
*.login
|
||||
*.logout
|
||||
*.tcsh
|
||||
*.tcshrc
|
||||
-autoindent
|
||||
-title
|
||||
-syntax csh
|
||||
-pound_comment
|
||||
-highlighter_context
|
||||
|
||||
Shell
|
||||
[sh]
|
||||
*
|
||||
+#![ ]*[^\n ]*/sh\>
|
||||
+#![ ]*[^\n ]*/bash\>
|
||||
*.sh
|
||||
*profile
|
||||
*.bash
|
||||
*.bashrc
|
||||
*.bash_login
|
||||
*.bash_logout
|
||||
-autoindent
|
||||
-title
|
||||
-syntax sh
|
||||
-highlighter_context
|
||||
-pound_comment
|
||||
-text_delimiters do=done:if=elif=else=fi:case=esac
|
||||
|
||||
Lisp
|
||||
[lisp]
|
||||
*.lisp
|
||||
*.lsp
|
||||
*.el
|
||||
-autoindent
|
||||
-title
|
||||
-syntax lisp
|
||||
-semi_comment
|
||||
-highlighter_context
|
||||
|
||||
Korn shell
|
||||
[ksh]
|
||||
*
|
||||
+#![ ]*[^\n ]*/ksh\>
|
||||
*.ksh
|
||||
-autoindent
|
||||
-title
|
||||
-syntax sh
|
||||
-highlighter_context
|
||||
-pound_comment
|
||||
-text_delimiters do=done:if=elif=else=fi:case=esac
|
||||
-highlighter_context
|
||||
|
||||
PASCAL
|
||||
[pascal]
|
||||
*.p
|
||||
*.pas
|
||||
-autoindent
|
||||
-title
|
||||
-syntax pascal
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-text_delimiters begin|BEGIN|record|RECORD|case|CASE=end|END:repeat|REPEAT=until|UNTIL
|
||||
-highlighter_context
|
||||
|
||||
Fortran
|
||||
[fortran]
|
||||
*.f
|
||||
*.f90
|
||||
*.for
|
||||
*.FOR
|
||||
-autoindent
|
||||
-title
|
||||
-syntax fortran
|
||||
-highlighter_context
|
||||
|
||||
Cadence SKILL
|
||||
[skill]
|
||||
*.il
|
||||
-semi_comment
|
||||
-syntax skill
|
||||
-autoindent
|
||||
-title
|
||||
-istep 3
|
||||
-indentc 32
|
||||
-smartbacks
|
||||
-smarthome
|
||||
-indentfirst
|
||||
-highlighter_context
|
||||
|
||||
Lua
|
||||
[lua]
|
||||
*.lua
|
||||
*
|
||||
+#![ ]*[^\n]*lua[0-9.]*\>
|
||||
-autoindent
|
||||
-title
|
||||
-syntax lua
|
||||
-highlighter_context
|
||||
|
||||
TCL
|
||||
[tcl]
|
||||
*.tcl
|
||||
-autoindent
|
||||
-title
|
||||
-syntax tcl
|
||||
-highlighter_context
|
||||
|
||||
Go language
|
||||
[go]
|
||||
*.go
|
||||
-autoindent
|
||||
-title
|
||||
-syntax go
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-c_comment
|
||||
-text_delimiters #if|#ifdef|#ifndef=#elif=#else=#endif
|
||||
-cpara >#!;*/%
|
||||
-highlighter_context
|
||||
|
||||
CSharp
|
||||
[c#]
|
||||
*.cs
|
||||
-autoindent
|
||||
-title
|
||||
-syntax csharp
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-cpara >#!;*/%
|
||||
-text_delimiters #region=#endregion:#if=#elif=#else=#endif
|
||||
-highlighter_context
|
||||
|
||||
Joe Syntax File
|
||||
[jsf]
|
||||
*.jsf
|
||||
*.jsf.in
|
||||
-autoindent
|
||||
-title
|
||||
-syntax jsf
|
||||
-smarthome
|
||||
-highlighter_context
|
||||
|
||||
Joe Colorscheme file
|
||||
[jcf]
|
||||
*.jcf
|
||||
-syntax jcf
|
||||
|
||||
M4 / Autoconfig file
|
||||
[m4]
|
||||
*.ac
|
||||
*.m4
|
||||
-autoindent
|
||||
-title
|
||||
-syntax m4
|
||||
-highlighter_context
|
||||
|
||||
Matlab file (clashes with objective-C)
|
||||
[matlab]
|
||||
*.m
|
||||
-wordwrap
|
||||
-syntax matlab
|
||||
-highlighter_context
|
||||
|
||||
UNIX configuration file
|
||||
[conf]
|
||||
Automake file
|
||||
*.am
|
||||
System RC file
|
||||
*rc
|
||||
Makefile
|
||||
*Makefile
|
||||
*makefile.in
|
||||
*Makefile.in
|
||||
*makefile
|
||||
*AKEFILE
|
||||
-autoindent
|
||||
-syntax conf
|
||||
-pound_comment
|
||||
-highlighter_context
|
||||
|
||||
Windows batch files
|
||||
[bat]
|
||||
*.bat
|
||||
*.cmd
|
||||
-autoindent
|
||||
-syntax batch
|
||||
-highlighter_context
|
||||
|
||||
JOERC file
|
||||
[joerc]
|
||||
*ftyperc
|
||||
*joerc
|
||||
*jmacsrc
|
||||
*jstarrc
|
||||
*rjoerc
|
||||
*jpicorc
|
||||
*joerc.in
|
||||
*jmacsrc.in
|
||||
*jstarrc.in
|
||||
*rjoerc.in
|
||||
*jpicorc.in
|
||||
-syntax joerc
|
||||
-highlighter_context
|
||||
|
||||
Markdown
|
||||
[markdown]
|
||||
*.md
|
||||
-syntax md
|
||||
-wordwrap
|
||||
|
||||
YAML
|
||||
[yaml]
|
||||
*.yml
|
||||
*.yaml
|
||||
-autoindent
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-pound_comment
|
||||
-syntax yaml
|
||||
-highlighter_context
|
||||
|
||||
Debian apt
|
||||
[debian]
|
||||
*apt/sources.list
|
||||
*sources.list.*
|
||||
-pound_comment
|
||||
-syntax debian
|
||||
|
||||
Java's .properties
|
||||
[java_properties]
|
||||
*.properties
|
||||
this is part of the specification:
|
||||
-encoding iso-8859-1
|
||||
-pound_comment
|
||||
-syntax properties
|
||||
-highlighter_context
|
||||
|
||||
INI Files
|
||||
[ini]
|
||||
*.ini
|
||||
*.inf
|
||||
*hgrc
|
||||
*.gitconfig
|
||||
*.git/config
|
||||
-syntax ini
|
||||
-pound_comment
|
||||
-semi_comment
|
||||
-highlighter_context
|
||||
|
||||
plain ERB
|
||||
[erb]
|
||||
*.erb
|
||||
-syntax erb
|
||||
-highlighter_context
|
||||
|
||||
ERB within HTML
|
||||
[erb_html]
|
||||
*.html.erb
|
||||
-syntax htmlerb
|
||||
-highlighter_context
|
||||
|
||||
Haml
|
||||
[haml]
|
||||
*.haml
|
||||
-syntax haml
|
||||
-istep 2
|
||||
-indentc 32
|
||||
-autoindent
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-highlighter_context
|
||||
|
||||
Erlang
|
||||
[erlang]
|
||||
*.erl
|
||||
*.eterm
|
||||
*.app.src
|
||||
*rebar.config
|
||||
*.hrl
|
||||
*.erlang
|
||||
-syntax erlang
|
||||
-autoindent
|
||||
-title
|
||||
-highlighter_context
|
||||
|
||||
Sieve (ManageSieve)
|
||||
[sieve]
|
||||
*.sieve
|
||||
-syntax sieve
|
||||
-autoindent
|
||||
-title
|
||||
-highlighter_context
|
||||
|
||||
Puppet
|
||||
[puppet]
|
||||
*.pp
|
||||
-syntax puppet
|
||||
-pound_comment
|
||||
-autoindent
|
||||
-title
|
||||
-highlighter_context
|
||||
|
||||
ip(6)tables
|
||||
[iptables]
|
||||
*
|
||||
+# Generated by iptables-save
|
||||
+# Generated by ip6tables-save
|
||||
-syntax iptables
|
||||
-pound_comment
|
||||
|
||||
PowerShell
|
||||
[powershell]
|
||||
*.ps1
|
||||
*.psm1
|
||||
-syntax powershell
|
||||
-autoindent
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-highlighter_context
|
||||
|
||||
Git COMMIT_EDITMSG
|
||||
[git-commit]
|
||||
*COMMIT_EDITMSG
|
||||
-syntax git-commit
|
||||
|
||||
Elixir
|
||||
[elixir]
|
||||
*.ex
|
||||
*.exs
|
||||
-autoindent
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-title
|
||||
-syntax elixir
|
||||
-pound_comment
|
||||
-text_delimiters do=else=end
|
||||
-indentc 32
|
||||
-istep 2
|
||||
-highlighter_context
|
||||
|
||||
R
|
||||
[r]
|
||||
*.r
|
||||
-autoindent
|
||||
-title
|
||||
-syntax r
|
||||
-pound_comment
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-highlighter_context
|
||||
|
||||
Groovy
|
||||
[groovy]
|
||||
*.gvy
|
||||
*.groovy
|
||||
*.gy
|
||||
*.gsh
|
||||
-autoindent
|
||||
-title
|
||||
-syntax groovy
|
||||
-c_comment
|
||||
-cpp_comment
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-highlighter_context
|
||||
|
||||
Clojure
|
||||
[clojure]
|
||||
*.clj
|
||||
*.cljs
|
||||
*.cljc
|
||||
*.edn
|
||||
-autoindent
|
||||
-title
|
||||
-syntax clojure
|
||||
-semi_comment
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-highlighter_context
|
||||
|
||||
Rust
|
||||
[rust]
|
||||
*.rs
|
||||
-autoindent
|
||||
-title
|
||||
-syntax rust
|
||||
-c_comment
|
||||
-cpp_comment
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-highlighter_context
|
||||
|
||||
Coffeescript
|
||||
[coffee]
|
||||
*.coffee
|
||||
-autoindent
|
||||
-title
|
||||
-syntax coffee
|
||||
-pound_comment
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-highlighter_context
|
||||
|
||||
Scala
|
||||
[scala]
|
||||
*.scala
|
||||
-autoindent
|
||||
-title
|
||||
-syntax scala
|
||||
-c_comment
|
||||
-cpp_comment
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-highlighter_context
|
||||
|
||||
Swift
|
||||
[swift]
|
||||
*.swift
|
||||
-autoindent
|
||||
-title
|
||||
-syntax swift
|
||||
-c_comment
|
||||
-cpp_comment
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-highlighter_context
|
||||
|
||||
D
|
||||
[d]
|
||||
*.d
|
||||
-autoindent
|
||||
-title
|
||||
-syntax d
|
||||
-c_comment
|
||||
-cpp_comment
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-purify
|
||||
-single_quoted
|
||||
-highlighter_context
|
||||
|
||||
Docker
|
||||
[dockerfile]
|
||||
*Dockerfile
|
||||
-autoindent
|
||||
-title
|
||||
-syntax dockerfile
|
||||
-pound_comment
|
||||
-highlighter_context
|
||||
|
||||
RPM Spec
|
||||
[spec]
|
||||
*.spec
|
||||
-autoindent
|
||||
-syntax spec
|
||||
|
||||
Haskell
|
||||
[haskell]
|
||||
*.hs
|
||||
-autoindent
|
||||
-smarthome
|
||||
-smartbacks
|
||||
-syntax haskell
|
||||
-vhdl_comment
|
||||
-highlighter_context
|
||||
1265
joe/etc/joe/jicerc.ru
Normal file
1265
joe/etc/joe/jicerc.ru
Normal file
File diff suppressed because it is too large
Load diff
1284
joe/etc/joe/jmacsrc
Normal file
1284
joe/etc/joe/jmacsrc
Normal file
File diff suppressed because it is too large
Load diff
1308
joe/etc/joe/joerc
Normal file
1308
joe/etc/joe/joerc
Normal file
File diff suppressed because it is too large
Load diff
1254
joe/etc/joe/joerc.zh_TW
Normal file
1254
joe/etc/joe/joerc.zh_TW
Normal file
File diff suppressed because it is too large
Load diff
1074
joe/etc/joe/jpicorc
Normal file
1074
joe/etc/joe/jpicorc
Normal file
File diff suppressed because it is too large
Load diff
1160
joe/etc/joe/jstarrc
Normal file
1160
joe/etc/joe/jstarrc
Normal file
File diff suppressed because it is too large
Load diff
1107
joe/etc/joe/rjoerc
Normal file
1107
joe/etc/joe/rjoerc
Normal file
File diff suppressed because it is too large
Load diff
42
joe/etc/joe/shell.csh
Normal file
42
joe/etc/joe/shell.csh
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
# Aliases for csh/tcsh in JOE shell window
|
||||
|
||||
alias joehelp 'echo "clear - erase buffer"; \\
|
||||
echo "joe - edit file"; \\
|
||||
echo "math 1+2 - calculator"; \\
|
||||
echo "pop - dismiss shell"; \\
|
||||
echo "parse - grep parse the buffer"; \\
|
||||
echo "parserr - compile parse the buffer"; \\
|
||||
echo "release - drop parsed messages"; \\
|
||||
echo "markb - mark beginning of region"; \\
|
||||
echo "markk - mark end of region"; \\
|
||||
echo "mark cmd - mark output of command"'
|
||||
|
||||
alias clear "echo -n \{shell_clear}"
|
||||
|
||||
alias parse "echo -n \{shell_gparse}"
|
||||
|
||||
alias parserr "echo -n \{shell_parserr}"
|
||||
|
||||
alias release "echo -n \{shell_release}"
|
||||
|
||||
alias markb "echo -n \{shell_markb}"
|
||||
|
||||
alias markk "echo -n \{shell_markk}"
|
||||
|
||||
alias mark "echo -n \{shell_markb}; "\!\*"; echo -n \{shell_markk}"
|
||||
|
||||
alias math "echo -n \{shell_math,"\\\"\!\*\\\"",shell_rtn\\!,shell_typemath}; cat >/dev/null"
|
||||
|
||||
alias edit "echo -n \{shell_edit,"\\\"\!\*\\\"",shell_rtn}"
|
||||
|
||||
alias joe "echo -n \{shell_edit,"\\\"\!\*\\\"",shell_rtn}"
|
||||
|
||||
alias pop "echo -n \{shell_pop}"
|
||||
|
||||
alias cd "cd "\!\*"; echo -n \{shell_cd,shell_dellin\\!,"\\\""; pwd | tr -d '\n'; echo -n /"\\\"",shell_rtn}"
|
||||
|
||||
clear
|
||||
|
||||
echo
|
||||
echo Type joehelp for editor shell commands
|
||||
echo
|
||||
147
joe/etc/joe/shell.sh
Normal file
147
joe/etc/joe/shell.sh
Normal file
|
|
@ -0,0 +1,147 @@
|
|||
# Aliases for sh/dash/ash/bash/ksh/zsh in JOE shell window
|
||||
|
||||
joehelp () {
|
||||
echo "clear - erase buffer"
|
||||
echo "joe - edit file"
|
||||
echo "math 1+2 - calculator"
|
||||
echo "pop - dismiss shell"
|
||||
echo "parse [cmd] - grep parse command"
|
||||
echo "parserr [cmd] - compile parse command"
|
||||
echo "release - drop parsed messages"
|
||||
echo "markb - mark beginning of region"
|
||||
echo "markk - mark end of region"
|
||||
echo "mark cmd - mark output of command"
|
||||
}
|
||||
|
||||
# Clear edit buffer
|
||||
joe_clear () {
|
||||
echo -n '{'shell_clear'}'
|
||||
}
|
||||
|
||||
# Release errors
|
||||
joe_release () {
|
||||
echo -n '{'shell_release'}'
|
||||
}
|
||||
|
||||
# Set marked region beginning
|
||||
joe_markb () {
|
||||
echo -n '{'shell_markb'}'
|
||||
}
|
||||
|
||||
# Set marked region end
|
||||
joe_markk () {
|
||||
echo -n '{'shell_markk'}'
|
||||
}
|
||||
|
||||
|
||||
# Mark command result
|
||||
joe_mark () {
|
||||
joe_markb
|
||||
$*
|
||||
joe_markk
|
||||
}
|
||||
|
||||
# Parse command result (or whole buffer if no arg)
|
||||
joe_parse () {
|
||||
if [ "$1" = "" ]; then
|
||||
echo -n '{'shell_gparse'}'
|
||||
else
|
||||
joe_markb
|
||||
$*
|
||||
joe_markk
|
||||
echo '{'shell_gparse'}'
|
||||
fi
|
||||
}
|
||||
|
||||
# Parse command result (or whole buffer if no arg)
|
||||
joe_parserr () {
|
||||
if [ "$1" = "" ]; then
|
||||
echo '{'shell_parse'}'
|
||||
else
|
||||
joe_markb
|
||||
$*
|
||||
joe_markk
|
||||
echo '{'shell_parse'}'
|
||||
fi
|
||||
}
|
||||
|
||||
# Use JOE's calculator
|
||||
joe_math () {
|
||||
echo -n '{'shell_math,'"'$1'"',shell_rtn!,shell_typemath'}'
|
||||
cat >/dev/null
|
||||
}
|
||||
|
||||
# Edit a file
|
||||
joe_edit () {
|
||||
echo -n '{'shell_edit,'"'$1'"',shell_rtn'}'
|
||||
}
|
||||
|
||||
# Pop shell window
|
||||
joe_pop () {
|
||||
echo -n '{'shell_pop'}'
|
||||
}
|
||||
|
||||
unalias cd 2>/dev/null
|
||||
|
||||
# Change directory
|
||||
joe_cd () {
|
||||
# cd $1 - does not work for directories with spaces in their names
|
||||
# cd "$1" - breaks cd with no args (it's supposed to go to home directory)
|
||||
# So we have do this...
|
||||
if [ "$1" = "" ]; then
|
||||
cd
|
||||
else
|
||||
cd "$1"
|
||||
fi
|
||||
# Tell JOE our new directory
|
||||
echo -n '{'shell_cd,shell_dellin!,'"'`pwd`/'"',shell_rtn'}'
|
||||
}
|
||||
|
||||
alias clear=joe_clear
|
||||
alias math=joe_math
|
||||
alias edit=joe_edit
|
||||
alias joe=joe_edit
|
||||
alias pop=joe_pop
|
||||
alias cd=joe_cd
|
||||
alias parse=joe_parse
|
||||
alias parserr=joe_parserr
|
||||
alias release=joe_release
|
||||
alias markb=joe_markb
|
||||
alias markk=joe_markk
|
||||
alias mark=joe_mark
|
||||
|
||||
# Code to automatically mark and parse output from each command
|
||||
# - This is bash specific code
|
||||
|
||||
#joe_markb_pre () {
|
||||
# joe_markb
|
||||
# MARK_FLAG=1
|
||||
#}
|
||||
|
||||
#joe_markk_post () {
|
||||
# if [ "$MARK_FLAG" = "1" ]; then
|
||||
# joe_markk
|
||||
# MARK_FLAG=0
|
||||
# joe_parse
|
||||
# fi
|
||||
#}
|
||||
|
||||
#preexec () { :; }
|
||||
|
||||
#preexec_invoke_exec () {
|
||||
# [ -n "$COMP_LINE" ] && return # do nothing if completing
|
||||
# [ "$BASH_COMMAND" = "$PROMPT_COMMAND" ] && return # don't cause a preexec for $PROMPT_COMMAND
|
||||
# local this_command=`HISTTIMEFORMAT= history 1 | sed -e "s/^[ ]*[0-9]*[ ]*//"`;
|
||||
# joe_markb_pre
|
||||
# preexec "$this_command"
|
||||
#}
|
||||
|
||||
#trap 'preexec_invoke_exec' DEBUG
|
||||
|
||||
#PROMPT_COMMAND=joe_markk_post
|
||||
|
||||
joe_clear
|
||||
|
||||
echo
|
||||
echo Type joehelp for editor shell commands
|
||||
echo
|
||||
BIN
joe/package.joe.zip
Normal file
BIN
joe/package.joe.zip
Normal file
Binary file not shown.
0
joe/root/.joerc
Normal file
0
joe/root/.joerc
Normal file
12
joe/usr/share/applications/jmacs.desktop
Normal file
12
joe/usr/share/applications/jmacs.desktop
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Joe's Own Editor - EMACS Emulation
|
||||
GenericName=Text Editor
|
||||
Comment=View and edit files
|
||||
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
|
||||
Exec=/usr/bin/jmacs %F
|
||||
TryExec=jmacs
|
||||
Icon=accessories-text-editor
|
||||
Type=Application
|
||||
Terminal=true
|
||||
Categories=Utility;Development;TextEditor;
|
||||
12
joe/usr/share/applications/joe.desktop
Normal file
12
joe/usr/share/applications/joe.desktop
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Joe's Own Editor
|
||||
GenericName=Text Editor
|
||||
Comment=View and edit files
|
||||
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
|
||||
Exec=/usr/bin/joe %F
|
||||
TryExec=joe
|
||||
Icon=accessories-text-editor
|
||||
Type=Application
|
||||
Terminal=true
|
||||
Categories=Utility;Development;TextEditor;
|
||||
12
joe/usr/share/applications/jpico.desktop
Normal file
12
joe/usr/share/applications/jpico.desktop
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Joe's Own Editor - NANO/PICO Emulation
|
||||
GenericName=Text Editor
|
||||
Comment=View and edit files
|
||||
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
|
||||
Exec=/usr/bin/jpico %F
|
||||
TryExec=jpico
|
||||
Icon=accessories-text-editor
|
||||
Type=Application
|
||||
Terminal=true
|
||||
Categories=Utility;Development;TextEditor;
|
||||
12
joe/usr/share/applications/jstar.desktop
Normal file
12
joe/usr/share/applications/jstar.desktop
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Joe's Own Editor - WordStar Emulation
|
||||
GenericName=Text Editor
|
||||
Comment=View and edit files
|
||||
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
|
||||
Exec=/usr/bin/jstar %F
|
||||
TryExec=jstar
|
||||
Icon=accessories-text-editor
|
||||
Type=Application
|
||||
Terminal=true
|
||||
Categories=Utility;Development;TextEditor;
|
||||
2189
joe/usr/share/doc/joe/ChangeLog
Normal file
2189
joe/usr/share/doc/joe/ChangeLog
Normal file
File diff suppressed because it is too large
Load diff
1431
joe/usr/share/doc/joe/NEWS.md
Normal file
1431
joe/usr/share/doc/joe/NEWS.md
Normal file
File diff suppressed because it is too large
Load diff
243
joe/usr/share/doc/joe/README.md
Normal file
243
joe/usr/share/doc/joe/README.md
Normal file
|
|
@ -0,0 +1,243 @@
|
|||
# Joe's Own Editor
|
||||
|
||||
[User manual](https://sourceforge.net/p/joe-editor/mercurial/ci/default/tree/docs/man.md)
|
||||
|
||||
[Release Notes](https://sourceforge.net/p/joe-editor/mercurial/ci/default/tree/NEWS.md)
|
||||
|
||||
[List of Commands](https://sourceforge.net/p/joe-editor/mercurial/ci/default/tree/docs/man.md#list)
|
||||
|
||||
[List of Options](https://sourceforge.net/p/joe-editor/mercurial/ci/default/tree/docs/man.md#options)
|
||||
|
||||
[JOE for Windows tips](https://sourceforge.net/p/joe-editor/mercurial/ci/windows/tree/docs/windows.md)
|
||||
|
||||
[Hacking](https://sourceforge.net/p/joe-editor/mercurial/ci/default/tree/docs/hacking.md)
|
||||
|
||||
[Project page](http://www.sourceforge.net/projects/joe-editor)
|
||||
|
||||
[Download source](https://sourceforge.net/projects/joe-editor/files/)
|
||||
|
||||
[Build instructions](https://sourceforge.net/p/joe-editor/mercurial/ci/default/tree/INSTALL.md)
|
||||
|
||||
[History](https://sourceforge.net/p/joe-editor/mercurial/ci/default/tree/docs/history.md)
|
||||
|
||||
<p></p>
|
||||
|
||||
<p>JOE is a full featured terminal-based screen editor which is distributed
|
||||
under the GNU General Public License (GPL). JOE has been around since 1988
|
||||
and comes standard with many Linux distributions.</p>
|
||||
|
||||
<p>JOE is being maintained by its original author Joseph Allen, plus all of
|
||||
the people who send bug reports, feature suggestions and patches to the
|
||||
project web site. JOE is hosted by SourceForge.net and its source code is
|
||||
controlled under Mercurial.</p>
|
||||
|
||||
<p>JOE is a blending of MicroPro's venerable microcomputer word processor
|
||||
WordStar and Richard Stallman's famous LISP based text editor GNU-EMACS (but
|
||||
it does not use code from either program): most of the basic editing keys
|
||||
are the same as in WordStar as is the overall feel of the editor. JOE also
|
||||
has some of the key bindings and many of the powerful features of EMACS.</p>
|
||||
|
||||
<p>JOE is written in C and its only dependency is libc. This makes JOE very
|
||||
easy to build (just "configure" and "make install"), making it feasible to
|
||||
include on small systems and recovery disks. The compiled binary is about
|
||||
300K in x86. Note that JOE can use either the termcap or terminfo terminal
|
||||
capabilities databases (or a built-in termcap entry for ANSI terminals). The
|
||||
choice is controlled by a "configure" option. If terminfo is used, a
|
||||
library is required to access the database (on some systems this library is
|
||||
ncurses, but JOE does not use curses to control the terminal- it has its own
|
||||
code for this).</p>
|
||||
|
||||
<p>Much of the look and feel of JOE is determined by its simple
|
||||
configuration file "joerc". Several variants of the editor are installed by
|
||||
default in addition to "joe": "jmacs" (emulate GNU-EMACS), "jstar" emulate
|
||||
WordStar, "jpico" emulate the Pine mailer editor PICO and "rjoe"- a
|
||||
restricted version of JOE which allows the used to only edit the file given
|
||||
on the command line. JOE is linked to several names. The name which is
|
||||
used to invoke the editor with "rc" tacked on the end gives the name of
|
||||
configuration file to use. It is thus easy for you to make your own variant
|
||||
if you want. Also you can customize the editor by copying the system
|
||||
"joerc" file to your home directory.</p>
|
||||
|
||||
<p>Here is a basic screen shot of JOE running in a Cygwin console:</p>
|
||||

|
||||
|
||||
<p>Here is a screen shot showing several windows- the first has some example
|
||||
double-wide characters, the second is the same buffer as the first, but in
|
||||
hex-dump view mode, the third is a shell window and the fourth shows a
|
||||
selected rectangular block of numbers and their sum:</p>
|
||||
|
||||

|
||||
|
||||
### JOE has the following features:
|
||||
|
||||
* Multi-file search and replace- file list is either given on command line or by a UNIX command (grep/find) run from within JOE.
|
||||
|
||||
* Mouse support, including wheel (works best when using xterm). The mouse can resize windows, scroll windows, select and paste text, and select menu entries.
|
||||
|
||||
* Context display on status line: allows you to see name of function cursor is in.
|
||||
|
||||
* UTF-8 support, optional auto-detect of UTF-8 files.
|
||||
|
||||
* Syntax highlighting for more than 40 languages.
|
||||
|
||||
* Hexadecimal edit mode. Use JOE as a disk editor: joe -overwrite -hex /dev/hda1,0,512 (edit first sector of /dev/hda1).
|
||||
|
||||
* Non-destructive editing of binary files even when handling MS-DOS or UNIX line endings.
|
||||
|
||||
* Swap file allows editing files larger than memory.
|
||||
|
||||
* Context sensitive on-line help.
|
||||
|
||||
* Bash-like TAB completion and history for all prompts, or jump into the
|
||||
completion menu and use it to traverse the file system.
|
||||
|
||||
* Complete word in edit buffer by hitting ESC Enter (uses other words in
|
||||
buffer for dictionary).
|
||||
|
||||
* EMACS-compatible file locks and file modification checking.
|
||||
|
||||
* Shell windows.
|
||||
|
||||
* Multiple-windows onto same or different files.
|
||||
|
||||
* Compile and step through errors or Grep and step through finds.
|
||||
|
||||
* Goto matching character delimiter "() [] {} <>" which skips comments and
|
||||
quoted matter.
|
||||
|
||||
* Goto matching word delimiter, including XML tags and C preprocessor
|
||||
directives.
|
||||
|
||||
* Ctrl-arrow key block selection.
|
||||
|
||||
* Search and replace system, including regular expression and optional
|
||||
incremental search. Regular expression key for matching balanced C
|
||||
expressions.
|
||||
|
||||
* Tags file search (tab completion at tags search prompt uses tags file as
|
||||
database).
|
||||
|
||||
* Spell check commands which invoke aspell or ispell. Language for aspell
|
||||
can be passed through editor.
|
||||
|
||||
* Paragraph format which preserves news/mail quoting indentation
|
||||
characters.
|
||||
|
||||
* Unlimited Undo and Redo.
|
||||
|
||||
* Yank buffer allows stepping through and insertion of previously deleted
|
||||
text.
|
||||
|
||||
* State file restores history buffers, yank buffer and last file cursor
|
||||
positions.
|
||||
|
||||
* Cursor position history allows you to step through previously visited areas
|
||||
of a file.
|
||||
|
||||
* Multiple interactive keyboard macros. Macros can be assigned to key
|
||||
sequences in joerc file.
|
||||
|
||||
* Block move/copy/delete/filter.
|
||||
|
||||
* Rectangle (columnar) block mode- search and replace can be narrowed to
|
||||
the rectangular block. Rectangular blocks can be filtered through UNIX
|
||||
commands.
|
||||
|
||||
* Overtype/Insert modes.
|
||||
|
||||
* Indent/Unindent (shift block left or right).
|
||||
|
||||
* Auto-indent mode.
|
||||
|
||||
* Picture mode for ASCII graphics.
|
||||
|
||||
* Line number mode displays line number of each line.
|
||||
|
||||
* Powerful scientific calculator with block statistics functions (sum/standard-deviation/count highlighted block of numbers).
|
||||
|
||||
* Termcap/Terminfo support allows JOE to use any terminal or terminal emulator.
|
||||
|
||||
* Can accept data from a pipe, for example: ls | joe
|
||||
|
||||
<p>JOE does not have these features (yet):</p>
|
||||
<ul>
|
||||
|
||||
<li>Vertical windows</li>
|
||||
|
||||
<li>Folding</li>
|
||||
|
||||
<li>Right to left editing for Hebrew and Arabic</li>
|
||||
|
||||
<li>Direct editing of 16-bit character sets such as UCS-16 and BIG5</li>
|
||||
|
||||
<li>All encompassing macro language like elisp in GNU-EMACS</li>
|
||||
|
||||
<li>Background spell checking, like Microsoft WORD</li>
|
||||
|
||||
<li>Highlight all matching words</li>
|
||||
|
||||
<li>Automatic unzip/untar</li>
|
||||
|
||||
<li>Built-in FTP</li>
|
||||
|
||||
<li>X-Window version (use inside a terminal emulator)</li>
|
||||
|
||||
<li>Interface to debugger</li>
|
||||
|
||||
</ul>
|
||||
|
||||
<p>Here are some other editors to consider:</p>
|
||||
<a href="http://www.gnu.org/software/emacs">http://www.gnu.org/software/emacs</a>
|
||||
Richard Stallman's powerful LISP-based editor.
|
||||
|
||||
<a href="http://www.jedsoft.org/jed">http://www.jedsoft.org/jed</a> John E.
|
||||
Davis' version of EMACS using the S-Lang language.
|
||||
|
||||
<a href="http://www.jasspa.com">http://www.jasspa.com</a> Micro Emacs
|
||||
|
||||
<a href="http://www.vile.cx">http://www.vile.cx</a> Paul Fox's vi clone
|
||||
(built on top of Micro Emacs). Now maintained by Tom Dickey and others.
|
||||
|
||||
<a href="http://www.nano-editor.org">http://www.nano-editor.org</a> An open
|
||||
source PICO clone.
|
||||
|
||||
<a
|
||||
href="http://www.washington.edu/pine/faq/whatis.html">http://www.washington.edu.pine/faq/whatis.html</a>
|
||||
PICO: A simple editor built on Micro Emacs.
|
||||
|
||||
<a href="http://www.vim.org">http://www.vim.org</a> Bram Moolenaar's vi
|
||||
clone</a>
|
||||
|
||||
<a href="http://elvis.the-little-red-haired-girl.org/whatiselvis/index.html">
|
||||
http://elvis.the-little-red-haired-girl.org</a> Elvis: A
|
||||
small vi clone
|
||||
|
||||
<a href="http://www.jedit.org">http://www.jedit.org</a> Powerful editor
|
||||
written in Java
|
||||
|
||||
<a href="http://www.nedit.org">http://www.nedit.org</a> X-Windowing System
|
||||
editor
|
||||
|
||||
<a href="http://www.ibiblio.org/mc">http://www.ibiblio.org/mc</a> Midnight
|
||||
Commander file manager with built-in text editor with highlighting. Can
|
||||
browse ZIP and TAR files.
|
||||
<br>
|
||||
|
||||
<a href="http://www.cs.yorku.ca/~oz/wily">http://www.cs.yorku.ca/~oz/wily</a> A
|
||||
UNIX/X clone of Rob Pike's Plan9 editor ACME. Originally written by Gary
|
||||
Capell, but now maintained by Ozan Yigit. This is an interesting minimalist
|
||||
IDE.
|
||||
|
||||
<a
|
||||
href="http://www.eclipse.org/downloads">http://www.eclipse.org/downloads</a>
|
||||
Huge IDE written in Java. Performs same function as Wily, but is literally
|
||||
1300 times larger.
|
||||
|
||||
<a href="ftp://netlib.bell-labs.com/netlib/research/sam.shar.gz">ftp://netlib.bell-labs.com/netlib/research/sam.shar.gz</a>
|
||||
UNIX/X port of Rob Pike's Plan9 editor SAM. This interesting editor
|
||||
supports multi-file regular expression search & replace with unlimited
|
||||
undo.
|
||||
|
||||
<a href="http://sed.sourceforge.net">http://sed.sourceforge.net</a>
|
||||
UNIX Stream EDitor. If you're on UNIX, you already have this editor, but follow
|
||||
this link to see the amazing things that can be done with it.
|
||||
176
joe/usr/share/doc/joe/README.old
Normal file
176
joe/usr/share/doc/joe/README.old
Normal file
|
|
@ -0,0 +1,176 @@
|
|||
|
||||
|
||||
Joe's Own Editor 3.6
|
||||
|
||||
A Free ASCII-Text Screen Editor for UNIX
|
||||
by Joseph Allen (<= 2.8)
|
||||
Marek 'Marx' Grac (=> 2.9)
|
||||
by Joseph Allen again (=>3.0)
|
||||
|
||||
Get it from:
|
||||
http://sourceforge.net/projects/joe-editor
|
||||
|
||||
If you have questions, problems or suggestions,
|
||||
Use sourceforge: mailing list, bug tracker, discussion groups.
|
||||
|
||||
JOE is the professional freeware ASCII text screen editor for UNIX.
|
||||
It makes full use of the power and versatility of UNIX, but lacks the steep
|
||||
learning curve and basic nonsense you have to deal with in every other UNIX
|
||||
editor. JOE has the feel of most IBM PC text editors: The key-sequences are
|
||||
reminiscent of WordStar and Turbo-C. JOE is much more powerful than those
|
||||
editors, however. JOE has all of the features a UNIX user should expect:
|
||||
full use of termcap/terminfo, excellent screen update optimizations (JOE is
|
||||
fully usable at 2400 baud), simple installation, and all of the
|
||||
UNIX-integration features of VI.
|
||||
|
||||
JOE's initialization file determines much of JOE's personality and
|
||||
the name of the initialization file is simply the name of the editor
|
||||
executable followed by "rc". JOE comes with four "rc" files in addition to
|
||||
the basic "joerc", which allow it to emulate these editors:
|
||||
|
||||
JPICO - An enhanced version of the Pine mailer system's PICO
|
||||
editor.
|
||||
|
||||
JSTAR - A complete imitation of WordStar including many "JOE"
|
||||
extensions.
|
||||
|
||||
RJOE - A restricted version of JOE which allowed you to edit
|
||||
only the files specified on the command line.
|
||||
|
||||
JMACS - A GNU-EMACS imitation which is about one order of
|
||||
magnitude smaller than real GNU-EMACS.
|
||||
|
||||
Features:
|
||||
|
||||
JOE has a well thought-out user-interface with great attention to
|
||||
detail. The Page Up and Page Down functions do not move the cursor relative
|
||||
to the edges of the screen. Left and Right arrow keys work at the beginning
|
||||
and ends of lines. The cursor can move past the ends of lines without
|
||||
jumping, but also without inserting or deleting extra spaces at the ends of
|
||||
lines. Control characters and characters above 127 can be displayed and
|
||||
entered- even ^Q and ^S. The cursor's row and column number can be
|
||||
displayed in the status line.
|
||||
|
||||
The key layout is made to reduce terminal incompatibility nonsense.
|
||||
^Q and ^S are not used and both ^H and DEL are mapped to backspace. Case
|
||||
does not matter in key sequences- ^K E, ^K e, and ^K ^E are each mapped to
|
||||
the same function. The arrow keys and PageUp, PageDown, Home, End, Insert
|
||||
and Delete keypad keys are read from the termcap entry and are assigned to
|
||||
the proper functions. A simple initialization file, similar to Semware's
|
||||
Q-EDIT, allows key-bindings, simple macros and help windows to be defined.
|
||||
|
||||
JOE has full termcap/terminfo support and will work on any terminal.
|
||||
JOE has the best screen update optimization algorithm available. It uses
|
||||
VT100-style scrolling regions the way they are supposed to be used (I.E.,
|
||||
without building insert and delete line functions out of them) and has a
|
||||
powerful line shifting (insert/delete character) algorithm which works even
|
||||
if text goes past the ends of lines. JOE has deferred screen update to
|
||||
handle typeahead and uses the baud rate reported by 'stty' to ensure that
|
||||
deferral is not bypassed by tty buffering.
|
||||
|
||||
JOE has multiple windows and lacks the confusing notion of a named
|
||||
buffers. You just have files and windows. When there are more windows than
|
||||
can fit on the screen, the Goto-Next-Window function scrolls through them.
|
||||
The same file can have multiple windows opened on it.
|
||||
|
||||
JOE has VI-style unix integration. You can filter a highlighted
|
||||
block through a UNIX command. Also, each place in joe which accepts a file
|
||||
name (including the command line) will also accept:
|
||||
|
||||
!command to pipe into or out of a command
|
||||
>>filename to append to a file
|
||||
filename,start,size to edit a portion of a file/device
|
||||
- to use stdin or stdout
|
||||
|
||||
File names on the command line may be preceded by +nnn to start
|
||||
editing at a specified line.
|
||||
|
||||
JOE has shell windows. You can run a shell in a window and any
|
||||
output from commands run in the shell gets stored in a buffer.
|
||||
|
||||
JOE has an orthogonal event-driven design. Each prompt is actually
|
||||
a normal edit buffer containing a history of all of the responses entered
|
||||
for that prompt. You can use all of the normal edit commands to create file
|
||||
names and search strings. You can use the up arrow key (or search backwards
|
||||
and any other appropriate edit command) to go back through the history of
|
||||
previous responses. Prompts are reentrant- meaning that edit commands which
|
||||
require prompts can still be used inside of prompts.
|
||||
|
||||
JOE has TAB-completion and file selection menus. If you hit tab in
|
||||
a file name prompt, the name is either completed or a menu of possible
|
||||
matches appears.
|
||||
|
||||
JOE stores edit files in a doubly linked list of gap buffers which
|
||||
can spill into a temporary file. You can edit files of any size up to the
|
||||
amount of free disk space and there are no line-length restrictions. Since
|
||||
the buffering system is block-based, JOE will incur only a minimum of
|
||||
swapping on heavily loaded systems.
|
||||
|
||||
When you ask for help, one of six small help reference cards appears
|
||||
on the screen and remains while you continue to use the editor. Here is the
|
||||
first help card:
|
||||
|
||||
CURSOR GO TO BLOCK DELETE MISC EXIT
|
||||
^B left ^F right ^U prev. screen ^KB begin ^D char. ^KJ reformat ^KX save
|
||||
^P up ^N down ^V next screen ^KK end ^Y line ^T options ^C abort
|
||||
^Z previous word ^A beg. of line ^KM move ^W >word ^@ insert ^KZ shell
|
||||
^X next word ^E end of line ^KC copy ^O word< ^R retype FILE
|
||||
SEARCH ^KU top of file ^KW file ^J >line SPELL ^KE new
|
||||
^KF find text ^KV end of file ^KY delete ^_ undo ^[N word ^KR insert
|
||||
^L find next ^KL to line No. ^K/ filter ^^ redo ^[L file ^KD save
|
||||
|
||||
JOE has a powerful set of editing commands suitable for editing both
|
||||
text files and programs:
|
||||
|
||||
- UTF-8 support
|
||||
|
||||
- Syntax highlighting
|
||||
|
||||
- search and replace system, including powerful regular
|
||||
expressions (including matching of balanced C expressions).
|
||||
|
||||
- tags file search
|
||||
|
||||
- paragraph format
|
||||
|
||||
- undo and redo
|
||||
|
||||
- position history allows you to get back to previous
|
||||
editing contexts and allows you to quickly flip between
|
||||
editing contexts
|
||||
|
||||
- multiple keyboard macros
|
||||
|
||||
- block move/copy/delete/filter
|
||||
|
||||
- rectangle (columnar) mode
|
||||
|
||||
- overtype/insert modes
|
||||
|
||||
- indent/unindent
|
||||
|
||||
- goto matching ( [ {
|
||||
|
||||
- auto-indent mode
|
||||
|
||||
Plus many options can be set:
|
||||
|
||||
- can have EMACS-style cursor re-centering on scrolls
|
||||
|
||||
- characters between 128-255 can be shown as-is for
|
||||
non-English character sets
|
||||
|
||||
- Final newline can be forced on end of file
|
||||
|
||||
- Can start with a help screen on
|
||||
|
||||
- Left/Right margin settings
|
||||
|
||||
- Tab width
|
||||
|
||||
- Indentation step and fill character
|
||||
|
||||
/* jhallen@world.std.com */ /* Joseph H. Allen */
|
||||
int a[1817];main(z,p,q,r){for(p=80;q+p-80;p-=2*a[p])for(z=9;z--;)q=3&(r=time(0)
|
||||
+r*57)/7,q=q?q-1?q-2?1-p%79?-1:0:p%79-77?1:0:p<1659?79:0:p>158?-79:0,q?!a[p+q*2
|
||||
]?a[p+=a[p+=q]=q]=q:0:0;for(;q++-1817;)printf(q%79?"%c":"%c\n"," #"[!a[q-1]]);}
|
||||
1454
joe/usr/share/doc/joe/hacking.md
Normal file
1454
joe/usr/share/doc/joe/hacking.md
Normal file
File diff suppressed because it is too large
Load diff
3994
joe/usr/share/doc/joe/man.md
Normal file
3994
joe/usr/share/doc/joe/man.md
Normal file
File diff suppressed because it is too large
Load diff
238
joe/usr/share/joe/charmaps/klingon
Normal file
238
joe/usr/share/joe/charmaps/klingon
Normal file
|
|
@ -0,0 +1,238 @@
|
|||
<code_set_name> Klingon-ASCII
|
||||
<comment_char> %
|
||||
<escape_char> /
|
||||
% version: 1.0
|
||||
% An 8-bit character set with Klingon characters in range 0xD0 - 0xFF and
|
||||
% KOI8-R (ASCII w/ line drawing) for the rest.
|
||||
|
||||
CHARMAP
|
||||
<U0000> /x00 NULL (NUL)
|
||||
<U0001> /x01 START OF HEADING (SOH)
|
||||
<U0002> /x02 START OF TEXT (STX)
|
||||
<U0003> /x03 END OF TEXT (ETX)
|
||||
<U0004> /x04 END OF TRANSMISSION (EOT)
|
||||
<U0005> /x05 ENQUIRY (ENQ)
|
||||
<U0006> /x06 ACKNOWLEDGE (ACK)
|
||||
<U0007> /x07 BELL (BEL)
|
||||
<U0008> /x08 BACKSPACE (BS)
|
||||
<U0009> /x09 CHARACTER TABULATION (HT)
|
||||
<U000A> /x0a LINE FEED (LF)
|
||||
<U000B> /x0b LINE TABULATION (VT)
|
||||
<U000C> /x0c FORM FEED (FF)
|
||||
<U000D> /x0d CARRIAGE RETURN (CR)
|
||||
<U000E> /x0e SHIFT OUT (SO)
|
||||
<U000F> /x0f SHIFT IN (SI)
|
||||
<U0010> /x10 DATALINK ESCAPE (DLE)
|
||||
<U0011> /x11 DEVICE CONTROL ONE (DC1)
|
||||
<U0012> /x12 DEVICE CONTROL TWO (DC2)
|
||||
<U0013> /x13 DEVICE CONTROL THREE (DC3)
|
||||
<U0014> /x14 DEVICE CONTROL FOUR (DC4)
|
||||
<U0015> /x15 NEGATIVE ACKNOWLEDGE (NAK)
|
||||
<U0016> /x16 SYNCHRONOUS IDLE (SYN)
|
||||
<U0017> /x17 END OF TRANSMISSION BLOCK (ETB)
|
||||
<U0018> /x18 CANCEL (CAN)
|
||||
<U0019> /x19 END OF MEDIUM (EM)
|
||||
<U001A> /x1a SUBSTITUTE (SUB)
|
||||
<U001B> /x1b ESCAPE (ESC)
|
||||
<U001C> /x1c FILE SEPARATOR (IS4)
|
||||
<U001D> /x1d GROUP SEPARATOR (IS3)
|
||||
<U001E> /x1e RECORD SEPARATOR (IS2)
|
||||
<U001F> /x1f UNIT SEPARATOR (IS1)
|
||||
<U0020> /x20 SPACE
|
||||
<U0021> /x21 EXCLAMATION MARK
|
||||
<U0022> /x22 QUOTATION MARK
|
||||
<U0023> /x23 NUMBER SIGN
|
||||
<U0024> /x24 DOLLAR SIGN
|
||||
<U0025> /x25 PERCENT SIGN
|
||||
<U0026> /x26 AMPERSAND
|
||||
<U0027> /x27 APOSTROPHE
|
||||
<U0028> /x28 LEFT PARENTHESIS
|
||||
<U0029> /x29 RIGHT PARENTHESIS
|
||||
<U002A> /x2a ASTERISK
|
||||
<U002B> /x2b PLUS SIGN
|
||||
<U002C> /x2c COMMA
|
||||
<U002D> /x2d HYPHEN-MINUS
|
||||
<U002E> /x2e FULL STOP
|
||||
<U002F> /x2f SOLIDUS
|
||||
<U0030> /x30 DIGIT ZERO
|
||||
<U0031> /x31 DIGIT ONE
|
||||
<U0032> /x32 DIGIT TWO
|
||||
<U0033> /x33 DIGIT THREE
|
||||
<U0034> /x34 DIGIT FOUR
|
||||
<U0035> /x35 DIGIT FIVE
|
||||
<U0036> /x36 DIGIT SIX
|
||||
<U0037> /x37 DIGIT SEVEN
|
||||
<U0038> /x38 DIGIT EIGHT
|
||||
<U0039> /x39 DIGIT NINE
|
||||
<U003A> /x3a COLON
|
||||
<U003B> /x3b SEMICOLON
|
||||
<U003C> /x3c LESS-THAN SIGN
|
||||
<U003D> /x3d EQUALS SIGN
|
||||
<U003E> /x3e GREATER-THAN SIGN
|
||||
<U003F> /x3f QUESTION MARK
|
||||
<U0040> /x40 COMMERCIAL AT
|
||||
<U0041> /x41 LATIN CAPITAL LETTER A
|
||||
<U0042> /x42 LATIN CAPITAL LETTER B
|
||||
<U0043> /x43 LATIN CAPITAL LETTER C
|
||||
<U0044> /x44 LATIN CAPITAL LETTER D
|
||||
<U0045> /x45 LATIN CAPITAL LETTER E
|
||||
<U0046> /x46 LATIN CAPITAL LETTER F
|
||||
<U0047> /x47 LATIN CAPITAL LETTER G
|
||||
<U0048> /x48 LATIN CAPITAL LETTER H
|
||||
<U0049> /x49 LATIN CAPITAL LETTER I
|
||||
<U004A> /x4a LATIN CAPITAL LETTER J
|
||||
<U004B> /x4b LATIN CAPITAL LETTER K
|
||||
<U004C> /x4c LATIN CAPITAL LETTER L
|
||||
<U004D> /x4d LATIN CAPITAL LETTER M
|
||||
<U004E> /x4e LATIN CAPITAL LETTER N
|
||||
<U004F> /x4f LATIN CAPITAL LETTER O
|
||||
<U0050> /x50 LATIN CAPITAL LETTER P
|
||||
<U0051> /x51 LATIN CAPITAL LETTER Q
|
||||
<U0052> /x52 LATIN CAPITAL LETTER R
|
||||
<U0053> /x53 LATIN CAPITAL LETTER S
|
||||
<U0054> /x54 LATIN CAPITAL LETTER T
|
||||
<U0055> /x55 LATIN CAPITAL LETTER U
|
||||
<U0056> /x56 LATIN CAPITAL LETTER V
|
||||
<U0057> /x57 LATIN CAPITAL LETTER W
|
||||
<U0058> /x58 LATIN CAPITAL LETTER X
|
||||
<U0059> /x59 LATIN CAPITAL LETTER Y
|
||||
<U005A> /x5a LATIN CAPITAL LETTER Z
|
||||
<U005B> /x5b LEFT SQUARE BRACKET
|
||||
<U005C> /x5c REVERSE SOLIDUS
|
||||
<U005D> /x5d RIGHT SQUARE BRACKET
|
||||
<U005E> /x5e CIRCUMFLEX ACCENT
|
||||
<U005F> /x5f LOW LINE
|
||||
<U0060> /x60 GRAVE ACCENT
|
||||
<U0061> /x61 LATIN SMALL LETTER A
|
||||
<U0062> /x62 LATIN SMALL LETTER B
|
||||
<U0063> /x63 LATIN SMALL LETTER C
|
||||
<U0064> /x64 LATIN SMALL LETTER D
|
||||
<U0065> /x65 LATIN SMALL LETTER E
|
||||
<U0066> /x66 LATIN SMALL LETTER F
|
||||
<U0067> /x67 LATIN SMALL LETTER G
|
||||
<U0068> /x68 LATIN SMALL LETTER H
|
||||
<U0069> /x69 LATIN SMALL LETTER I
|
||||
<U006A> /x6a LATIN SMALL LETTER J
|
||||
<U006B> /x6b LATIN SMALL LETTER K
|
||||
<U006C> /x6c LATIN SMALL LETTER L
|
||||
<U006D> /x6d LATIN SMALL LETTER M
|
||||
<U006E> /x6e LATIN SMALL LETTER N
|
||||
<U006F> /x6f LATIN SMALL LETTER O
|
||||
<U0070> /x70 LATIN SMALL LETTER P
|
||||
<U0071> /x71 LATIN SMALL LETTER Q
|
||||
<U0072> /x72 LATIN SMALL LETTER R
|
||||
<U0073> /x73 LATIN SMALL LETTER S
|
||||
<U0074> /x74 LATIN SMALL LETTER T
|
||||
<U0075> /x75 LATIN SMALL LETTER U
|
||||
<U0076> /x76 LATIN SMALL LETTER V
|
||||
<U0077> /x77 LATIN SMALL LETTER W
|
||||
<U0078> /x78 LATIN SMALL LETTER X
|
||||
<U0079> /x79 LATIN SMALL LETTER Y
|
||||
<U007A> /x7a LATIN SMALL LETTER Z
|
||||
<U007B> /x7b LEFT CURLY BRACKET
|
||||
<U007C> /x7c VERTICAL LINE
|
||||
<U007D> /x7d RIGHT CURLY BRACKET
|
||||
<U007E> /x7e TILDE
|
||||
<U007F> /x7f DELETE (DEL)
|
||||
<U2500> /x80 BOX DRAWINGS LIGHT HORIZONTAL
|
||||
<U2502> /x81 BOX DRAWINGS LIGHT VERTICAL
|
||||
<U250C> /x82 BOX DRAWINGS LIGHT DOWN AND RIGHT
|
||||
<U2510> /x83 BOX DRAWINGS LIGHT DOWN AND LEFT
|
||||
<U2514> /x84 BOX DRAWINGS LIGHT UP AND RIGHT
|
||||
<U2518> /x85 BOX DRAWINGS LIGHT UP AND LEFT
|
||||
<U251C> /x86 BOX DRAWINGS LIGHT VERTICAL AND RIGHT
|
||||
<U2524> /x87 BOX DRAWINGS LIGHT VERTICAL AND LEFT
|
||||
<U252C> /x88 BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
|
||||
<U2534> /x89 BOX DRAWINGS LIGHT UP AND HORIZONTAL
|
||||
<U253C> /x8a BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
|
||||
<U2580> /x8b UPPER HALF BLOCK
|
||||
<U2584> /x8c LOWER HALF BLOCK
|
||||
<U2588> /x8d FULL BLOCK
|
||||
<U258C> /x8e LEFT HALF BLOCK
|
||||
<U2590> /x8f RIGHT HALF BLOCK
|
||||
<U2591> /x90 LIGHT SHADE
|
||||
<U2592> /x91 MEDIUM SHADE
|
||||
<U2593> /x92 DARK SHADE
|
||||
<U2320> /x93 TOP HALF INTEGRAL
|
||||
<U25A0> /x94 BLACK SQUARE
|
||||
<U2219> /x95 BULLET OPERATOR
|
||||
<U221A> /x96 SQUARE ROOT
|
||||
<U2248> /x97 ALMOST EQUAL TO
|
||||
<U2264> /x98 LESS-THAN OR EQUAL TO
|
||||
<U2265> /x99 GREATER-THAN OR EQUAL TO
|
||||
<U00A0> /x9a NO-BREAK SPACE
|
||||
<U2321> /x9b BOTTOM HALF INTEGRAL
|
||||
<U00B0> /x9c DEGREE SIGN
|
||||
<U00B2> /x9d SUPERSCRIPT TWO
|
||||
<U00B7> /x9e MIDDLE DOT
|
||||
<U00F7> /x9f DIVISION SIGN
|
||||
<U2550> /xa0 BOX DRAWINGS DOUBLE HORIZONTAL
|
||||
<U2551> /xa1 BOX DRAWINGS DOUBLE VERTICAL
|
||||
<U2552> /xa2 BOX DRAWINGS DOWN SINGLE AND RIGHT DOUBLE
|
||||
<U2553> /xa4 BOX DRAWINGS DOWN DOUBLE AND RIGHT SINGLE
|
||||
<U2554> /xa5 BOX DRAWINGS DOUBLE DOWN AND RIGHT
|
||||
<U2555> /xa6 BOX DRAWINGS DOWN SINGLE AND LEFT DOUBLE
|
||||
<U2556> /xa7 BOX DRAWINGS DOWN DOUBLE AND LEFT SINGLE
|
||||
<U2557> /xa8 BOX DRAWINGS DOUBLE DOWN AND LEFT
|
||||
<U2558> /xa9 BOX DRAWINGS UP SINGLE AND RIGHT DOUBLE
|
||||
<U2559> /xaa BOX DRAWINGS UP DOUBLE AND RIGHT SINGLE
|
||||
<U255A> /xab BOX DRAWINGS DOUBLE UP AND RIGHT
|
||||
<U255B> /xac BOX DRAWINGS UP SINGLE AND LEFT DOUBLE
|
||||
<U255C> /xad BOX DRAWINGS UP DOUBLE AND LEFT SINGLE
|
||||
<U255D> /xae BOX DRAWINGS DOUBLE UP AND LEFT
|
||||
<U255E> /xaf BOX DRAWINGS VERTICAL SINGLE AND RIGHT DOUBLE
|
||||
<U255F> /xb0 BOX DRAWINGS VERTICAL DOUBLE AND RIGHT SINGLE
|
||||
<U2560> /xb1 BOX DRAWINGS DOUBLE VERTICAL AND RIGHT
|
||||
<U2561> /xb2 BOX DRAWINGS VERTICAL SINGLE AND LEFT DOUBLE
|
||||
<U2562> /xb4 BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE
|
||||
<U2563> /xb5 BOX DRAWINGS DOUBLE VERTICAL AND LEFT
|
||||
<U2564> /xb6 BOX DRAWINGS DOWN SINGLE AND HORIZONTAL DOUBLE
|
||||
<U2565> /xb7 BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
|
||||
<U2566> /xb8 BOX DRAWINGS DOUBLE DOWN AND HORIZONTAL
|
||||
<U2567> /xb9 BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
|
||||
<U2568> /xba BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
|
||||
<U2569> /xbb BOX DRAWINGS DOUBLE UP AND HORIZONTAL
|
||||
<U256A> /xbc BOX DRAWINGS VERTICAL SINGLE AND HORIZONTAL DOUBLE
|
||||
<U256B> /xbd BOX DRAWINGS VERTICAL DOUBLE AND HORIZONTAL SINGLE
|
||||
<U256C> /xbe BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
|
||||
<U00A9> /xbf COPYRIGHT SIGN
|
||||
<UF8D0> /xd0 Klingon letter A
|
||||
<UF8D1> /xd1 Klingon letter B
|
||||
<UF8D2> /xd2 Klingon letter CH
|
||||
<UF8D3> /xd3 Klingon letter D
|
||||
<UF8D4> /xd4 Klingon letter E
|
||||
<UF8D5> /xd5 Klingon letter GH
|
||||
<UF8D6> /xd6 Klingon letter H
|
||||
<UF8D7> /xd7 Klingon letter I
|
||||
<UF8D8> /xd8 Klingon letter J
|
||||
<UF8D9> /xd9 Klingon letter L
|
||||
<UF8DA> /xda Klingon letter M
|
||||
<UF8DB> /xdb Klingon letter N
|
||||
<UF8DC> /xdc Klingon letter NG
|
||||
<UF8DD> /xdd Klingon letter O
|
||||
<UF8DE> /xde Klingon letter P
|
||||
<UF8DF> /xdf Klingon letter Q
|
||||
<UF8E0> /xe0 Klingon letter QH
|
||||
<UF8E1> /xe1 Klingon letter R
|
||||
<UF8E2> /xe2 Klingon letter S
|
||||
<UF8E3> /xe3 Klingon letter T
|
||||
<UF8E4> /xe4 Klingon letter TLH
|
||||
<UF8E5> /xe5 Klingon letter U
|
||||
<UF8E6> /xe6 Klingon letter V
|
||||
<UF8E7> /xe7 Klingon letter W
|
||||
<UF8E8> /xe8 Klingon letter Y
|
||||
<UF8E9> /xe9 Klingon letter glottal stop
|
||||
<UF8F0> /xf0 Klingon digit 0
|
||||
<UF8F1> /xf1 Klingon digit 1
|
||||
<UF8F2> /xf2 Klingon digit 2
|
||||
<UF8F3> /xf3 Klingon digit 3
|
||||
<UF8F4> /xf4 Klingon digit 4
|
||||
<UF8F5> /xf5 Klingon digit 5
|
||||
<UF8F6> /xf6 Klingon digit 6
|
||||
<UF8F7> /xf7 Klingon digit 7
|
||||
<UF8F8> /xf8 Klingon digit 8
|
||||
<UF8F9> /xf9 Klingon digit 9
|
||||
<UF8FD> /xfd Klingon ,
|
||||
<UF8FE> /xfe Klingon full stop
|
||||
<UF8FF> /xff Klingon mummification glyph
|
||||
END CHARMAP
|
||||
53
joe/usr/share/joe/colors/default.jcf
Normal file
53
joe/usr/share/joe/colors/default.jcf
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
|
||||
.colors 16
|
||||
|
||||
-selection default/default inverse
|
||||
-menusel default/default inverse
|
||||
-linum default dim
|
||||
-curlinum default bold
|
||||
|
||||
=Idle
|
||||
=Bad bold red
|
||||
=Preproc blue
|
||||
=Define bold blue
|
||||
=Comment green
|
||||
=IncLocal cyan
|
||||
=IncSystem bold cyan
|
||||
=Constant cyan
|
||||
=Escape bold cyan
|
||||
=Type bold
|
||||
=Keyword bold
|
||||
=Brace magenta
|
||||
=Control
|
||||
=Ident
|
||||
=Tag bold blue
|
||||
=TagName +Tag
|
||||
=TODO default/default inverse
|
||||
=Title bold
|
||||
|
||||
=diff.DelLine red
|
||||
=diff.AddLine green
|
||||
=diff.ChgLine magenta
|
||||
=diff.Garbage dim white
|
||||
=diff.FileOld bold red
|
||||
=diff.FileNew bold green
|
||||
=diff.Hunk bold blue
|
||||
|
||||
# For backwards compatibility with older syntaxes that specify colors,
|
||||
# the scheme must specify termcolors. Yes this is a bit of a kludge.
|
||||
-term 0 0
|
||||
-term 1 1
|
||||
-term 2 2
|
||||
-term 3 3
|
||||
-term 4 4
|
||||
-term 5 5
|
||||
-term 6 6
|
||||
-term 7 7
|
||||
-term 8 8
|
||||
-term 9 9
|
||||
-term 10 10
|
||||
-term 11 11
|
||||
-term 12 12
|
||||
-term 13 13
|
||||
-term 14 14
|
||||
-term 15 15
|
||||
205
joe/usr/share/joe/colors/gruvbox.jcf
Normal file
205
joe/usr/share/joe/colors/gruvbox.jcf
Normal file
|
|
@ -0,0 +1,205 @@
|
|||
|
||||
# Gruvbox is a VIM scheme written by Pavel Pertsev
|
||||
# and can be found in its original version at https://github.com/morhetz/gruvbox
|
||||
|
||||
.colors 256
|
||||
|
||||
# Palette
|
||||
.set bg 235
|
||||
.set dark_red 124
|
||||
.set dark_green 106
|
||||
.set dark_yellow 172
|
||||
.set dark_blue 66
|
||||
.set dark_purple 132
|
||||
.set dark_aqua 72
|
||||
.set dark_gray 246
|
||||
.set light_gray 245
|
||||
.set light_red 167
|
||||
.set light_green 142
|
||||
.set light_yellow 214
|
||||
.set light_blue 109
|
||||
.set light_purple 175
|
||||
.set light_aqua 108
|
||||
.set fg 223
|
||||
|
||||
.set bg0_h 234
|
||||
.set bg0 235
|
||||
.set bg1 237
|
||||
.set bg2 239
|
||||
.set bg3 241
|
||||
.set bg4 243
|
||||
.set dark_orange 166
|
||||
.set bg0_s 236
|
||||
.set fg4 246
|
||||
.set fg3 248
|
||||
.set fg2 250
|
||||
.set fg1 223
|
||||
.set fg0 229
|
||||
.set light_orange 208
|
||||
|
||||
-text [fg]/[bg]
|
||||
-selection /[bg3]
|
||||
-status [fg2]/[bg2] bold
|
||||
-menusel /[bg2] bold
|
||||
-linum [bg4]/[bg1]
|
||||
-curlinum [dark_yellow]/[bg1]
|
||||
-curlin /[bg1]
|
||||
-cursor [bg]/[fg]
|
||||
|
||||
=Comment [light_gray] italic
|
||||
=TODO inverse bold italic
|
||||
=Bad [light_red] bold inverse
|
||||
|
||||
=DefinedIdent [light_blue]
|
||||
=DefinedFunction [light_green]
|
||||
=Builtin [light_green]
|
||||
|
||||
=Preproc [light_aqua]
|
||||
=IncSystem [dark_aqua]
|
||||
|
||||
=Keyword [light_red]
|
||||
=Operator
|
||||
=Escape [light_orange]
|
||||
=Label +Keyword
|
||||
=Loop [light_red]
|
||||
=Conditional +Keyword
|
||||
=Statement +Keyword
|
||||
=Type [light_yellow]
|
||||
=StorageClass [light_orange]
|
||||
=Structure [light_aqua]
|
||||
|
||||
=Constant [light_purple]
|
||||
=String [fg2]/[bg1]
|
||||
=StringEscape /[bg1]
|
||||
=Character +Constant
|
||||
=CharacterEscape +Escape
|
||||
=Variable [light_blue]
|
||||
=StringVariable [light_blue]/[bg1]
|
||||
|
||||
=Tag [light_blue]
|
||||
=TagName [light_aqua] bold
|
||||
=TagEnd +Tag
|
||||
|
||||
=Define [dark_blue]
|
||||
=diff.AddLine [bg0]/[light_green]
|
||||
=diff.DelLine [bg0]/[dark_red]
|
||||
=Ignore [dark_gray]
|
||||
|
||||
# Terminal colors
|
||||
-term 0 [bg0]
|
||||
-term 1 [dark_red]
|
||||
-term 2 [dark_green]
|
||||
-term 3 [dark_yellow]
|
||||
-term 4 [dark_blue]
|
||||
-term 5 [dark_purple]
|
||||
-term 6 [dark_aqua]
|
||||
-term 7 [dark_gray]
|
||||
-term 8 [light_gray]
|
||||
-term 9 [light_red]
|
||||
-term 10 [light_green]
|
||||
-term 11 [light_yellow]
|
||||
-term 12 [light_blue]
|
||||
-term 13 [light_purple]
|
||||
-term 14 [light_aqua]
|
||||
-term 15 [fg]
|
||||
|
||||
.colors *
|
||||
|
||||
# Palette
|
||||
.set bg $282828
|
||||
.set dark_red $cc241d
|
||||
.set dark_green $98971a
|
||||
.set dark_yellow $d79921
|
||||
.set dark_blue $458588
|
||||
.set dark_purple $b16286
|
||||
.set dark_aqua $689d6a
|
||||
.set dark_gray $a89984
|
||||
.set light_gray $928374
|
||||
.set light_red $fb4934
|
||||
.set light_green $b8bb26
|
||||
.set light_yellow $fabd2f
|
||||
.set light_blue $83a598
|
||||
.set light_purple $d3869b
|
||||
.set light_aqua $8ec07c
|
||||
.set fg $ebdbb2
|
||||
|
||||
.set bg0_h $1d2021
|
||||
.set bg0 $282828
|
||||
.set bg1 $3c3836
|
||||
.set bg2 $504945
|
||||
.set bg3 $665c54
|
||||
.set bg4 $7c6f64
|
||||
.set dark_orange $d65d0e
|
||||
.set bg0_s $32302f
|
||||
.set fg4 $a89984
|
||||
.set fg3 $bdae93
|
||||
.set fg2 $d5c4a1
|
||||
.set fg1 $ebdbb2
|
||||
.set fg0 $fbf1c7
|
||||
.set light_orange $fe8019
|
||||
|
||||
-text [fg]/[bg]
|
||||
-selection /[bg3]
|
||||
-status [fg2]/[bg2] bold
|
||||
-menusel /[bg2] bold
|
||||
-linum [bg4]/[bg1]
|
||||
-curlinum [dark_yellow]/[bg1]
|
||||
-curlin /[bg1]
|
||||
-cursor [bg]/[fg]
|
||||
|
||||
=Comment [light_gray] italic
|
||||
=TODO inverse bold italic
|
||||
=Bad [light_red] bold inverse
|
||||
|
||||
=DefinedIdent [light_blue]
|
||||
=DefinedFunction [light_green]
|
||||
=Builtin [light_green]
|
||||
|
||||
=Preproc [light_aqua]
|
||||
=IncSystem [dark_aqua]
|
||||
|
||||
=Keyword [light_red]
|
||||
=Operator
|
||||
=Escape [light_orange]
|
||||
=Label +Keyword
|
||||
=Loop [light_red]
|
||||
=Conditional +Keyword
|
||||
=Statement +Keyword
|
||||
=Type [light_yellow]
|
||||
=StorageClass [light_orange]
|
||||
=Structure [light_aqua]
|
||||
|
||||
=Constant [light_purple]
|
||||
=String [fg2]/[bg1]
|
||||
=StringEscape /[bg1]
|
||||
=Character +Constant
|
||||
=CharacterEscape +Escape
|
||||
=Variable [light_blue]
|
||||
=StringVariable [light_blue]/[bg1]
|
||||
|
||||
=Tag [light_blue]
|
||||
=TagName [light_aqua] bold
|
||||
=TagEnd +Tag
|
||||
|
||||
=Define [dark_blue]
|
||||
=diff.AddLine [bg0]/[light_green]
|
||||
=diff.DelLine [bg0]/[dark_red]
|
||||
=Ignore [dark_gray]
|
||||
|
||||
# Terminal colors
|
||||
-term 0 [bg0]
|
||||
-term 1 [dark_red]
|
||||
-term 2 [dark_green]
|
||||
-term 3 [dark_yellow]
|
||||
-term 4 [dark_blue]
|
||||
-term 5 [dark_purple]
|
||||
-term 6 [dark_aqua]
|
||||
-term 7 [dark_gray]
|
||||
-term 8 [light_gray]
|
||||
-term 9 [light_red]
|
||||
-term 10 [light_green]
|
||||
-term 11 [light_yellow]
|
||||
-term 12 [light_blue]
|
||||
-term 13 [light_purple]
|
||||
-term 14 [light_aqua]
|
||||
-term 15 [fg]
|
||||
130
joe/usr/share/joe/colors/ir_black.jcf
Normal file
130
joe/usr/share/joe/colors/ir_black.jcf
Normal file
|
|
@ -0,0 +1,130 @@
|
|||
|
||||
# Based on ir_black vim scheme
|
||||
# More at: http://blog.infinitered.com/entries/show/8
|
||||
|
||||
.colors 256
|
||||
|
||||
-text 255/16
|
||||
-status 252/234 italic
|
||||
-selection /17
|
||||
-linum 237
|
||||
-cursor 16/231
|
||||
|
||||
-term 0 239
|
||||
-term 1 203
|
||||
-term 2 155
|
||||
-term 3 229
|
||||
-term 4 153
|
||||
-term 5 207
|
||||
-term 6 146
|
||||
-term 7 255
|
||||
-term 8 244
|
||||
-term 9 217
|
||||
-term 10 193
|
||||
-term 11 230
|
||||
-term 12 230
|
||||
-term 13 219
|
||||
-term 14 189
|
||||
-term 15 231
|
||||
|
||||
=Idle
|
||||
=Keyword 153
|
||||
=Operator 231
|
||||
=Type 229
|
||||
|
||||
=Boolean +Constant
|
||||
=Character +Constant
|
||||
=Comment 244
|
||||
=Conditional 67
|
||||
=Constant 151
|
||||
=Define +Preproc
|
||||
=DefinedFunction 223
|
||||
=DefinedIdent 146
|
||||
=Escape 173
|
||||
=Float +Number
|
||||
=IncSystem +Preproc
|
||||
=Label +Statement
|
||||
=Loop +Statement
|
||||
=Macro +Preproc
|
||||
=Number 207
|
||||
=Precond +Preproc
|
||||
=Preproc 153
|
||||
=Statement 67
|
||||
=StorageClass +Type
|
||||
=String 155
|
||||
=StringEscape +Escape
|
||||
=Structure +Type
|
||||
=TODO 246
|
||||
=Tag +Escape
|
||||
=Title bold
|
||||
|
||||
=html.Tag +Keyword
|
||||
=html.TagEnd +DefinedIdent
|
||||
=html.TagName +Conditional
|
||||
=xml.Tag +Keyword
|
||||
=xml.TagEnd +DefinedIdent
|
||||
=xml.TagName +Conditional
|
||||
|
||||
.colors *
|
||||
|
||||
-text $f6f3e8/$000000
|
||||
-status $CCCCCC/$202020 italic
|
||||
-selection /$262D51
|
||||
-linum $3D3D3D
|
||||
-cursor $000000/$ffffff
|
||||
|
||||
-term 0 $4E4E4E
|
||||
-term 1 $FF6C60
|
||||
-term 2 $A8FF60
|
||||
-term 3 $FFFFB6
|
||||
-term 4 $96CBFE
|
||||
-term 5 $FF73FD
|
||||
-term 6 $C6C5FE
|
||||
-term 7 $EEEEEE
|
||||
-term 8 $7C7C7C
|
||||
-term 9 $FFB6B0
|
||||
-term 10 $CEFFAB
|
||||
-term 11 $FFFFCB
|
||||
-term 12 $FFFFCB
|
||||
-term 13 $FF9CFE
|
||||
-term 14 $DFDFFE
|
||||
-term 15 $FFFFFF
|
||||
|
||||
=Idle
|
||||
=Keyword $96CBFE
|
||||
=Operator $ffffff
|
||||
=Type $FFFFB6
|
||||
|
||||
=Boolean +Constant
|
||||
=Character +Constant
|
||||
=Comment $7C7C7C
|
||||
=Conditional $6699CC
|
||||
=Constant $99CC99
|
||||
=Define +Preproc
|
||||
=DefinedFunction $FFD2A7
|
||||
=DefinedIdent $C6C5FE
|
||||
=Escape $E18964
|
||||
=Float +Number
|
||||
=IncSystem +Preproc
|
||||
=Label +Statement
|
||||
=Loop +Statement
|
||||
=Macro +Preproc
|
||||
=Number $FF73FD
|
||||
=Precond +Preproc
|
||||
=Preproc $96CBFE
|
||||
=Statement $6699CC
|
||||
=StorageClass +Type
|
||||
=String $A8FF60
|
||||
=StringEscape +Escape
|
||||
=Structure +Type
|
||||
=TODO $8f8f8f
|
||||
=Tag +Escape
|
||||
=Title bold
|
||||
|
||||
=html.Tag +Keyword
|
||||
=html.TagEnd +DefinedIdent
|
||||
=html.TagName +Conditional
|
||||
=xml.Tag +Keyword
|
||||
=xml.TagEnd +DefinedIdent
|
||||
=xml.TagName +Conditional
|
||||
|
||||
130
joe/usr/share/joe/colors/molokai.jcf
Normal file
130
joe/usr/share/joe/colors/molokai.jcf
Normal file
|
|
@ -0,0 +1,130 @@
|
|||
|
||||
# Based on Molokai vim scheme by Tomas Restrepo <tomas@winterdom.com>
|
||||
# Which was in turn based on the monokai theme for textmate by Wimer Hazenberg
|
||||
|
||||
.colors 256
|
||||
|
||||
-text 231/234
|
||||
-status 239/231
|
||||
-selection /237
|
||||
-linum 250/235
|
||||
-curlin /236
|
||||
-menu 81/16
|
||||
-menusel /244
|
||||
-cursor 16/231
|
||||
|
||||
-term 0 234
|
||||
-term 1 196
|
||||
-term 2 148
|
||||
-term 3 148
|
||||
-term 4 125
|
||||
-term 5 125
|
||||
-term 6 81
|
||||
-term 7 231
|
||||
-term 8 250
|
||||
-term 9 196
|
||||
-term 10 148
|
||||
-term 11 148
|
||||
-term 12 141
|
||||
-term 13 141
|
||||
-term 14 81
|
||||
-term 15 250
|
||||
|
||||
=Idle
|
||||
=Keyword 197 bold
|
||||
=Operator 197
|
||||
=Type 81
|
||||
|
||||
=Bad 125/232
|
||||
=Boolean 141
|
||||
=Character 186
|
||||
=Comment 239
|
||||
=Conditional 197 bold
|
||||
=Constant 141 bold
|
||||
=Define 81
|
||||
=DefinedFunction 148
|
||||
=DefinedIdent 208
|
||||
=Escape 81 italic
|
||||
=Float 141
|
||||
=Label 186
|
||||
=Loop 197 bold
|
||||
=Macro 144 italic
|
||||
=Number 141
|
||||
=Precond 148 bold
|
||||
=Preproc 148
|
||||
=Statement 197 bold
|
||||
=StorageClass 208 italic
|
||||
=String 186
|
||||
=StringEscape 197 bold
|
||||
=Structure 81
|
||||
=TODO 231 bold
|
||||
=Tag 197 italic
|
||||
=Title 196
|
||||
|
||||
=diff.AddLine /236
|
||||
=diff.ChgLine 244/238
|
||||
=diff.DelLine 125/232
|
||||
|
||||
.colors *
|
||||
|
||||
-text $F8F8F2/$1B1D1E
|
||||
-status $455354/$F8F8F2
|
||||
-selection /$403D3D
|
||||
-linum $BCBCBC/$232526
|
||||
-curlin /$293739
|
||||
-menu $66D9EF/$000000
|
||||
-menusel /$808080
|
||||
-cursor $000000/$F8F8F0
|
||||
|
||||
-term 0 $1B1D1E
|
||||
-term 1 $EF5939
|
||||
-term 2 $A6E22E
|
||||
-term 3 $E6DB74
|
||||
-term 4 $13354A
|
||||
-term 5 $465457
|
||||
-term 6 $66D9EF
|
||||
-term 7 $F8F8F2
|
||||
-term 8 $FFFFFF
|
||||
-term 9 $EF5939
|
||||
-term 10 $A6E22E
|
||||
-term 11 $E6DB74
|
||||
-term 12 $AE81FF
|
||||
-term 13 $AE81FF
|
||||
-term 14 $66D9EF
|
||||
-term 15 $FFFFFF
|
||||
|
||||
=Idle
|
||||
=Keyword $F92672 bold
|
||||
=Operator $F92672
|
||||
=Type $66D9EF
|
||||
|
||||
=Bad $960050/$1E0010
|
||||
=Boolean $AE81FF
|
||||
=Character $E6DB74
|
||||
=Comment $465457
|
||||
=Conditional $F92672 bold
|
||||
=Constant $AE81FF bold
|
||||
=Define $66D9EF
|
||||
=DefinedFunction $A6E22E
|
||||
=DefinedIdent $FD971F
|
||||
=Escape $66D9EF italic
|
||||
=Float $AE81FF
|
||||
=Label $E6DB74
|
||||
=Loop $F92672 bold
|
||||
=Macro $C4BE89 italic
|
||||
=Number $AE81FF
|
||||
=Precond $A6E22E bold
|
||||
=Preproc $A6E22E
|
||||
=Statement $F92672 bold
|
||||
=StorageClass $FD971F italic
|
||||
=String $E6DB74
|
||||
=StringEscape $F92672 bold
|
||||
=Structure $66D9EF
|
||||
=TODO $FFFFFF bold
|
||||
=Tag $F92672 italic
|
||||
=Title $ef5939
|
||||
|
||||
=diff.AddLine /$13354A
|
||||
=diff.ChgLine $89807D/$4C4745
|
||||
=diff.DelLine $960050/$1E0010
|
||||
|
||||
169
joe/usr/share/joe/colors/solarized.jcf
Normal file
169
joe/usr/share/joe/colors/solarized.jcf
Normal file
|
|
@ -0,0 +1,169 @@
|
|||
|
||||
# Port of Solarized color scheme by Ethan Schoonover
|
||||
# http://ethanschoonover.com/solarized
|
||||
|
||||
.colors *
|
||||
|
||||
# Palette
|
||||
.set base03 $002b36
|
||||
.set base02 $073642
|
||||
.set base01 $586e75
|
||||
.set base00 $657b83
|
||||
.set base0 $839496
|
||||
.set base1 $93a1a1
|
||||
.set base2 $eee8d5
|
||||
.set base3 $fdf6e3
|
||||
.set yellow $b58900
|
||||
.set orange $cb4b16
|
||||
.set red $dc322f
|
||||
.set magenta $d33682
|
||||
.set violet $6c71c4
|
||||
.set blue $268bd2
|
||||
.set cyan $2aa198
|
||||
.set green $859900
|
||||
|
||||
# Uncommenting these lines changes this scheme to a light background
|
||||
#.set base3 $002b36
|
||||
#.set base2 $073642
|
||||
#.set base1 $586e75
|
||||
#.set base0 $657b83
|
||||
#.set base00 $839496
|
||||
#.set base01 $93a1a1
|
||||
#.set base02 $eee8d5
|
||||
#.set base03 $fdf6e3
|
||||
|
||||
-text [base0]/[base03]
|
||||
-status [base1]/[base02]
|
||||
-selection [base03]/[base01]
|
||||
-linum [base01]/[base02]
|
||||
-menu [base0]/[base02]
|
||||
-menusel [base01]/[base2]
|
||||
-curlin /[base02]
|
||||
-curlinum [base0]
|
||||
-message [blue]
|
||||
-cursor [base03]/[base0]
|
||||
|
||||
=Comment [base01] italic
|
||||
=Constant [cyan]
|
||||
=DefinedIdent [blue]
|
||||
=Keyword [green]
|
||||
=Statement [green]
|
||||
=Preproc [orange]
|
||||
=Precond [orange]
|
||||
=Type [yellow]
|
||||
=Structure +Type
|
||||
=StorageClass +Type
|
||||
=Escape [red]
|
||||
=Bad [red] bold
|
||||
=TODO [magenta] bold
|
||||
=Title [orange] bold
|
||||
|
||||
=Tag [base01]
|
||||
=TagName [blue] bold
|
||||
=TagEnd +Tag
|
||||
|
||||
=diff.AddLine [green]/[base02] bold
|
||||
=diff.ChgLine [yellow]/[base02] bold
|
||||
=diff.DelLine [red]/[base02] bold
|
||||
=diff.Garbage [blue]/[base02] bold
|
||||
|
||||
# Terminal colors
|
||||
-term 0 [base02]
|
||||
-term 1 [red]
|
||||
-term 2 [green]
|
||||
-term 3 [yellow]
|
||||
-term 4 [blue]
|
||||
-term 5 [magenta]
|
||||
-term 6 [cyan]
|
||||
-term 7 [base0]
|
||||
-term 8 [base03]
|
||||
-term 9 [red]
|
||||
-term 10 [base01]
|
||||
-term 11 [base00]
|
||||
-term 12 [base0]
|
||||
-term 13 [violet]
|
||||
-term 14 [base1]
|
||||
-term 15 [base3]
|
||||
|
||||
.colors 256
|
||||
|
||||
# 256-color palette
|
||||
.set base03 234
|
||||
.set base02 235
|
||||
.set base01 240
|
||||
.set base00 241
|
||||
.set base0 244
|
||||
.set base1 245
|
||||
.set base2 254
|
||||
.set base3 230
|
||||
.set yellow 136
|
||||
.set orange 166
|
||||
.set red 160
|
||||
.set magenta 125
|
||||
.set violet 61
|
||||
.set blue 33
|
||||
.set cyan 37
|
||||
.set green 64
|
||||
|
||||
# Uncommenting these lines changes this scheme to a light background
|
||||
#.set base3 234
|
||||
#.set base2 235
|
||||
#.set base1 240
|
||||
#.set base0 241
|
||||
#.set base00 244
|
||||
#.set base01 245
|
||||
#.set base02 254
|
||||
#.set base03 230
|
||||
|
||||
-text [base0]/[base03]
|
||||
-status [base1]/[base02]
|
||||
-selection [base03]/[base01]
|
||||
-linum [base01]/[base02]
|
||||
-menu [base0]/[base02]
|
||||
-menusel [base01]/[base2]
|
||||
-curlin /[base02]
|
||||
-curlinum [base0]
|
||||
-message [blue]
|
||||
-cursor [base03]/[base0]
|
||||
|
||||
=Comment [base01] italic
|
||||
=Constant [cyan]
|
||||
=DefinedIdent [blue]
|
||||
=Keyword [green]
|
||||
=Statement [green]
|
||||
=Preproc [orange]
|
||||
=Precond [orange]
|
||||
=Type [yellow]
|
||||
=Structure +Type
|
||||
=StorageClass +Type
|
||||
=Escape [red]
|
||||
=Bad [red] bold
|
||||
=TODO [magenta] bold
|
||||
=Title [orange] bold
|
||||
|
||||
=Tag [base01]
|
||||
=TagName [blue] bold
|
||||
=TagEnd +Tag
|
||||
|
||||
=diff.AddLine [green]/[base02] bold
|
||||
=diff.ChgLine [yellow]/[base02] bold
|
||||
=diff.DelLine [red]/[base02] bold
|
||||
=diff.Garbage [blue]/[base02] bold
|
||||
|
||||
# Terminal colors
|
||||
-term 0 [base02]
|
||||
-term 1 [red]
|
||||
-term 2 [green]
|
||||
-term 3 [yellow]
|
||||
-term 4 [blue]
|
||||
-term 5 [magenta]
|
||||
-term 6 [cyan]
|
||||
-term 7 [base0]
|
||||
-term 8 [base03]
|
||||
-term 9 [red]
|
||||
-term 10 [base01]
|
||||
-term 11 [base00]
|
||||
-term 12 [base0]
|
||||
-term 13 [violet]
|
||||
-term 14 [base1]
|
||||
-term 15 [base3]
|
||||
87
joe/usr/share/joe/colors/wombat.jcf
Normal file
87
joe/usr/share/joe/colors/wombat.jcf
Normal file
|
|
@ -0,0 +1,87 @@
|
|||
|
||||
# Based on Wombat vim scheme by Lars H. Nielsen <dengmao@gmail.com>
|
||||
|
||||
.colors 256
|
||||
|
||||
-text 255/235
|
||||
-status /238 italic
|
||||
-selection /238
|
||||
-linum 244/16
|
||||
-cursor 235/242
|
||||
|
||||
-term 0 235
|
||||
-term 1 203
|
||||
-term 2 113
|
||||
-term 3 149
|
||||
-term 4 238
|
||||
-term 5 244
|
||||
-term 6 153
|
||||
-term 7 255
|
||||
-term 8 248
|
||||
-term 9 203
|
||||
-term 10 113
|
||||
-term 11 149
|
||||
-term 12 244
|
||||
-term 13 246
|
||||
-term 14 153
|
||||
-term 15 194
|
||||
|
||||
=Idle
|
||||
=Keyword 153
|
||||
=Type 149
|
||||
|
||||
=Comment 246 italic
|
||||
=Constant 203
|
||||
=DefinedFunction 149
|
||||
=DefinedIdent 149
|
||||
=Escape 194
|
||||
=Number 203
|
||||
=Preproc 203
|
||||
=Statement 153
|
||||
=String 113 italic
|
||||
=TODO 246 italic
|
||||
=Title bold
|
||||
|
||||
|
||||
.colors *
|
||||
|
||||
-text $f6f3e8/$242424
|
||||
-status /$444444 italic
|
||||
-selection /$444444
|
||||
-linum $857b6f/$000000
|
||||
-cursor $242424/$656565
|
||||
|
||||
-term 0 $242424
|
||||
-term 1 $E5786D
|
||||
-term 2 $95E454
|
||||
-term 3 $CAE682
|
||||
-term 4 $384048
|
||||
-term 5 $A0A8B0
|
||||
-term 6 $8AC6F2
|
||||
-term 7 $F6F3E8
|
||||
-term 8 $E7F6DA
|
||||
-term 9 $E5786D
|
||||
-term 10 $95E454
|
||||
-term 11 $CAE682
|
||||
-term 12 $384048
|
||||
-term 13 $A0A8B0
|
||||
-term 14 $8AC6F2
|
||||
-term 15 $E7F6DA
|
||||
|
||||
=Idle
|
||||
=Keyword $8ac6f2
|
||||
=Type $cae682
|
||||
|
||||
=Comment $99968b italic
|
||||
=Constant $e5786d
|
||||
=DefinedFunction $cae682
|
||||
=DefinedIdent $cae682
|
||||
=Escape $e7f6da
|
||||
=Number $e5786d
|
||||
=Preproc $e5786d
|
||||
=Statement $8ac6f2
|
||||
=String $95e454 italic
|
||||
=TODO $8f8f8f italic
|
||||
=Title bold
|
||||
|
||||
|
||||
60
joe/usr/share/joe/colors/xoria.jcf
Normal file
60
joe/usr/share/joe/colors/xoria.jcf
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
|
||||
# Xoria256 is a VIM scheme written by Dmitriy Y. Zotikov
|
||||
# and can be found at http://www.vim.org/scripts/script.php?script_id=2140
|
||||
|
||||
# This is a straightforward port into JOE based on the 1.5 version
|
||||
|
||||
.colors 256
|
||||
|
||||
-text 252/234
|
||||
-cursor 214
|
||||
-status 231/239 bold
|
||||
-menu 16/250
|
||||
-menusel 255/243
|
||||
-selection 255/96
|
||||
-prompt 149/234
|
||||
-message 149/234
|
||||
-linum 247/233
|
||||
-curlin /237
|
||||
-cursor 16/214
|
||||
|
||||
=Comment 244
|
||||
=Constant 229
|
||||
=DefinedIdent 182
|
||||
=Number 180
|
||||
=Preproc 150
|
||||
=Keyword 110
|
||||
=Type 146
|
||||
=TODO 16/184
|
||||
=Bad 231/160
|
||||
=Escape 174
|
||||
=IncSystem +Keyword
|
||||
=IncLocal +Constant
|
||||
|
||||
=Ignore 238
|
||||
=diff.AddLine 150
|
||||
=diff.DelLine 174
|
||||
=Garbage +Ignore
|
||||
|
||||
=TagEdge 244
|
||||
=TagName +Keyword
|
||||
=Key +Ident
|
||||
=Value +Constant
|
||||
=Title 225
|
||||
|
||||
-term 0 234
|
||||
-term 1 160
|
||||
-term 2 77
|
||||
-term 3 184
|
||||
-term 4 98
|
||||
-term 5 98
|
||||
-term 6 151
|
||||
-term 7 252
|
||||
-term 8 254
|
||||
-term 9 160
|
||||
-term 10 77
|
||||
-term 11 184
|
||||
-term 12 98
|
||||
-term 13 98
|
||||
-term 14 151
|
||||
-term 15 231
|
||||
149
joe/usr/share/joe/colors/zenburn-hc.jcf
Normal file
149
joe/usr/share/joe/colors/zenburn-hc.jcf
Normal file
|
|
@ -0,0 +1,149 @@
|
|||
|
||||
# High-contrast version of zenburn
|
||||
#
|
||||
# Nothing too fancy, just some alien fruit salad to keep you in the zone.
|
||||
# This syntax file was designed to be used with dark environments and
|
||||
# low light situations. Of course, if it works during a daybright office, go
|
||||
# ahead :)
|
||||
#
|
||||
# Owes heavily to other Vim color files! With special mentions
|
||||
# to "BlackDust", "Camo" and "Desert".
|
||||
#
|
||||
# Credits [from VIM]:
|
||||
# - Jani Nurminen - original Zenburn
|
||||
# - Steve Hall & Cream posse - higher-contrast Visual selection
|
||||
# - Kurt Maier - 256 color console coloring, low and high contrast toggle,
|
||||
# bug fixing
|
||||
# - Charlie - spotted too bright StatusLine in non-high contrast mode
|
||||
# - Pablo Castellazzi - CursorLine fix for 256 color mode
|
||||
|
||||
.colors 256
|
||||
|
||||
-text 253/234
|
||||
-status 236/186
|
||||
-selection 236/79
|
||||
-linum 145/233
|
||||
-curlin /233 bold
|
||||
-curlinum 187/233
|
||||
-menu 251/235
|
||||
-menusel 186/237 bold
|
||||
-cursor 232/109 bold
|
||||
|
||||
-term 0 234
|
||||
-term 1 167
|
||||
-term 2 115
|
||||
-term 3 186
|
||||
-term 4 238
|
||||
-term 5 139
|
||||
-term 6 116
|
||||
-term 7 253
|
||||
-term 8 188
|
||||
-term 9 167
|
||||
-term 10 115
|
||||
-term 11 228
|
||||
-term 12 103
|
||||
-term 13 139
|
||||
-term 14 116
|
||||
-term 15 231
|
||||
|
||||
=Idle
|
||||
=Keyword 223 bold
|
||||
=Operator 230
|
||||
=Type 187 bold
|
||||
|
||||
=Bad 167/237 bold
|
||||
=Boolean 181
|
||||
=Character 181 bold
|
||||
=Comment 108 italic
|
||||
=Conditional 223 bold
|
||||
=Constant 181 bold
|
||||
=Define 180 bold
|
||||
=DefinedFunction 186
|
||||
=DefinedIdent 223
|
||||
=Escape 251
|
||||
=Float 250
|
||||
=IncSystem 180 bold
|
||||
=Label 223 underline
|
||||
=Loop 223 bold
|
||||
=Macro 180 bold
|
||||
=Number 116
|
||||
=Precond 180 bold
|
||||
=Preproc 180 bold
|
||||
=Statement 187
|
||||
=StorageClass 144 bold
|
||||
=String 174
|
||||
=StringEscape 181 bold
|
||||
=Structure 229 bold
|
||||
=TODO 188 bold
|
||||
=Tag 174 bold
|
||||
=Title 255 bold
|
||||
|
||||
=diff.AddLine 66 bold
|
||||
=diff.ChgLine /236 bold
|
||||
=diff.DelLine 236/238
|
||||
|
||||
.colors *
|
||||
|
||||
-text $dcdccc/$1f1f1f
|
||||
-status $313633/$ccdc90
|
||||
-selection $233323/$71d3b4
|
||||
-linum $9fafaf/$161616
|
||||
-curlin /$121212 bold
|
||||
-curlinum $f2f3bb/$161616
|
||||
-menu $ccccbc/$242424
|
||||
-menusel $ccdc90/$353a37 bold
|
||||
-cursor $000d18/$8faf9f bold
|
||||
|
||||
-term 0 $1F1F1F
|
||||
-term 1 $E37170
|
||||
-term 2 $9CCC9C
|
||||
-term 3 $EFEF8F
|
||||
-term 4 $000D18
|
||||
-term 5 $BC8CBC
|
||||
-term 6 $8CD0D3
|
||||
-term 7 $DCDCCC
|
||||
-term 8 $DFDFDF
|
||||
-term 9 $E37170
|
||||
-term 10 $CCDC90
|
||||
-term 11 $F8F893
|
||||
-term 12 $8C8CBC
|
||||
-term 13 $BC8CBC
|
||||
-term 14 $8CD0D3
|
||||
-term 15 $FFFFFF
|
||||
|
||||
=Idle
|
||||
=Keyword $f0dfaf bold
|
||||
=Operator $f0efd0
|
||||
=Type $dfdfbf bold
|
||||
|
||||
=Bad $e37170/$3d3535 bold
|
||||
=Boolean $dca3a3
|
||||
=Character $dca3a3 bold
|
||||
=Comment $7f9f7f italic
|
||||
=Conditional $f0dfaf bold
|
||||
=Constant $dca3a3 bold
|
||||
=Define $ffcfaf bold
|
||||
=DefinedFunction $efef8f
|
||||
=DefinedIdent $efdcbc
|
||||
=Escape $cfbfaf
|
||||
=Float $c0bed1
|
||||
=IncSystem $dfaf8f bold
|
||||
=Label $dfcfaf underline
|
||||
=Loop $ffd7a7 bold
|
||||
=Macro $ffcfaf bold
|
||||
=Number $8cd0d3
|
||||
=Precond $dfaf8f bold
|
||||
=Preproc $ffcfaf bold
|
||||
=Statement $e3ceab
|
||||
=StorageClass $c3bf9f bold
|
||||
=String $cc9393
|
||||
=StringEscape $dca3a3 bold
|
||||
=Structure $efefaf bold
|
||||
=TODO $dfdfdf bold
|
||||
=Tag $e89393 bold
|
||||
=Title $efefef bold
|
||||
|
||||
=diff.AddLine $709080/$313c36 bold
|
||||
=diff.ChgLine /$333333
|
||||
=diff.DelLine $333333/$464646
|
||||
|
||||
147
joe/usr/share/joe/colors/zenburn.jcf
Normal file
147
joe/usr/share/joe/colors/zenburn.jcf
Normal file
|
|
@ -0,0 +1,147 @@
|
|||
|
||||
# Nothing too fancy, just some alien fruit salad to keep you in the zone.
|
||||
# This syntax file was designed to be used with dark environments and
|
||||
# low light situations. Of course, if it works during a daybright office, go
|
||||
# ahead :)
|
||||
#
|
||||
# Owes heavily to other Vim color files! With special mentions
|
||||
# to "BlackDust", "Camo" and "Desert".
|
||||
#
|
||||
# Credits [from VIM]:
|
||||
# - Jani Nurminen - original Zenburn
|
||||
# - Steve Hall & Cream posse - higher-contrast Visual selection
|
||||
# - Kurt Maier - 256 color console coloring, low and high contrast toggle,
|
||||
# bug fixing
|
||||
# - Charlie - spotted too bright StatusLine in non-high contrast mode
|
||||
# - Pablo Castellazzi - CursorLine fix for 256 color mode
|
||||
|
||||
.colors 256
|
||||
|
||||
-text 253/237
|
||||
-status 236/186
|
||||
-selection 236/79
|
||||
-linum 145/235
|
||||
-curlin /238
|
||||
-curlinum 187/235
|
||||
-menu 247/236
|
||||
-menusel 187/235 bold
|
||||
-cursor 232/109 bold
|
||||
|
||||
-term 0 237
|
||||
-term 1 167
|
||||
-term 2 115
|
||||
-term 3 186
|
||||
-term 4 238
|
||||
-term 5 139
|
||||
-term 6 116
|
||||
-term 7 253
|
||||
-term 8 188
|
||||
-term 9 167
|
||||
-term 10 115
|
||||
-term 11 228
|
||||
-term 12 103
|
||||
-term 13 139
|
||||
-term 14 116
|
||||
-term 15 231
|
||||
|
||||
=Idle
|
||||
=Keyword 223 bold
|
||||
=Operator 230
|
||||
=Type 187 bold
|
||||
|
||||
=Bad 167/237 bold
|
||||
=Boolean 181
|
||||
=Character 181 bold
|
||||
=Comment 108 italic
|
||||
=Conditional 223 bold
|
||||
=Constant 181 bold
|
||||
=Define 180 bold
|
||||
=DefinedFunction 186
|
||||
=DefinedIdent 223
|
||||
=Escape 251
|
||||
=Float 250
|
||||
=IncSystem 180 bold
|
||||
=Label 223 underline
|
||||
=Loop 223 bold
|
||||
=Macro 180 bold
|
||||
=Number 116
|
||||
=Precond 180 bold
|
||||
=Preproc 180 bold
|
||||
=Statement 187
|
||||
=StorageClass 144 bold
|
||||
=String 174
|
||||
=StringEscape 181 bold
|
||||
=Structure 229 bold
|
||||
=TODO 188 bold
|
||||
=Tag 174 bold
|
||||
=Title 255 bold
|
||||
|
||||
=diff.AddLine 66 bold
|
||||
=diff.ChgLine /236 bold
|
||||
=diff.DelLine 236/238
|
||||
|
||||
.colors *
|
||||
|
||||
-text $dcdccc/$3f3f3f
|
||||
-status $313633/$ccdc90
|
||||
-selection $233323/$71d3b4
|
||||
-linum $9fafaf/$262626
|
||||
-curlin /$434443
|
||||
-curlinum $d2d39b/$262626
|
||||
-menu $9f9f9f/$2c2e2e
|
||||
-menusel $d0d0a0/$242424 bold
|
||||
-cursor $000d18/$8faf9f bold
|
||||
|
||||
-term 0 $3F3F3F
|
||||
-term 1 $E37170
|
||||
-term 2 $9CCC9C
|
||||
-term 3 $EFEF8F
|
||||
-term 4 $000D18
|
||||
-term 5 $BC8CBC
|
||||
-term 6 $8CD0D3
|
||||
-term 7 $DCDCCC
|
||||
-term 8 $DFDFDF
|
||||
-term 9 $E37170
|
||||
-term 10 $CCDC90
|
||||
-term 11 $F8F893
|
||||
-term 12 $8C8CBC
|
||||
-term 13 $BC8CBC
|
||||
-term 14 $8CD0D3
|
||||
-term 15 $FFFFFF
|
||||
|
||||
=Idle
|
||||
=Keyword $f0dfaf bold
|
||||
=Operator $f0efd0
|
||||
=Type $dfdfbf bold
|
||||
|
||||
=Bad $e37170/$3d3535 bold
|
||||
=Boolean $dca3a3
|
||||
=Character $dca3a3 bold
|
||||
=Comment $7f9f7f italic
|
||||
=Conditional $f0dfaf bold
|
||||
=Constant $dca3a3 bold
|
||||
=Define $ffcfaf bold
|
||||
=DefinedFunction $efef8f
|
||||
=DefinedIdent $efdcbc
|
||||
=Escape $cfbfaf
|
||||
=Float $c0bed1
|
||||
=IncSystem $dfaf8f bold
|
||||
=Label $dfcfaf underline
|
||||
=Loop $ffd7a7 bold
|
||||
=Macro $ffcfaf bold
|
||||
=Number $8cd0d3
|
||||
=Precond $dfaf8f bold
|
||||
=Preproc $ffcfaf bold
|
||||
=Statement $e3ceab
|
||||
=StorageClass $c3bf9f bold
|
||||
=String $cc9393
|
||||
=StringEscape $dca3a3 bold
|
||||
=Structure $efefaf bold
|
||||
=TODO $dfdfdf bold
|
||||
=Tag $e89393 bold
|
||||
=Title $efefef bold
|
||||
|
||||
=diff.AddLine $709080/$313c36 bold
|
||||
=diff.ChgLine /$333333
|
||||
=diff.DelLine $333333/$464646
|
||||
|
||||
2160
joe/usr/share/joe/lang/de.po
Normal file
2160
joe/usr/share/joe/lang/de.po
Normal file
File diff suppressed because it is too large
Load diff
2111
joe/usr/share/joe/lang/fr.po
Normal file
2111
joe/usr/share/joe/lang/fr.po
Normal file
File diff suppressed because it is too large
Load diff
2190
joe/usr/share/joe/lang/ru.po
Normal file
2190
joe/usr/share/joe/lang/ru.po
Normal file
File diff suppressed because it is too large
Load diff
2188
joe/usr/share/joe/lang/uk.po
Normal file
2188
joe/usr/share/joe/lang/uk.po
Normal file
File diff suppressed because it is too large
Load diff
2165
joe/usr/share/joe/lang/zh_TW.po
Normal file
2165
joe/usr/share/joe/lang/zh_TW.po
Normal file
File diff suppressed because it is too large
Load diff
219
joe/usr/share/joe/syntax/4gl.jsf
Normal file
219
joe/usr/share/joe/syntax/4gl.jsf
Normal file
|
|
@ -0,0 +1,219 @@
|
|||
# JOE syntax highlight file for Progress 4GL
|
||||
# by Gediminas http://proc.w3.lt
|
||||
# Version 1.04
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Constant
|
||||
=String +Constant
|
||||
=Number +Constant
|
||||
=Type
|
||||
=Ident
|
||||
|
||||
# conditional operators, blocks
|
||||
=Keyword
|
||||
=Conditional +Keyword
|
||||
=Operator +Keyword
|
||||
|
||||
# preprocessor include, definition, reference
|
||||
=Preproc
|
||||
=Include +Preproc
|
||||
=PreRef +Ident
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"/" slash
|
||||
"{" brace
|
||||
"&" prep buffer
|
||||
"a-zA-Z" ident buffer
|
||||
"'" string recolor=-1
|
||||
"\"" string2 recolor=-1
|
||||
"0-9" number recolor=-1
|
||||
"?" question recolor=-1
|
||||
|
||||
# Comments - 2 levels of nesting allowed
|
||||
|
||||
:slash Idle
|
||||
* idle noeat
|
||||
"*" comment recolor=-2
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"/" slash2
|
||||
"*" maybe_end_comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
:maybe_end_comment Comment comment
|
||||
* comment
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:slash2 Idle
|
||||
* comment noeat
|
||||
"*" comment2 recolor=-2
|
||||
:comment2 Comment comment
|
||||
* comment2
|
||||
"*" maybe_end_comment2
|
||||
"BFHNTX" comment2 noeat call=comment_todo.comment_todo()
|
||||
:maybe_end_comment2 Comment comment
|
||||
* comment2
|
||||
"/" comment
|
||||
"*" maybe_end_comment2
|
||||
|
||||
# Preprocessor
|
||||
# Allow preprocessor name reference inside include file reference:
|
||||
# {include/trace {&FILE-NAME} {&LINE-NUMBER}}
|
||||
|
||||
:brace Include
|
||||
* include noeat
|
||||
"&" scoped recolor=-2
|
||||
"}" idle
|
||||
|
||||
:include Include
|
||||
* include recolor=-2
|
||||
"{" brace2
|
||||
"}" idle
|
||||
|
||||
:brace2 Include
|
||||
* include2 noeat
|
||||
"}" idle
|
||||
|
||||
:include2 Include
|
||||
* include2 recolor=-2
|
||||
"}" include
|
||||
|
||||
:scoped PreRef
|
||||
* scoped
|
||||
"}" idle
|
||||
|
||||
:prep Preproc
|
||||
* idle noeat istrings
|
||||
"&IF" predir
|
||||
"&THEN" predir
|
||||
"&ELSEIF" predir
|
||||
"&ELSE" predir
|
||||
"&ENDIF" predir
|
||||
"&SCOPED-DEFINE" predir
|
||||
"&SCOP" predir
|
||||
"&GLOBAL-DEFINE" predir
|
||||
"&GLOB" predir
|
||||
"&MESSAGE" predir
|
||||
"&UNDEFINE" predir
|
||||
"&UNDEF" predir
|
||||
done
|
||||
"-a-zA-Z0-9_" prep
|
||||
|
||||
:predir Preproc
|
||||
* idle noeat
|
||||
|
||||
|
||||
# String constants, copied from pascal.jsf with " added
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\n" idle
|
||||
"'" maybe_end_string
|
||||
|
||||
:maybe_end_string String string
|
||||
* idle recolor=-1 noeat
|
||||
"'" string
|
||||
|
||||
:string2 String string
|
||||
* string2
|
||||
"\n" idle
|
||||
"\"" maybe_end_string2
|
||||
|
||||
:maybe_end_string2 String string
|
||||
* idle recolor=-1 noeat
|
||||
"\"" string2
|
||||
|
||||
# Numeric constant, same as pascal.jsf
|
||||
|
||||
:number Number
|
||||
* idle noeat
|
||||
"0-9" number
|
||||
"eE" epart
|
||||
"." dot
|
||||
|
||||
:dot Number
|
||||
* idle noeat
|
||||
"0-9" float
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:question Constant
|
||||
* idle noeat
|
||||
|
||||
# Keywords
|
||||
# Available jumps: cond type oper kw
|
||||
|
||||
# TODO: This needs to be vastly expanded, it seems like every other
|
||||
# token in this language is a keyword.
|
||||
|
||||
:ident Ident
|
||||
* idle noeat istrings
|
||||
"assign" cond
|
||||
"case" cond
|
||||
"cha" type
|
||||
"char" type
|
||||
"character" type
|
||||
"create" reserved
|
||||
"dat" type
|
||||
"date" type
|
||||
"dec" type
|
||||
"decimal" type
|
||||
"defined" oper
|
||||
"delete" reserved
|
||||
"do" reserved
|
||||
"else" cond
|
||||
"end" cond
|
||||
"find" reserved
|
||||
"for" reserved
|
||||
"function" cond
|
||||
"get" reserved
|
||||
"handle" type
|
||||
"if" cond
|
||||
"int" type
|
||||
"integer" type
|
||||
"leave" cond
|
||||
"log" type
|
||||
"logical" type
|
||||
"memptr" type
|
||||
"next" cond
|
||||
"otherwise" cond
|
||||
"param" cond
|
||||
"parameter" cond
|
||||
"procedure" cond
|
||||
"raw" type
|
||||
"rec" type
|
||||
"repeat" cond
|
||||
"reposition" reserved
|
||||
"return" cond
|
||||
"rowid" type
|
||||
"run" cond
|
||||
"then" cond
|
||||
"when" cond
|
||||
"widget-handle" type
|
||||
done
|
||||
"-a-zA-Z0-9_" ident
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:type Type
|
||||
* idle noeat
|
||||
|
||||
:oper Operator
|
||||
* idle noeat
|
||||
|
||||
:reserved Keyword
|
||||
* idle noeat
|
||||
193
joe/usr/share/joe/syntax/ada.jsf
Normal file
193
joe/usr/share/joe/syntax/ada.jsf
Normal file
|
|
@ -0,0 +1,193 @@
|
|||
# JOE syntax highlight file for ADA
|
||||
|
||||
# Define colors
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Constant
|
||||
=Character +Constant
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape +String
|
||||
=Keyword
|
||||
=Operator +Keyword
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"-" maybe_comment
|
||||
"'" char recolor=-1
|
||||
"\"" string recolor=-1
|
||||
"0-9" first_digit recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"Bb" maybe_binary buffer
|
||||
"Oo" maybe_octal buffer
|
||||
"Xx" maybe_hex buffer
|
||||
"ac-np-wyzAC-NP-WYZ" ident buffer
|
||||
|
||||
:maybe_comment Idle
|
||||
* idle noeat
|
||||
"-" comment recolor=-2
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
|
||||
# Character constant
|
||||
|
||||
:char Idle
|
||||
* char1
|
||||
|
||||
:char1 Idle
|
||||
* idle
|
||||
"'" char2 recolor=-3
|
||||
|
||||
:char2 Character
|
||||
* idle noeat
|
||||
|
||||
# Strings
|
||||
|
||||
:maybe_binary Idle
|
||||
* ident noeat
|
||||
"\"" string recolor=-2
|
||||
|
||||
:maybe_octal Idle
|
||||
* ident noeat
|
||||
"\"" string recolor=-2
|
||||
|
||||
:maybe_hex Idle
|
||||
* ident noeat
|
||||
"\"" string recolor=-2
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\n" idle
|
||||
"\"" idle
|
||||
"\\" string_escape recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"\n" string recolor=-2
|
||||
|
||||
# Integer constants
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"." float
|
||||
"_" first_digit
|
||||
"0-9" first_digit
|
||||
|
||||
# Floating point
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
# Identifiers
|
||||
|
||||
:ident Idle
|
||||
* quote noeat istrings
|
||||
"abort" kw
|
||||
"abs" operator
|
||||
"abstract" kw
|
||||
"accept" kw
|
||||
"aliased" kw
|
||||
"all" kw
|
||||
"and" operator
|
||||
"array" kw
|
||||
"at" kw
|
||||
"begin" kw
|
||||
"body" kw
|
||||
"case" kw
|
||||
"constant" kw
|
||||
"declare" kw
|
||||
"delay" kw
|
||||
"delta" kw
|
||||
"digits" kw
|
||||
"do" kw
|
||||
"else" kw
|
||||
"elsif" kw
|
||||
"end" kw
|
||||
"entry" kw
|
||||
"exception" kw
|
||||
"exit" kw
|
||||
"for" kw
|
||||
"function" kw
|
||||
"generic" kw
|
||||
"goto" kw
|
||||
"if" kw
|
||||
"in" kw
|
||||
"interface" kw
|
||||
"is" kw
|
||||
"limited" kw
|
||||
"loop" kw
|
||||
"mod" kw
|
||||
"new" kw
|
||||
"not" operator
|
||||
"null" kw
|
||||
"of" kw
|
||||
"or" operator
|
||||
"others" kw
|
||||
"out" kw
|
||||
"overriding" kw
|
||||
"package" kw
|
||||
"pragma" kw
|
||||
"private" kw
|
||||
"procedure" kw
|
||||
"protected" kw
|
||||
"raise" kw
|
||||
"range" kw
|
||||
"record" kw
|
||||
"rem" operator
|
||||
"renames" kw
|
||||
"requeue" kw
|
||||
"return" kw
|
||||
"reverse" kw
|
||||
"select" kw
|
||||
"separate" kw
|
||||
"subtype" kw
|
||||
"synchronized" kw
|
||||
"tagged" kw
|
||||
"task" kw
|
||||
"terminate" kw
|
||||
"then" kw
|
||||
"type" kw
|
||||
"until" kw
|
||||
"use" kw
|
||||
"when" kw
|
||||
"while" kw
|
||||
"with" kw
|
||||
"xor" operator
|
||||
done
|
||||
"a-zA-Z0-9_" ident
|
||||
|
||||
:operator Operator
|
||||
* idle noeat
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
# identifiers separated with quote '
|
||||
|
||||
:quote Idle
|
||||
* idle noeat
|
||||
"'" quote_word
|
||||
|
||||
:quote_word Idle
|
||||
* idle noeat
|
||||
"a-zA-Z" ident buffer
|
||||
30
joe/usr/share/joe/syntax/ant.jsf
Normal file
30
joe/usr/share/joe/syntax/ant.jsf
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# JOE syntax highlight file for Ant's build scripts
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
# Refactored to XML by John J. Jordan
|
||||
|
||||
# http://ant.apache.org/
|
||||
|
||||
=Idle
|
||||
=String +Constant
|
||||
=StringEscape +Escape +String
|
||||
|
||||
:init Idle
|
||||
* idle noeat call=xml.xml(ant)
|
||||
|
||||
.subr maybe_antvar
|
||||
# initial state
|
||||
:maybe_antvar String string
|
||||
* NULL return
|
||||
"{" antvar recolor=-2
|
||||
|
||||
:antvar StringEscape string
|
||||
* antvar
|
||||
"}" NULL return
|
||||
.end
|
||||
|
||||
.subr antvar
|
||||
|
||||
:antvar StringEscape string
|
||||
* antvar
|
||||
"}" NULL return
|
||||
.end
|
||||
257
joe/usr/share/joe/syntax/asm.jsf
Normal file
257
joe/usr/share/joe/syntax/asm.jsf
Normal file
|
|
@ -0,0 +1,257 @@
|
|||
# JOE syntax highlight file for assembly language
|
||||
|
||||
# Highlights ';' comments, C-preprocessor stuff and C-like constants.
|
||||
|
||||
# Some assembly languages do not use C-preprocessor and use '#' for
|
||||
# comments. For them, eliminate all states up to ':idle'. and change the
|
||||
# ";" line in 'idle' to '#'.
|
||||
|
||||
# For UNIX assembly ';' actually separates instructions, but I've only seen
|
||||
# this for 'rep; movsb'. If it bothers you eliminate the ';' line in
|
||||
# ':idle'.
|
||||
|
||||
# This highlighter is too strict for numeric constants. Many assembly
|
||||
# languages allow '000009', which looks like a bad octal constant in C/UNIX.
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Bad
|
||||
=Preproc
|
||||
=Define
|
||||
=Comment
|
||||
=IncLocal +String +Preproc
|
||||
=IncSystem +Preproc
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=Character +String
|
||||
=CharacterEscape +Escape +Character
|
||||
=StringEscape +Escape +String
|
||||
=Type
|
||||
=Brace
|
||||
=Control
|
||||
|
||||
:reset Idle
|
||||
* first noeat
|
||||
" \t" reset
|
||||
|
||||
:first Idle
|
||||
* idle noeat
|
||||
"#" pre recolor=-1
|
||||
|
||||
:pre Preproc
|
||||
* preproc noeat
|
||||
" \t" pre
|
||||
"a-z" preident recolor=-1 buffer
|
||||
|
||||
:preident Preproc
|
||||
* preproc noeat strings
|
||||
"define" predef
|
||||
"include" preinc
|
||||
done
|
||||
"a-z" preident
|
||||
|
||||
:preinc Preproc
|
||||
* preinc
|
||||
" \t" preinc_ws
|
||||
"\n" reset
|
||||
|
||||
:preinc_ws Preproc
|
||||
* prebad recolor=-1
|
||||
" \t" preinc_ws
|
||||
"\"" preinc_local recolor=-1
|
||||
"<" preinc_system recolor=-1
|
||||
|
||||
:preinc_local IncLocal
|
||||
* preinc_local
|
||||
"\"\n" reset
|
||||
|
||||
:preinc_system IncSystem
|
||||
* preinc_system
|
||||
">\n" reset
|
||||
|
||||
:prebad Bad
|
||||
* prebad
|
||||
"\n" reset
|
||||
|
||||
|
||||
:predef Preproc
|
||||
* predef
|
||||
" \t" predef_ws
|
||||
"\n" reset
|
||||
|
||||
:predef_ws Preproc
|
||||
* prebad recolor=-1
|
||||
" \t" predef_ws
|
||||
"a-zA-Z0-9_" predef_ident recolor=-1
|
||||
|
||||
:predef_ident Define
|
||||
* idle noeat
|
||||
"a-zA-Z0-9_" predef_ident
|
||||
|
||||
|
||||
:preproc Preproc
|
||||
* preproc
|
||||
"\n" reset
|
||||
"\\" preproc_cont
|
||||
"/" preproc_slash
|
||||
|
||||
:preproc_slash Preproc
|
||||
* preproc noeat
|
||||
"*" comment recolor=-2
|
||||
"/" line_comment recolor=-2
|
||||
|
||||
:preproc_cont Preproc
|
||||
* preproc_cont
|
||||
"\n" preproc
|
||||
|
||||
# All following states are for when we're not in a preprocessor line
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
";" line_comment recolor=-1
|
||||
"\n" reset
|
||||
"/" slash
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"a-zA-Z_" ident buffer
|
||||
"{}" brace recolor=-1
|
||||
",:=()><[]*&|!~+\-%^" control recolor=-1
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:control Control
|
||||
* idle noeat
|
||||
|
||||
:slash Idle
|
||||
* idle noeat recolor=-2 # Not sure about this
|
||||
"*" comment recolor=-2
|
||||
"/" line_comment recolor=-2
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"*" maybe_end_comment
|
||||
|
||||
:maybe_end_comment Comment comment
|
||||
* comment
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" reset
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"xX" hex
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* idle noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* idle noeat
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:decimal Number
|
||||
* idle noeat
|
||||
"0-9" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" idle
|
||||
"\\" string_escape recolor=-1
|
||||
"%" string_control recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"x" string_hex1
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
:string_hex1 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_hex2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:string_control StringEscape string
|
||||
* string_control
|
||||
"\n" reset
|
||||
"diouxXeEfFgGaAcspn%SC" string
|
||||
|
||||
:char CharacterEscape
|
||||
* char
|
||||
"\n" reset
|
||||
"'" idle
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape CharacterEscape
|
||||
* char
|
||||
"x" char_hex1
|
||||
"0-7" char_octal2
|
||||
"\n" char recolor=-2
|
||||
|
||||
:char_hex1 CharacterEscape
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex2
|
||||
|
||||
:char_hex2 CharacterEscape
|
||||
* char noeat
|
||||
"0-9a-fA-F" char
|
||||
|
||||
:char_octal2 CharacterEscape
|
||||
* char noeat
|
||||
"0-7" char_octal3
|
||||
|
||||
:char_octal3 CharacterEscape
|
||||
* char noeat
|
||||
"0-7" char
|
||||
|
||||
:ident Ident
|
||||
* idle noeat
|
||||
"a-zA-Z0-9_" ident
|
||||
197
joe/usr/share/joe/syntax/avr.jsf
Normal file
197
joe/usr/share/joe/syntax/avr.jsf
Normal file
|
|
@ -0,0 +1,197 @@
|
|||
# JOE syntax highlight file for AVR assembly language
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Preproc # basic color for directives
|
||||
=Include +Preproc # "include" - color
|
||||
=Define +Preproc # same for "def" and "equ"
|
||||
=DefinedIdent +Define +Ident # text after ".def" or ".equ"
|
||||
=Macro +Define # color of word "macro"
|
||||
=Path +String # color for include-path
|
||||
=Com +Keyword # command
|
||||
=Comment # comment-color
|
||||
=Label +DefinedIdent # label
|
||||
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"." preproc recolor=-1
|
||||
";" comment recolor=-1
|
||||
"a-zA-Z_0-9" ident recolor=-1 buffer mark
|
||||
|
||||
:preproc Preproc
|
||||
* preproc
|
||||
"a-zA-Z" preident buffer
|
||||
"\n" idle
|
||||
";" comment recolor=-1
|
||||
|
||||
:preident Preproc
|
||||
* preproc noeat istrings
|
||||
"include" preinc
|
||||
"def" predef
|
||||
"equ" predef
|
||||
"macro" premacro
|
||||
"endmacro" premacro
|
||||
"endm" premacro
|
||||
done
|
||||
"a-zA-Z" preident
|
||||
";" comment recolor=-1
|
||||
|
||||
:preinc Include
|
||||
* preinc
|
||||
" \t" path
|
||||
"\n" idle
|
||||
";" comment recolor=-1
|
||||
|
||||
:predef Define
|
||||
* predef
|
||||
" \t" definition
|
||||
"\n" idle
|
||||
";" comment recolor=-1
|
||||
|
||||
:definition DefinedIdent
|
||||
* definition
|
||||
"\n" idle
|
||||
";" comment recolor=-1
|
||||
|
||||
:premacro Macro
|
||||
* premacro
|
||||
" \t\n" idle
|
||||
";" comment recolor=-1
|
||||
|
||||
:path Path
|
||||
* path
|
||||
"\n" idle
|
||||
";" comment recolor=-1
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:ident Ident
|
||||
* idle noeat istrings
|
||||
"and" com
|
||||
"andi" com
|
||||
"eor" com
|
||||
"or" com
|
||||
"ori" com
|
||||
"com" com
|
||||
"neg" com
|
||||
"clr" com
|
||||
"ser" com
|
||||
"cr" com
|
||||
"tst" com
|
||||
"swap" com
|
||||
"add" com
|
||||
"adc" com
|
||||
"adiw" com
|
||||
"sub" com
|
||||
"subi" com
|
||||
"sbc" com
|
||||
"sbci" com
|
||||
"sbiw" com
|
||||
"dec" com
|
||||
"inc" com
|
||||
"asr" com
|
||||
"lsl" com
|
||||
"lsr" com
|
||||
"rol" com
|
||||
"ror" com
|
||||
"mul" com
|
||||
"muls" com
|
||||
"mulsu" com
|
||||
"fmul" com
|
||||
"fmuls" com
|
||||
"fmulsu" com
|
||||
"cbr" com
|
||||
"sbr" com
|
||||
"sbi" com
|
||||
"cbi" com
|
||||
"bclr" com
|
||||
"bset" com
|
||||
"bld" com
|
||||
"bst" com
|
||||
"clc" com
|
||||
"sec" com
|
||||
"cln" com
|
||||
"sen" com
|
||||
"clz" com
|
||||
"sez" com
|
||||
"cli" com
|
||||
"sei" com
|
||||
"cls" com
|
||||
"ses" com
|
||||
"clv" com
|
||||
"sev" com
|
||||
"clt" com
|
||||
"set" com
|
||||
"clh" com
|
||||
"seh" com
|
||||
"mov" com
|
||||
"movw" com
|
||||
"ldi" com
|
||||
"ld" com
|
||||
"ldd" com
|
||||
"lds" com
|
||||
"st" com
|
||||
"std" com
|
||||
"sts" com
|
||||
"lpm" com
|
||||
"elpm" com
|
||||
"spm" com
|
||||
"espm" com
|
||||
"in" com
|
||||
"out" com
|
||||
"push" com
|
||||
"pop" com
|
||||
"rjmp" com
|
||||
"ijmp" com
|
||||
"eijmp" com
|
||||
"jmp" com
|
||||
"rcall" com
|
||||
"icall" com
|
||||
"eicall" com
|
||||
"call" com
|
||||
"ret" com
|
||||
"reti" com
|
||||
"cp" com
|
||||
"cpc" com
|
||||
"cpi" com
|
||||
"cpse" com
|
||||
"sbrc" com
|
||||
"sbrs" com
|
||||
"sbic" com
|
||||
"sbis" com
|
||||
"brbc" com
|
||||
"brbs" com
|
||||
"brcs" com
|
||||
"brcc" com
|
||||
"breq" com
|
||||
"brne" com
|
||||
"brsh" com
|
||||
"brlo" com
|
||||
"brmi" com
|
||||
"brpl" com
|
||||
"brge" com
|
||||
"brlt" com
|
||||
"brhs" com
|
||||
"brhc" com
|
||||
"brts" com
|
||||
"brtc" com
|
||||
"brvs" com
|
||||
"brvc" com
|
||||
"brid" com
|
||||
"brie" com
|
||||
"nop" com
|
||||
"sleep" com
|
||||
"wdr" com
|
||||
done
|
||||
"a-zA-Z0-9_" ident
|
||||
":" itslabel recolor=-1 markend recolormark
|
||||
|
||||
:itslabel Label
|
||||
* idle
|
||||
|
||||
:com Com
|
||||
* idle noeat
|
||||
237
joe/usr/share/joe/syntax/awk.jsf
Normal file
237
joe/usr/share/joe/syntax/awk.jsf
Normal file
|
|
@ -0,0 +1,237 @@
|
|||
# JOE syntax highlight file for AWK
|
||||
|
||||
# Resync whole file
|
||||
-
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Bad
|
||||
=Preproc
|
||||
=Define +Preproc
|
||||
=Comment
|
||||
=IncLocal +String +Preproc
|
||||
=IncSystem +Preproc
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape +String
|
||||
=Character +String
|
||||
=CharacterEscape +Escape +Character
|
||||
=Type
|
||||
=Keyword
|
||||
=Brace +Control
|
||||
=Control
|
||||
|
||||
:reset Idle
|
||||
* first noeat
|
||||
" \t" reset
|
||||
|
||||
:first Idle
|
||||
* idle noeat
|
||||
"/" regex
|
||||
"#" reset_line_comment recolor=-1
|
||||
|
||||
:regex Idle
|
||||
* regex
|
||||
"/" idle
|
||||
"\\" regex_skip
|
||||
|
||||
:regex_skip Idle
|
||||
* regex
|
||||
|
||||
:reset_line_comment Comment comment
|
||||
* reset_line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" reset
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\n" reset
|
||||
"#" line_comment recolor=-1
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"a-zA-Z_" ident buffer
|
||||
"{}" brace recolor=-1
|
||||
"/,:;=()><[]*&|!~+\-%^" control recolor=-1
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:control Control
|
||||
* idle noeat
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" reset
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"xX" hex
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* idle noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* idle noeat
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:decimal Number
|
||||
* idle noeat
|
||||
"0-9" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" idle
|
||||
"\\" string_escape recolor=-1
|
||||
"%" string_control recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"x" string_hex1
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
:string_hex1 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_hex2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:string_control StringEscape string
|
||||
* string
|
||||
"\"" string noeat
|
||||
"\n" reset
|
||||
"0-9.\-+ #hjILtz$" string_control
|
||||
|
||||
:char Character
|
||||
* char
|
||||
"\n" reset
|
||||
"'" idle
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape CharacterEscape
|
||||
* char
|
||||
"x" char_hex1
|
||||
"0-7" char_octal2
|
||||
"\n" char recolor=-2
|
||||
|
||||
:char_hex1 CharacterEscape
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex2
|
||||
|
||||
:char_hex2 CharacterEscape
|
||||
* char noeat
|
||||
"0-9a-fA-F" char
|
||||
|
||||
:char_octal2 CharacterEscape
|
||||
* char noeat
|
||||
"0-7" char_octal3
|
||||
|
||||
:char_octal3 CharacterEscape
|
||||
* char noeat
|
||||
"0-7" char
|
||||
|
||||
:ident Ident
|
||||
* idle noeat istrings
|
||||
"if" kw
|
||||
"else" kw
|
||||
"while" kw
|
||||
"do" kw
|
||||
"for" kw
|
||||
"break" kw
|
||||
"continue" kw
|
||||
"delete" kw
|
||||
"exit" kw
|
||||
"close" kw
|
||||
"getline" kw
|
||||
"next" kw
|
||||
"nextfile" kw
|
||||
"print" kw
|
||||
"printf" kw
|
||||
"system" kw
|
||||
"fflush" kw
|
||||
"atan2" kw
|
||||
"cos" kw
|
||||
"exp" kw
|
||||
"int" kw
|
||||
"log" kw
|
||||
"rand" kw
|
||||
"sin" kw
|
||||
"sqrt" kw
|
||||
"srand" kw
|
||||
"asort" kw
|
||||
"asorti" kw
|
||||
"gensub" kw
|
||||
"gsub" kw
|
||||
"index" kw
|
||||
"length" kw
|
||||
"match" kw
|
||||
"split" kw
|
||||
"sprintf" kw
|
||||
"strtonum" kw
|
||||
"sub" kw
|
||||
"substr" kw
|
||||
"tolower" kw
|
||||
"toupper" kw
|
||||
"mktime" kw
|
||||
"strftime" kw
|
||||
"systime" kw
|
||||
"and" kw
|
||||
"compl" kw
|
||||
"lshift" kw
|
||||
"or" kw
|
||||
"rshift" kw
|
||||
"xor" kw
|
||||
"bindtextdomain" kw
|
||||
"dcgettext" kw
|
||||
"dcngettext" kw
|
||||
"function" kw
|
||||
"return" kw
|
||||
done
|
||||
"a-zA-Z0-9_" ident
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
186
joe/usr/share/joe/syntax/batch.jsf
Normal file
186
joe/usr/share/joe/syntax/batch.jsf
Normal file
|
|
@ -0,0 +1,186 @@
|
|||
# JOE syntax highlight file for Windows batch scripts
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Command +Type
|
||||
=Statement +Keyword
|
||||
=Brace
|
||||
=Variable +DefinedIdent
|
||||
=StringVariable +StringEscape
|
||||
=Label
|
||||
=Conditional +Statement
|
||||
=Loop +Statement
|
||||
=String +Constant
|
||||
|
||||
:reset Idle
|
||||
* linebegin noeat
|
||||
" \t\r\n" reset
|
||||
|
||||
:linebegin Idle
|
||||
* stmtorcommand noeat buffer
|
||||
":" labelorcomment
|
||||
"@" linebegin
|
||||
"%" args call=.variable() recolor=-1
|
||||
"\"" qargs recolor=-1
|
||||
"'" sqargs recolor=-1 # These two encountered in
|
||||
"`" bqargs recolor=-1 # certain varieties of for-loops
|
||||
|
||||
:stmtorcommand Command
|
||||
* command noeat istrings
|
||||
"call" stmt
|
||||
"cd" stmt
|
||||
"chdir" stmt
|
||||
"cls" stmt
|
||||
"copy" stmt
|
||||
"del" stmt
|
||||
"dir" stmt
|
||||
"echo" echostmt
|
||||
"echo." echostmt
|
||||
"endlocal" stmt
|
||||
"erase" stmt
|
||||
"exit" stmt
|
||||
"for" cond
|
||||
"goto" loop
|
||||
"if" cond
|
||||
"move" stmt
|
||||
"pause" stmt
|
||||
"popd" stmt
|
||||
"pushd" stmt
|
||||
"rd" stmt
|
||||
"rem" comment
|
||||
"ren" stmt
|
||||
"rename" stmt
|
||||
"rmdir" stmt
|
||||
"set" stmt
|
||||
"setlocal" stmt
|
||||
"setx" stmt
|
||||
"shift" stmt
|
||||
"sleep" stmt
|
||||
"start" stmt
|
||||
"type" stmt
|
||||
"xcopy" stmt
|
||||
done
|
||||
"a-zA-Z." stmtorcommand
|
||||
"\"\\_0-9" command
|
||||
")" rparen recolor=-1
|
||||
|
||||
:labelorcomment Idle
|
||||
* label recolor=-2
|
||||
":" comment recolor=-2
|
||||
|
||||
:label Label
|
||||
* label
|
||||
"\r\n" reset
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"\r\n" reset
|
||||
|
||||
:loop Loop
|
||||
* args noeat
|
||||
|
||||
:cond Conditional
|
||||
* args noeat
|
||||
|
||||
:stmt Statement
|
||||
* args noeat
|
||||
|
||||
:echostmt Statement
|
||||
* echoargs noeat
|
||||
|
||||
:echoargs String string
|
||||
* echoargs
|
||||
"%" echoargs call=.strvariable() recolor=-1
|
||||
"&" and recolor=-1
|
||||
">|" reset recolor=-1
|
||||
"\r\n" reset
|
||||
|
||||
:command Command
|
||||
* command
|
||||
"\"" qcommand
|
||||
" \t" args
|
||||
"\r\n" reset
|
||||
|
||||
:qcommand Command
|
||||
* qcommand
|
||||
"\"" command
|
||||
"\r\n" reset
|
||||
|
||||
:args Idle
|
||||
* args
|
||||
"%" args call=.variable() recolor=-1
|
||||
"(" lparen recolor=-1
|
||||
")" rparen recolor=-1
|
||||
"\r\n" reset
|
||||
"\"" qargs recolor=-1
|
||||
"&" and recolor=-1
|
||||
|
||||
# Double-quoted args
|
||||
:qargs String string
|
||||
* qargs
|
||||
"\"" args
|
||||
"%" qargs call=.strvariable() recolor=-1
|
||||
"\r\n" reset
|
||||
|
||||
# Single-quoted args
|
||||
:sqargs String string
|
||||
* sqargs
|
||||
"'" args
|
||||
"%" sqargs call=.strvariable() recolor=-1
|
||||
"\r\n" reset
|
||||
|
||||
# Back-quoted (`) args, found in some for-loops
|
||||
:bqargs String string
|
||||
* bqargs
|
||||
"`" args
|
||||
"%" bqargs call=.strvariable() recolor=-1
|
||||
"\r\n" reset
|
||||
|
||||
:and Idle
|
||||
"&" and
|
||||
* reset noeat
|
||||
|
||||
:lparen Brace
|
||||
* linebegin noeat
|
||||
|
||||
:rparen Brace
|
||||
* args noeat
|
||||
|
||||
.subr variable
|
||||
|
||||
:variable Variable
|
||||
* args noeat return
|
||||
"%~" shortvar
|
||||
"\*" noeat return
|
||||
"0-9" variable return
|
||||
"A-Za-z_" varbody
|
||||
|
||||
:shortvar Variable
|
||||
* args noeat return
|
||||
"A-Za-z0-9_" shortvar
|
||||
|
||||
:varbody Variable
|
||||
* varbody
|
||||
"%" args return
|
||||
|
||||
.end
|
||||
|
||||
.subr strvariable
|
||||
|
||||
:variable StringVariable string
|
||||
* args noeat return
|
||||
"%~" shortvar
|
||||
"\*" noeat return
|
||||
"0-9" variable return
|
||||
"A-Za-z_" varbody
|
||||
|
||||
:shortvar StringVariable string
|
||||
* args noeat return
|
||||
"A-Za-z0-9_" shortvar
|
||||
|
||||
:varbody StringVariable string
|
||||
* varbody
|
||||
"%" args return
|
||||
|
||||
.end
|
||||
522
joe/usr/share/joe/syntax/c.jsf
Normal file
522
joe/usr/share/joe/syntax/c.jsf
Normal file
|
|
@ -0,0 +1,522 @@
|
|||
# JOE syntax highlight file for C and C++
|
||||
|
||||
# A (deterministic) state machine which performs lexical analysis of C.
|
||||
# (This is the "assembly language" of syntax highlighting. A separate
|
||||
# program could be used to convert a regular expression NFA syntax into this
|
||||
# format).
|
||||
|
||||
# Each state begins with ':<name> <color-name> <context>'
|
||||
#
|
||||
# <color-name> is the color used for characters eaten by the state
|
||||
# (really a symbol for a user definable color).
|
||||
#
|
||||
# <context> tells JOE if the current character is part of a comment or a string.
|
||||
# This allows JOE to skip over comments and strings when matching characters
|
||||
# such as parentheses. To use this feature, the -highlighter_context option
|
||||
# must be applied to the files highlighted by the corresponding syntax. To
|
||||
# apply the option, add it to ftyperc for those file entries.
|
||||
#
|
||||
# The valid contexts are:
|
||||
# comment This character is part of a comment. Example: /* comment */
|
||||
#
|
||||
# string This character is part of a string. Examples: "string" 'c' 'string'
|
||||
#
|
||||
# The comment and string delimiters themselves should be marked with the
|
||||
# appropriate context. The context is considered to be part of the color, so
|
||||
# the recolor=-N and recolormark options apply the context to previous
|
||||
# characters.
|
||||
|
||||
# The first state defined is the initial state.
|
||||
|
||||
# Within a state, define transitions (jumps) to other states. Each
|
||||
# jump has the form: <character-list> <target-state> [<option>s]
|
||||
|
||||
# There are three ways to specify <character-list>s, either * for any
|
||||
# character not otherwise specified, % or & to match the character in the
|
||||
# delimiter match buffer or a literal list of characters within quotes
|
||||
# (ranges and escape sequences allowed). When the next character matches
|
||||
# any in the list, a jump to the target-state is taken and the character is
|
||||
# eaten (we advance to the next character of the file to be colored).
|
||||
#
|
||||
# The * transition should be the first transition specified in the state.
|
||||
#
|
||||
# There are several options:
|
||||
# noeat do not eat the character, instead feed it to the next state
|
||||
# (this tends to make the states smaller, but be careful: you
|
||||
# can make infinite loops). 'noeat' implies 'recolor=-1'.
|
||||
#
|
||||
# recolor=-N Recolor the past N characters with the color of the
|
||||
# target-state. For example once /* is recognized as the
|
||||
# start of C comment, you want to color the /* with the C
|
||||
# comment color with recolor=-2.
|
||||
#
|
||||
# mark Mark beginning of a region with current position.
|
||||
#
|
||||
# markend Mark end of region.
|
||||
#
|
||||
# recolormark Recolor all of the characters in the marked region with
|
||||
# the color of the target-state. If markend is not given,
|
||||
# all of the characters up to the current position are recolored.
|
||||
# Note that the marked region can not cross line boundaries and
|
||||
# must be on the same line as recolormark.
|
||||
#
|
||||
# buffer start copying characters to a string buffer, beginning with this
|
||||
# one (it's ok to not terminate buffering with a matching
|
||||
# 'strings' option- the buffer is limited to leading 23
|
||||
# characters).
|
||||
#
|
||||
# save_c Save character in delimiter match buffer.
|
||||
#
|
||||
# save_s Copy string buffer to delimiter match buffer.
|
||||
#
|
||||
# strings A list of strings follows. If the buffer matches any of the
|
||||
# given strings, a jump to the target-state in the string list
|
||||
# is taken instead of the normal jump.
|
||||
#
|
||||
# istrings Same as strings, but case is ignored.
|
||||
#
|
||||
# Note: strings and istrings should be the last option on the
|
||||
# line. They cause any options which follow them to be ignored.
|
||||
#
|
||||
# hold Stop buffering string- a future 'strings' or 'istrings' will
|
||||
# look at contents of buffer at this point. Useful for distinguishing
|
||||
# commands and function calls in some languages 'write 7' is a command
|
||||
# 'write (' is a function call- hold lets us stop at the space and delay
|
||||
# the string lookup until the ( or 7.
|
||||
#
|
||||
# The format of the string list is:
|
||||
#
|
||||
# "string" <target-state> [<options>s]
|
||||
# "string" <target-state> [<options>s]
|
||||
# "&" <target-state> [<options>s] # matches contents of delimiter match buffer
|
||||
# done
|
||||
#
|
||||
# (all of the options above are allowed except "strings", "istrings" and "noeat". noeat is
|
||||
# always implied after a matched string).
|
||||
#
|
||||
# Weirdness: only states have colors, not transitions. This means that you
|
||||
# sometimes have to make dummy states with '* next-state noeat' just to get
|
||||
# a color specification.
|
||||
#
|
||||
# Delimiter match buffer is for perl and shell: a regex in perl can be s<..>(...)
|
||||
# and in shell you can say: <<EOS ....... EOS
|
||||
|
||||
# New feature: subroutines
|
||||
#
|
||||
# Highlighter state machines can now make subroutine calls. The highlighter has
|
||||
# a run-time stack that allows unlimited recursion.
|
||||
#
|
||||
# To call a subroutine, use the 'call' option:
|
||||
#
|
||||
# "\"" fred call=string(dquote)
|
||||
#
|
||||
# The subroutine called 'string' is called and the jump to 'fred' is
|
||||
# ignored. The 'dquote' option is passed to the subroutine.
|
||||
#
|
||||
# The subroutine itself returns to the caller like this:
|
||||
# "\"" whatever return
|
||||
#
|
||||
# If we're in a subroutine, the return is made. Otherwise the jump
|
||||
# to 'whatever' is made.
|
||||
#
|
||||
# There are several ways of delimiting subroutines which show up in how it
|
||||
# is called. Here are the options:
|
||||
#
|
||||
# call=string() A file called string.jsf is the subroutine.
|
||||
# The entire file is the subroutine. The starting
|
||||
# point is the first state in the file.
|
||||
#
|
||||
# call=library.string() A file called library.jsf has the subroutine.
|
||||
# The subroutine within the file is called string.
|
||||
#
|
||||
# call=.string() There is a subroutine called string in the current file.
|
||||
#
|
||||
# When a subroutine is within a file, but is not the whole file, it is delimited
|
||||
# as follows:
|
||||
#
|
||||
# .subr string
|
||||
#
|
||||
# . . . states for string subroutine . . .
|
||||
#
|
||||
# .end
|
||||
#
|
||||
# Option flags can be passed to subroutines which control preprocessor-like
|
||||
# directives. For example:
|
||||
#
|
||||
# .ifdef dquote
|
||||
# "\"" idle return
|
||||
# .endif
|
||||
# .ifdef squote
|
||||
# "'" idle return
|
||||
# .endif
|
||||
#
|
||||
# .else if also available. .ifdefs can be nested.
|
||||
|
||||
|
||||
# Obsolete feature: the sync lines specification no longer matter. We now always parse
|
||||
# from the beginning of the file. Here is the old description:
|
||||
#
|
||||
# Define no. sync lines
|
||||
# You can say:
|
||||
# -200 means 200 lines
|
||||
# - means always start parsing from beginning of file when we lose sync
|
||||
# if nothing is specified, the default is -50
|
||||
-
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Bad
|
||||
|
||||
=Preproc
|
||||
=Precond +Preproc
|
||||
=Define +DefinedIdent +Preproc
|
||||
=IncLocal +String +Preproc
|
||||
=IncSystem +Preproc +Keyword
|
||||
|
||||
=Comment
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape +String
|
||||
=Character +String
|
||||
=CharacterEscape +StringEscape +Character
|
||||
=Escape
|
||||
|
||||
=Keyword
|
||||
=CppKeyword +Keyword
|
||||
=Statement +Keyword
|
||||
=Loop +Statement
|
||||
=Conditional +Statement
|
||||
=Label +DefinedIdent
|
||||
=Type
|
||||
=StorageClass +Type +Keyword
|
||||
=Structure +Type +Keyword
|
||||
=Brace
|
||||
=Control
|
||||
|
||||
:reset Idle
|
||||
* first noeat
|
||||
" \t" reset
|
||||
|
||||
:first Idle
|
||||
* idle noeat
|
||||
"#" pre mark
|
||||
|
||||
:pre Preproc
|
||||
* preproc noeat
|
||||
" \t" pre
|
||||
"a-z" preident recolor=-1 buffer
|
||||
|
||||
:preident Preproc
|
||||
* preproc noeat markend recolormark strings
|
||||
"define" predef markend recolormark
|
||||
"include" preinc markend recolormark
|
||||
"if" precond markend recolormark
|
||||
"ifdef" precond markend recolormark
|
||||
"ifndef" precond markend recolormark
|
||||
"else" precond markend recolormark
|
||||
"elif" precond markend recolormark
|
||||
"endif" precond markend recolormark
|
||||
done
|
||||
"a-z" preident
|
||||
|
||||
:precond Precond
|
||||
* preproc noeat
|
||||
|
||||
:preinc Preproc
|
||||
* preinc
|
||||
" \t" preinc_ws
|
||||
"\n" reset
|
||||
|
||||
:preinc_ws Preproc
|
||||
* prebad recolor=-1
|
||||
" \t" preinc_ws
|
||||
"\"" preinc_local recolor=-1
|
||||
"<" preinc_system recolor=-1
|
||||
|
||||
:preinc_local IncLocal string
|
||||
* preinc_local
|
||||
"\"\n" reset
|
||||
|
||||
:preinc_system IncSystem string
|
||||
* preinc_system
|
||||
">\n" reset
|
||||
|
||||
:prebad Bad
|
||||
* prebad
|
||||
"\n" reset
|
||||
|
||||
|
||||
:predef Preproc
|
||||
* predef
|
||||
" \t" predef_ws
|
||||
"\n" reset
|
||||
|
||||
:predef_ws Preproc
|
||||
* prebad recolor=-1
|
||||
" \t" predef_ws
|
||||
"\c" predef_ident recolor=-1
|
||||
|
||||
:predef_ident Define
|
||||
* idle noeat
|
||||
"\c" predef_ident
|
||||
|
||||
:preproc Preproc
|
||||
* preproc
|
||||
"\n" reset
|
||||
"\\" preproc_cont
|
||||
"/" preproc_slash
|
||||
|
||||
:preproc_slash Preproc
|
||||
* preproc noeat
|
||||
"*" comment recolor=-2
|
||||
"/" line_comment recolor=-2
|
||||
|
||||
:preproc_cont Preproc
|
||||
* preproc_cont
|
||||
"\n" preproc
|
||||
|
||||
# All following states are for when we're not in a preprocessor line
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\n" reset
|
||||
"/" slash
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"\i" ident recolor=-1 buffer
|
||||
"\\" outside_escape recolor=-1
|
||||
"{}" brace recolor=-1
|
||||
",:;=()><[]*&|!~+\-%^" control recolor=-1
|
||||
|
||||
:outside_escape Escape
|
||||
* idle
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:control Control
|
||||
* idle noeat
|
||||
|
||||
:slash Idle
|
||||
* idle noeat recolor=-2 # Not sure about this
|
||||
"*" comment recolor=-2
|
||||
"/" line_comment recolor=-2
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"*" maybe_end_comment
|
||||
|
||||
:maybe_end_comment Comment comment
|
||||
* comment
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" reset
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"xX" hex recolor=-2
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal recolor=-2
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* idle noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* idle noeat
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:decimal Number
|
||||
* idle noeat
|
||||
"0-9" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" idle
|
||||
"\\" string_escape recolor=-1
|
||||
"%" string_control recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"x" string_hex
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
# \x will consume all successive hex digits (ANSI C).
|
||||
:string_hex StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:string_control StringEscape string
|
||||
* string
|
||||
"\"" string noeat
|
||||
"\n" reset
|
||||
"\\" string_escape recolor=-1
|
||||
"0-9.\-+ #hjILtz$" string_control
|
||||
|
||||
:char Character string
|
||||
* char
|
||||
"\n" reset
|
||||
"'" idle
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape CharacterEscape string
|
||||
* char
|
||||
"x" char_hex
|
||||
"0-7" char_octal2
|
||||
"\n" char recolor=-2
|
||||
|
||||
# \x will consume all successive hex digits (ANSI C).
|
||||
:char_hex CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex
|
||||
|
||||
:char_octal2 CharacterEscape string
|
||||
* char noeat
|
||||
"0-7" char_octal3
|
||||
|
||||
:char_octal3 CharacterEscape string
|
||||
* char noeat
|
||||
"0-7" char
|
||||
|
||||
:ident Ident
|
||||
* idle noeat strings
|
||||
"int" type
|
||||
"float" type
|
||||
"long" type
|
||||
"short" type
|
||||
"char" type
|
||||
"double" type
|
||||
"signed" type
|
||||
"unsigned" type
|
||||
"void" type
|
||||
"static" storage
|
||||
"register" storage
|
||||
"extern" storage
|
||||
"inline" type
|
||||
"auto" storage
|
||||
"const" storage
|
||||
"volatile" storage
|
||||
"if" cond
|
||||
"else" cond
|
||||
"while" loop
|
||||
"for" loop
|
||||
"break" stmt
|
||||
"continue" stmt
|
||||
"do" loop
|
||||
"case" label
|
||||
"default" label
|
||||
"switch" cond
|
||||
"goto" stmt
|
||||
"struct" struct
|
||||
"enum" struct
|
||||
"return" stmt
|
||||
"sizeof" kw
|
||||
"typedef" struct
|
||||
"union" struct
|
||||
"asm" kw
|
||||
# C++ keywords
|
||||
#"asm" cppkw (listed above as a C keyword)
|
||||
"bool" cppkw
|
||||
"catch" cppkw
|
||||
"class" struct
|
||||
"const_cast" cppkw
|
||||
"delete" cppkw
|
||||
"dynamic_cast" cppkw
|
||||
"explicit" cppkw
|
||||
"false" cppkw
|
||||
"friend" cppkw
|
||||
#"inline" cppkw (listed above as a C keyword)
|
||||
"mutable" cppkw
|
||||
"namespace" cppkw
|
||||
"new" cppkw
|
||||
"operator" cppkw
|
||||
"private" cppkw
|
||||
"protected" cppkw
|
||||
"public" cppkw
|
||||
"reinterpret_cast" cppkw
|
||||
"static_cast" cppkw
|
||||
"template" cppkw
|
||||
"this" cppkw
|
||||
"throw" cppkw
|
||||
"true" cppkw
|
||||
"try" cppkw
|
||||
"typeid" cppkw
|
||||
"typename" cppkw
|
||||
"using" cppkw
|
||||
"virtual" cppkw
|
||||
"wchar_t" type
|
||||
# Non-Standard
|
||||
"typeof" cppkw
|
||||
done
|
||||
"\c" ident
|
||||
|
||||
:type Type
|
||||
* idle noeat
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:cppkw CppKeyword
|
||||
* idle noeat
|
||||
|
||||
:label Label
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:stmt Statement
|
||||
* idle noeat
|
||||
|
||||
:storage StorageClass
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:struct Structure
|
||||
* idle noeat
|
||||
1497
joe/usr/share/joe/syntax/clojure.jsf
Normal file
1497
joe/usr/share/joe/syntax/clojure.jsf
Normal file
File diff suppressed because it is too large
Load diff
697
joe/usr/share/joe/syntax/cobol.jsf
Normal file
697
joe/usr/share/joe/syntax/cobol.jsf
Normal file
|
|
@ -0,0 +1,697 @@
|
|||
# JOE syntax highlight file for COBOL
|
||||
|
||||
=Idle
|
||||
=Bad
|
||||
=Preproc
|
||||
=Define +Preproc
|
||||
=Comment
|
||||
=IncLocal +String +Preproc
|
||||
=IncSystem +Preproc
|
||||
=Constant
|
||||
=String +Constant
|
||||
=Number +Constant
|
||||
=Boolean +Constant
|
||||
=Character +String
|
||||
=Escape
|
||||
=StringEscape +Escape
|
||||
=CharacterEscape +StringEscape
|
||||
=Type
|
||||
=Keyword
|
||||
=Operator +Keyword
|
||||
=Statement +Keyword
|
||||
=Conditional +Statement
|
||||
=Loop +Statement
|
||||
=Ident
|
||||
|
||||
:reset Idle
|
||||
* idle noeat
|
||||
"*" line_comment recolor=-1
|
||||
" \t" reset
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" reset
|
||||
|
||||
# All following states are for when we're not in a preprocessor line
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\n" reset
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"a-zA-Z_" ident buffer
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"xX" hex
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* idle noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* idle noeat
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:decimal Number
|
||||
* idle noeat
|
||||
"0-9" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" idle
|
||||
"\\" string_escape recolor=-1
|
||||
"%" string_control recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"x" string_hex1
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
:string_hex1 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_hex2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:string_control StringEscape string
|
||||
* string_control
|
||||
"\n" reset
|
||||
"diouxXeEfFgGaAcspn%SC" string
|
||||
|
||||
:char Character string
|
||||
* char
|
||||
"\n" reset
|
||||
"'" idle
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape CharacterEscape string
|
||||
* char
|
||||
"x" char_hex1
|
||||
"0-7" char_octal2
|
||||
"\n" char recolor=-2
|
||||
|
||||
:char_hex1 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex2
|
||||
|
||||
:char_hex2 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char
|
||||
|
||||
:char_octal2 CharacterEscape string
|
||||
* char noeat
|
||||
"0-7" char_octal3
|
||||
|
||||
:char_octal3 CharacterEscape string
|
||||
* char noeat
|
||||
"0-7" char
|
||||
|
||||
:ident Ident
|
||||
* idle noeat istrings
|
||||
"accept" kw
|
||||
"access" kw
|
||||
"add" kw
|
||||
"address" kw
|
||||
"advancing" kw
|
||||
"after" kw
|
||||
"all" kw
|
||||
"allowing" kw
|
||||
"alphabet" kw
|
||||
"alphabetic" kw
|
||||
"alphabetic-lower" kw
|
||||
"alphabetic-upper" kw
|
||||
"alphanumeric" kw
|
||||
"alphanumeric-edited" kw
|
||||
"also" kw
|
||||
"alter" kw
|
||||
"alternate" kw
|
||||
"and" oper
|
||||
"any" kw
|
||||
"apply" kw
|
||||
"are" kw
|
||||
"area" kw
|
||||
"areas" kw
|
||||
"arithmetic" kw
|
||||
"ascending" kw
|
||||
"assign" kw
|
||||
"at" kw
|
||||
"author" kw
|
||||
"automatic" kw
|
||||
"b-and" oper
|
||||
"b-exor" oper
|
||||
"b-less" oper
|
||||
"b-not" oper
|
||||
"b-or" oper
|
||||
"basis" kw
|
||||
"before" kw
|
||||
"beginning" kw
|
||||
"binary" kw
|
||||
"bit" kw
|
||||
"bits" kw
|
||||
"blank" kw
|
||||
"block" kw
|
||||
"boolean" kw
|
||||
"bottom" kw
|
||||
"by" kw
|
||||
"call" kw
|
||||
"cancel" kw
|
||||
"cbl" kw
|
||||
"cd" kw
|
||||
"cf" kw
|
||||
"ch" kw
|
||||
"character" kw
|
||||
"characters" kw
|
||||
"class" kw
|
||||
"class-id" kw
|
||||
"clock-units" kw
|
||||
"close" kw
|
||||
"cobol" kw
|
||||
"code" kw
|
||||
"code-set" kw
|
||||
"collating" kw
|
||||
"column" kw
|
||||
"com-reg" kw
|
||||
"comma" kw
|
||||
"commit" kw
|
||||
"common" kw
|
||||
"communication" kw
|
||||
"comp" kw
|
||||
"comp-1" kw
|
||||
"comp-2" kw
|
||||
"comp-3" kw
|
||||
"comp-4" kw
|
||||
"comp-5" kw
|
||||
"comp-6" kw
|
||||
"comp-7" kw
|
||||
"comp-8" kw
|
||||
"comp-9" kw
|
||||
"computational" kw
|
||||
"computational-1" kw
|
||||
"computational-2" kw
|
||||
"computational-3" kw
|
||||
"computational-4" kw
|
||||
"computational-5" kw
|
||||
"computational-6" kw
|
||||
"computational-7" kw
|
||||
"computational-8" kw
|
||||
"computational-9" kw
|
||||
"compute" kw
|
||||
"configuration" kw
|
||||
"connect" kw
|
||||
"contained" kw
|
||||
"contains" kw
|
||||
"content" kw
|
||||
"continue" kw
|
||||
"control" kw
|
||||
"controls" kw
|
||||
"converting" kw
|
||||
"copy" kw
|
||||
"corr" kw
|
||||
"corresponding" kw
|
||||
"count" kw
|
||||
"currency" kw
|
||||
"current" kw
|
||||
"cycle" kw
|
||||
"data" kw
|
||||
"date" kw
|
||||
"date-compiled" kw
|
||||
"date-written" kw
|
||||
"day" kw
|
||||
"day-of-week" kw
|
||||
"db" kw
|
||||
"db-access-control-key" kw
|
||||
"db-data-name" kw
|
||||
"db-exception" kw
|
||||
"db-record-name" kw
|
||||
"db-set-name" kw
|
||||
"db-status" kw
|
||||
"dbcs" kw
|
||||
"de" kw
|
||||
"debug-contents" kw
|
||||
"debug-item" kw
|
||||
"debug-line" kw
|
||||
"debug-name" kw
|
||||
"debug-sub-1" kw
|
||||
"debug-sub-2" kw
|
||||
"debug-sub-3" kw
|
||||
"debugging" kw
|
||||
"decimal-point" kw
|
||||
"declaratives" kw
|
||||
"default" kw
|
||||
"delete" kw
|
||||
"delimited" kw
|
||||
"delimiter" kw
|
||||
"depending" kw
|
||||
"descending" kw
|
||||
"destination" kw
|
||||
"detail" kw
|
||||
"disable" kw
|
||||
"disconnect" kw
|
||||
"display" kw
|
||||
"display-1" kw
|
||||
"display-2" kw
|
||||
"display-3" kw
|
||||
"display-4" kw
|
||||
"display-5" kw
|
||||
"display-6" kw
|
||||
"display-7" kw
|
||||
"display-8" kw
|
||||
"display-9" kw
|
||||
"divide" kw
|
||||
"division" kw
|
||||
"down" kw
|
||||
"duplicate" kw
|
||||
"duplicates" kw
|
||||
"dynamic" kw
|
||||
"egcs" kw
|
||||
"egi" kw
|
||||
"eject" kw
|
||||
"else" cond
|
||||
"emi" kw
|
||||
"empty" kw
|
||||
"enable" kw
|
||||
"end" kw
|
||||
"end-add" kw
|
||||
"end-call" kw
|
||||
"end-compute" kw
|
||||
"end-delete" kw
|
||||
"end-disable" kw
|
||||
"end-divide" kw
|
||||
"end-enable" kw
|
||||
"end-evaluate" kw
|
||||
"end-if" cond
|
||||
"end-invoke" kw
|
||||
"end-multiply" kw
|
||||
"end-of-page" kw
|
||||
"end-perform" kw
|
||||
"end-read" kw
|
||||
"end-receive" kw
|
||||
"end-return" kw
|
||||
"end-rewrite" kw
|
||||
"end-search" kw
|
||||
"end-send" kw
|
||||
"end-start" kw
|
||||
"end-string" kw
|
||||
"end-subtract" kw
|
||||
"end-transceive" kw
|
||||
"end-unstring" kw
|
||||
"end-write" kw
|
||||
"ending" kw
|
||||
"enter" kw
|
||||
"entry" kw
|
||||
"environment" kw
|
||||
"eop" kw
|
||||
"equal" oper
|
||||
"equals" kw
|
||||
"erase" kw
|
||||
"error" kw
|
||||
"esi" kw
|
||||
"evaluate" kw
|
||||
"every" kw
|
||||
"exact" kw
|
||||
"exceeds" kw
|
||||
"exception" kw
|
||||
"exclusive" kw
|
||||
"exit" kw
|
||||
"extend" kw
|
||||
"external" kw
|
||||
"false" bool
|
||||
"fd" kw
|
||||
"fetch" kw
|
||||
"file" kw
|
||||
"file-control" kw
|
||||
"filler" kw
|
||||
"final" kw
|
||||
"find" kw
|
||||
"finish" kw
|
||||
"first" kw
|
||||
"footing" kw
|
||||
"for" kw
|
||||
"form" kw
|
||||
"format" kw
|
||||
"free" kw
|
||||
"from" kw
|
||||
"function" kw
|
||||
"generate" kw
|
||||
"get" kw
|
||||
"giving" kw
|
||||
"global" kw
|
||||
"go" kw
|
||||
"goback" kw
|
||||
"greater" oper
|
||||
"group" kw
|
||||
"heading" kw
|
||||
"high-value" const
|
||||
"high-values" const
|
||||
"i-o" kw
|
||||
"i-o-control" kw
|
||||
"id" kw
|
||||
"identification" kw
|
||||
"if" cond
|
||||
"in" oper
|
||||
"index" kw
|
||||
"index-1" kw
|
||||
"index-2" kw
|
||||
"index-3" kw
|
||||
"index-4" kw
|
||||
"index-5" kw
|
||||
"index-6" kw
|
||||
"index-7" kw
|
||||
"index-8" kw
|
||||
"index-9" kw
|
||||
"indexed" kw
|
||||
"indicate" kw
|
||||
"inherits" kw
|
||||
"initial" kw
|
||||
"initialize" kw
|
||||
"initiate" kw
|
||||
"input" kw
|
||||
"input-output" kw
|
||||
"insert" kw
|
||||
"inspect" kw
|
||||
"installation" kw
|
||||
"into" kw
|
||||
"invalid" kw
|
||||
"invoke" kw
|
||||
"is" oper
|
||||
"just" kw
|
||||
"justified" kw
|
||||
"kanji" kw
|
||||
"keep" kw
|
||||
"key" kw
|
||||
"label" kw
|
||||
"last" kw
|
||||
"ld" kw
|
||||
"leading" kw
|
||||
"left" kw
|
||||
"length" kw
|
||||
"less" oper
|
||||
"limit" kw
|
||||
"limits" kw
|
||||
"linage" kw
|
||||
"linage-counter" kw
|
||||
"line" kw
|
||||
"line-counter" kw
|
||||
"lines" kw
|
||||
"linkage" kw
|
||||
"locally" kw
|
||||
"local-storage" kw
|
||||
"lock" kw
|
||||
"low-value" const
|
||||
"low-values" const
|
||||
"member" kw
|
||||
"memory" kw
|
||||
"merge" kw
|
||||
"message" kw
|
||||
"metaclass" kw
|
||||
"method" kw
|
||||
"method-id" kw
|
||||
"mode" kw
|
||||
"modify" kw
|
||||
"modules" kw
|
||||
"more-labels" kw
|
||||
"move" kw
|
||||
"multiple" kw
|
||||
"multiply" kw
|
||||
"native" kw
|
||||
"negative" kw
|
||||
"next" kw
|
||||
"no" kw
|
||||
"normal" kw
|
||||
"not" oper
|
||||
"null" const
|
||||
"nulls" const
|
||||
"number" kw
|
||||
"numeric" kw
|
||||
"numeric-edited" kw
|
||||
"object" kw
|
||||
"object-computer" kw
|
||||
"occurs" kw
|
||||
"of" kw
|
||||
"off" kw
|
||||
"omitted" kw
|
||||
"on" kw
|
||||
"only" kw
|
||||
"open" kw
|
||||
"optional" kw
|
||||
"or" oper
|
||||
"order" kw
|
||||
"organization" kw
|
||||
"other" kw
|
||||
"output" kw
|
||||
"overflow" kw
|
||||
"override" kw
|
||||
"owner" kw
|
||||
"packed-decimal" kw
|
||||
"padding" kw
|
||||
"page" kw
|
||||
"page-counter" kw
|
||||
"paragraph" kw
|
||||
"password" kw
|
||||
"perform" kw
|
||||
"pf" kw
|
||||
"ph" kw
|
||||
"pic" kw
|
||||
"picture" kw
|
||||
"plus" kw
|
||||
"pointer" kw
|
||||
"position" kw
|
||||
"positive" kw
|
||||
"present" kw
|
||||
"previous" kw
|
||||
"printing" kw
|
||||
"prior" kw
|
||||
"procedure" kw
|
||||
"procedure-pointer" kw
|
||||
"procedures" kw
|
||||
"proceed" kw
|
||||
"processing" kw
|
||||
"program" kw
|
||||
"program-id" kw
|
||||
"protected" kw
|
||||
"purge" kw
|
||||
"queue" kw
|
||||
"quote" const
|
||||
"quotes" const
|
||||
"random" kw
|
||||
"rd" kw
|
||||
"read" kw
|
||||
"ready" kw
|
||||
"realm" kw
|
||||
"receive" kw
|
||||
"reconnect" kw
|
||||
"record" kw
|
||||
"record-name" kw
|
||||
"recording" kw
|
||||
"records" kw
|
||||
"recursive" kw
|
||||
"redefines" kw
|
||||
"reel" kw
|
||||
"reference" kw
|
||||
"references" kw
|
||||
"relation" kw
|
||||
"relative" kw
|
||||
"release" kw
|
||||
"reload" kw
|
||||
"remainder" kw
|
||||
"removal" kw
|
||||
"renames" kw
|
||||
"repeated" kw
|
||||
"replace" kw
|
||||
"replacing" kw
|
||||
"report" kw
|
||||
"reporting" kw
|
||||
"reports" kw
|
||||
"repository" kw
|
||||
"rerun" kw
|
||||
"reserve" kw
|
||||
"reset" kw
|
||||
"retaining" kw
|
||||
"retrieval" kw
|
||||
"return" kw
|
||||
"return-code" kw
|
||||
"returning" kw
|
||||
"reversed" kw
|
||||
"rewind" kw
|
||||
"rewrite" kw
|
||||
"rf" kw
|
||||
"rh" kw
|
||||
"right" kw
|
||||
"rollback" kw
|
||||
"rounded" kw
|
||||
"run" kw
|
||||
"same" kw
|
||||
"sd" kw
|
||||
"search" kw
|
||||
"section" kw
|
||||
"security" kw
|
||||
"segment" kw
|
||||
"segment-limit" kw
|
||||
"select" kw
|
||||
"self" kw
|
||||
"send" kw
|
||||
"sentence" kw
|
||||
"separate" kw
|
||||
"sequence" kw
|
||||
"sequential" kw
|
||||
"service" kw
|
||||
"session-id" kw
|
||||
"set" kw
|
||||
"shared" kw
|
||||
"shift-in" kw
|
||||
"shift-out" kw
|
||||
"sign" kw
|
||||
"size" kw
|
||||
"skip1" kw
|
||||
"skip2" kw
|
||||
"skip3" kw
|
||||
"sort" kw
|
||||
"sort-control" kw
|
||||
"sort-core-size" kw
|
||||
"sort-file-size" kw
|
||||
"sort-merge" kw
|
||||
"sort-message" kw
|
||||
"sort-mode-size" kw
|
||||
"sort-return" kw
|
||||
"source" kw
|
||||
"source-computer" kw
|
||||
"space" const
|
||||
"spaces" const
|
||||
"special-names" kw
|
||||
"standard" kw
|
||||
"standard-1" kw
|
||||
"standard-2" kw
|
||||
"standard-3" kw
|
||||
"standard-4" kw
|
||||
"start" kw
|
||||
"status" kw
|
||||
"stop" kw
|
||||
"store" kw
|
||||
"string" kw
|
||||
"sub-queue-1" kw
|
||||
"sub-queue-2" kw
|
||||
"sub-queue-3" kw
|
||||
"sub-schema" kw
|
||||
"subtract" kw
|
||||
"sum" kw
|
||||
"super" kw
|
||||
"suppress" kw
|
||||
"symbolic" kw
|
||||
"sync" kw
|
||||
"synchronized" kw
|
||||
"table" kw
|
||||
"tally" kw
|
||||
"tallying" kw
|
||||
"tape" kw
|
||||
"tenant" kw
|
||||
"terminal" kw
|
||||
"terminate" kw
|
||||
"test" kw
|
||||
"text" kw
|
||||
"than" oper
|
||||
"then" kw
|
||||
"through" kw
|
||||
"thru" loop
|
||||
"time" kw
|
||||
"timeout" kw
|
||||
"times" loop
|
||||
"title" kw
|
||||
"to" oper
|
||||
"top" kw
|
||||
"trace" kw
|
||||
"trailing" kw
|
||||
"transceive" kw
|
||||
"true" bool
|
||||
"type" kw
|
||||
"unequal" kw
|
||||
"unit" kw
|
||||
"unstring" kw
|
||||
"until" loop
|
||||
"up" kw
|
||||
"update" kw
|
||||
"upon" kw
|
||||
"usage" kw
|
||||
"usage-mode" kw
|
||||
"use" kw
|
||||
"using" kw
|
||||
"valid" kw
|
||||
"validate" kw
|
||||
"value" kw
|
||||
"values" kw
|
||||
"varying" loop
|
||||
"wait" kw
|
||||
"when" kw
|
||||
"when-compiled" kw
|
||||
"with" kw
|
||||
"within" kw
|
||||
"words" kw
|
||||
"working-storage" kw
|
||||
"write" kw
|
||||
"write-only" kw
|
||||
"zero" const
|
||||
"zeroes" const
|
||||
"zeros" const
|
||||
done
|
||||
"a-zA-Z0-9_\-" ident
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:oper Operator
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:const Constant
|
||||
* idle noeat
|
||||
|
||||
:bool Boolean
|
||||
* idle noeat
|
||||
580
joe/usr/share/joe/syntax/coffee.jsf
Normal file
580
joe/usr/share/joe/syntax/coffee.jsf
Normal file
|
|
@ -0,0 +1,580 @@
|
|||
# JOE syntax highlight file for Coffeescript
|
||||
|
||||
# node = a.b.c /\s+/ seems to be allowed, foo
|
||||
# need to recognize ... and ..
|
||||
# include - as part of number?
|
||||
|
||||
# after term: it's a regex if
|
||||
|
||||
# suppress literals after .
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=Boolean +Constant
|
||||
=String +Constant
|
||||
=Regex +String
|
||||
=Escape
|
||||
=StringEscape +Escape
|
||||
=StringVariable +StringEscape
|
||||
=RegexEscape +StringEscape
|
||||
=RegexVariable +RegexEscape
|
||||
=Keyword
|
||||
=Structure +Keyword
|
||||
=Operator +Keyword
|
||||
=Statement +Keyword
|
||||
=Loop +Statement
|
||||
=Conditional +Statement
|
||||
=Label +DefinedIdent
|
||||
=Ident
|
||||
=Bad
|
||||
|
||||
:pre_idle Idle
|
||||
* NULL noeat call=.coffee()
|
||||
|
||||
.subr coffee
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"(" idle call=.coffee(paren)
|
||||
"[" idle call=.coffee(brack)
|
||||
"{" idle call=.coffee(squiggly)
|
||||
.ifdef paren
|
||||
")" idle return
|
||||
.else
|
||||
")" stray recolor=-1
|
||||
.endif
|
||||
.ifdef brack
|
||||
"]" idle return
|
||||
.else
|
||||
"]" stray recolor=-1
|
||||
.endif
|
||||
.ifdef squiggly_str
|
||||
"}" string_end_subst noeat
|
||||
.else
|
||||
.ifdef squiggly_regex
|
||||
"}" regex_end_subst noeat
|
||||
.else
|
||||
.ifdef squiggly
|
||||
"}" idle return
|
||||
.else
|
||||
"}" stray recolor=-1
|
||||
.endif
|
||||
.endif
|
||||
.endif
|
||||
|
||||
"#" comment recolor=-1
|
||||
"0" zero recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." decimal_point recolor=-1
|
||||
"\"" maybe_string recolor=-1
|
||||
"'" maybe_char recolor=-1
|
||||
"/" slash recolor=-1
|
||||
"@$\i" ident buffer
|
||||
|
||||
:stray Bad
|
||||
* idle
|
||||
|
||||
:after_term Idle
|
||||
* idle noeat
|
||||
" \t" after_term_1
|
||||
"/" slash_after_term_0
|
||||
|
||||
# "foo/x" is division?
|
||||
# "foo/ x" is division.
|
||||
|
||||
:slash_after_term_0 Idle
|
||||
* idle noeat
|
||||
|
||||
:after_term_1 Idle
|
||||
* idle noeat
|
||||
" \t" after_term_1
|
||||
"/" slash_after_term_1
|
||||
|
||||
# "foo / x" is division
|
||||
# "foo /x" is regex
|
||||
|
||||
:slash_after_term_1 Idle
|
||||
* sregex noeat recolor=-2
|
||||
"/" slashslash
|
||||
" = " idle noeat
|
||||
|
||||
:comment Comment comment
|
||||
* line_comment noeat
|
||||
"#" maybe_block_comment
|
||||
|
||||
:maybe_block_comment Comment comment
|
||||
* line_comment noeat
|
||||
"#" maybe_block_comment_1
|
||||
|
||||
# This is weird... #### is a line comment, but ### is a block comment
|
||||
|
||||
:maybe_block_comment_1 Comment comment
|
||||
* block_comment noeat
|
||||
"#" line_comment
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:block_comment Comment comment
|
||||
* block_comment
|
||||
"BFHNTX" block_comment noeat call=comment_todo.comment_todo()
|
||||
"#" block_comment_1
|
||||
|
||||
:block_comment_1 Comment comment
|
||||
* block_comment noeat
|
||||
"#" block_comment_2
|
||||
|
||||
:block_comment_2 Comment comment
|
||||
* block_comment noeat
|
||||
"#" idle
|
||||
|
||||
# Check for regex
|
||||
|
||||
:slash Constant
|
||||
* sregex noeat recolor=-2
|
||||
"/" slashslash
|
||||
|
||||
:slashslash Constant
|
||||
* after_term noeat
|
||||
"/" regex recolor=-3
|
||||
|
||||
# Regex like this ///foo///
|
||||
|
||||
:regex Regex
|
||||
* regex
|
||||
"\\" regex_escape recolor=-1
|
||||
"#" regex_maybe_subst recolor=-1
|
||||
"/" regexslash
|
||||
|
||||
:regex_maybe_subst RegexVariable
|
||||
* regex noeat recolor=-1
|
||||
"{" regex call=.coffee(squiggly_regex)
|
||||
|
||||
:regex_end_subst RegexVariable
|
||||
* idle return
|
||||
|
||||
:regexslash Regex
|
||||
* regex noeat
|
||||
"/" regexslashslash
|
||||
|
||||
:regexslashslash Regex
|
||||
* regex noeat
|
||||
"/" after_term
|
||||
|
||||
:regex_escape RegexEscape
|
||||
* regex
|
||||
"x" regex_hex2
|
||||
"u" regex_hex4
|
||||
|
||||
:regex_uni RegexEscape
|
||||
* regex_uni
|
||||
"}" regex
|
||||
|
||||
:regex_hex4 RegexEscape
|
||||
* regex noeat
|
||||
"{" regex_uni
|
||||
"0-9a-fA-F" regex_hex3
|
||||
|
||||
:regex_hex3 RegexEscape
|
||||
* regex noeat
|
||||
"0-9a-fA-F" regex_hex2
|
||||
|
||||
:regex_hex2 RegexEscape
|
||||
* regex noeat
|
||||
"0-9a-fA-F" regex_hex1
|
||||
|
||||
:regex_hex1 RegexEscape
|
||||
* regex noeat
|
||||
"0-9a-fA-F" regex
|
||||
|
||||
# Regex like this: /foo/
|
||||
|
||||
:sregex Regex
|
||||
* sregex
|
||||
"\\" sregex_escape recolor=-1
|
||||
"#" sregex_maybe_subst recolor=-1
|
||||
"/" after_term
|
||||
|
||||
:sregex_maybe_subst RegexVariable
|
||||
* sregex noeat recolor=-1
|
||||
"{" sregex call=.coffee(squiggly_regex)
|
||||
|
||||
:sregex_escape RegexEscape
|
||||
* sregex
|
||||
"x" sregex_hex2
|
||||
"u" sregex_hex4
|
||||
|
||||
:sregex_uni RegexEscape
|
||||
* sregex_uni
|
||||
"}" sregex
|
||||
|
||||
:sregex_hex4 RegexEscape
|
||||
* sregex noeat
|
||||
"{" sregex_uni
|
||||
"0-9a-fA-F" sregex_hex3
|
||||
|
||||
:sregex_hex3 RegexEscape
|
||||
* sregex noeat
|
||||
"0-9a-fA-F" sregex_hex2
|
||||
|
||||
:sregex_hex2 RegexEscape
|
||||
* sregex noeat
|
||||
"0-9a-fA-F" sregex_hex1
|
||||
|
||||
:sregex_hex1 RegexEscape
|
||||
* sregex noeat
|
||||
"0-9a-fA-F" sregex
|
||||
|
||||
# Numbers
|
||||
|
||||
:bad_number Bad
|
||||
* after_term noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:zero Number
|
||||
* after_term noeat
|
||||
"b" binary
|
||||
"o" octal
|
||||
"x" hex
|
||||
"." maybe_float
|
||||
"eE" epart
|
||||
"0-9" decimal recolor=-1
|
||||
|
||||
:decimal_point Number
|
||||
* after_term noeat recolor=-2
|
||||
"." decimal_point_1 recolor=-2
|
||||
"\i" not_ident recolor=-2
|
||||
"0-9" float
|
||||
|
||||
:not_ident Idle
|
||||
* after_term noeat
|
||||
"\c" not_ident
|
||||
|
||||
:decimal_point_1 Number
|
||||
* idle noeat
|
||||
"." idle
|
||||
|
||||
:octal Number
|
||||
* after_term noeat
|
||||
"0-7_" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:binary Number
|
||||
* after_term noeat
|
||||
"01_" binary
|
||||
"2-9" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* after_term noeat
|
||||
"0-9A-Fa-f_" hex
|
||||
|
||||
:decimal Number
|
||||
* after_term noeat
|
||||
"0-9_" decimal
|
||||
"eE" epart
|
||||
"." maybe_float
|
||||
|
||||
:maybe_float Number
|
||||
* after_term noeat recolor=-2
|
||||
"." decimal_point_1 recolor=-2
|
||||
"eE" epart
|
||||
"0-9_" float
|
||||
|
||||
:float Number
|
||||
* after_term noeat
|
||||
"eE" epart
|
||||
"0-9_" float
|
||||
|
||||
:epart Number
|
||||
* after_term noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* after_term noeat
|
||||
"0-9_" enum
|
||||
|
||||
# strings like "hello"
|
||||
|
||||
:maybe_string String string
|
||||
* string noeat
|
||||
"\"" maybe_string_1
|
||||
|
||||
:maybe_string_1 String string
|
||||
* after_term noeat
|
||||
"\"" stringstring
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" after_term
|
||||
"#" string_maybe_subst recolor=-1
|
||||
"\\" string_escape recolor=-1
|
||||
|
||||
:string_maybe_subst StringVariable string
|
||||
* string noeat recolor=-1
|
||||
"{" string call=.coffee(squiggly_str)
|
||||
|
||||
:string_end_subst StringVariable string
|
||||
* idle return
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"x" string_hex2
|
||||
"u" string_hex4
|
||||
|
||||
:string_uni StringEscape string
|
||||
* string_uni
|
||||
"}" string
|
||||
|
||||
:string_hex4 StringEscape string
|
||||
* string noeat
|
||||
"{" string_uni
|
||||
"0-9a-fA-F" string_hex3
|
||||
|
||||
:string_hex3 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_hex2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex1
|
||||
|
||||
:string_hex1 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
# Strings like """ foo """
|
||||
|
||||
:stringstring String string
|
||||
* stringstring
|
||||
"\"" stringstring_1
|
||||
"#" stringstring_maybe_subst recolor=-1
|
||||
"\\" stringstring_escape recolor=-1
|
||||
|
||||
:stringstring_1 String string
|
||||
* stringstring noeat
|
||||
"\"" stringstring_2
|
||||
|
||||
:stringstring_2 String string
|
||||
* stringstring noeat
|
||||
"\"" after_term
|
||||
|
||||
:stringstring_maybe_subst StringVariable string
|
||||
* stringstring noeat recolor=-1
|
||||
"{" stringstring call=.coffee(squiggly_str)
|
||||
|
||||
:stringstring_escape StringEscape string
|
||||
* stringstring
|
||||
"x" stringstring_hex2
|
||||
"u" stringstring_hex4
|
||||
|
||||
:stringstring_uni StringEscape string
|
||||
* stringstring_uni
|
||||
"}" stringstring
|
||||
|
||||
:stringstring_hex4 StringEscape string
|
||||
* stringstring noeat
|
||||
"{" stringstring_uni
|
||||
"0-9a-fA-F" stringstring_hex3
|
||||
|
||||
:stringstring_hex3 StringEscape string
|
||||
* stringstring noeat
|
||||
"0-9a-fA-F" stringstring_hex2
|
||||
|
||||
:stringstring_hex2 StringEscape string
|
||||
* stringstring noeat
|
||||
"0-9a-fA-F" stringstring_hex1
|
||||
|
||||
:stringstring_hex1 StringEscape string
|
||||
* stringstring noeat
|
||||
"0-9a-fA-F" stringstring
|
||||
|
||||
# string constants like 'h'
|
||||
|
||||
:maybe_char String string
|
||||
* char noeat
|
||||
"'" maybe_char_1
|
||||
|
||||
:maybe_char_1 String string
|
||||
* after_term noeat
|
||||
"'" charchar
|
||||
|
||||
:char String string
|
||||
* char
|
||||
"'" after_term
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape StringEscape string
|
||||
* char noeat
|
||||
"x" char_hex2
|
||||
"u" char_hex4
|
||||
|
||||
:char_uni StringEscape string
|
||||
* char_uni
|
||||
"}" char_done
|
||||
|
||||
:char_hex4 StringEscape string
|
||||
* char noeat
|
||||
"{" char_uni
|
||||
"0-9a-fA-F" char_hex3
|
||||
|
||||
:char_hex3 StringEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex2
|
||||
|
||||
:char_hex2 StringEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex1
|
||||
|
||||
:char_hex1 StringEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char
|
||||
|
||||
# strings like this '''foo'''
|
||||
|
||||
:charchar String string
|
||||
* charchar
|
||||
"'" charchar_1
|
||||
"\\" charchar_escape recolor=-1
|
||||
|
||||
:charchar_1 String string
|
||||
* charchar noeat
|
||||
"'" charchar_2
|
||||
|
||||
:charchar_2 String string
|
||||
* charchar noeat
|
||||
"'" after_term
|
||||
|
||||
:charchar_escape StringEscape string
|
||||
* charchar noeat
|
||||
"x" charchar_hex2
|
||||
"u" charchar_hex4
|
||||
|
||||
:charchar_uni StringEscape string
|
||||
* charchar_uni
|
||||
"}" charchar_done
|
||||
|
||||
:charchar_hex4 StringEscape string
|
||||
* charchar noeat
|
||||
"{" charchar_uni
|
||||
"0-9a-fA-F" charchar_hex3
|
||||
|
||||
:charchar_hex3 StringEscape string
|
||||
* charchar noeat
|
||||
"0-9a-fA-F" charchar_hex2
|
||||
|
||||
:charchar_hex2 StringEscape string
|
||||
* charchar noeat
|
||||
"0-9a-fA-F" charchar_hex1
|
||||
|
||||
:charchar_hex1 StringEscape string
|
||||
* charchar noeat
|
||||
"0-9a-fA-F" charchar
|
||||
|
||||
|
||||
# Identifiers
|
||||
|
||||
:ident Ident
|
||||
* after_term noeat strings
|
||||
"and" operator
|
||||
"break" loop
|
||||
"by" kw
|
||||
"catch" kw
|
||||
"class" struct
|
||||
"continue" loop
|
||||
"delete" kw
|
||||
"debugger" stmt
|
||||
"do" loop
|
||||
"else" cond
|
||||
"extends" kw
|
||||
"false" bool
|
||||
"finally" kw
|
||||
"for" loop
|
||||
"if" cond
|
||||
"in" operator
|
||||
"instanceof" kw
|
||||
"is" operator
|
||||
"isnt" operator
|
||||
"loop" loop
|
||||
"new" kw
|
||||
"no" bool
|
||||
"not" operator
|
||||
"null" lit
|
||||
"off" bool
|
||||
"of" operator
|
||||
"on" bool
|
||||
"or" operator
|
||||
"return" stmt
|
||||
"super" kw
|
||||
"switch" cond
|
||||
"then" kw
|
||||
"this" lit
|
||||
"throw" stmt
|
||||
"true" bool
|
||||
"try" kw
|
||||
"typeof" kw
|
||||
"undefined" lit
|
||||
"unless" cond
|
||||
"until" loop
|
||||
"when" kw
|
||||
"while" loop
|
||||
"yes" lit
|
||||
"yield" stmt
|
||||
"case" label
|
||||
"default" label
|
||||
"function" forbid
|
||||
"var" forbid
|
||||
"void" forbid
|
||||
"with" forbid
|
||||
"const" forbid
|
||||
"let" forbid
|
||||
"enum" forbid
|
||||
"export" forbid
|
||||
"import" forbid
|
||||
"native" forbid
|
||||
"implements" forbid
|
||||
"interface" forbid
|
||||
"package" forbid
|
||||
"private" forbid
|
||||
"protected" forbid
|
||||
"public" forbid
|
||||
"static" forbid
|
||||
"arguments" forbid
|
||||
"eval" forbid
|
||||
done
|
||||
"$\c" ident
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:forbid Keyword
|
||||
* idle noeat
|
||||
|
||||
:lit Constant
|
||||
* after_term noeat
|
||||
|
||||
:bool Boolean
|
||||
* after_term noeat
|
||||
|
||||
:stmt Statement
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:struct Structure
|
||||
* idle noeat
|
||||
|
||||
:operator Operator
|
||||
* idle noeat
|
||||
|
||||
:label Label
|
||||
* idle noeat
|
||||
|
||||
.end
|
||||
29
joe/usr/share/joe/syntax/comment_todo.jsf
Normal file
29
joe/usr/share/joe/syntax/comment_todo.jsf
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
# JOE syntax highlight file for highlighting TODO: FIXME: XXX: etc
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
=Comment
|
||||
=TODO +Comment
|
||||
|
||||
.subr comment_todo
|
||||
# initial state
|
||||
:comment_todo_init Comment comment
|
||||
* comment_todo_guess buffer
|
||||
|
||||
# highlight common TODO labels
|
||||
:comment_todo_guess Comment comment
|
||||
* comment_todo_unknown noeat strings
|
||||
"BUG" comment_todo
|
||||
"FIXME" comment_todo
|
||||
"HACK" comment_todo
|
||||
"NOTE" comment_todo
|
||||
"TODO" comment_todo
|
||||
"XXX" comment_todo
|
||||
done
|
||||
"A-Z" comment_todo_guess
|
||||
|
||||
:comment_todo_unknown Comment comment
|
||||
* NULL noeat return
|
||||
|
||||
:comment_todo TODO comment
|
||||
* NULL noeat return
|
||||
.end
|
||||
86
joe/usr/share/joe/syntax/conf.jsf
Normal file
86
joe/usr/share/joe/syntax/conf.jsf
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
# JOE syntax highlight file for typical UNIX configuration files
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=String +Constant
|
||||
=Escape
|
||||
=StringEscape +Escape
|
||||
=Backtick +Character +Constant +String
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"#" comment recolor=-1
|
||||
"\"" string recolor=-1
|
||||
"'" single recolor=-1
|
||||
"\`" backtick recolor=-1
|
||||
"\\" escape recolor=-1
|
||||
|
||||
:escape Escape
|
||||
* idle
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"\n" idle
|
||||
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" idle
|
||||
"\`" backtick_in_str recolor=-1
|
||||
"\\" string_escape recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"\n" string recolor=-2
|
||||
|
||||
:backtick_in_str Backtick
|
||||
* backtick_in_str
|
||||
"\`" string
|
||||
"\\" bt_escape_2 recolor=-1
|
||||
|
||||
:bt_escape_2 Escape
|
||||
* backtick_in_str
|
||||
"\n" backtick_in_str recolor=-2
|
||||
|
||||
|
||||
:single String string
|
||||
* single
|
||||
"'" idle
|
||||
"\\" single_escape recolor=-1
|
||||
|
||||
:single_escape StringEscape string
|
||||
* single
|
||||
"\n" single recolor=-2
|
||||
|
||||
|
||||
:backtick Backtick
|
||||
* backtick
|
||||
"\`" idle
|
||||
"\"" string_in_bt recolor=-1
|
||||
"'" single_in_bt recolor=-1
|
||||
"\\" bt_escape recolor=-1
|
||||
|
||||
:bt_escape Escape
|
||||
* backtick
|
||||
"\n" backtick recolor=-2
|
||||
|
||||
|
||||
:string_in_bt String string
|
||||
* string_in_bt
|
||||
"\"" backtick
|
||||
"\\" string_escape_b recolor=-1
|
||||
|
||||
:string_escape_b StringEscape string
|
||||
* string_in_bt
|
||||
"\n" string_in_bt recolor=-2
|
||||
|
||||
|
||||
:single_in_bt String string
|
||||
* single_in_bt
|
||||
"'" backtick
|
||||
"\\" single_escape_b recolor=-1
|
||||
|
||||
:single_escape_b StringEscape string
|
||||
* single_in_bt
|
||||
"\n" single_in_bt recolor=-2
|
||||
|
||||
61
joe/usr/share/joe/syntax/context.jsf
Normal file
61
joe/usr/share/joe/syntax/context.jsf
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
# Identify title lines for status line context display
|
||||
|
||||
=Idle
|
||||
=Title bold # Doesn't matter, just make it visible
|
||||
|
||||
:idle Idle
|
||||
* title_line buffer noeat recolor=-1
|
||||
"b" maybe_begin_1 buffer
|
||||
"B" maybe_BEGIN_1 buffer
|
||||
"\n" idle
|
||||
"/" maybe_comment buffer
|
||||
"-" maybe_comment_1 buffer
|
||||
";{} \t\r\f#" comment
|
||||
|
||||
:maybe_comment Idle
|
||||
* title_line noeat recolor=-1
|
||||
"/*" comment
|
||||
|
||||
:maybe_comment_1 Idle
|
||||
* title_line noeat recolor=-1
|
||||
"-" comment
|
||||
|
||||
:title_line Title
|
||||
* title_line
|
||||
"\n" idle save_s
|
||||
|
||||
:comment Idle
|
||||
* comment
|
||||
"\n" idle
|
||||
|
||||
:maybe_begin_1 Idle
|
||||
* title_line noeat recolor=-2
|
||||
"e" maybe_begin_2
|
||||
|
||||
:maybe_begin_2 Idle
|
||||
* title_line noeat recolor=-3
|
||||
"g" maybe_begin_3
|
||||
|
||||
:maybe_begin_3 Idle
|
||||
* title_line noeat recolor=-4
|
||||
"i" maybe_begin_4
|
||||
|
||||
:maybe_begin_4 Idle
|
||||
* title_line noeat recolor=-5
|
||||
"n" comment
|
||||
|
||||
:maybe_BEGIN_1 Idle
|
||||
* title_line noeat recolor=-2
|
||||
"E" maybe_BEGIN_2
|
||||
|
||||
:maybe_BEGIN_2 Idle
|
||||
* title_line noeat recolor=-3
|
||||
"G" maybe_BEGIN_3
|
||||
|
||||
:maybe_BEGIN_3 Idle
|
||||
* title_line noeat recolor=-4
|
||||
"I" maybe_BEGIN_4
|
||||
|
||||
:maybe_BEGIN_4 Idle
|
||||
* title_line noeat recolor=-5
|
||||
"N" comment
|
||||
248
joe/usr/share/joe/syntax/csh.jsf
Normal file
248
joe/usr/share/joe/syntax/csh.jsf
Normal file
|
|
@ -0,0 +1,248 @@
|
|||
# JOE syntax highlight file for csh
|
||||
|
||||
# needs work: I just copied this from sh and
|
||||
# changed the keywords.
|
||||
|
||||
# Colors
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=String +Constant
|
||||
=Escape
|
||||
=StringEscape +Escape
|
||||
=Keyword
|
||||
=Variable +DefinedIdent
|
||||
=StringVariable +StringEscape
|
||||
=Label +DefinedIdent
|
||||
=Loop +Statement +Keyword
|
||||
=Conditional +Statement +Keyword
|
||||
|
||||
# Syntax
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"#" comment recolor=-1
|
||||
"\\" escape recolor=-1
|
||||
"$" subst recolor=-1
|
||||
"'" string_sq recolor=-1
|
||||
"\"" string_dq recolor=-1
|
||||
"\`" string_bq recolor=-1
|
||||
"a-zA-Z{}![" ident buffer
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"\n" idle
|
||||
|
||||
:escape Escape
|
||||
* idle
|
||||
|
||||
:subst Variable
|
||||
* idle
|
||||
"{" subst_brack
|
||||
"a-zA-Z_" subst_name
|
||||
"0-9*@?\-$_!" idle
|
||||
|
||||
:subst_name Variable
|
||||
* idle noeat recolor=-1
|
||||
"a-zA-Z0-9_" subst_name
|
||||
|
||||
:subst_brack Variable
|
||||
* subst_brack
|
||||
"}" idle
|
||||
|
||||
# Simplest case: no quoting allowed
|
||||
:string_sq String string
|
||||
* string_sq
|
||||
"\'" idle
|
||||
|
||||
|
||||
# double-quote: quoting, backqoutes and substitution allowed
|
||||
:string_dq String string
|
||||
* string_dq
|
||||
"$" string_dq_subst recolor=-1
|
||||
"\"" idle
|
||||
"\\" string_dq_esc recolor=-1
|
||||
"`" string_dq_bq recolor=-1
|
||||
|
||||
:string_dq_subst StringEscape string
|
||||
* string_dq noeat recolor=-2
|
||||
"$0-9!_\-?*@" string_dq
|
||||
"a-zA-Z_" string_dq_subst_name
|
||||
"{" string_dq_subst_brack
|
||||
|
||||
:string_dq_subst_name StringVariable string
|
||||
* string_dq recolor=-1 noeat
|
||||
"a-zA-Z0-9_" string_dq_subst_name
|
||||
|
||||
:string_dq_subst_brack StringEscape string
|
||||
* string_dq_subst_brack
|
||||
"}" string_dq
|
||||
|
||||
:string_dq_esc StringEscape string
|
||||
* string_dq recolor=-2
|
||||
"$`\"\\" string_dq
|
||||
"\n" string_dq recolor=-2
|
||||
|
||||
:string_dq_bq String string
|
||||
* string_dq_bq
|
||||
"$" string_dq_bq_subst recolor=-1
|
||||
"\`" string_dq
|
||||
"\\" string_dq_bq_esc recolor=-1
|
||||
|
||||
:string_dq_bq_subst StringEscape string
|
||||
* string_dq_bq noeat recolor=-2
|
||||
"$0-9!_\-?*@" string_dq_bq
|
||||
"a-zA-Z_" string_dq_bq_subst_name
|
||||
"{" string_dq_bq_subst_brack
|
||||
|
||||
:string_dq_bq_subst_name StringVariable string
|
||||
* string_dq_bq recolor=-1 noeat
|
||||
"a-zA-Z0-9_" string_dq_bq_subst_name
|
||||
|
||||
:string_dq_bq_subst_brack StringEscape string
|
||||
* string_dq_bq_subst_brack
|
||||
"}" string_dq_bq
|
||||
|
||||
:string_dq_bq_esc StringEscape string
|
||||
* string_dq_bq recolor=-2
|
||||
"$`\"\\" string_dq_bq
|
||||
"\n" string_dq_bq recolor=-2
|
||||
|
||||
|
||||
# backquote
|
||||
:string_bq String string
|
||||
* string_bq
|
||||
"$" string_bq_subst recolor=-1
|
||||
"\`" idle
|
||||
"\\" string_bq_esc recolor=-1
|
||||
|
||||
# escape in backquote
|
||||
:string_bq_esc StringEscape string
|
||||
* string_bq recolor=-2
|
||||
"$`\"\\" string_bq
|
||||
"\n" string_bq recolor=-2
|
||||
|
||||
# Substitution in a backquote
|
||||
:string_bq_subst StringEscape string
|
||||
* string_bq noeat recolor=-2
|
||||
"$0-9!_\-?*@" string_bq
|
||||
"a-zA-Z_" string_bq_subst_name
|
||||
"{" string_bq_subst_brack
|
||||
|
||||
:string_bq_subst_name StringVariable string
|
||||
* string_bq recolor=-1 noeat
|
||||
"a-zA-Z0-9_" string_bq_subst_name
|
||||
|
||||
:string_bq_subst_brack StringEscape string
|
||||
* string_bq_subst_brack
|
||||
"}" string_bq
|
||||
|
||||
|
||||
:ident Ident
|
||||
* idle noeat strings
|
||||
"!" kw
|
||||
"{" kw
|
||||
"}" kw
|
||||
"[" kw
|
||||
"]" kw
|
||||
"alias" kw
|
||||
"alloc" kw
|
||||
"bg" kw
|
||||
"bindkey" kw
|
||||
"break" loop
|
||||
"breaksw" kw
|
||||
"builtins" kw
|
||||
"bye" kw
|
||||
"case" label
|
||||
"cd" kw
|
||||
"chdir" kw
|
||||
"complete" kw
|
||||
"continue" loop
|
||||
"default" label
|
||||
"dirs" kw
|
||||
"echo" kw
|
||||
"echotc" kw
|
||||
"else" cond
|
||||
"end" kw
|
||||
"endif" cond
|
||||
"endsw" kw
|
||||
"eval" kw
|
||||
"exec" kw
|
||||
"exit" kw
|
||||
"fg" kw
|
||||
"filetest" kw
|
||||
"foreach" loop
|
||||
"getspath" kw
|
||||
"getxvers" kw
|
||||
"glob" kw
|
||||
"goto" kw
|
||||
"hashstat" kw
|
||||
"history" kw
|
||||
"hup" kw
|
||||
"if" cond
|
||||
"inlib" kw
|
||||
"jobs" kw
|
||||
"kill" kw
|
||||
"limit" kw
|
||||
"log" kw
|
||||
"login" kw
|
||||
"logout" kw
|
||||
"ls-F" kw
|
||||
"migrate" kw
|
||||
"newgrp" kw
|
||||
"nice" kw
|
||||
"nohup" kw
|
||||
"notify" kw
|
||||
"onintr" kw
|
||||
"popd" kw
|
||||
"printenv" kw
|
||||
"pushd" kw
|
||||
"rehash" kw
|
||||
"repeat" kw
|
||||
"rootnode" kw
|
||||
"sched" kw
|
||||
"set" kw
|
||||
"setenv" kw
|
||||
"setpath" kw
|
||||
"setspath" kw
|
||||
"settc" kw
|
||||
"setty" kw
|
||||
"setxvers" kw
|
||||
"shift" kw
|
||||
"source" kw
|
||||
"stop" kw
|
||||
"suspend" kw
|
||||
"switch" cond
|
||||
"case" label
|
||||
"telltc" kw
|
||||
"time" kw
|
||||
"umask" kw
|
||||
"unalias" kw
|
||||
"uncomplete" kw
|
||||
"unhash" kw
|
||||
"universe" kw
|
||||
"unlimit" kw
|
||||
"unset" kw
|
||||
"unsetenv" kw
|
||||
"ver" kw
|
||||
"wait" kw
|
||||
"warp" kw
|
||||
"watchdog" kw
|
||||
"where" kw
|
||||
"which" kw
|
||||
"while" loop
|
||||
done
|
||||
"a-zA-Z0-9\-" ident
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:label Label
|
||||
* idle noeat
|
||||
506
joe/usr/share/joe/syntax/csharp.jsf
Normal file
506
joe/usr/share/joe/syntax/csharp.jsf
Normal file
|
|
@ -0,0 +1,506 @@
|
|||
# JOE syntax highlight file for C#
|
||||
# Based on Java highlighter
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Preproc
|
||||
=Precondit +Preproc
|
||||
=Define +Preproc
|
||||
=DefinedIdent +Ident
|
||||
=Comment
|
||||
=DocComment +Comment
|
||||
=Constant
|
||||
=String +Constant
|
||||
=Character +Constant +String
|
||||
=Number +Constant
|
||||
=Boolean +Constant
|
||||
=Escape
|
||||
=StringEscape +Escape
|
||||
=CharacterEscape +Escape
|
||||
=Type
|
||||
=Structure +Keyword
|
||||
=StorageClass +Type +Keyword
|
||||
=Modifier +StorageClass
|
||||
=Keyword
|
||||
=Operator +Keyword
|
||||
=Statement +Keyword
|
||||
=Loop +Statement
|
||||
=Conditional +Statement
|
||||
=Label +DefinedIdent
|
||||
=Bad
|
||||
=Brace
|
||||
=Control
|
||||
|
||||
:begin Idle
|
||||
* begin noeat call=.csharp()
|
||||
|
||||
.subr csharp
|
||||
|
||||
:reset Idle
|
||||
* first noeat
|
||||
" \t" reset
|
||||
|
||||
:first Idle
|
||||
* idle noeat
|
||||
"#" pre mark
|
||||
|
||||
:pre Preproc
|
||||
* pre noeat
|
||||
"a-zA-Z" preident recolor=-1 buffer
|
||||
" \t" pre
|
||||
"\n" reset
|
||||
|
||||
:preident Preproc
|
||||
* preunknown markend recolormark strings
|
||||
"if" precondit markend recolormark
|
||||
"else" precondit markend recolormark
|
||||
"elif" precondit markend recolormark
|
||||
"endif" precondit markend recolormark
|
||||
"region" preregion markend recolormark
|
||||
"endregion" preregion markend recolormark
|
||||
"define" predefine markend recolormark
|
||||
"undef" predefine markend recolormark
|
||||
"warning" preregion markend recolormark
|
||||
"error" preregion markend recolormark
|
||||
"line" prebody markend recolormark
|
||||
done
|
||||
"a-z" preident
|
||||
|
||||
:prebody Preproc
|
||||
* prebody
|
||||
"\n" reset
|
||||
|
||||
:precondit Precondit
|
||||
* precondit
|
||||
"\n" reset
|
||||
|
||||
:preregion Preproc
|
||||
* preregion_text
|
||||
"\n" reset
|
||||
|
||||
:preregion_text Comment
|
||||
* preregion_text
|
||||
"\n" reset
|
||||
|
||||
:predefine Define
|
||||
* predefine_text noeat
|
||||
" \t" predefine
|
||||
"\n" reset
|
||||
|
||||
:predefine_text DefinedIdent
|
||||
* predefine_text
|
||||
" \t" predefine_value
|
||||
"\n" reset
|
||||
|
||||
:predefine_value Idle
|
||||
* predefine_value
|
||||
"\n" reset
|
||||
|
||||
:preunknown Preproc
|
||||
* preunknown
|
||||
"\n" reset
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\n" reset
|
||||
"/" slash
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"@" forcedliteral recolor=-1
|
||||
"'" char recolor=-1
|
||||
"\i" ident buffer
|
||||
"{}" brace recolor=-1
|
||||
",:;=()><[]*&|!~+\-%^" control recolor=-1
|
||||
|
||||
:maybe_done Control
|
||||
* idle noeat
|
||||
"/" idle noeat return recolor=-2
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:control Control
|
||||
* idle noeat
|
||||
|
||||
:forcedliteral Ident
|
||||
* idle noeat
|
||||
"\i" ident recolor=-2
|
||||
"\"" forcedstring recolor=-2
|
||||
|
||||
:forcedstring String string
|
||||
* forcedstring
|
||||
"\"" forcedstringquot
|
||||
|
||||
:forcedstringquot String string
|
||||
* idle noeat
|
||||
"\"" forcedstring # @"This -> "" <- is a literal quote"
|
||||
|
||||
:slash Idle
|
||||
* idle noeat
|
||||
"*" comment recolor=-2
|
||||
"/" maybe_line_comment recolor=-2
|
||||
|
||||
:comment Comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"*" maybe_end_comment
|
||||
|
||||
:maybe_end_comment Comment
|
||||
* comment
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:maybe_line_comment Comment
|
||||
* line_comment noeat recolor=-1
|
||||
"/" doc_comment recolor=-3
|
||||
|
||||
:line_comment Comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" reset
|
||||
|
||||
:doc_comment DocComment
|
||||
* doc_comment
|
||||
"BFHNTX" doc_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" reset
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"xX" hex
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* idle noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* idle noeat
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:decimal Number
|
||||
* idle noeat
|
||||
"0-9" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" idle
|
||||
"\\" string_escape recolor=-1
|
||||
"{" maybe_string_control recolor=-1
|
||||
"}" maybe_control_end recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"xu" string_hex_4 # Yes, \x has up to 4 numbers in C#
|
||||
"U" string_hex_8
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
# Eight all-purpose (hex/unicode short/unicode long) states for hexadecimal
|
||||
# escape sequences
|
||||
|
||||
:string_hex_8 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex_7
|
||||
|
||||
:string_hex_7 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex_6
|
||||
|
||||
:string_hex_6 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex_5
|
||||
|
||||
:string_hex_5 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex_4
|
||||
|
||||
:string_hex_4 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex_3
|
||||
|
||||
:string_hex_3 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex_2
|
||||
|
||||
:string_hex_2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex_1
|
||||
|
||||
:string_hex_1 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:maybe_string_control StringEscape string
|
||||
* string noeat recolor=-2
|
||||
"0-9" string_control
|
||||
"{" string
|
||||
|
||||
:string_control StringEscape string
|
||||
* string_control
|
||||
"\"" string noeat
|
||||
"}" string
|
||||
|
||||
:maybe_control_end StringEscape string
|
||||
* string noeat recolor=-2
|
||||
"}" string
|
||||
|
||||
:char Character string
|
||||
* char
|
||||
"\n" reset
|
||||
"'" idle
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape CharacterEscape string
|
||||
* char
|
||||
"xu" char_hex4
|
||||
"U" char_hex8
|
||||
"0-7" char_octal2
|
||||
"\n" char recolor=-2
|
||||
|
||||
:char_hex8 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex7
|
||||
|
||||
:char_hex7 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex6
|
||||
|
||||
:char_hex6 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex5
|
||||
|
||||
:char_hex5 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex4
|
||||
|
||||
:char_hex4 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex3
|
||||
|
||||
:char_hex3 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex2
|
||||
|
||||
:char_hex2 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex1
|
||||
|
||||
:char_hex1 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char
|
||||
|
||||
:char_octal2 CharacterEscape string
|
||||
* char noeat
|
||||
"0-7" char_octal3
|
||||
|
||||
:char_octal3 CharacterEscape string
|
||||
* char noeat
|
||||
"0-7" char
|
||||
|
||||
:ident Ident # http://msdn.microsoft.com/en-us/library/x53a06bb.aspx
|
||||
* idle noeat strings
|
||||
"abstract" modifier
|
||||
"as" operator
|
||||
"base" kw
|
||||
"break" loop
|
||||
"case" label
|
||||
"catch" stmt
|
||||
"checked" operator
|
||||
"class" struct
|
||||
"const" storage
|
||||
"continue" loop
|
||||
"default" label
|
||||
"delegate" kw
|
||||
"do" loop
|
||||
"else" cond
|
||||
"enum" struct
|
||||
"event" kw
|
||||
"explicit" kw
|
||||
"extern" modifier
|
||||
"finally" stmt
|
||||
"fixed" kw
|
||||
"for" loop
|
||||
"foreach" loop
|
||||
"goto" loop
|
||||
"if" cond
|
||||
"implicit" kw
|
||||
"in" operator
|
||||
"interface" struct
|
||||
"internal" modifier
|
||||
"is" operator
|
||||
"lock" stmt
|
||||
"nameof" kw
|
||||
"namespace" struct
|
||||
"new" operator
|
||||
"operator" kw
|
||||
"out" storage
|
||||
"override" storage
|
||||
"params" kw
|
||||
"private" modifier
|
||||
"protected" modifier
|
||||
"public" modifier
|
||||
"readonly" modifier
|
||||
"ref" storage
|
||||
"return" stmt
|
||||
"sealed" modifier
|
||||
"sizeof" operator
|
||||
"stackalloc" storage
|
||||
"static" modifier
|
||||
"struct" struct
|
||||
"switch" cond
|
||||
"this" kw
|
||||
"throw" stmt
|
||||
"try" stmt
|
||||
"typeof" operator
|
||||
"unchecked" operator
|
||||
"unsafe" kw
|
||||
"using" stmt
|
||||
"virtual" modifier
|
||||
"volatile" modifier
|
||||
"while" loop
|
||||
|
||||
# Types
|
||||
|
||||
"bool" type
|
||||
"Boolean" type
|
||||
"byte" type
|
||||
"Byte" type
|
||||
"char" type
|
||||
"Character" type
|
||||
"decimal" type
|
||||
"double" type
|
||||
"Double" type
|
||||
"float" type
|
||||
"Float" type
|
||||
"int" type
|
||||
"Integer" type
|
||||
"int16" type
|
||||
"Int16" type
|
||||
"int32" type
|
||||
"Int32" type
|
||||
"int64" type
|
||||
"Int64" type
|
||||
"IntPtr" type
|
||||
"long" type
|
||||
"object" type
|
||||
"Object" type
|
||||
"sbyte" type
|
||||
"short" type
|
||||
"string" type
|
||||
"String" type
|
||||
"uint" type
|
||||
"uint16" type
|
||||
"uint32" type
|
||||
"uint64" type
|
||||
"ulong" type
|
||||
"ushort" type
|
||||
"void" type
|
||||
|
||||
|
||||
# These are "contextual" keywords. Should try to do a better and
|
||||
# and find the context (most are LINQ), but it may not be possible
|
||||
# in all cases:
|
||||
|
||||
"add" kw
|
||||
"alias" kw
|
||||
"ascending" kw
|
||||
"async" kw
|
||||
"await" kw
|
||||
"descending" kw
|
||||
"dynamic" type
|
||||
"from" kw
|
||||
"get" kw
|
||||
"global" kw
|
||||
"group" kw
|
||||
"into" kw
|
||||
"join" kw
|
||||
"let" kw
|
||||
"orderby" kw
|
||||
"partial" kw
|
||||
"remove" kw
|
||||
"select" kw
|
||||
"set" kw
|
||||
"value" kw
|
||||
"var" type
|
||||
"where" kw
|
||||
"yield" kw
|
||||
|
||||
# Literals
|
||||
|
||||
"true" bool
|
||||
"false" bool
|
||||
"null" lit
|
||||
done
|
||||
"\c" ident
|
||||
|
||||
:type Type
|
||||
* idle noeat
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:stmt Statement
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:struct Structure
|
||||
* idle noeat
|
||||
|
||||
:storage StorageClass
|
||||
* idle noeat
|
||||
|
||||
:modifier Modifier
|
||||
* idle noeat
|
||||
|
||||
:bool Boolean
|
||||
* idle noeat
|
||||
|
||||
:lit Constant
|
||||
* idle noeat
|
||||
|
||||
:operator Operator
|
||||
* idle noeat
|
||||
|
||||
.end
|
||||
169
joe/usr/share/joe/syntax/css.jsf
Normal file
169
joe/usr/share/joe/syntax/css.jsf
Normal file
|
|
@ -0,0 +1,169 @@
|
|||
# JOE syntax highlight file for CSS
|
||||
# by Eric Lin
|
||||
|
||||
# Define colors
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=Escape
|
||||
=Keyword
|
||||
=Bad
|
||||
|
||||
=Class +Type
|
||||
=Id +String +DefinedIdent
|
||||
=Tag
|
||||
=HTML # TODO: Get back to this when going over html, xml, php, ant, etc
|
||||
|
||||
# from html.jsf to support <?php?>
|
||||
=TagEdge
|
||||
|
||||
:begin Idle
|
||||
* begin noeat call=.css()
|
||||
|
||||
#
|
||||
# For <style> in html
|
||||
#
|
||||
|
||||
.subr css
|
||||
|
||||
:reset HTML
|
||||
* reset
|
||||
"<" maybe_done recolor=-1
|
||||
"/" slash
|
||||
# prevent duplicate code
|
||||
"#.a-zA-Z" selector noeat
|
||||
"@" command recolor=-1
|
||||
|
||||
:maybe_done TagEdge
|
||||
* reset_html noeat
|
||||
"/" reset noeat return recolor=-2
|
||||
.ifdef php
|
||||
"?%" rtn_php call=php.php()
|
||||
.endif
|
||||
|
||||
# fix needed to produce similar output without php
|
||||
:reset_html HTML
|
||||
* reset noeat recolor=-2
|
||||
|
||||
# this state allows php and perl to recolor the ?> %> or &> properly.
|
||||
:rtn_php TagEdge
|
||||
* reset noeat
|
||||
|
||||
:slash Idle
|
||||
* reset noeat
|
||||
"*" comment recolor=-2
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"*" maybe_end_comment
|
||||
|
||||
:maybe_end_comment Comment comment
|
||||
* comment
|
||||
"/" reset
|
||||
"*" maybe_end_comment
|
||||
|
||||
:command Idle
|
||||
* command
|
||||
";" reset
|
||||
"{" command_block
|
||||
|
||||
:command_block Idle
|
||||
* command_block
|
||||
"}" reset
|
||||
|
||||
# CSS selectors
|
||||
:selector Idle
|
||||
* selector
|
||||
"#" id_sel recolor=-1
|
||||
"." class_sel recolor=-1
|
||||
"a-zA-Z" tag_sel recolor=-1
|
||||
":" pseudo_class_sel recolor=-1
|
||||
"{" style_block recolor=-1
|
||||
|
||||
:id_sel Id
|
||||
* selector noeat
|
||||
"a-zA-Z0-9_-" id_sel
|
||||
|
||||
:class_sel Class
|
||||
* selector noeat
|
||||
"a-zA-Z0-9_-" class_sel
|
||||
|
||||
:tag_sel Tag
|
||||
* selector noeat
|
||||
"a-zA-Z0-9_-" tag_sel
|
||||
"[" tag_sel_attr recolor=-1
|
||||
|
||||
:tag_sel_attr Idle
|
||||
* tag_sel_attr
|
||||
"]" selector
|
||||
|
||||
:pseudo_class_sel Idle
|
||||
* selector noeat
|
||||
"a-zA-Z0-9_-" pseudo_class_sel
|
||||
|
||||
# everything inside "{ ... }", containing many "key: value;" pairs
|
||||
:style_block Idle
|
||||
* style_block
|
||||
"}" reset
|
||||
"/" maybe_style_comment
|
||||
"a-zA-Z-" style_word recolor=-1
|
||||
|
||||
:maybe_style_comment Idle
|
||||
* style_block recolor=-1
|
||||
"*" style_comment recolor=-2
|
||||
|
||||
:style_comment Comment comment
|
||||
* style_comment
|
||||
"*" maybe_end_style_comment
|
||||
|
||||
:maybe_end_style_comment Comment comment
|
||||
* comment
|
||||
"/" style_block
|
||||
"*" maybe_end_style_comment
|
||||
|
||||
# property-key
|
||||
:style_word Keyword
|
||||
* style_word
|
||||
":" style_value recolor=-1
|
||||
|
||||
# property-value
|
||||
:style_value Idle
|
||||
* style_value
|
||||
";" style_block
|
||||
# treat } without previous ; like ;}
|
||||
"}" style_block noeat
|
||||
"#" color recolor=-1
|
||||
"0-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"a-zA-Z_" ident
|
||||
|
||||
:color Constant
|
||||
* style_value noeat
|
||||
"0-9a-fA-F" color
|
||||
|
||||
:decimal Number
|
||||
* style_value noeat
|
||||
"0-9" decimal
|
||||
"." float
|
||||
"a-zA-Z%" decimal_unit
|
||||
|
||||
:maybe_float Number
|
||||
* style_value noeat recolor=-2
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* style_value noeat
|
||||
"0-9" float
|
||||
"a-zA-Z%" decimal_unit
|
||||
|
||||
:decimal_unit Number
|
||||
* style_value noeat
|
||||
"a-zA-Z" decimal_unit
|
||||
|
||||
:ident Idle
|
||||
* style_value noeat
|
||||
"a-ZA-Z0-9_-" ident
|
||||
|
||||
.end
|
||||
560
joe/usr/share/joe/syntax/d.jsf
Normal file
560
joe/usr/share/joe/syntax/d.jsf
Normal file
|
|
@ -0,0 +1,560 @@
|
|||
# JOE syntax highlight file for D
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=Constant
|
||||
=String +Constant
|
||||
=Number +Constant
|
||||
=Boolean +Constant
|
||||
=Character +String
|
||||
=Escape
|
||||
=StringEscape +Escape
|
||||
=CharacterEscape +StringEscape
|
||||
=Type
|
||||
=Keyword
|
||||
=Operator +Keyword
|
||||
=Statement +Keyword
|
||||
=Conditional +Statement
|
||||
=Loop +Statement
|
||||
=Label +DefinedIdent
|
||||
=Bad
|
||||
=Brace
|
||||
=Control
|
||||
|
||||
=Methods
|
||||
|
||||
:begin Idle
|
||||
* begin noeat call=.d()
|
||||
|
||||
.subr d
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"(" idle call=.d(paren)
|
||||
"[" idle call=.d(brack)
|
||||
"{" do_brace recolor=-1 noeat
|
||||
# "{" brace recolor=-1 call=.d(squiggly)
|
||||
.ifdef paren
|
||||
")" idle return
|
||||
.else
|
||||
")" stray recolor=-1
|
||||
.endif
|
||||
.ifdef brack
|
||||
"]" idle return
|
||||
.else
|
||||
"]" stray recolor=-1
|
||||
.endif
|
||||
.ifdef squiggly
|
||||
"}" brace recolor=-1 return
|
||||
.else
|
||||
"}" stray recolor=-1
|
||||
.endif
|
||||
"\n" idle
|
||||
"/" slash
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"\i" ident mark buffer
|
||||
",:;=><*&|!~+\-%^" control recolor=-1
|
||||
"r" maybe_rstring mark buffer
|
||||
"x" maybe_xstring mark buffer
|
||||
"q" maybe_qstring recolor=-1 mark buffer
|
||||
"`" bstring recolor=-1
|
||||
|
||||
:do_brace Brace
|
||||
* idle noeat
|
||||
"{" brace call=.d(squiggly)
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:stray Bad
|
||||
* idle noeat
|
||||
|
||||
:maybe_done Control
|
||||
* idle noeat
|
||||
"/" idle noeat return recolor=-2
|
||||
|
||||
:control Control
|
||||
* idle noeat
|
||||
|
||||
:slash Idle
|
||||
* idle noeat
|
||||
"*" comment recolor=-2
|
||||
"+" idle recolor=-2 call=.block_comment()
|
||||
"/" line_comment recolor=-2
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
# might be TODO label
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"*" maybe_end_comment
|
||||
|
||||
:maybe_end_comment Comment comment
|
||||
* comment noeat
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
# might be TODO label
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:int_postfix Number
|
||||
* idle noeat
|
||||
"uU" int_postfix_1
|
||||
"L" int_postfix_2
|
||||
|
||||
:int_postfix_1 Number
|
||||
* idle noeat
|
||||
"L" idle
|
||||
|
||||
:int_postfix_2 Number
|
||||
* idle noeat
|
||||
"uU" idle
|
||||
|
||||
:float_postfix Number
|
||||
* idle noeat
|
||||
"fF" float_postfix_1
|
||||
"L" float_postfix_1
|
||||
"i" idle
|
||||
|
||||
:float_postfix_1 Number
|
||||
* idle noeat
|
||||
"i" idle
|
||||
|
||||
:first_digit Number
|
||||
* int_postfix noeat
|
||||
"xX" hex
|
||||
"bB" bin
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-9" decimal
|
||||
|
||||
:bad_number Bad
|
||||
* idle noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* int_postfix noeat
|
||||
"0-7_" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* int_postfix noeat
|
||||
"0-9A-Fa-f_" hex
|
||||
"." hexfloat
|
||||
"pP" ppart
|
||||
|
||||
:hexfloat Number
|
||||
* float_postfix noeat
|
||||
"0-9A-Fa-f_" hexfloat
|
||||
"pP" ppart
|
||||
|
||||
:ppart Number
|
||||
* float_postfix noeat
|
||||
"0-9+\-" pnum
|
||||
|
||||
:pnum Number
|
||||
* float_postfix noeat
|
||||
"0-9_" pnum
|
||||
|
||||
:decimal Number
|
||||
* int_postfix noeat
|
||||
"0-9_" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"\i" not_ident recolor=-2
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:not_ident Idle
|
||||
* idle noeat
|
||||
"\c" not_ident
|
||||
|
||||
:float Number
|
||||
* float_postfix noeat
|
||||
"eE" epart
|
||||
"0-9_" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* float_postfix noeat
|
||||
"0-9_" enum
|
||||
|
||||
:maybe_qstring Brace
|
||||
* ident recolor=-1 noeat
|
||||
"{" brace call=.d(squiggly)
|
||||
"\"" qdstring recolor=-2
|
||||
|
||||
:qdstring String string
|
||||
* qstring save_c
|
||||
"\i" qdelim buffer
|
||||
|
||||
:qdelim String string
|
||||
* qdelim_bad noeat save_s
|
||||
"\c" qdelim
|
||||
"\n" skipline noeat save_s
|
||||
|
||||
:qdelim_bad Bad
|
||||
* qdelim_bad
|
||||
"\n" skipline noeat
|
||||
|
||||
:skipline String string
|
||||
* skipline
|
||||
"\n" next_line
|
||||
|
||||
:todelim String string
|
||||
* todelim
|
||||
"\n" next_line
|
||||
"\"" next_line strings
|
||||
"&" founddelim
|
||||
done
|
||||
|
||||
:founddelim String string
|
||||
* idle noeat
|
||||
"\"" bad_line
|
||||
|
||||
:bad_line Bad
|
||||
* bad_line
|
||||
"\n" idle
|
||||
|
||||
# eat \n so it's not in string.
|
||||
:next_line String string
|
||||
* todelim buffer
|
||||
"\n" next_line
|
||||
|
||||
:qstring String string
|
||||
* qstring
|
||||
& qstring_1
|
||||
|
||||
:qstring_1 String string
|
||||
* qstring noeat
|
||||
"\"" string_postfix
|
||||
|
||||
:maybe_xstring Idle
|
||||
* ident noeat
|
||||
"\"" xstring recolor=-2
|
||||
|
||||
:xstring String string
|
||||
* bad_xstring recolor=-1
|
||||
" \t\r\n\f0-9A-Fa-f" xstring
|
||||
"\"" string_postfix
|
||||
|
||||
:bad_xstring Bad
|
||||
* xstring noeat
|
||||
|
||||
:maybe_rstring Idle
|
||||
* ident noeat
|
||||
"\"" rstring recolor=-2
|
||||
|
||||
:rstring String string
|
||||
* rstring
|
||||
"\"" string_postfix
|
||||
|
||||
:bstring String string
|
||||
* bstring
|
||||
"`" string_postfix
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" string_postfix
|
||||
"\\" string_escape recolor=-1
|
||||
"%" string_control recolor=-1
|
||||
|
||||
:string_postfix String string
|
||||
* idle noeat
|
||||
"cwd" idle
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"U" string_hex8
|
||||
"u" string_hex4
|
||||
"x" string_hex2
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
:string_hex8 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex7
|
||||
|
||||
:string_hex7 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex6
|
||||
|
||||
:string_hex6 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex5
|
||||
|
||||
:string_hex5 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex4
|
||||
|
||||
:string_hex4 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex3
|
||||
|
||||
:string_hex3 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_hex2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex1
|
||||
|
||||
:string_hex1 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal1
|
||||
|
||||
:string_octal1 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:string_control StringEscape string
|
||||
* string_control
|
||||
"\n" idle
|
||||
"\"" string noeat
|
||||
"diouxXeEfFgGaAcspn%SCM" string
|
||||
|
||||
:char Character string
|
||||
* char_done
|
||||
"'" idle
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_done Character string
|
||||
* idle noeat recolor=-3
|
||||
"\'" idle
|
||||
|
||||
:char_escape CharacterEscape string
|
||||
* char_done
|
||||
"U" char_hex8
|
||||
"u" char_hex4
|
||||
"x" char_hex2
|
||||
"0-7" char_octal2
|
||||
|
||||
:char_hex8 CharacterEscape string
|
||||
* char_done noeat
|
||||
"0-9a-fA-F" char_hex7
|
||||
|
||||
:char_hex7 CharacterEscape string
|
||||
* char_done noeat
|
||||
"0-9a-fA-F" char_hex6
|
||||
|
||||
:char_hex6 CharacterEscape string
|
||||
* char_done noeat
|
||||
"0-9a-fA-F" char_hex5
|
||||
|
||||
:char_hex5 CharacterEscape string
|
||||
* char_done noeat
|
||||
"0-9a-fA-F" char_hex4
|
||||
|
||||
:char_hex4 CharacterEscape string
|
||||
* char_done noeat
|
||||
"0-9a-fA-F" char_hex3
|
||||
|
||||
:char_hex3 CharacterEscape string
|
||||
* char_done noeat
|
||||
"0-9a-fA-F" char_hex2
|
||||
|
||||
:char_hex2 CharacterEscape string
|
||||
* char_done noeat
|
||||
"0-9a-fA-F" char_hex1
|
||||
|
||||
:char_hex1 CharacterEscape string
|
||||
* char_done noeat
|
||||
"0-9a-fA-F" char_done
|
||||
|
||||
:char_octal2 CharacterEscape string
|
||||
* char_done noeat
|
||||
"0-7" char_octal1
|
||||
|
||||
:char_octal1 CharacterEscape string
|
||||
* char_done noeat
|
||||
"0-7" char_done
|
||||
|
||||
:ident Ident
|
||||
* ident_end noeat recolormark strings
|
||||
"abstract" kw
|
||||
"alias" kw
|
||||
"align" kw
|
||||
"asm" kw
|
||||
"assert" kw
|
||||
"auto" kw
|
||||
"body" kw
|
||||
"bool" kw
|
||||
"break" kw
|
||||
"byte" kw
|
||||
"case" kw
|
||||
"cast" kw
|
||||
"catch" kw
|
||||
"cdouble" kw
|
||||
"cent" kw
|
||||
"cfloat" kw
|
||||
"char" kw
|
||||
"class" kw
|
||||
"const" kw
|
||||
"continue" kw
|
||||
"creal" kw
|
||||
"dchar" kw
|
||||
"debug" kw
|
||||
"default" kw
|
||||
"delegate" kw
|
||||
"delete" kw
|
||||
"deprecated" kw
|
||||
"do" kw
|
||||
"double" kw
|
||||
"else" kw
|
||||
"enum" kw
|
||||
"export" kw
|
||||
"extern" kw
|
||||
"false" kw
|
||||
"final" kw
|
||||
"finally" kw
|
||||
"float" kw
|
||||
"for" kw
|
||||
"foreach" kw
|
||||
"foreach_reverse" kw
|
||||
"function" kw
|
||||
"goto" kw
|
||||
"idouble" kw
|
||||
"if" kw
|
||||
"ifloat" kw
|
||||
"immutable" kw
|
||||
"import" kw
|
||||
"in" kw
|
||||
"inout" kw
|
||||
"int" kw
|
||||
"interface" kw
|
||||
"invariant" kw
|
||||
"ireal" kw
|
||||
"is" kw
|
||||
"lazy" kw
|
||||
"long" kw
|
||||
"macro" kw
|
||||
"mixin" kw
|
||||
"module" kw
|
||||
"new" kw
|
||||
"nothrow" kw
|
||||
"null" kw
|
||||
"out" kw
|
||||
"override" kw
|
||||
"package" kw
|
||||
"pragma" kw
|
||||
"private" kw
|
||||
"protected" kw
|
||||
"public" kw
|
||||
"pure" kw
|
||||
"real" kw
|
||||
"ref" kw
|
||||
"return" kw
|
||||
"scope" kw
|
||||
"shared" kw
|
||||
"short" kw
|
||||
"static" kw
|
||||
"struct" kw
|
||||
"super" kw
|
||||
"switch" kw
|
||||
"synchronized" kw
|
||||
"template" kw
|
||||
"this" kw
|
||||
"throw" kw
|
||||
"true" kw
|
||||
"try" kw
|
||||
"typedef" kw
|
||||
"typeid" kw
|
||||
"typeof" kw
|
||||
"ubyte" kw
|
||||
"ucent" kw
|
||||
"uint" kw
|
||||
"ulong" kw
|
||||
"union" kw
|
||||
"unittest" kw
|
||||
"ushort" kw
|
||||
"version" kw
|
||||
"void" kw
|
||||
"volatile" kw
|
||||
"wchar" kw
|
||||
"while" kw
|
||||
"with" kw
|
||||
"__FILE__" kw
|
||||
"__MODULE__" kw
|
||||
"__LINE__" kw
|
||||
"__FUNCTION__" kw
|
||||
"__PRETTY_FUNCTION__" kw
|
||||
"__gshared" kw
|
||||
"__traits" kw
|
||||
"__vector" kw
|
||||
"__parameters" kw
|
||||
done
|
||||
"\c" ident
|
||||
|
||||
:type Type
|
||||
* idle noeat
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:bad_kw Bad
|
||||
* idle noeat
|
||||
|
||||
:bool Boolean
|
||||
* idle noeat
|
||||
|
||||
:lit Constant
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:stmt Statement
|
||||
* idle noeat
|
||||
|
||||
:operator Operator
|
||||
* idle noeat
|
||||
|
||||
:ident_end Idle
|
||||
* idle noeat
|
||||
" " ident_end
|
||||
"(" method_end noeat recolormark
|
||||
|
||||
:method_end Methods
|
||||
* idle noeat
|
||||
|
||||
.end
|
||||
|
||||
# Recursive block comments
|
||||
|
||||
.subr block_comment
|
||||
|
||||
:idle Comment comment
|
||||
* idle
|
||||
# might be TODO label
|
||||
"BFHNTX" idle noeat call=comment_todo.comment_todo()
|
||||
"+" maybe_done
|
||||
"/" maybe_recur
|
||||
|
||||
:maybe_done Comment comment
|
||||
* idle noeat
|
||||
"/" idle return
|
||||
|
||||
:maybe_recur Comment comment
|
||||
* idle noeat
|
||||
"+" idle call=.block_comment()
|
||||
|
||||
.end
|
||||
67
joe/usr/share/joe/syntax/debian.jsf
Normal file
67
joe/usr/share/joe/syntax/debian.jsf
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
# JOE syntax highlight file for apt's sources.list
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Keyword
|
||||
=Bad
|
||||
|
||||
=URL +Constant
|
||||
|
||||
=SpacyURL +String +Constant
|
||||
=Distribution +Preproc
|
||||
=Component +DefinedIdent
|
||||
|
||||
:line_start Idle
|
||||
* line_rest noeat
|
||||
"#" line_comment recolor=-1
|
||||
"a-zA-Z" deb recolor=-1
|
||||
|
||||
:line_rest Idle
|
||||
* line_rest
|
||||
"\n" line_start
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"\n" line_start
|
||||
|
||||
:deb Keyword
|
||||
* deb
|
||||
" \t" deb_url_pre
|
||||
|
||||
# allow multiple spaces
|
||||
:deb_url_pre Idle
|
||||
* deb_url noeat
|
||||
" \t" deb_url_pre
|
||||
|
||||
:deb_url URL
|
||||
* deb_url
|
||||
"[" deb_spacy_url recolor=-1
|
||||
" \t" deb_distro_pre
|
||||
|
||||
:deb_spacy_url SpacyURL
|
||||
* deb_spacy_url
|
||||
"]" deb_url
|
||||
|
||||
# allow multiple spaces
|
||||
:deb_distro_pre Idle
|
||||
* deb_distro noeat
|
||||
" \t" deb_distro_pre
|
||||
|
||||
:deb_distro Distribution
|
||||
* deb_distro
|
||||
" \t" deb_component_pre
|
||||
|
||||
# distro is the last obligatory part,
|
||||
# components are all optional
|
||||
"\n" line_start
|
||||
|
||||
# allow multiple spaces
|
||||
:deb_component_pre Idle
|
||||
* deb_component noeat
|
||||
" \t" deb_component_pre
|
||||
|
||||
:deb_component Component
|
||||
* deb_component
|
||||
" \t" deb_component_pre
|
||||
"\n" line_start
|
||||
427
joe/usr/share/joe/syntax/diff.jsf
Normal file
427
joe/usr/share/joe/syntax/diff.jsf
Normal file
|
|
@ -0,0 +1,427 @@
|
|||
# JOE syntax highlight file for diff/patch files
|
||||
#
|
||||
# 2017-02-03 :
|
||||
#
|
||||
# Rework color definitions for color schemes
|
||||
#
|
||||
# 2007-05-11 :
|
||||
#
|
||||
# This file is just udiff.jsf, ndiff.jsf and cdiff.jsf merged together
|
||||
# into one file, to handle cases where A) it's difficult to tell what
|
||||
# type of diff might be inside the file to highlight and B) the file to
|
||||
# highlight may contain hunks of different types of diffs (unlikely).
|
||||
# Of course it can be used to replace the 3 abovementioned files
|
||||
# completely. If you want that, you need to edit ftyperc accordingly.
|
||||
#
|
||||
# Dirk Schenkewitz <Dirk.Schenkewitz (AT) gmx.de>
|
||||
|
||||
# Color definitions
|
||||
=Idle
|
||||
=Garbage +Comment
|
||||
=DiffCmd +Statement
|
||||
=File +Type
|
||||
=FileOld +File
|
||||
=FileNew +File
|
||||
=Hunk +File
|
||||
=HunkHead +Hunk
|
||||
=HunkMid +Hunk
|
||||
# Inheritances here are admittedly bizarre
|
||||
=DelLine +Escape
|
||||
=AddLine +DefinedIdent
|
||||
=ChgLine +Preproc
|
||||
=CtxLine
|
||||
|
||||
|
||||
:reset Idle
|
||||
* garbage recolor=-1
|
||||
"\n" reset
|
||||
"d" garbage buffer recolor=-1 # may be a "diff" command
|
||||
"-" udiff_o1 # may start a unified diff hunk
|
||||
"*" cdiff_o1 # may start a context diff hunk
|
||||
"0-9" ndiff_r0 mark recolor=-1 # may start a "normal" diff hunk
|
||||
|
||||
:garbage Garbage
|
||||
* garbage strings
|
||||
"diff" diff_cmd recolor=-3
|
||||
done
|
||||
"\n" reset
|
||||
|
||||
:diff_cmd DiffCmd
|
||||
* diff_cmd
|
||||
"\n" reset
|
||||
|
||||
#----------------------------------------------
|
||||
|
||||
# unified diffs:
|
||||
|
||||
:udiff_o1 Idle
|
||||
* garbage recolor=-2 buffer
|
||||
"-" udiff_o2
|
||||
|
||||
:udiff_o2 Idle
|
||||
* garbage recolor=-3 buffer
|
||||
"-" udiff_o3
|
||||
|
||||
:udiff_o3 Idle
|
||||
* garbage recolor=-4 buffer
|
||||
" " udiff_o4
|
||||
|
||||
:udiff_o4 Idle
|
||||
* udiff_oldf recolor=-5
|
||||
" " garbage recolor=-5 buffer
|
||||
|
||||
:udiff_n0 Idle
|
||||
* garbage recolor=-1 buffer
|
||||
"+" udiff_n1
|
||||
|
||||
:udiff_n1 Idle
|
||||
* garbage recolor=-2 buffer
|
||||
"+" udiff_n2
|
||||
|
||||
:udiff_n2 Idle
|
||||
* garbage recolor=-3 buffer
|
||||
"+" udiff_n3
|
||||
|
||||
:udiff_n3 Idle
|
||||
* garbage recolor=-4 buffer
|
||||
" " udiff_newf recolor=-4
|
||||
|
||||
:udiff_oldf FileOld
|
||||
* udiff_oldf
|
||||
"\n" udiff_n0
|
||||
|
||||
:udiff_newf FileNew
|
||||
* udiff_newf
|
||||
"\n" udiff_prehunk1
|
||||
|
||||
:udiff_prehunk1 Idle
|
||||
* garbage
|
||||
"@" udiff_prehunk2
|
||||
"\n" reset
|
||||
|
||||
:udiff_prehunk2 Idle
|
||||
* garbage recolor=-1
|
||||
"@" udiff_prehunk3
|
||||
"\n" reset
|
||||
|
||||
:udiff_prehunk3 Idle
|
||||
* garbage recolor=-1
|
||||
" " udiff_hunkhead recolor=-3
|
||||
"\n" reset
|
||||
|
||||
:udiff_hunkhead HunkHead
|
||||
* udiff_hunkhead
|
||||
"\n" udiff_hunkbody
|
||||
|
||||
:udiff_hunkbody Idle
|
||||
* reset noeat
|
||||
"d" garbage recolor=-1 buffer
|
||||
"-" udiff_minus1
|
||||
"+" udiff_add recolor=-1
|
||||
" " udiff_ctx recolor=-1
|
||||
"@" udiff_prehunk2
|
||||
|
||||
:udiff_minus1 Idle
|
||||
* udiff_del noeat recolor=-2
|
||||
"-" udiff_minus2
|
||||
|
||||
:udiff_minus2 Idle
|
||||
* udiff_del noeat recolor=-3
|
||||
"-" udiff_minus3
|
||||
|
||||
:udiff_minus3 Idle
|
||||
* udiff_del noeat recolor=-4
|
||||
" " udiff_minus4
|
||||
|
||||
:udiff_minus4 Idle
|
||||
* udiff_oldf recolor=-5
|
||||
"\n" udiff_hunkbody
|
||||
" " udiff_del recolor=-5
|
||||
|
||||
:udiff_del DelLine
|
||||
* udiff_del
|
||||
"\n" udiff_hunkbody
|
||||
|
||||
:udiff_add AddLine
|
||||
* udiff_add
|
||||
"\n" udiff_hunkbody
|
||||
|
||||
:udiff_ctx CtxLine
|
||||
* udiff_ctx
|
||||
"\n" udiff_hunkbody
|
||||
|
||||
#----------------------------------------------
|
||||
|
||||
# "normal" diffs:
|
||||
|
||||
:ndiff_r0 Idle
|
||||
* garbage noeat recolormark
|
||||
"0-9" ndiff_r0
|
||||
"," ndiff_r1
|
||||
"adc" ndiff_r2
|
||||
"\n" reset markend
|
||||
|
||||
:ndiff_r1 Idle
|
||||
* garbage recolormark
|
||||
"0-9" ndiff_r1
|
||||
"adc" ndiff_r2
|
||||
"\n" reset markend
|
||||
|
||||
:ndiff_r2 Idle
|
||||
* garbage noeat recolormark
|
||||
"0-9" ndiff_r2
|
||||
"," ndiff_r3
|
||||
"\n" ndiff_re noeat recolormark
|
||||
|
||||
:ndiff_r3 Idle
|
||||
* garbage noeat recolormark
|
||||
"0-9" ndiff_r3
|
||||
"\n" ndiff_re noeat recolormark
|
||||
|
||||
:ndiff_re HunkHead
|
||||
"\n" ndiff_hunk0
|
||||
|
||||
:ndiff_hunk0 HunkHead
|
||||
* reset noeat
|
||||
"<" ndiff_o1
|
||||
">" ndiff_n1
|
||||
"\\" ndiff_t1
|
||||
|
||||
|
||||
:ndiff_hunk1 HunkHead
|
||||
* reset noeat
|
||||
"<" ndiff_o1
|
||||
">" ndiff_n1
|
||||
"-" ndiff_m1 recolor=-1
|
||||
"\\" ndiff_t1
|
||||
|
||||
|
||||
:ndiff_t1 Idle
|
||||
* garbage recolor=-3
|
||||
"\n" reset
|
||||
" " ndiff_txt recolor=-3
|
||||
|
||||
:ndiff_o1 Idle
|
||||
* garbage recolor=-3
|
||||
"\n" reset
|
||||
" " ndiff_del recolor=-3
|
||||
|
||||
:ndiff_n1 Idle
|
||||
* garbage recolor=-3
|
||||
"\n" reset
|
||||
" " ndiff_add recolor=-3
|
||||
|
||||
:ndiff_txt CtxLine
|
||||
* ndiff_txt
|
||||
"\n" ndiff_hunk1
|
||||
|
||||
:ndiff_del DelLine
|
||||
* ndiff_del
|
||||
"\n" ndiff_hunk1
|
||||
|
||||
:ndiff_add AddLine
|
||||
* ndiff_add
|
||||
"\n" ndiff_hunk1
|
||||
|
||||
|
||||
:ndiff_m1 Idle
|
||||
* garbage recolor=-2
|
||||
"-" ndiff_m2
|
||||
"\n" reset recolor=-2
|
||||
|
||||
:ndiff_m2 Idle
|
||||
* garbage recolor=-3
|
||||
"-" ndiff_m3 recolor=-3
|
||||
|
||||
:ndiff_m3 HunkMid
|
||||
* garbage recolor=-4
|
||||
"\n" ndiff_hunk0
|
||||
|
||||
#----------------------------------------------
|
||||
|
||||
# context diffs:
|
||||
|
||||
:cdiff_o1 Idle
|
||||
* garbage recolor=-2 buffer
|
||||
"*" cdiff_o2
|
||||
|
||||
:cdiff_o2 Idle
|
||||
* garbage recolor=-3 buffer
|
||||
"*" cdiff_o3
|
||||
|
||||
:cdiff_o3 Idle
|
||||
* garbage recolor=-4 buffer
|
||||
" " cdiff_o4
|
||||
|
||||
:cdiff_o4 Idle
|
||||
* cdiff_oldf recolor=-5
|
||||
" " garbage recolor=-5 buffer
|
||||
|
||||
:cdiff_oldf FileOld
|
||||
* cdiff_oldf
|
||||
"\n" cdiff_n0
|
||||
|
||||
:cdiff_n0 Idle
|
||||
* garbage recolor=-1 buffer
|
||||
"-" cdiff_n1
|
||||
|
||||
:cdiff_n1 Idle
|
||||
* garbage recolor=-2 buffer
|
||||
"-" cdiff_n2
|
||||
|
||||
:cdiff_n2 Idle
|
||||
* garbage recolor=-3 buffer
|
||||
"-" cdiff_n3
|
||||
|
||||
:cdiff_n3 Idle
|
||||
* garbage recolor=-4 buffer
|
||||
" " cdiff_newf recolor=-4
|
||||
|
||||
:cdiff_newf FileNew
|
||||
* cdiff_newf
|
||||
"\n" cdiff_prehunk0
|
||||
|
||||
:cdiff_prehunk0 Idle
|
||||
* manystars buffer
|
||||
|
||||
:manystars Idle
|
||||
* garbage noeat strings
|
||||
"***************" cdiff_prehunk1
|
||||
done
|
||||
"*" manystars
|
||||
|
||||
|
||||
:cdiff_prehunk1 HunkHead
|
||||
* cdiff_ho0
|
||||
|
||||
:cdiff_ho0 Idle
|
||||
* garbage recolor=-1 buffer
|
||||
"*" cdiff_ho1
|
||||
|
||||
:cdiff_ho1 Idle
|
||||
* garbage recolor=-2 buffer
|
||||
"*" cdiff_ho2
|
||||
|
||||
:cdiff_ho2 Idle
|
||||
* garbage recolor=-3 buffer
|
||||
"*" cdiff_ho3
|
||||
|
||||
:cdiff_ho3 Idle
|
||||
* garbage recolor=-4 buffer
|
||||
" " cdiff_ho4 recolor=-4 mark
|
||||
|
||||
:cdiff_ho4 HunkHead
|
||||
* garbage recolormark buffer
|
||||
"0-9," cdiff_ho4
|
||||
" " cdiff_ho5 recolormark buffer
|
||||
"\n" reset markend
|
||||
|
||||
:cdiff_ho5 HunkHead
|
||||
* garbage recolor=-1 buffer
|
||||
"*" cdiff_ho6
|
||||
|
||||
:cdiff_ho6 Idle
|
||||
* garbage recolor=-2 buffer
|
||||
"*" cdiff_ho7
|
||||
|
||||
:cdiff_ho7 Idle
|
||||
* garbage recolor=-3 buffer
|
||||
"*" cdiff_ho8
|
||||
|
||||
:cdiff_ho8 Idle
|
||||
* garbage recolor=-4 buffer
|
||||
"*" cdiff_ho9 recolor=-4
|
||||
|
||||
:cdiff_ho9 HunkHead
|
||||
* garbage recolor=-5 buffer
|
||||
"\n" cdiff_hunk
|
||||
|
||||
|
||||
:cdiff_hn0 Idle
|
||||
* garbage recolor=-1 buffer
|
||||
"-" cdiff_hn1
|
||||
|
||||
:cdiff_hn1 Idle
|
||||
* garbage recolor=-2 buffer
|
||||
"-" cdiff_hn2
|
||||
|
||||
:cdiff_hn2 Idle
|
||||
* garbage recolor=-3 buffer
|
||||
"-" cdiff_hn3
|
||||
|
||||
:cdiff_hn3 Idle
|
||||
* garbage recolor=-4 buffer
|
||||
" " cdiff_hn4 recolor=-4 mark
|
||||
|
||||
:cdiff_hn4 HunkHead
|
||||
* garbage recolormark buffer
|
||||
"0-9," cdiff_hn4
|
||||
" " cdiff_hn5 recolormark buffer
|
||||
"\n" reset markend
|
||||
|
||||
:cdiff_hn5 HunkHead
|
||||
* garbage recolor=-1 buffer
|
||||
"-" cdiff_hn6
|
||||
|
||||
:cdiff_hn6 Idle
|
||||
* garbage recolor=-2 buffer
|
||||
"-" cdiff_hn7
|
||||
|
||||
:cdiff_hn7 Idle
|
||||
* garbage recolor=-3 buffer
|
||||
"-" cdiff_hn8
|
||||
|
||||
:cdiff_hn8 Idle
|
||||
* garbage recolor=-4 buffer
|
||||
"-" cdiff_hn9 recolor=-4
|
||||
|
||||
:cdiff_hn9 HunkHead
|
||||
* garbage recolor=-5 buffer
|
||||
"\n" cdiff_hunk
|
||||
|
||||
|
||||
|
||||
:cdiff_hunk Idle
|
||||
* garbage recolor=-1 buffer
|
||||
" " cdiff_h_c0
|
||||
"+" cdiff_h_p0
|
||||
"!" cdiff_h_x0
|
||||
"-" cdiff_h_m0
|
||||
"*" manystars buffer
|
||||
|
||||
:cdiff_h_c0 Idle
|
||||
* garbage recolor=-2 buffer
|
||||
" " cdiff_h_c1 recolor=-2
|
||||
"\n" reset
|
||||
|
||||
:cdiff_h_c1 CtxLine
|
||||
* cdiff_h_c1
|
||||
"\n" cdiff_hunk
|
||||
|
||||
:cdiff_h_p0 Idle
|
||||
* garbage recolor=-2 buffer
|
||||
" " cdiff_h_p1 recolor=-2
|
||||
"\n" reset
|
||||
|
||||
:cdiff_h_p1 AddLine
|
||||
* cdiff_h_p1
|
||||
"\n" cdiff_hunk
|
||||
|
||||
:cdiff_h_x0 Idle
|
||||
* garbage recolor=-2 buffer
|
||||
" " cdiff_h_x1 recolor=-2
|
||||
"\n" reset
|
||||
|
||||
:cdiff_h_x1 ChgLine
|
||||
* cdiff_h_x1
|
||||
"\n" cdiff_hunk
|
||||
|
||||
:cdiff_h_m0 Idle
|
||||
* garbage recolor=-2 buffer
|
||||
" " cdiff_h_m1 recolor=-2
|
||||
"-" cdiff_hn2 recolor=-2
|
||||
"\n" reset
|
||||
|
||||
:cdiff_h_m1 DelLine
|
||||
* cdiff_h_m1
|
||||
"\n" cdiff_hunk
|
||||
171
joe/usr/share/joe/syntax/dockerfile.jsf
Normal file
171
joe/usr/share/joe/syntax/dockerfile.jsf
Normal file
|
|
@ -0,0 +1,171 @@
|
|||
# Barebones Dockerfile syntax for JOE. Doesn't handle more sophisticated sh syntax.
|
||||
|
||||
=Idle
|
||||
=Command +Statement +Keyword
|
||||
=Comment
|
||||
=Constant
|
||||
=String +Constant
|
||||
=Ident
|
||||
=Escape
|
||||
=Brace
|
||||
=StringEscape +Escape
|
||||
=Variable +DefinedIdent
|
||||
|
||||
# Start of line is special
|
||||
:start Idle
|
||||
* idle
|
||||
" \t" start
|
||||
"#" comment noeat
|
||||
"A-Za-z" command buffer noeat
|
||||
"\n" start
|
||||
|
||||
# Comments between commands
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"\n" start
|
||||
|
||||
# Comments in the middle of a command
|
||||
:comment_idle Comment comment
|
||||
* comment_idle
|
||||
"\n" idle
|
||||
|
||||
# Start of line in the middle of "idle" mode (skips command recognition in case a comment
|
||||
# comes in the middle of a RUN)
|
||||
:start_idle Idle
|
||||
* idle noeat
|
||||
"#" comment_idle recolor=-1
|
||||
|
||||
# Generic middle-of-a-command
|
||||
:idle Idle
|
||||
* idle
|
||||
"$" idle recolor=-1 call=.variable()
|
||||
"\n" start
|
||||
"\\" escape recolor=-1
|
||||
|
||||
:escape Escape
|
||||
* idle recolor=-2 noeat
|
||||
"\\\"" idle
|
||||
"\r" escape
|
||||
"\n" start_idle
|
||||
|
||||
:command Idle
|
||||
* idle noeat istrings
|
||||
"FROM" from
|
||||
"MAINTAINER" string_command
|
||||
"RUN" list_command
|
||||
"CMD" list_command
|
||||
"LABEL" label
|
||||
"EXPOSE" generic_command
|
||||
"ENV" generic_command
|
||||
"ADD" list_command
|
||||
"COPY" list_command
|
||||
"ENTRYPOINT" list_command
|
||||
"VOLUME" list_command
|
||||
"USER" string_command
|
||||
"WORKDIR" string_command
|
||||
"ARG" generic_command
|
||||
"ONBUILD" generic_command
|
||||
"STOPSIGNAL" generic_command
|
||||
done
|
||||
"a-zA-Z" command
|
||||
|
||||
# EXPOSE, ENV, ARG, ONBUILD, STOPSIGNAL
|
||||
:generic_command Command
|
||||
* idle
|
||||
|
||||
# MAINTAINER, USER, WORKDIR
|
||||
:string_command Command
|
||||
* string_command_data
|
||||
|
||||
:string_command_data Constant
|
||||
* string_command_data
|
||||
"$" string_command_data recolor=-1 call=.variable()
|
||||
"\n" start
|
||||
|
||||
# FROM
|
||||
:from Command
|
||||
* from_image noeat
|
||||
|
||||
:from_image Constant
|
||||
* from_image
|
||||
":@" from_tag noeat
|
||||
"\n" start
|
||||
|
||||
:from_tag Idle
|
||||
* from_tag
|
||||
"\n" start
|
||||
|
||||
# RUN, CMD, ADD, COPY, ENTRYPOINT, VOLUME
|
||||
:list_command Command
|
||||
* idle noeat
|
||||
" \t" list_command
|
||||
"[" array noeat
|
||||
"\n" start
|
||||
|
||||
:array Idle
|
||||
* array
|
||||
"[]" bracket noeat
|
||||
"\"'" array recolor=-1 call=.string() save_c
|
||||
"\n" start
|
||||
|
||||
:comma Idle
|
||||
* array noeat
|
||||
|
||||
:bracket Brace
|
||||
"]" idle
|
||||
"[" array
|
||||
|
||||
# LABEL
|
||||
:label Command
|
||||
* label_key
|
||||
"\n" start
|
||||
|
||||
:label_key Variable
|
||||
* label_key
|
||||
"=" label_value noeat
|
||||
"\n" start
|
||||
|
||||
:label_value Constant
|
||||
* label_value
|
||||
"\"" label_value recolor=-1 call=.string() save_c
|
||||
"\n" start
|
||||
|
||||
.subr variable
|
||||
|
||||
:variable Variable
|
||||
* variable recolor=-2 return noeat
|
||||
"A-Za-z_" variable_name
|
||||
"{" variable_long
|
||||
|
||||
:variable_name Variable
|
||||
* variable_name return noeat
|
||||
"A-Za-z0-9_" variable_name
|
||||
|
||||
:variable_long Variable
|
||||
* variable_long
|
||||
& variable return noeat
|
||||
"\n" variable return noeat
|
||||
"}" variable return
|
||||
":" variable_after
|
||||
|
||||
:variable_after Idle
|
||||
* variable_after
|
||||
& variable_after return noeat
|
||||
"}" variable_long noeat
|
||||
|
||||
.end
|
||||
|
||||
.subr string
|
||||
|
||||
:string String string
|
||||
* string
|
||||
& string return
|
||||
"\n" string return noeat
|
||||
"\\" string_escape recolor=-1
|
||||
"$" string recolor=-1 call=.variable()
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
|
||||
.end
|
||||
239
joe/usr/share/joe/syntax/elixir.jsf
Normal file
239
joe/usr/share/joe/syntax/elixir.jsf
Normal file
|
|
@ -0,0 +1,239 @@
|
|||
# JOE syntax highlight file for Elixir
|
||||
|
||||
# Written by Andrey Lisin (at gmail.com)
|
||||
|
||||
# TODO
|
||||
# - test attributes and docstrings highlighting
|
||||
# - maybe highlight arithmetical operations
|
||||
# - comprehensions highlighting
|
||||
|
||||
# Changes
|
||||
# - fix atom with underscore highlighting
|
||||
# - distinct docstrings and module attributes
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=Keyword
|
||||
=Statement +Keyword
|
||||
=Conditional +Statement
|
||||
=Type
|
||||
=DefinedIdent +Ident
|
||||
=DefinedType +DefinedIdent
|
||||
=DefinedFunction +DefinedIdent
|
||||
=Operator +Keyword
|
||||
=Constant
|
||||
=Boolean +Constant
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape
|
||||
=StringVariable +StringEscape
|
||||
=Atom +Constant +DefinedIdent
|
||||
=Attribute +Define +Preproc
|
||||
=Brace +Escape
|
||||
=Bracket +Brace
|
||||
=Underscore +Keyword
|
||||
=ModAttr +Atom # key in %{key: value}
|
||||
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"#" line_comment noeat
|
||||
"A-Z" type recolor=-1
|
||||
"a-z" ident noeat
|
||||
"_" underscore recolor=-1
|
||||
"'" single_quoted recolor=-1
|
||||
"\"" double_quoted recolor=-1
|
||||
":" atom recolor=-1
|
||||
"@" modattr recolor=-1
|
||||
"[]" brack recolor=-1
|
||||
"{}" brace recolor=-1
|
||||
"|" maybe_pipe
|
||||
"\\" maybe_opt
|
||||
"-" maybe_rarrow recolor=-1
|
||||
"<" maybe_larrow recolor=-1
|
||||
"0-9" decimal recolor=-1
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:single_quoted String string
|
||||
* single_quoted
|
||||
"'" idle
|
||||
|
||||
:double_quoted String string
|
||||
* double_quoted
|
||||
"#" maybe_extrapolation
|
||||
"\"" idle
|
||||
|
||||
:maybe_extrapolation String string
|
||||
* double_quoted noeat
|
||||
"{" extrapolation recolor=-2
|
||||
|
||||
:extrapolation StringVariable string
|
||||
* extrapolation
|
||||
"}" double_quoted
|
||||
"\"" double_quoted noeat
|
||||
|
||||
:atom Atom
|
||||
* idle noeat
|
||||
"a-zA-Z0-9_" atom
|
||||
|
||||
:modattr ModAttr
|
||||
* idle
|
||||
"a-zA-Z0-9_" modattr
|
||||
" " maybe_edoc
|
||||
|
||||
:maybe_edoc Idle
|
||||
* idle
|
||||
" " maybe_edoc
|
||||
"\"" string_dq_1 recolor=-1
|
||||
|
||||
:string_dq_1 String string
|
||||
* double_quoted recolor=-1
|
||||
"\"" string_dq_2
|
||||
|
||||
:string_dq_2 Comment comment
|
||||
* idle
|
||||
"\"" docstr_dq recolor=-3
|
||||
|
||||
:docstr_dq Comment comment
|
||||
* docstr_dq
|
||||
"\"" docstr_dq_1
|
||||
|
||||
:docstr_dq_1 Comment comment
|
||||
* docstr_dq
|
||||
"\"" docstr_dq_2
|
||||
|
||||
:docstr_dq_2 Comment comment
|
||||
* docstr_dq
|
||||
"\"" idle
|
||||
|
||||
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:brack Bracket
|
||||
* idle noeat
|
||||
|
||||
:maybe_larrow Idle
|
||||
"-" arrow recolor=-2
|
||||
* idle noeat
|
||||
|
||||
:maybe_rarrow Idle
|
||||
">" arrow recolor=-2
|
||||
* idle noeat
|
||||
|
||||
:arrow Operator
|
||||
* idle noeat
|
||||
|
||||
:maybe_pipe Idle
|
||||
* idle
|
||||
">" pipe recolor=-2
|
||||
|
||||
:pipe Operator
|
||||
* idle noeat
|
||||
|
||||
:maybe_opt Idle
|
||||
* idle
|
||||
"\\" opt recolor=-2
|
||||
|
||||
:opt Keyword
|
||||
* idle noeat
|
||||
|
||||
:decimal Number
|
||||
* idle noeat
|
||||
"0-9_" decimal
|
||||
"." float
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"0-9" float
|
||||
|
||||
|
||||
|
||||
|
||||
:underscore Underscore
|
||||
* idle noeat
|
||||
"a-zA-Z0-9?_" underscore
|
||||
|
||||
|
||||
:type Type
|
||||
"a-zA-Z0-9_" type
|
||||
* idle noeat
|
||||
|
||||
:ident Ident
|
||||
* ident1 noeat buffer mark
|
||||
|
||||
:ident1 Ident
|
||||
* idle noeat strings
|
||||
"def" start_func_def
|
||||
"defp" start_func_def
|
||||
"defmodule" start_mod_def
|
||||
"defprotocol" start_def
|
||||
"defmacro" start_def
|
||||
"defmacrop" start_def
|
||||
"defdelegate" start_def
|
||||
"defexception" start_def
|
||||
"defstruct" start_def
|
||||
"defimpl" start_def
|
||||
"defcallback" start_def
|
||||
"import" start_mod_def
|
||||
"require" start_mod_def
|
||||
"test" start_def
|
||||
"use" start_mod_def
|
||||
"alias" start_mod_def
|
||||
"end" stmt
|
||||
"do" kw
|
||||
"for" loop
|
||||
"if" cond
|
||||
"else" cond
|
||||
"unless" cond
|
||||
"case" cond
|
||||
"cond" cond
|
||||
"true" bool
|
||||
"false" bool
|
||||
"fn" kw
|
||||
done
|
||||
"a-zA-Z_0-9" ident1
|
||||
":" attr noeat recolormark
|
||||
|
||||
:attr Attribute
|
||||
* idle
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:stmt Statement
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:bool Boolean
|
||||
* idle noeat
|
||||
|
||||
:start_def Statement
|
||||
* def
|
||||
|
||||
:start_mod_def Statement
|
||||
* moddef
|
||||
|
||||
:start_func_def Statement
|
||||
* funcdef
|
||||
|
||||
:def DefinedIdent
|
||||
* def
|
||||
" (" idle noeat
|
||||
|
||||
:funcdef DefinedFunction
|
||||
* funcdef
|
||||
" (" idle noeat
|
||||
|
||||
:moddef DefinedType
|
||||
* moddef
|
||||
" " idle noeat
|
||||
"\n" idle
|
||||
31
joe/usr/share/joe/syntax/erb.jsf
Normal file
31
joe/usr/share/joe/syntax/erb.jsf
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
# JOE syntax highlight file for plain ERB
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
=Idle
|
||||
=Keyword
|
||||
=Bad
|
||||
=Brace
|
||||
=ERB +Escape
|
||||
|
||||
:content Idle
|
||||
* content
|
||||
"<" maybe_erb_start
|
||||
|
||||
:maybe_erb_start Idle
|
||||
* content noeat
|
||||
"%" maybe_erb_eq recolor=-2
|
||||
|
||||
:maybe_erb_eq ERB
|
||||
* rtn_ruby noeat call=ruby.ruby(erb)
|
||||
"=" rtn_ruby call=ruby.ruby(erb)
|
||||
|
||||
:rtn_ruby ERB
|
||||
* content noeat
|
||||
|
||||
:erb ERB
|
||||
* erb
|
||||
"%" maybe_erb_end
|
||||
|
||||
:maybe_erb_end ERB
|
||||
* erb
|
||||
">" content
|
||||
506
joe/usr/share/joe/syntax/erlang.jsf
Normal file
506
joe/usr/share/joe/syntax/erlang.jsf
Normal file
|
|
@ -0,0 +1,506 @@
|
|||
# JOE syntax highlight file for Erlang
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
# with contributions from Jonas Rosling and Andrew Lisin
|
||||
|
||||
# TODO Handle type information ::
|
||||
# TODO implement subroutines for cleaner and more correct implementation.
|
||||
# TODO Probably use less colors to be less distractive.
|
||||
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=Constant
|
||||
=String +Constant
|
||||
=String_mod +StringEscape
|
||||
=String_esc +StringEscape
|
||||
=Number +Constant
|
||||
=Keyword
|
||||
=Operator +Keyword
|
||||
=Type
|
||||
=Module +Type
|
||||
=Brace +Control
|
||||
=Bracket +Control
|
||||
=Character +String +Constant
|
||||
=CharacterEscape +StringEscape +Character
|
||||
=Attribute +Preproc
|
||||
=Variable #+DefinedIdent +Ident ??
|
||||
=Record +Include +Preproc
|
||||
=Macro +Define
|
||||
=Guard +Conditional +Statement +Bif
|
||||
=Bif +DefinedFunction
|
||||
=Fun +Ident
|
||||
=Recatt
|
||||
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"A-Z_" variable noeat
|
||||
"%" line_comment noeat
|
||||
"\"" string recolor=-1
|
||||
"'" quoted_atom mark
|
||||
"0-9" decimal recolor=-1
|
||||
"[]" brack recolor=-1
|
||||
"{}" brace recolor=-1
|
||||
"-" maybe_attribute buffer
|
||||
"a-z" atom buffer mark noeat
|
||||
"#" record recolor=-1
|
||||
"$" char recolor=-1
|
||||
"?" is_macro mark
|
||||
"<|" lc buffer
|
||||
|
||||
:lc Idle
|
||||
* idle noeat strings
|
||||
"<-" kw
|
||||
"||" kw
|
||||
done
|
||||
"-<|" lc
|
||||
|
||||
:pipe Idle
|
||||
* idle noeat
|
||||
"|" kw recolormark
|
||||
|
||||
:is_macro Idle
|
||||
* macro recolormark noeat
|
||||
"a-zA-Z0-9_@" is_macro
|
||||
|
||||
:macro Macro
|
||||
* idle noeat
|
||||
|
||||
:char Character string
|
||||
* idle
|
||||
"\\" charesc
|
||||
|
||||
:charesc Character string
|
||||
* idle
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"@" is_edoc noeat buffer
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:is_edoc Comment comment
|
||||
* line_comment noeat strings
|
||||
"@clear" edoc
|
||||
"@docfile" edoc
|
||||
"@headerfle" edoc
|
||||
"@todo" edoc
|
||||
"@TODO" edoc
|
||||
"@type" edoc
|
||||
"@reference" edoc
|
||||
"@see" edoc
|
||||
"@since" edoc
|
||||
"@deprecated" edoc
|
||||
"@hidden" edoc
|
||||
"@private" edoc
|
||||
"@equiv" edoc
|
||||
"@throws" edoc
|
||||
"@author" edoc
|
||||
"@copyright" edoc
|
||||
"@version" edoc
|
||||
"@title" edoc
|
||||
"@spec" edoc
|
||||
"@doc" edoc
|
||||
"@end" edoc
|
||||
done
|
||||
"A-Za-z@" is_edoc
|
||||
|
||||
:edoc Keyword
|
||||
* line_comment noeat
|
||||
|
||||
:variable Variable
|
||||
* idle noeat
|
||||
"a-zA-Z0-9_" variable
|
||||
|
||||
:record Record
|
||||
* idle noeat
|
||||
"a-z" rec noeat
|
||||
"'" qtrec recolor=-1
|
||||
|
||||
:rec Record
|
||||
* idle noeat
|
||||
"a-zA-Z0-9_@" rec
|
||||
"." recatt recolor=-1
|
||||
|
||||
:qtrec Record
|
||||
* qtrec
|
||||
"'" rec
|
||||
|
||||
:recatt Recatt
|
||||
* idle noeat
|
||||
"a-zA-Z_" recatt
|
||||
"#" record
|
||||
|
||||
# STRINGS
|
||||
:string String string
|
||||
* string
|
||||
"\\" string_escape recolor=-1
|
||||
"~" string_ mark
|
||||
"\"" idle
|
||||
|
||||
:string_escape String_esc string
|
||||
* string
|
||||
|
||||
:string_ String string
|
||||
* string_mod noeat
|
||||
"0-9" string_f
|
||||
"t" string_mod
|
||||
:string_f String string
|
||||
* string_mod noeat
|
||||
"0-9*" string_f
|
||||
"." string_p
|
||||
|
||||
:string_p String string
|
||||
* string_mod noeat
|
||||
"0-9*" string_p
|
||||
|
||||
:string_mod String string
|
||||
* string
|
||||
"cfegswpWPBX#bx+ni" string_modifier recolormark noeat
|
||||
|
||||
:string_modifier String_mod string
|
||||
* string
|
||||
# END STRINGS
|
||||
:decimal Number
|
||||
* idle noeat
|
||||
"0-9" decimal
|
||||
"." float
|
||||
"#" base
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"0-9" float
|
||||
"Ee" eintval
|
||||
|
||||
:base Number
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" base
|
||||
|
||||
:eintval Number
|
||||
* eint noeat
|
||||
"-" eint
|
||||
|
||||
:eint Number
|
||||
* idle noeat
|
||||
"0-9" eint
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:brack Bracket
|
||||
* idle noeat
|
||||
|
||||
:maybe_attribute Idle
|
||||
* idle noeat strings
|
||||
"-module" attribute
|
||||
"-export" attribute
|
||||
"-import" attribute
|
||||
"-compile" attribute
|
||||
"-ifdef" attribute
|
||||
"-endif" attribute
|
||||
"-define" attribute
|
||||
"-file" attribute
|
||||
"-type" attribute
|
||||
"-opaque" attribute
|
||||
"-export_type" attribute
|
||||
"-spec" attribute
|
||||
"-author" attribute
|
||||
"-copyright" attribute
|
||||
"-include" attribute
|
||||
"-include_lib" attribute
|
||||
"-vsn" attribute
|
||||
"-behaviour" attribute
|
||||
"-behavior" attribute
|
||||
"-record" attribute
|
||||
"-on_load" attribute
|
||||
"-connect_all" attribute
|
||||
"-hidden" attribute
|
||||
"-name" attribute
|
||||
"-setcookie" attribute
|
||||
"-sname" attribute
|
||||
"-mode" attribute
|
||||
done
|
||||
"a-z_" maybe_attribute
|
||||
|
||||
:attribute Attribute
|
||||
* idle noeat
|
||||
|
||||
:no_atom Idle
|
||||
* idle noeat
|
||||
" " no_atom
|
||||
"(" function recolormark noeat
|
||||
":" module recolormark noeat
|
||||
"/" funarity
|
||||
|
||||
:module Module
|
||||
* idle noeat
|
||||
|
||||
:function Fun
|
||||
* idle noeat
|
||||
|
||||
:funarity Fun
|
||||
* function recolormark noeat
|
||||
"0-9" idle
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:guard Guard
|
||||
* idle noeat
|
||||
|
||||
:rterr Guard
|
||||
* idle noeat
|
||||
|
||||
:bif Bif
|
||||
* idle recolormark noeat
|
||||
" " bif
|
||||
"(" idle noeat
|
||||
|
||||
:type Type
|
||||
* idle recolormark noeat
|
||||
"(" idle noeat
|
||||
":" module recolormark noeat
|
||||
|
||||
:quoted_atom Idle
|
||||
* quoted_atom
|
||||
"'" no_atom
|
||||
|
||||
# This implementation is sort of funky.
|
||||
# Most of the cases it's correct but some highlighting may be wrong.
|
||||
# Should be looked over...
|
||||
:atom Ident
|
||||
* no_atom noeat strings
|
||||
"after" kw
|
||||
"and" kw
|
||||
"andalso" kw
|
||||
"band" kw
|
||||
"begin" kw
|
||||
"bnot" kw
|
||||
"bor" kw
|
||||
"bsl" kw
|
||||
"bsr" kw
|
||||
"bxor" kw
|
||||
"case" kw
|
||||
"catch" kw
|
||||
"cond" kw
|
||||
"div" kw
|
||||
"end" kw
|
||||
"fun" kw
|
||||
"if" kw
|
||||
"let" kw
|
||||
"not" kw
|
||||
"of" kw
|
||||
"or" kw
|
||||
"orelse" kw
|
||||
"query" kw
|
||||
"receive" kw
|
||||
"rem" kw
|
||||
"try" kw
|
||||
"when" kw
|
||||
"xor" kw
|
||||
"any" type
|
||||
"none" type
|
||||
"pid" type
|
||||
"port" type
|
||||
"reference" type
|
||||
"float" type
|
||||
"atom" type
|
||||
"binary" type
|
||||
"integer" type
|
||||
"list" type
|
||||
"improper_list" type
|
||||
"maybe_improper_list" type
|
||||
"tuple" type
|
||||
"term" type
|
||||
"boolean" type
|
||||
"byte" type
|
||||
"char" type
|
||||
"non_neg_integer" type
|
||||
"pos_integer" type
|
||||
"neg_integer" type
|
||||
"number" type
|
||||
"string" type
|
||||
"nonempty_string" type
|
||||
"iolist" type
|
||||
"module" type
|
||||
"mfa" type
|
||||
#interfears with the bif "node" type
|
||||
"timeout" type
|
||||
"no_return" type
|
||||
"badarg" rterr
|
||||
"badarith" rterr
|
||||
"badmatch" rterr
|
||||
"function_clause" rterr
|
||||
"case_clause" rterr
|
||||
"if_clause" rterr
|
||||
"try_clause" rterr
|
||||
"undef" rterr
|
||||
"badfun" rterr
|
||||
"badarity" rterr
|
||||
"timeout_value" rterr
|
||||
"noproc" rterr
|
||||
"nocatch" rterr
|
||||
"system_limit" rterr
|
||||
"is_atom" guard
|
||||
"is_binary" guard
|
||||
"is_bitstream" guard
|
||||
"is_boolean" guard
|
||||
"is_float" guard
|
||||
"is_function" guard
|
||||
"is_integer" guard
|
||||
"is_list" guard
|
||||
"is_number" guard
|
||||
"is_pid" guard
|
||||
"is_port" guard
|
||||
"is_record" guard
|
||||
"is_reference" guard
|
||||
"is_tuple" guard
|
||||
"abs" bif
|
||||
"adler32" bif
|
||||
"adler32_combine" bif
|
||||
"append_element" bif
|
||||
"apply" bif
|
||||
"atom_to_binary" bif
|
||||
"atom_to_list" bif
|
||||
"binary_part" bif
|
||||
"binary_to_atom" bif
|
||||
"binary_to_existing_atom" bif
|
||||
"binary_to_list" bif
|
||||
"bitstring_to_list" bif
|
||||
"binary_to_term" bif
|
||||
"bit_size" bif
|
||||
"bump_reductions" bif
|
||||
"byte_size" bif
|
||||
"cancel_timer" bif
|
||||
"check_old_code" bif
|
||||
"check_process_code" bif
|
||||
"crc32" bif
|
||||
"crc32_combine" bif
|
||||
"date" bif
|
||||
"decode_packet" bif
|
||||
"delete_module" bif
|
||||
"demonitor" bif
|
||||
"disconnect_node" bif
|
||||
"display" bif
|
||||
"element" bif
|
||||
"erase" bif
|
||||
"error" bif
|
||||
"exit" bif
|
||||
"external_size" bif
|
||||
"float" bif
|
||||
"float_to_list" bif
|
||||
"fun_info" bif
|
||||
"fun_to_list" bif
|
||||
"function_exported" bif
|
||||
"garbage_collect" bif
|
||||
"get" bif
|
||||
"get_cookie" bif
|
||||
"get_keys" bif
|
||||
"get_stacktrace" bif
|
||||
"group_leader" bif
|
||||
"halt" bif
|
||||
"hash" bif
|
||||
"hd" bif
|
||||
"hibernate" bif
|
||||
"integer_to_list" bif
|
||||
"iolist_to_binary" bif
|
||||
"iolist_size" bif
|
||||
"is_alive" bif
|
||||
"is_builtin" bif
|
||||
"is_process_alive" bif
|
||||
"length" bif
|
||||
"link" bif
|
||||
"list_to_atom" bif
|
||||
"list_to_binary" bif
|
||||
"list_to_bitstring" bif
|
||||
"list_to_existing_atom" bif
|
||||
"list_to_float" bif
|
||||
"list_to_integer" bif
|
||||
"list_to_pid" bif
|
||||
"list_to_tuple" bif
|
||||
"load_module" bif
|
||||
"load_nif" bif
|
||||
"loaded" bif
|
||||
"local_time" bif
|
||||
"local_time_to_universaltime" bif
|
||||
"make_ref" bif
|
||||
"make_tuple" bif
|
||||
"max" bif
|
||||
"md5" bif
|
||||
"md5_final" bif
|
||||
"md5_init" bif
|
||||
"md5_update" bif
|
||||
"memory" bif
|
||||
"min" bif
|
||||
"module_loaded" bif
|
||||
"monitor" bif
|
||||
"monitor_node" bif
|
||||
"nif_error" bif
|
||||
"node" bif
|
||||
"nodes" bif
|
||||
"now" bif
|
||||
"open_port" bif
|
||||
"phash" bif
|
||||
"phash2" bif
|
||||
"pid_to_list" bif
|
||||
"port_close" bif
|
||||
"port_command" bif
|
||||
"port_connect" bif
|
||||
"port_control" bif
|
||||
"port_call" bif
|
||||
"port_info" bif
|
||||
"port_to_list" bif
|
||||
"ports" bif
|
||||
"pre_loaded" bif
|
||||
"process_display" bif
|
||||
"process_flag" bif
|
||||
"process_info" bif
|
||||
"processes" bif
|
||||
"purge_module" bif
|
||||
"put" bif
|
||||
"raise" bif
|
||||
"read_timer" bif
|
||||
"ref_to_list" bif
|
||||
"register" bif
|
||||
"registered" bif
|
||||
"resume_process" bif
|
||||
"round" bif
|
||||
"self" bif
|
||||
"send" bif
|
||||
"send_after" bif
|
||||
"send_nosuspend" bif
|
||||
"set_cookie" bif
|
||||
"setelement" bif
|
||||
"size" bif
|
||||
"spawn" bif
|
||||
"spawn_link" bif
|
||||
"spawn_monitor" bif
|
||||
"spawn_opt" bif
|
||||
"split_binary" bif
|
||||
"start_timer" bif
|
||||
"statistics" bif
|
||||
"suspended_process" bif
|
||||
"system_flag" bif
|
||||
"system_info" bif
|
||||
"system_monitor" bif
|
||||
"system_profile" bif
|
||||
"term_to_binary" bif
|
||||
"throw" bif
|
||||
"time" bif
|
||||
"tl" bif
|
||||
"trace" bif
|
||||
"trace_deliviered" bif
|
||||
"trace_info" bif
|
||||
"trace_pattern" bif
|
||||
"trunc" bif
|
||||
"tuple_size" bif
|
||||
"tuple_to_list" bif
|
||||
"universaltime" bif
|
||||
"universaltime_to_localtime" bif
|
||||
"unlink" bif
|
||||
"unregister" bif
|
||||
"whereis" bif
|
||||
"yield" bif
|
||||
done
|
||||
"a-zA-Z0-9_@" atom
|
||||
21
joe/usr/share/joe/syntax/filename.jsf
Normal file
21
joe/usr/share/joe/syntax/filename.jsf
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
# Filename highlighter
|
||||
|
||||
=Idle
|
||||
=Notused +Comment
|
||||
|
||||
:idle Idle
|
||||
* filename noeat mark
|
||||
|
||||
:filename Idle
|
||||
* filename
|
||||
"/" slash
|
||||
"\n" idle
|
||||
|
||||
:slash Idle
|
||||
* filename
|
||||
"/" restart noeat recolormark
|
||||
"~" restart noeat recolormark
|
||||
"\n" idle
|
||||
|
||||
:restart Notused
|
||||
* filename noeat mark
|
||||
822
joe/usr/share/joe/syntax/fortran.jsf
Normal file
822
joe/usr/share/joe/syntax/fortran.jsf
Normal file
|
|
@ -0,0 +1,822 @@
|
|||
# JOE syntax highlight file for FORTRAN
|
||||
# Heavily improved by: Malte Thoma (thoma@uni-muenster.de)
|
||||
|
||||
# Bugs:
|
||||
# in: 4. eq. -- does not recognize the .eq.
|
||||
# needs more intrinsics.
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=Boolean +Constant
|
||||
=String +Constant
|
||||
=Type
|
||||
=Keyword
|
||||
=Operator +Keyword
|
||||
=Statement +Keyword
|
||||
=Builtin +DefinedFunction
|
||||
=Loop +Statement
|
||||
=Conditional +Statement
|
||||
=Label +Statement
|
||||
=Preproc
|
||||
=Bad
|
||||
|
||||
# First character of line...
|
||||
|
||||
:reset Idle
|
||||
* idle noeat
|
||||
"\n" reset
|
||||
"cC*" comment recolor=-1
|
||||
"#" pre recolor=-1
|
||||
|
||||
:pre Preproc
|
||||
* pre
|
||||
"\n" reset
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"\n" reset
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"!" comment recolor=-1
|
||||
"\n" reset
|
||||
"0-9" first_number recolor=-1
|
||||
"." have_dot
|
||||
"'" string recolor=-1
|
||||
"a-zA-Z_" ident buffer
|
||||
|
||||
:first_number Number
|
||||
* idle noeat
|
||||
"0-9" first_number
|
||||
"." second_start
|
||||
"eEdD" epart
|
||||
|
||||
:have_dot Number
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" second_number recolor=-2
|
||||
" \ta-zA-Z" operator1 noeat recolor=-2
|
||||
|
||||
# Color the left .
|
||||
|
||||
:operator1 Operator
|
||||
* operator buffer noeat
|
||||
" \t" operator1
|
||||
|
||||
# Default color is Idle for unknown operator
|
||||
|
||||
:operator Idle
|
||||
* idle noeat
|
||||
"a-zA-Z" operator
|
||||
". \t" unknown noeat istrings
|
||||
"gt" op
|
||||
"ge" op
|
||||
"eq" op
|
||||
"le" op
|
||||
"ne" op
|
||||
"lt" op
|
||||
"and" op
|
||||
"or" op
|
||||
"llt" op
|
||||
"lle" op
|
||||
"lgt" op
|
||||
"lge" op
|
||||
"not" op
|
||||
"false" bool
|
||||
"true" bool
|
||||
done
|
||||
|
||||
# Eat the right .
|
||||
|
||||
:unknown Operator
|
||||
* idle
|
||||
" \t" unknown
|
||||
|
||||
:op Operator
|
||||
* idle
|
||||
" \t" op
|
||||
|
||||
:bool Boolean
|
||||
* idle
|
||||
"." op noeat
|
||||
" \t" const
|
||||
|
||||
# For distrinuishing between 4.e1 and 4.eq.
|
||||
|
||||
:second_start Number
|
||||
* idle noeat
|
||||
"a-zA-Z" operator1 noeat recolor=-2
|
||||
"dD" epart
|
||||
"eE" epart1
|
||||
"0-9" second_number
|
||||
|
||||
:epart1 Number
|
||||
* idle noeat
|
||||
"q" epart2
|
||||
"0-9+\-" enum
|
||||
|
||||
:epart2 Idle
|
||||
* idle noeat
|
||||
". \t" op noeat recolor=-4
|
||||
|
||||
:second_number Number
|
||||
* idle noeat
|
||||
"eEdD" epart
|
||||
"0-9" second_number
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\n" reset
|
||||
"'" maybe_end_string
|
||||
|
||||
:maybe_end_string String string
|
||||
* idle noeat
|
||||
"'" string
|
||||
|
||||
:ident Ident
|
||||
* idle noeat istrings
|
||||
"allocate" kw
|
||||
"allocatable" kw
|
||||
"assign" kw
|
||||
"assignment" kw
|
||||
"backspace" kw
|
||||
"block" kw
|
||||
"blockdata" kw
|
||||
"call" kw
|
||||
"case" label
|
||||
"character" type
|
||||
"close" kw
|
||||
"common" kw
|
||||
"complex" type
|
||||
"contains" kw
|
||||
"continue" loop
|
||||
"cycle" kw
|
||||
"data" kw
|
||||
"deallocate" kw
|
||||
"default" label
|
||||
"dimension" type
|
||||
"do" loop
|
||||
"double" type
|
||||
"doubleprecision" type
|
||||
"elemental" kw
|
||||
"else" cond
|
||||
"elseif" cond
|
||||
"elsewhere" cond
|
||||
"end" kw
|
||||
"endblock" kw
|
||||
"endblockdata" kw
|
||||
"enddo" loop
|
||||
"endfile" kw
|
||||
"endforall" loop
|
||||
"endif" cond
|
||||
"endinterface" kw
|
||||
"endmodule" kw
|
||||
"endselect" cond
|
||||
"endtype" kw
|
||||
"endwhere" kw
|
||||
"entry" kw
|
||||
"equivalence" kw
|
||||
"exit" kw
|
||||
"external" kw
|
||||
"forall" loop
|
||||
"format" kw
|
||||
"function" kw
|
||||
"go" loop
|
||||
"goto" loop
|
||||
"if" cond
|
||||
"implicit" kw
|
||||
"in" kw
|
||||
"inout" kw
|
||||
"inquire" kw
|
||||
"integer" type
|
||||
"intent" kw
|
||||
"interface" kw
|
||||
"intrinsic" kw
|
||||
"iolength" kw
|
||||
"kind" kw
|
||||
"logical" type
|
||||
"module" kw
|
||||
"namelist" kw
|
||||
"none" kw
|
||||
"nullify" kw
|
||||
"only" kw
|
||||
"open" kw
|
||||
"optional" kw
|
||||
"out" kw
|
||||
"parameter" kw
|
||||
"pause" kw
|
||||
"pointer" kw
|
||||
"precision" type
|
||||
"print" kw
|
||||
"private" kw
|
||||
"procedure" kw
|
||||
"program" kw
|
||||
"publc" kw
|
||||
"public" kw
|
||||
"pure" kw
|
||||
"read" kw
|
||||
"real" type
|
||||
"recursive" kw
|
||||
"result" kw
|
||||
"return" kw
|
||||
"rewind" kw
|
||||
"save" kw
|
||||
"select" cond
|
||||
"selectcase" cond
|
||||
"sequence" kw
|
||||
"stat" kw
|
||||
"stop" kw
|
||||
"subroutine" kw
|
||||
"target" kw
|
||||
"then" cond
|
||||
"to" loop
|
||||
"type" kw
|
||||
"use" kw
|
||||
"where" kw
|
||||
"while" loop
|
||||
"write" kw
|
||||
done
|
||||
"(" idle noeat istrings
|
||||
# Keywords have to be duplicated here...
|
||||
"allocate" kw
|
||||
"allocatable" kw
|
||||
"assign" kw
|
||||
"assignment" kw
|
||||
"backspace" kw
|
||||
"block" kw
|
||||
"blockdata" kw
|
||||
"call" kw
|
||||
"case" label
|
||||
"character" type
|
||||
"close" kw
|
||||
"common" kw
|
||||
"complex" type
|
||||
"contains" kw
|
||||
"continue" loop
|
||||
"cycle" kw
|
||||
"data" kw
|
||||
"deallocate" kw
|
||||
"default" label
|
||||
"dimension" type
|
||||
"do" loop
|
||||
"double" type
|
||||
"doubleprecision" type
|
||||
"elemental" kw
|
||||
"else" cond
|
||||
"elseif" cond
|
||||
"elsewhere" cond
|
||||
"end" kw
|
||||
"endblock" kw
|
||||
"endblockdata" kw
|
||||
"enddo" loop
|
||||
"endfile" kw
|
||||
"endforall" loop
|
||||
"endif" cond
|
||||
"endinterface" kw
|
||||
"endmodule" kw
|
||||
"endselect" cond
|
||||
"endtype" kw
|
||||
"endwhere" kw
|
||||
"entry" kw
|
||||
"equivalence" kw
|
||||
"exit" kw
|
||||
"external" kw
|
||||
"forall" loop
|
||||
"format" kw
|
||||
"function" kw
|
||||
"go" loop
|
||||
"goto" loop
|
||||
"if" cond
|
||||
"implicit" kw
|
||||
"in" kw
|
||||
"inout" kw
|
||||
"inquire" kw
|
||||
"integer" type
|
||||
"intent" kw
|
||||
"interface" kw
|
||||
"intrinsic" kw
|
||||
"iolength" kw
|
||||
"kind" kw
|
||||
"logical" type
|
||||
"module" kw
|
||||
"namelist" kw
|
||||
"none" kw
|
||||
"nullify" kw
|
||||
"only" kw
|
||||
"open" kw
|
||||
"optional" kw
|
||||
"out" kw
|
||||
"parameter" kw
|
||||
"pause" kw
|
||||
"pointer" kw
|
||||
"precision" type
|
||||
"print" kw
|
||||
"private" kw
|
||||
"procedure" kw
|
||||
"program" kw
|
||||
"publc" kw
|
||||
"public" kw
|
||||
"pure" kw
|
||||
"read" kw
|
||||
"real" kw
|
||||
"recursive" kw
|
||||
"result" kw
|
||||
"return" kw
|
||||
"rewind" kw
|
||||
"save" kw
|
||||
"select" cond
|
||||
"selectcase" cond
|
||||
"sequence" kw
|
||||
"stat" kw
|
||||
"stop" kw
|
||||
"subroutine" kw
|
||||
"target" kw
|
||||
"then" cond
|
||||
"to" loop
|
||||
"type" kw
|
||||
"use" kw
|
||||
"where" kw
|
||||
"while" loop
|
||||
"write" kw
|
||||
# Here are instrinsics
|
||||
"abs" intrinsic
|
||||
"achar" intrinsic
|
||||
"acos" intrinsic
|
||||
"adjustl" intrinsic
|
||||
"adjustr" intrinsic
|
||||
"aimag" intrinsic
|
||||
"aint" intrinsic
|
||||
"all" intrinsic
|
||||
"allocated" intrinsic
|
||||
"alog" intrinsic
|
||||
"alog10" intrinsic
|
||||
"anint" intrinsic
|
||||
"any" intrinsic
|
||||
"asin" intrinsic
|
||||
"associated" intrinsic
|
||||
"atan" intrinsic
|
||||
"atan2" intrinsic
|
||||
"bit_size" intrinsic
|
||||
"btest" intrinsic
|
||||
"ceiling" intrinsic
|
||||
"char" intrinsic
|
||||
"cmplx" intrinsic
|
||||
"conjg" intrinsic
|
||||
"cos" intrinsic
|
||||
"cosh" intrinsic
|
||||
"count" intrinsic
|
||||
"cpu_time" intrinsic
|
||||
"cshift" intrinsic
|
||||
"date_and_time" intrinsic
|
||||
"dble" intrinsic
|
||||
"digits" intrinsic
|
||||
"dim" intrinsic
|
||||
"dot_product" intrinsic
|
||||
"dprod" intrinsic
|
||||
"eoshift" intrinsic
|
||||
"epsilon" intrinsic
|
||||
"exp" intrinsic
|
||||
"exponent" intrinsic
|
||||
"false" bool
|
||||
"floor" intrinsic
|
||||
"float" intrinsic
|
||||
"fraction" intrinsic
|
||||
"huge" intrinsic
|
||||
"iachar" intrinsic
|
||||
"iand" intrinsic
|
||||
"ibclr" intrinsic
|
||||
"ibits" intrinsic
|
||||
"ibset" intrinsic
|
||||
"ichar" intrinsic
|
||||
"ieor" intrinsic
|
||||
"index" intrinsic
|
||||
"int" intrinsic
|
||||
"int2" intrinsic
|
||||
"ior" intrinsic
|
||||
"ishft" intrinsic
|
||||
"ishftc" intrinsic
|
||||
"kind" intrinsic
|
||||
"lbound" intrinsic
|
||||
"len" intrinsic
|
||||
"len_trim" intrinsic
|
||||
"lge" intrinsic
|
||||
"lgt" intrinsic
|
||||
"lle" intrinsic
|
||||
"llt" intrinsic
|
||||
"log" intrinsic
|
||||
"log10" intrinsic
|
||||
"matmul" intrinsic
|
||||
"max" intrinsic
|
||||
"maxexponent" intrinsic
|
||||
"maxloc" intrinsic
|
||||
"maxval" intrinsic
|
||||
"merge" intrinsic
|
||||
"min" intrinsic
|
||||
"minexponent" intrinsic
|
||||
"minloc" intrinsic
|
||||
"minval" intrinsic
|
||||
"mod" intrinsic
|
||||
"modulo" intrinsic
|
||||
"mvbits" intrinsic
|
||||
"nearest" intrinsic
|
||||
"nint" intrinsic
|
||||
"not" intrinsic
|
||||
"null" intrinsic
|
||||
"pack" intrinsic
|
||||
"present" intrinsic
|
||||
"product" intrinsic
|
||||
"radix" intrinsic
|
||||
"random_number" intrinsic
|
||||
"random_seed" intrinsic
|
||||
"range" intrinsic
|
||||
"real" intrinsic
|
||||
"repeat" intrinsic
|
||||
"reshape" intrinsic
|
||||
"rrspacing" intrinsic
|
||||
"scale" intrinsic
|
||||
"scan" intrinsic
|
||||
"selected_int_kind" intrinsic
|
||||
"selected_real_kind" intrinsic
|
||||
"set_exponent" intrinsic
|
||||
"shape" intrinsic
|
||||
"sign" intrinsic
|
||||
"sin" intrinsic
|
||||
"sinh" intrinsic
|
||||
"size" intrinsic
|
||||
"spacing" intrinsic
|
||||
"spread" intrinsic
|
||||
"sqrt" intrinsic
|
||||
"sum" intrinsic
|
||||
"system_clock" intrinsic
|
||||
"tan" intrinsic
|
||||
"tanh" intrinsic
|
||||
"tiny" intrinsic
|
||||
"transfer" intrinsic
|
||||
"transpose" intrinsic
|
||||
"trim" intrinsic
|
||||
"true" intrinsic
|
||||
"ubound" intrinsic
|
||||
"unpack" intrinsic
|
||||
"verify" intrinsic
|
||||
done
|
||||
"a-zA-Z0-9_" ident
|
||||
" \t" ws_ident hold
|
||||
|
||||
|
||||
# Whitespace after an identifier... we wait to see if there is a "("
|
||||
:ws_ident Idle
|
||||
* idle noeat istrings
|
||||
"allocate" kw
|
||||
"allocatable" kw
|
||||
"assign" kw
|
||||
"assignment" kw
|
||||
"backspace" kw
|
||||
"block" kw
|
||||
"blockdata" kw
|
||||
"call" kw
|
||||
"case" label
|
||||
"character" type
|
||||
"close" kw
|
||||
"common" kw
|
||||
"complex" type
|
||||
"contains" kw
|
||||
"continue" loop
|
||||
"cycle" kw
|
||||
"data" kw
|
||||
"deallocate" kw
|
||||
"default" label
|
||||
"dimension" type
|
||||
"do" loop
|
||||
"double" type
|
||||
"doubleprecision" type
|
||||
"elemental" kw
|
||||
"else" cond
|
||||
"elseif" cond
|
||||
"elsewhere" cond
|
||||
"end" kw
|
||||
"endblock" kw
|
||||
"endblockdata" kw
|
||||
"enddo" loop
|
||||
"endfile" kw
|
||||
"endforall" loop
|
||||
"endif" cond
|
||||
"endinterface" kw
|
||||
"endmodule" kw
|
||||
"endselect" cond
|
||||
"endtype" kw
|
||||
"endwhere" kw
|
||||
"entry" kw
|
||||
"equivalence" kw
|
||||
"exit" kw
|
||||
"external" kw
|
||||
"forall" loop
|
||||
"format" kw
|
||||
"function" kw
|
||||
"go" loop
|
||||
"goto" loop
|
||||
"if" cond
|
||||
"implicit" kw
|
||||
"in" kw
|
||||
"inout" kw
|
||||
"inquire" kw
|
||||
"integer" type
|
||||
"intent" kw
|
||||
"interface" kw
|
||||
"intrinsic" kw
|
||||
"iolength" kw
|
||||
"kind" kw
|
||||
"logical" type
|
||||
"module" kw
|
||||
"namelist" kw
|
||||
"none" kw
|
||||
"nullify" kw
|
||||
"only" kw
|
||||
"open" kw
|
||||
"optional" kw
|
||||
"out" kw
|
||||
"parameter" kw
|
||||
"pause" kw
|
||||
"pointer" kw
|
||||
"precision" type
|
||||
"print" kw
|
||||
"private" kw
|
||||
"procedure" kw
|
||||
"program" kw
|
||||
"publc" kw
|
||||
"public" kw
|
||||
"pure" kw
|
||||
"read" kw
|
||||
"real" type
|
||||
"recursive" kw
|
||||
"result" kw
|
||||
"return" kw
|
||||
"rewind" kw
|
||||
"save" kw
|
||||
"select" cond
|
||||
"selectcase" cond
|
||||
"sequence" kw
|
||||
"stat" kw
|
||||
"stop" kw
|
||||
"subroutine" kw
|
||||
"target" kw
|
||||
"then" cond
|
||||
"to" loop
|
||||
"type" kw
|
||||
"use" kw
|
||||
"where" kw
|
||||
"while" loop
|
||||
"write" kw
|
||||
done
|
||||
"(" idle noeat istrings
|
||||
# Keywords have to be duplicated here...
|
||||
"allocate" kw
|
||||
"allocatable" kw
|
||||
"assign" kw
|
||||
"assignment" kw
|
||||
"backspace" kw
|
||||
"block" kw
|
||||
"blockdata" kw
|
||||
"call" kw
|
||||
"case" label
|
||||
"character" type
|
||||
"close" kw
|
||||
"common" kw
|
||||
"complex" type
|
||||
"contains" kw
|
||||
"continue" loop
|
||||
"cycle" kw
|
||||
"data" kw
|
||||
"deallocate" kw
|
||||
"default" label
|
||||
"dimension" type
|
||||
"do" loop
|
||||
"double" type
|
||||
"doubleprecision" type
|
||||
"elemental" kw
|
||||
"else" cond
|
||||
"elseif" cond
|
||||
"elsewhere" cond
|
||||
"end" kw
|
||||
"endblock" kw
|
||||
"endblockdata" kw
|
||||
"enddo" loop
|
||||
"endfile" kw
|
||||
"endforall" loop
|
||||
"endif" cond
|
||||
"endinterface" kw
|
||||
"endmodule" kw
|
||||
"endselect" cond
|
||||
"endtype" kw
|
||||
"endwhere" kw
|
||||
"entry" kw
|
||||
"equivalence" kw
|
||||
"exit" kw
|
||||
"external" kw
|
||||
"forall" loop
|
||||
"format" kw
|
||||
"function" kw
|
||||
"go" loop
|
||||
"goto" loop
|
||||
"if" cond
|
||||
"implicit" kw
|
||||
"in" kw
|
||||
"inout" kw
|
||||
"inquire" kw
|
||||
"integer" kw
|
||||
"intent" kw
|
||||
"interface" kw
|
||||
"intrinsic" kw
|
||||
"iolength" kw
|
||||
"kind" kw
|
||||
"logical" type
|
||||
"module" kw
|
||||
"namelist" kw
|
||||
"none" kw
|
||||
"nullify" kw
|
||||
"only" kw
|
||||
"open" kw
|
||||
"optional" kw
|
||||
"out" kw
|
||||
"parameter" kw
|
||||
"pause" kw
|
||||
"pointer" kw
|
||||
"precision" type
|
||||
"print" kw
|
||||
"private" kw
|
||||
"procedure" kw
|
||||
"program" kw
|
||||
"publc" kw
|
||||
"public" kw
|
||||
"pure" kw
|
||||
"read" kw
|
||||
"real" type
|
||||
"recursive" kw
|
||||
"result" kw
|
||||
"return" kw
|
||||
"rewind" kw
|
||||
"save" kw
|
||||
"select" cond
|
||||
"selectcase" cond
|
||||
"sequence" kw
|
||||
"stat" kw
|
||||
"stop" kw
|
||||
"subroutine" kw
|
||||
"target" kw
|
||||
"then" cond
|
||||
"to" loop
|
||||
"type" kw
|
||||
"use" kw
|
||||
"where" kw
|
||||
"while" loop
|
||||
"write" kw
|
||||
# Here are instrinsics
|
||||
"abs" intrinsic
|
||||
"achar" intrinsic
|
||||
"acos" intrinsic
|
||||
"adjustl" intrinsic
|
||||
"adjustr" intrinsic
|
||||
"aimag" intrinsic
|
||||
"aint" intrinsic
|
||||
"all" intrinsic
|
||||
"allocated" intrinsic
|
||||
"alog" intrinsic
|
||||
"alog10" intrinsic
|
||||
"anint" intrinsic
|
||||
"any" intrinsic
|
||||
"asin" intrinsic
|
||||
"associated" intrinsic
|
||||
"atan" intrinsic
|
||||
"atan2" intrinsic
|
||||
"bit_size" intrinsic
|
||||
"btest" intrinsic
|
||||
"ceiling" intrinsic
|
||||
"char" intrinsic
|
||||
"cmplx" intrinsic
|
||||
"conjg" intrinsic
|
||||
"cos" intrinsic
|
||||
"cosh" intrinsic
|
||||
"count" intrinsic
|
||||
"cpu_time" intrinsic
|
||||
"cshift" intrinsic
|
||||
"date_and_time" intrinsic
|
||||
"dble" intrinsic
|
||||
"digits" intrinsic
|
||||
"dim" intrinsic
|
||||
"dot_product" intrinsic
|
||||
"dprod" intrinsic
|
||||
"eoshift" intrinsic
|
||||
"epsilon" intrinsic
|
||||
"exp" intrinsic
|
||||
"exponent" intrinsic
|
||||
"false" intrinsic
|
||||
"floor" intrinsic
|
||||
"float" intrinsic
|
||||
"fraction" intrinsic
|
||||
"huge" intrinsic
|
||||
"iachar" intrinsic
|
||||
"iand" intrinsic
|
||||
"ibclr" intrinsic
|
||||
"ibits" intrinsic
|
||||
"ibset" intrinsic
|
||||
"ichar" intrinsic
|
||||
"ieor" intrinsic
|
||||
"index" intrinsic
|
||||
"int" intrinsic
|
||||
"int2" intrinsic
|
||||
"ior" intrinsic
|
||||
"ishft" intrinsic
|
||||
"ishftc" intrinsic
|
||||
"kind" intrinsic
|
||||
"lbound" intrinsic
|
||||
"len" intrinsic
|
||||
"len_trim" intrinsic
|
||||
"lge" intrinsic
|
||||
"lgt" intrinsic
|
||||
"lle" intrinsic
|
||||
"llt" intrinsic
|
||||
"log" intrinsic
|
||||
"log10" intrinsic
|
||||
"matmul" intrinsic
|
||||
"max" intrinsic
|
||||
"maxexponent" intrinsic
|
||||
"maxloc" intrinsic
|
||||
"maxval" intrinsic
|
||||
"merge" intrinsic
|
||||
"min" intrinsic
|
||||
"minexponent" intrinsic
|
||||
"minloc" intrinsic
|
||||
"minval" intrinsic
|
||||
"mod" intrinsic
|
||||
"modulo" intrinsic
|
||||
"mvbits" intrinsic
|
||||
"nearest" intrinsic
|
||||
"nint" intrinsic
|
||||
"not" intrinsic
|
||||
"null" intrinsic
|
||||
"pack" intrinsic
|
||||
"present" intrinsic
|
||||
"product" intrinsic
|
||||
"radix" intrinsic
|
||||
"random_number" intrinsic
|
||||
"random_seed" intrinsic
|
||||
"range" intrinsic
|
||||
"real" intrinsic
|
||||
"repeat" intrinsic
|
||||
"reshape" intrinsic
|
||||
"rrspacing" intrinsic
|
||||
"scale" intrinsic
|
||||
"scan" intrinsic
|
||||
"selected_int_kind" intrinsic
|
||||
"selected_real_kind" intrinsic
|
||||
"set_exponent" intrinsic
|
||||
"shape" intrinsic
|
||||
"sign" intrinsic
|
||||
"sin" intrinsic
|
||||
"sinh" intrinsic
|
||||
"size" intrinsic
|
||||
"spacing" intrinsic
|
||||
"spread" intrinsic
|
||||
"sqrt" intrinsic
|
||||
"sum" intrinsic
|
||||
"system_clock" intrinsic
|
||||
"tan" intrinsic
|
||||
"tanh" intrinsic
|
||||
"tiny" intrinsic
|
||||
"transfer" intrinsic
|
||||
"transpose" intrinsic
|
||||
"trim" intrinsic
|
||||
"true" bool
|
||||
"ubound" intrinsic
|
||||
"unpack" intrinsic
|
||||
"verify" intrinsic
|
||||
done
|
||||
" \t" ws_ident
|
||||
|
||||
:intrinsic Builtin
|
||||
* idle noeat
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:type Type
|
||||
* idle noeat
|
||||
|
||||
:label Label
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
17
joe/usr/share/joe/syntax/git-commit.jsf
Normal file
17
joe/usr/share/joe/syntax/git-commit.jsf
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
# JOE syntax highlight file for Markdown
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
=Idle
|
||||
=Ignore +Comment
|
||||
|
||||
:line_start Idle
|
||||
* idle noeat
|
||||
"#" ignore recolor=-1
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\n" line_start
|
||||
|
||||
:ignore Ignore
|
||||
* ignore
|
||||
"\n" line_start
|
||||
361
joe/usr/share/joe/syntax/go.jsf
Normal file
361
joe/usr/share/joe/syntax/go.jsf
Normal file
|
|
@ -0,0 +1,361 @@
|
|||
# Google Go (golang) syntax
|
||||
# (c) 2012 Matthias S. Benkmann
|
||||
# License: http://creativecommons.org/licenses/by/3.0/deed.en_US
|
||||
|
||||
|
||||
=Idle
|
||||
=Bad
|
||||
=Comment
|
||||
=Constant
|
||||
=Boolean +Constant
|
||||
=String +Constant
|
||||
=Character +String
|
||||
=BackQuoted +String
|
||||
=StringEscape +Escape
|
||||
=Number +Constant
|
||||
=Ident
|
||||
=DefinedIdent +Ident
|
||||
=Keyword
|
||||
=Operator +Keyword
|
||||
=Statement +Keyword
|
||||
=Conditional +Statement
|
||||
=Loop +Statement
|
||||
=Label +DefinedIdent
|
||||
=Structure +Type +Keyword
|
||||
=Type
|
||||
=Builtin +DefinedFunction
|
||||
|
||||
=Control
|
||||
=Brackets +Control
|
||||
=Brace +Control
|
||||
=Semicolon +Control
|
||||
=Comma +Control
|
||||
=Period +Control
|
||||
=PeriodDecimal +Period +Number
|
||||
|
||||
|
||||
##################### main #########################
|
||||
:main Idle
|
||||
* keyword_or_identifier noeat buffer
|
||||
" \t" main
|
||||
"\n" main
|
||||
"/" maybe_comment recolor=-1
|
||||
"'" single_quoted recolor=-1
|
||||
"\"" double_quoted recolor=-1
|
||||
"`" back_quoted recolor=-1
|
||||
"+&=!|*^<>:%-" operator noeat
|
||||
"()" parentheses noeat
|
||||
"[]" brackets noeat
|
||||
"{}" curlies noeat
|
||||
";" semicolon noeat
|
||||
"," comma noeat
|
||||
"." period
|
||||
"0" number0 recolor=-1
|
||||
"1-9" float recolor=-1
|
||||
"#$@~" error noeat
|
||||
|
||||
#################### error ##########################
|
||||
:error Bad
|
||||
* error
|
||||
"\n" main
|
||||
"/" maybe_comment_err recolor=-1
|
||||
|
||||
:maybe_comment_err Operator
|
||||
* error noeat recolor=-2
|
||||
"/" line_comment recolor=-2
|
||||
"*" block_comment recolor=-2
|
||||
|
||||
################## comments #########################
|
||||
:maybe_comment Operator
|
||||
* main noeat
|
||||
"/" line_comment recolor=-2
|
||||
"*" block_comment recolor=-2
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" main
|
||||
|
||||
:block_comment Comment comment
|
||||
* block_comment
|
||||
"BFHNTX" block_comment noeat call=comment_todo.comment_todo()
|
||||
"*" maybe_end_block_comment
|
||||
|
||||
:maybe_end_block_comment Comment comment
|
||||
* block_comment noeat
|
||||
"/" main
|
||||
|
||||
################ strings ############################
|
||||
:single_quoted Character string
|
||||
* single_quoted
|
||||
"'" main
|
||||
"\\" single_quoted call=.escape() recolor=-1
|
||||
"\n" error
|
||||
|
||||
:double_quoted String string
|
||||
* double_quoted
|
||||
"\"" main
|
||||
"\\" double_quoted call=.escape() recolor=-1
|
||||
"\n" error
|
||||
|
||||
:back_quoted BackQuoted string
|
||||
* back_quoted
|
||||
"`" main
|
||||
|
||||
################### operators #######################
|
||||
:operator Operator
|
||||
* main
|
||||
|
||||
:parentheses Control
|
||||
* main
|
||||
|
||||
:brackets Brackets
|
||||
* main
|
||||
|
||||
:curlies Brace
|
||||
* main
|
||||
|
||||
:semicolon Semicolon
|
||||
* main
|
||||
|
||||
:comma Comma
|
||||
* main
|
||||
|
||||
##################### period #######################
|
||||
|
||||
:period Period
|
||||
* period_other noeat recolor=-2
|
||||
"0-9" period_decimal noeat recolor=-2
|
||||
|
||||
:period_other Period
|
||||
* main noeat
|
||||
|
||||
:period_decimal PeriodDecimal
|
||||
* float_no_period noeat
|
||||
|
||||
|
||||
################### numbers ####################
|
||||
:float_no_period Number
|
||||
* end_of_number noeat
|
||||
"0-9" float_no_period
|
||||
"eE" integer
|
||||
|
||||
:integer Number
|
||||
* error noeat
|
||||
"+-" unsigned
|
||||
"0-9" unsigned_or_end
|
||||
|
||||
:unsigned Number
|
||||
* error noeat
|
||||
"0-9" unsigned_or_end
|
||||
|
||||
:unsigned_or_end Number
|
||||
* end_of_number noeat
|
||||
"0-9" unsigned_or_end
|
||||
|
||||
:end_of_number Number
|
||||
* main noeat
|
||||
"i" main # imaginary number suffix
|
||||
|
||||
:number0 Number
|
||||
* end_of_number noeat
|
||||
"xX" hex
|
||||
"." period_decimal recolor=-1
|
||||
# 099i is a valid imaginary number, 099.0 is a valid float,
|
||||
# but 099 is an invalid octal.
|
||||
#We don't check for this and simply lump both cases together.
|
||||
"0-9" float
|
||||
|
||||
:hex Number
|
||||
* main noeat
|
||||
"0-9a-fA-F" hex
|
||||
|
||||
:float Number
|
||||
* end_of_number noeat
|
||||
"0-9" float
|
||||
"." period_decimal recolor=-1
|
||||
"eE" integer
|
||||
|
||||
################# keywords and identifiers ##########################
|
||||
:keyword_or_identifier Ident
|
||||
* identifier
|
||||
"\p{Lu}\p{Lt}" exported_identifier recolor=-1
|
||||
"\p{Ll}\p{Lo}\p{Pc}\p{Nl}" keyword_or_identifier2
|
||||
|
||||
:exported_identifier DefinedIdent
|
||||
* exported_identifier
|
||||
"\x01-/:-@[-^`{-\x7f" main noeat
|
||||
|
||||
:identifier Ident
|
||||
* identifier
|
||||
"\x01-/:-@[-^`{-\x7f" main noeat
|
||||
|
||||
:keyword_or_identifier2 Ident
|
||||
* identifier
|
||||
"\c" keyword_or_identifier2
|
||||
"\x01-/:-@[-^`{-\x7f" main noeat hold strings
|
||||
"_" keyword
|
||||
"break" stmt
|
||||
"default" label
|
||||
"func" keyword
|
||||
"interface" struct
|
||||
"select" cond
|
||||
"case" label
|
||||
"defer" stmt
|
||||
"go" keyword
|
||||
"struct" struct
|
||||
"else" cond
|
||||
"goto" stmt
|
||||
"package" stmt
|
||||
"switch" cond
|
||||
"const" stmt
|
||||
"fallthrough" keyword
|
||||
"if" cond
|
||||
"range" loop
|
||||
"type" struct
|
||||
"continue" stmt
|
||||
"for" loop
|
||||
"import" stmt
|
||||
"return" stmt
|
||||
"var" stmt
|
||||
|
||||
"true" boolean
|
||||
"false" boolean
|
||||
"nil" constant
|
||||
"iota" constant
|
||||
|
||||
"byte" type
|
||||
"rune" type
|
||||
"int" type
|
||||
"uint" type
|
||||
"uintptr" type
|
||||
"uint8" type
|
||||
"uint16" type
|
||||
"uint32" type
|
||||
"uint64" type
|
||||
"int8" type
|
||||
"int16" type
|
||||
"int32" type
|
||||
"int64" type
|
||||
"float32" type
|
||||
"float64" type
|
||||
"complex64" type
|
||||
"complex128" type
|
||||
"bool" type
|
||||
"string" type
|
||||
"error" type
|
||||
"map" type
|
||||
"chan" type
|
||||
|
||||
"delete" builtin
|
||||
"make" builtin
|
||||
"len" builtin
|
||||
"cap" builtin
|
||||
"new" builtin
|
||||
"copy" builtin
|
||||
"append" builtin
|
||||
"close" builtin
|
||||
"complex" builtin
|
||||
"imag" builtin
|
||||
"panic" builtin
|
||||
"print" builtin
|
||||
"println" builtin
|
||||
"real" builtin
|
||||
"recover" builtin
|
||||
done
|
||||
|
||||
:keyword Keyword
|
||||
* main noeat
|
||||
|
||||
:constant Constant
|
||||
* main noeat
|
||||
|
||||
:type Type
|
||||
* main noeat
|
||||
|
||||
:builtin Builtin
|
||||
* main noeat
|
||||
|
||||
:stmt Statement
|
||||
* main noeat
|
||||
|
||||
:label Label
|
||||
* main noeat
|
||||
|
||||
:struct Structure
|
||||
* main noeat
|
||||
|
||||
:cond Conditional
|
||||
* main noeat
|
||||
|
||||
:loop Loop
|
||||
* main noeat
|
||||
|
||||
:boolean Boolean
|
||||
* main noeat
|
||||
|
||||
########################## .subr escape START ######################################
|
||||
.subr escape
|
||||
:esc StringEscape string
|
||||
* esc_err noeat
|
||||
"abfnrtv'\"" whatever return
|
||||
# For some reason joe doesn't interpret \\ properly if merged with the
|
||||
# previous case. So create a separate case for it.
|
||||
"\\" whatever return
|
||||
"x" hex2
|
||||
"u" hex4
|
||||
"U" hex8
|
||||
"0-3" oct2
|
||||
|
||||
:hex8 StringEscape string
|
||||
* esc_err noeat
|
||||
"a-fA-F0-9" hex7
|
||||
|
||||
:hex7 StringEscape string
|
||||
* esc_err noeat
|
||||
"a-fA-F0-9" hex6
|
||||
|
||||
:hex6 StringEscape string
|
||||
* esc_err noeat
|
||||
"a-fA-F0-9" hex5
|
||||
|
||||
:hex5 StringEscape string
|
||||
* esc_err noeat
|
||||
"a-fA-F0-9" hex4
|
||||
|
||||
:hex4 StringEscape string
|
||||
* esc_err noeat
|
||||
"a-fA-F0-9" hex3
|
||||
|
||||
:hex3 StringEscape string
|
||||
* esc_err noeat
|
||||
"a-fA-F0-9" hex2
|
||||
|
||||
:hex2 StringEscape string
|
||||
* esc_err noeat
|
||||
"a-fA-F0-9" hex1
|
||||
|
||||
:hex1 StringEscape string
|
||||
* esc_err noeat
|
||||
"a-fA-F0-9" whatever return
|
||||
|
||||
:oct2 StringEscape string
|
||||
* esc_err noeat
|
||||
"0-7" oct1
|
||||
|
||||
:oct1 StringEscape string
|
||||
* esc_err noeat
|
||||
"0-7" whatever return
|
||||
|
||||
:esc_err Bad
|
||||
* esc_err return
|
||||
"\n" esc_err_newline noeat recolor=-2
|
||||
|
||||
:esc_err_newline Bad
|
||||
* esc_err return noeat
|
||||
|
||||
|
||||
.end
|
||||
########################## .subr escape END ######################################
|
||||
|
||||
|
||||
502
joe/usr/share/joe/syntax/groovy.jsf
Normal file
502
joe/usr/share/joe/syntax/groovy.jsf
Normal file
|
|
@ -0,0 +1,502 @@
|
|||
# JOE syntax highlight file for Groovy
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=Shebang +Preproc
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=Boolean +Constant
|
||||
=String +Constant
|
||||
=Regex +String
|
||||
=Escape
|
||||
=StringEscape +Escape +String
|
||||
=RegexEscape +StringEscape
|
||||
=Keyword
|
||||
=Operator +Keyword
|
||||
=Statement +Keyword
|
||||
=Conditional +Statement
|
||||
=Loop +Statement
|
||||
=Structure +Type +Keyword
|
||||
=Label +DefinedIdent
|
||||
=StorageClass +Type +Keyword
|
||||
=Bad
|
||||
=Brace
|
||||
=Builtin +DefinedFunction
|
||||
|
||||
:pre_idle Idle
|
||||
* NULL noeat call=.groovy()
|
||||
|
||||
.subr groovy
|
||||
|
||||
# #! allowed on first line
|
||||
|
||||
:reset Idle
|
||||
* idle noeat
|
||||
"#" maybe_shebang
|
||||
|
||||
:maybe_shebang Idle
|
||||
* idle noeat
|
||||
"!" shebang recolor=-2
|
||||
|
||||
:shebang Shebang
|
||||
* shebang
|
||||
"\n" idle
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"{}" brace recolor=-1
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." ident_no_kw
|
||||
"\"" double_quote recolor=-1
|
||||
"'" single_quote recolor=-1
|
||||
"/" maybe_regex recolor=-1
|
||||
"$" not_string buffer
|
||||
"\i" ident buffer
|
||||
|
||||
# / / regex not allowed after terms
|
||||
|
||||
:after_term Idle
|
||||
* idle noeat
|
||||
" \t)" after_term
|
||||
"/" slash_after_term
|
||||
|
||||
:slash_after_term Idle
|
||||
* idle noeat
|
||||
"/" line_comment recolor=-2
|
||||
"*" comment recolor=-2
|
||||
|
||||
:maybe_regex Regex string
|
||||
* regex noeat
|
||||
"*" comment recolor=-2
|
||||
"/" line_comment recolor=-2
|
||||
|
||||
:regex Regex string
|
||||
* regex
|
||||
"\\" regex_quote recolor=-1
|
||||
"/" after_term
|
||||
"$" maybe_regex_subst recolor=-1
|
||||
|
||||
:maybe_regex_subst Regex string
|
||||
* regex noeat
|
||||
"\i" regex_subst1 recolor=-2
|
||||
"{" regex_subst recolor=-2
|
||||
|
||||
:regex_subst RegexEscape string
|
||||
* regex_subst
|
||||
"}" regex
|
||||
|
||||
:regex_subst1 RegexEscape string
|
||||
* regex noeat
|
||||
".\c" regex_subst1
|
||||
|
||||
:regex_quote RegexEscape string
|
||||
* regex
|
||||
|
||||
:not_string Idle
|
||||
* idle noeat
|
||||
"\c" builtin recolor=-2
|
||||
"/" dstring recolor=-2
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"*" maybe_end_comment
|
||||
|
||||
:maybe_end_comment Comment comment
|
||||
* comment
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:end_of_file_comment Comment comment
|
||||
* end_of_file_comment
|
||||
|
||||
:first_digit Number
|
||||
* after_term noeat
|
||||
"x" hex
|
||||
"b" binary
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
"gGlLiIdDfF" after_term
|
||||
|
||||
:bad_number Bad
|
||||
* after_term noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* after_term noeat
|
||||
"0-7_" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:binary Number
|
||||
* after_term noeat
|
||||
"01_" binary
|
||||
"2-9" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* after_term noeat
|
||||
"0-9A-Fa-f_" hex
|
||||
|
||||
:decimal Number
|
||||
* after_term noeat
|
||||
"0-9_" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
"gGlLiIdDfF" after_term
|
||||
|
||||
:float Number
|
||||
* after_term noeat
|
||||
"eE" epart
|
||||
"0-9_" float
|
||||
"gGlLiIdDfF" after_term
|
||||
|
||||
:epart Number
|
||||
* after_term noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* after_term noeat
|
||||
"0-9_" enum
|
||||
"gGlLiIdDfF" after_term
|
||||
|
||||
# Distinguish between " and """
|
||||
|
||||
:double_quote String string
|
||||
* string noeat
|
||||
"\"" double_quote_1
|
||||
|
||||
:double_quote_1 String string
|
||||
* after_term noeat
|
||||
"\"" tstring
|
||||
|
||||
# strings like "hello"
|
||||
# interpolation allowed
|
||||
# line crossing not allowed
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" after_term
|
||||
"\n" after_term
|
||||
"\\" string_escape recolor=-1
|
||||
"$" maybe_string_subst recolor=-1
|
||||
|
||||
:maybe_string_subst String string
|
||||
* string noeat
|
||||
"\i" string_subst1 recolor=-2
|
||||
"{" string_subst recolor=-2
|
||||
|
||||
:string_subst StringEscape string
|
||||
* string_subst
|
||||
"}" string
|
||||
|
||||
:string_subst1 StringEscape string
|
||||
* string noeat
|
||||
".\c" string_subst1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"x" string_hex2
|
||||
"u" string_hex4
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
:string_hex4 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex3
|
||||
|
||||
:string_hex3 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_hex2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex1
|
||||
|
||||
:string_hex1 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal1
|
||||
|
||||
:string_octal1 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
# tstrings like "hello"
|
||||
# interpolation allowed
|
||||
# line crossing not allowed
|
||||
|
||||
:tstring String string
|
||||
* tstring
|
||||
"\"" tstring_maybe_done
|
||||
"\\" tstring_escape recolor=-1
|
||||
"$" maybe_tstring_subst recolor=-1
|
||||
|
||||
:tstring_maybe_done String string
|
||||
* tstring noeat
|
||||
"\"" tstring_maybe_done_2
|
||||
|
||||
:tstring_maybe_done_2 String string
|
||||
* tstring noeat
|
||||
"\"" after_term
|
||||
|
||||
:maybe_tstring_subst String string
|
||||
* tstring noeat
|
||||
"\i" tstring_subst1 recolor=-2
|
||||
"{" tstring_subst recolor=-2
|
||||
|
||||
:tstring_subst StringEscape string
|
||||
* tstring_subst
|
||||
"}" tstring
|
||||
|
||||
:tstring_subst1 StringEscape string
|
||||
* tstring noeat
|
||||
".\c" tstring_subst1
|
||||
|
||||
:tstring_escape StringEscape string
|
||||
* tstring
|
||||
"x" tstring_hex2
|
||||
"u" tstring_hex4
|
||||
"0-7" tstring_octal2
|
||||
"\n" tstring recolor=-2
|
||||
|
||||
:tstring_hex4 StringEscape string
|
||||
* tstring noeat
|
||||
"0-9a-fA-F" tstring_hex3
|
||||
|
||||
:tstring_hex3 StringEscape string
|
||||
* tstring noeat
|
||||
"0-9a-fA-F" tstring_hex2
|
||||
|
||||
:tstring_hex2 StringEscape string
|
||||
* tstring noeat
|
||||
"0-9a-fA-F" tstring_hex1
|
||||
|
||||
:tstring_hex1 StringEscape string
|
||||
* tstring noeat
|
||||
"0-9a-fA-F" tstring
|
||||
|
||||
:tstring_octal2 StringEscape string
|
||||
* tstring noeat
|
||||
"0-7" tstring_octal1
|
||||
|
||||
:tstring_octal1 StringEscape string
|
||||
* tstring noeat
|
||||
"0-7" tstring
|
||||
|
||||
# strings like: $/sdfsdf/$
|
||||
# interpolation allowed
|
||||
|
||||
:dstring String string
|
||||
* dstring
|
||||
"$" dstring_esc recolor=-1
|
||||
"/" dstring_maybe_done
|
||||
|
||||
:dstring_maybe_done String string
|
||||
* dstring noeat
|
||||
"$" after_term
|
||||
|
||||
:dstring_esc StringEscape string
|
||||
* dstring
|
||||
"/" dstring_esc_slash
|
||||
|
||||
:dstring_esc_slash StringEscape string
|
||||
* dstring noeat recolor=-1
|
||||
"$" dstring
|
||||
|
||||
:single_quote String string
|
||||
* char noeat recolor=-1
|
||||
"\'" single_quote_1
|
||||
|
||||
:single_quote_1 String string
|
||||
* after_term noeat
|
||||
"\'" tchar
|
||||
|
||||
# strings like 'hello'
|
||||
# no interpolation
|
||||
# no line crossing
|
||||
|
||||
:char String string
|
||||
* char
|
||||
"\n" after_term
|
||||
"\'" after_term
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape StringEscape string
|
||||
* char
|
||||
"x" char_hex2
|
||||
"u" char_hex4
|
||||
"0-7" char_octal2
|
||||
"\n" char recolor=-2
|
||||
|
||||
:char_hex4 StringEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex3
|
||||
|
||||
:char_hex3 StringEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex2
|
||||
|
||||
:char_hex2 StringEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex1
|
||||
|
||||
:char_hex1 StringEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char
|
||||
|
||||
:char_octal2 StringEscape string
|
||||
* char noeat
|
||||
"0-7" char_octal1
|
||||
|
||||
:char_octal1 StringEscape string
|
||||
* char noeat
|
||||
"0-7" char
|
||||
|
||||
# strings like 'hello'
|
||||
# no interpolation
|
||||
# no line crossing
|
||||
|
||||
:tchar String string
|
||||
* tchar
|
||||
"\'" after_term
|
||||
"\\" tchar_escape recolor=-1
|
||||
|
||||
:tchar_maybe_done String string
|
||||
* tchar noeat
|
||||
"\'" tchar_maybe_done_2
|
||||
|
||||
:tchar_maybe_done_2 String string
|
||||
* tchar noeat
|
||||
"\'" after_term
|
||||
|
||||
:tchar_escape StringEscape string
|
||||
* tchar
|
||||
"x" tchar_hex2
|
||||
"u" tchar_hex4
|
||||
"0-7" tchar_octal2
|
||||
"\n" tchar recolor=-2
|
||||
|
||||
:tchar_hex4 StringEscape string
|
||||
* tchar noeat
|
||||
"0-9a-fA-F" tchar_hex3
|
||||
|
||||
:tchar_hex3 StringEscape string
|
||||
* tchar noeat
|
||||
"0-9a-fA-F" tchar_hex2
|
||||
|
||||
:tchar_hex2 StringEscape string
|
||||
* tchar noeat
|
||||
"0-9a-fA-F" tchar_hex1
|
||||
|
||||
:tchar_hex1 StringEscape string
|
||||
* tchar noeat
|
||||
"0-9a-fA-F" tchar
|
||||
|
||||
:tchar_octal2 StringEscape string
|
||||
* tchar noeat
|
||||
"0-7" tchar_octal1
|
||||
|
||||
:tchar_octal1 StringEscape string
|
||||
* tchar noeat
|
||||
"0-7" tchar
|
||||
|
||||
:ident_no_kw Ident
|
||||
* after_term noeat
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"\i" ident_no_kw1
|
||||
|
||||
:ident_no_kw1 Ident
|
||||
* after_term noeat
|
||||
"\c" ident_no_kw1
|
||||
|
||||
:ident Ident
|
||||
* after_term noeat strings
|
||||
"as" operator
|
||||
"assert" stmt
|
||||
"break" loop
|
||||
"case" label
|
||||
"catch" stmt
|
||||
"class" struct
|
||||
"const" storage
|
||||
"continue" loop
|
||||
"def" stmt
|
||||
"default" label
|
||||
"do" loop
|
||||
"else" cond
|
||||
"enum" struct
|
||||
"extends" struct
|
||||
"finally" stmt
|
||||
"for" loop
|
||||
"goto" loop
|
||||
"if" cond
|
||||
"implements" struct
|
||||
"import" kw
|
||||
"in" operator
|
||||
"instanceof" operator
|
||||
"interface" struct
|
||||
"new" operator
|
||||
"package" kw
|
||||
"return" stmt
|
||||
"super" kw
|
||||
"switch" cond
|
||||
"throw" kw
|
||||
"throws" struct
|
||||
"trait" kw
|
||||
"try" stmt
|
||||
"while" loop
|
||||
"true" bool
|
||||
"false" bool
|
||||
"null" lit
|
||||
done
|
||||
"\c" ident
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:stmt Statement
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:struct Structure
|
||||
* idle noeat
|
||||
|
||||
:storage StorageClass
|
||||
* idle noeat
|
||||
|
||||
:label Label
|
||||
* idle noeat
|
||||
|
||||
:lit Constant
|
||||
* idle noeat
|
||||
|
||||
:bool Boolean
|
||||
* idle noeat
|
||||
|
||||
:operator Operator
|
||||
* idle noeat
|
||||
|
||||
:builtin Builtin
|
||||
* idle noeat
|
||||
"\c" builtin
|
||||
|
||||
.end
|
||||
124
joe/usr/share/joe/syntax/haml.jsf
Normal file
124
joe/usr/share/joe/syntax/haml.jsf
Normal file
|
|
@ -0,0 +1,124 @@
|
|||
# JOE syntax highlight file for Haml
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Constant
|
||||
=Escape
|
||||
=Bad
|
||||
=Brace
|
||||
|
||||
=TagName +Keyword
|
||||
=TagEnd +Keyword
|
||||
=Id +DefinedIdent
|
||||
|
||||
=Class +Type
|
||||
=Doctype +Preproc
|
||||
=Filter +Operator +Keyword
|
||||
|
||||
:line_start Idle
|
||||
* idle noeat
|
||||
# eat indent
|
||||
" " line_start
|
||||
"\\" escape_first recolor=-1
|
||||
"!" doctype1
|
||||
"%" tag recolor=-1
|
||||
# implicit <div>
|
||||
".#" after_tag noeat
|
||||
"/" html_comment recolor=-1
|
||||
":" filter recolor=-1
|
||||
|
||||
:escape_first Constant
|
||||
* idle_no_ruby
|
||||
|
||||
:idle Constant
|
||||
* idle_no_ruby
|
||||
"\n" line_start
|
||||
"#" maybe_subst
|
||||
"\\" maybe_subst_escape
|
||||
"=~-" ruby_call noeat
|
||||
"&!" maybe_esc_ruby_call
|
||||
|
||||
:idle_no_ruby Constant
|
||||
* idle_no_ruby
|
||||
"\n" line_start
|
||||
"#" maybe_subst
|
||||
"\\" maybe_subst_escape
|
||||
|
||||
:doctype1 Idle
|
||||
* idle recolor=-2
|
||||
"=" esc_ruby_call recolor=-2
|
||||
"!" doctype2
|
||||
|
||||
:doctype2 Idle
|
||||
* idle recolor=-3
|
||||
"!" doctype3 recolor=-3
|
||||
|
||||
:doctype3 Doctype
|
||||
* doctype3
|
||||
"\n" line_start
|
||||
|
||||
:tag TagName
|
||||
* idle noeat
|
||||
"a-zA-Z0-9_-" tag
|
||||
".#{(/" after_tag noeat
|
||||
|
||||
:after_tag Idle
|
||||
* idle noeat
|
||||
"." class recolor=-1
|
||||
"#" id recolor=-1
|
||||
"{" attrA
|
||||
"(" attrB
|
||||
"/" tag_close recolor=-1
|
||||
|
||||
:class Class
|
||||
* after_tag noeat
|
||||
"a-zA-Z0-9_-" class
|
||||
|
||||
:id Id
|
||||
* after_tag noeat
|
||||
"a-zA-Z0-9_-" id
|
||||
|
||||
:attrA Idle
|
||||
* attrA
|
||||
"}" after_tag
|
||||
|
||||
:attrB Idle
|
||||
* attrB
|
||||
")" after_tag
|
||||
|
||||
:tag_close TagEnd
|
||||
* idle noeat
|
||||
|
||||
:html_comment Comment comment
|
||||
* html_comment
|
||||
"\n" line_start
|
||||
|
||||
:ruby_call Idle
|
||||
* line_start call=ruby.ruby(haml)
|
||||
|
||||
:maybe_esc_ruby_call Constant
|
||||
* idle_no_ruby
|
||||
"=" esc_ruby_call recolor=-2
|
||||
|
||||
:esc_ruby_call Idle
|
||||
* line_start call=ruby.ruby(haml)
|
||||
"=" esc_ruby_call2
|
||||
|
||||
:esc_ruby_call2 Idle
|
||||
* line_start call=ruby.ruby(haml)
|
||||
|
||||
:maybe_subst Constant
|
||||
* idle_no_ruby
|
||||
"{" subst recolor=-2
|
||||
|
||||
:subst Escape
|
||||
* subst
|
||||
"}" idle_no_ruby
|
||||
|
||||
:maybe_subst_escape Constant
|
||||
* idle_no_ruby
|
||||
|
||||
:filter Filter
|
||||
* idle
|
||||
"a-zA-Z0-9_" filter
|
||||
445
joe/usr/share/joe/syntax/haskell.jsf
Normal file
445
joe/usr/share/joe/syntax/haskell.jsf
Normal file
|
|
@ -0,0 +1,445 @@
|
|||
# JOE syntax highlight file for Haskell
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Keyword
|
||||
=Statement +Keyword
|
||||
=Conditional +Statement +Keyword
|
||||
=Structure +Type +Keyword
|
||||
=Bad
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=FloatNumber +Number
|
||||
=DecNumber +Number
|
||||
=HexNumber +Number
|
||||
=OctNumber +Number
|
||||
=String +Constant
|
||||
=StringEscape +Escape +String
|
||||
=Character +String
|
||||
=CharacterEscape +StringEscape
|
||||
|
||||
=StringGap
|
||||
=Special +Escape
|
||||
=ModId +Type
|
||||
=VarId +Ident
|
||||
=ConId +Ident
|
||||
=VarSym +Operator
|
||||
=Pragma +Preproc
|
||||
|
||||
:reset Idle
|
||||
* reset
|
||||
"a-z_" varid buffer recolor=-1
|
||||
"A-Z" conormodid mark recolor=-1
|
||||
":" consym buffer recolor=-1
|
||||
"!#$%&*+./<=>?@\\^|~" varsym buffer recolor=-1
|
||||
"-" dashorvarsym mark buffer recolor=-1
|
||||
"(),;[]`}" special recolor=-1
|
||||
"{" specialorncomment recolor=-1
|
||||
"0-9" integerstart mark noeat
|
||||
"\'" charlit recolor=-1
|
||||
"\"" strlit recolor=-1
|
||||
|
||||
:special Special
|
||||
* reset noeat
|
||||
|
||||
:specialorncomment Special
|
||||
* reset noeat
|
||||
"-" ncommentstart recolor=-2
|
||||
|
||||
:ncommentstart Comment comment
|
||||
* reset noeat call=.comment()
|
||||
"#" pragma recolor=-3
|
||||
|
||||
.subr comment
|
||||
|
||||
:ncomment Comment comment
|
||||
* ncomment
|
||||
"BFHNTX" ncomment noeat call=comment_todo.comment_todo()
|
||||
"-" ncommentmaybeend
|
||||
"{" ncommentmaybenest
|
||||
|
||||
:ncommentmaybeend Comment comment
|
||||
* ncomment noeat
|
||||
"}" ncomment return
|
||||
|
||||
:ncommentmaybenest Comment comment
|
||||
* ncomment noeat
|
||||
"-" ncomment call=.comment()
|
||||
|
||||
.end
|
||||
|
||||
:pragma Pragma
|
||||
* pragma
|
||||
"#" pragmamaybeend1
|
||||
"-" pragmamaybebadend
|
||||
|
||||
:pragmamaybeend1 Pragma
|
||||
* pragma noeat
|
||||
"-" pragmamaybeend2
|
||||
|
||||
:pragmamaybeend2 Pragma
|
||||
* pragma noeat
|
||||
"}" reset
|
||||
|
||||
:pragmamaybebadend Bad
|
||||
* pragma noeat
|
||||
"}" errorstate recolor=-2
|
||||
|
||||
:errorstate Bad
|
||||
* reset
|
||||
|
||||
:conormodid ConId
|
||||
* reset noeat
|
||||
"." probablymodid recolor=-1
|
||||
"a-zA-Z0-9'_" conormodid
|
||||
|
||||
# give it color varid to color the dot in case it is *not* a modid in the
|
||||
# right color
|
||||
:probablymodid VarSym
|
||||
* ismodid noeat recolormark recolor=-1
|
||||
" \t\r\n\v\f" reset
|
||||
|
||||
:ismodid ModId
|
||||
* reset noeat
|
||||
|
||||
:varid VarId
|
||||
* reset noeat strings
|
||||
"case" stmt
|
||||
"class" struct
|
||||
"data" struct
|
||||
"default" struct
|
||||
"deriving" struct
|
||||
"do" stmt
|
||||
"else" cond
|
||||
"if" cond
|
||||
"import" kw
|
||||
"infix" struct
|
||||
"infixl" struct
|
||||
"infixr" struct
|
||||
"instance" struct
|
||||
"let" stmt
|
||||
"module" struct
|
||||
"newtype" kw
|
||||
"of" stmt
|
||||
"then" cond
|
||||
"type" kw
|
||||
"where" struct
|
||||
"_" kw
|
||||
done
|
||||
"a-zA-Z0-9_'" varid
|
||||
|
||||
:kw Keyword
|
||||
* reset noeat
|
||||
|
||||
:cond Conditional
|
||||
* reset noeat
|
||||
|
||||
:struct Structure
|
||||
* reset noeat
|
||||
|
||||
:stmt Statement
|
||||
* reset noeat
|
||||
|
||||
:consym ConId
|
||||
* reset noeat strings
|
||||
":" kw
|
||||
"::" kw
|
||||
done
|
||||
"-!#$%&*+./<=>?@\\^|~:" consym
|
||||
|
||||
:varsym VarSym
|
||||
* reset noeat strings
|
||||
".." kw
|
||||
"=" kw
|
||||
"\\" kw
|
||||
"|" kw
|
||||
"<-" kw
|
||||
"->" kw
|
||||
"@" kw
|
||||
"~" kw
|
||||
done
|
||||
"-!#$%&*+./<=>?@\\^|~:" varsym
|
||||
|
||||
:dashorvarsym VarSym
|
||||
* varsym noeat
|
||||
"-" dashdash hold
|
||||
|
||||
:dashdash VarSym
|
||||
* linecomment recolormark noeat
|
||||
"!#$%&*+./<=>?@\\^|~:" varsym
|
||||
"-" dashdash
|
||||
|
||||
:linecomment Comment comment
|
||||
* linecomment
|
||||
"BFHNTX" linecomment noeat call=comment_todo.comment_todo()
|
||||
"\n" reset
|
||||
|
||||
:integerstart DecNumber
|
||||
* decnum
|
||||
"0" intdispatch
|
||||
|
||||
:decnum DecNumber
|
||||
* reset noeat
|
||||
"." floatmaybemant
|
||||
"e" floatexponentstart
|
||||
"0-9" decnum
|
||||
|
||||
:intdispatch DecNumber
|
||||
* decnum noeat
|
||||
"oO" octstart
|
||||
"xX" hexstart
|
||||
|
||||
# Catch "0o " which is "integer 0" "symbol o" "whitespace"
|
||||
# and "0oo" which is "integer 0" "symbol oo"
|
||||
:octstart OctNumber
|
||||
* varid noeat recolor=-2
|
||||
"0-7" octint recolor=-3
|
||||
|
||||
# Catch "0o08" which is "(octal) integer 0" "integer 8"
|
||||
:octint OctNumber
|
||||
* reset noeat
|
||||
"0-7" octint
|
||||
|
||||
:hexstart HexNumber
|
||||
* varid noeat recolor=-2
|
||||
"0-9a-fA-F" hexint recolor=-3
|
||||
|
||||
:hexint HexNumber
|
||||
* reset noeat
|
||||
"0-9a-fA-F" hexint
|
||||
|
||||
# default jumps to varsym because the dot that sent us here is the first
|
||||
# char of a symbol.
|
||||
:floatmaybemant FloatNumber
|
||||
* varsym noeat recolor=-2
|
||||
"0-9" floatmantissa recolormark
|
||||
|
||||
:floatmantissa FloatNumber
|
||||
* reset noeat
|
||||
"0-9" floatmantissa
|
||||
"eE" floatexponentstart
|
||||
|
||||
# after an 'e'
|
||||
# default jump is for identifiers starting with e directly pasted to a
|
||||
# number
|
||||
# recolormark is needed in the case we got here from decnum
|
||||
:floatexponentstart FloatNumber
|
||||
* varid noeat recolor=-2
|
||||
"+-" floatexponentstart2
|
||||
"0-9" floatexponent recolormark
|
||||
|
||||
# in case of non-digit:
|
||||
# the e is a one-char-identifier, the + or - is the start of a symbol
|
||||
:floatexponentstart2 FloatNumber
|
||||
* unrollfloat noeat recolor=-3
|
||||
"0-9" floatexponent recolormark
|
||||
|
||||
:floatexponent FloatNumber
|
||||
* reset noeat
|
||||
"0-9" floatexponent
|
||||
|
||||
# the error is just for testing...
|
||||
:unrollfloat VarId
|
||||
* varsym noeat recolor=-2
|
||||
|
||||
:charlit Character string
|
||||
* charlitend
|
||||
"\n" errorstate noeat recolor=-2
|
||||
"\'" errorstate noeat recolor=-2
|
||||
"\\" escape_charlit mark recolor=-1
|
||||
|
||||
:charlitend Character string
|
||||
* charliterror noeat
|
||||
"\'" reset
|
||||
|
||||
:escape_charlit CharacterEscape string
|
||||
* charliterror recolor=-2
|
||||
"0-9" escdecchar
|
||||
"o" escoctcharstart
|
||||
"x" eschexcharstart
|
||||
"abfnrtv\\\"\'" charlitend
|
||||
"A-Z" escasciichar buffer
|
||||
"^" escasciictrlchar
|
||||
|
||||
:escoctcharstart CharacterEscape string
|
||||
* charliterror recolor=-3 noeat
|
||||
"0-7" escoctchar
|
||||
|
||||
:escoctchar CharacterEscape string
|
||||
* charlitend noeat
|
||||
"0-7" escoctchar
|
||||
|
||||
:escdecchar CharacterEscape string
|
||||
* charlitend noeat
|
||||
"0-9" escdecchar
|
||||
|
||||
:eschexcharstart CharacterEscape string
|
||||
* charliterror recolor=-3 noeat
|
||||
"0-9a-fA-F" eschexchar
|
||||
|
||||
:eschexchar CharacterEscape string
|
||||
* charlitend noeat
|
||||
"0-9a-fA-F" eschexchar
|
||||
|
||||
:escascnotfoundchar CharacterEscape string
|
||||
* charliterror recolormark noeat
|
||||
"A-Z" escasciichar
|
||||
|
||||
:escasciichar CharacterEscape string
|
||||
* charliterror recolormark
|
||||
"A-Z'" escascnotfoundchar noeat strings
|
||||
"NUL" asciidonechar
|
||||
"STX" asciidonechar
|
||||
"ETX" asciidonechar
|
||||
"EOT" asciidonechar
|
||||
"ENQ" asciidonechar
|
||||
"ACK" asciidonechar
|
||||
"BEL" asciidonechar
|
||||
"BS" asciidonechar
|
||||
"HT" asciidonechar
|
||||
"LF" asciidonechar
|
||||
"VT" asciidonechar
|
||||
"FF" asciidonechar
|
||||
"CR" asciidonechar
|
||||
"SO" asciiSOchar
|
||||
"SI" asciidonechar
|
||||
"DLE" asciidonechar
|
||||
"DC1" asciidonechar
|
||||
"DC2" asciidonechar
|
||||
"DC3" asciidonechar
|
||||
"DC4" asciidonechar
|
||||
"NAK" asciidonechar
|
||||
"SYN" asciidonechar
|
||||
"ETB" asciidonechar
|
||||
"CAN" asciidonechar
|
||||
"EM" asciidonechar
|
||||
"SUB" asciidonechar
|
||||
"ESC" asciidonechar
|
||||
"FS" asciidonechar
|
||||
"GS" asciidonechar
|
||||
"RS" asciidonechar
|
||||
"US" asciidonechar
|
||||
"SP" asciidonechar
|
||||
"DEL" asciidonechar
|
||||
done
|
||||
|
||||
:asciiSOchar CharacterEscape string
|
||||
* charliterror recolormark
|
||||
"'" charlitend noeat
|
||||
"H" charlitend
|
||||
|
||||
:escasciictrlchar CharacterEscape string
|
||||
* charliterror noeat recolor=-3
|
||||
"A-Z@[\\]^_" charlitend
|
||||
|
||||
:asciidonechar CharacterEscape string
|
||||
* charlitend noeat
|
||||
|
||||
:charliterror Bad
|
||||
* charliterror
|
||||
"\'" charlitend noeat
|
||||
|
||||
# now for string literals
|
||||
|
||||
:strlit String string
|
||||
* strlit
|
||||
"\"" reset
|
||||
"\n" errorstate noeat recolor=-2
|
||||
"\\" escape_strlit mark recolor=-1
|
||||
|
||||
:escape_strlit StringEscape string
|
||||
* strliterror recolor=-2
|
||||
"0-9" escdecstr
|
||||
"o" escoctstrstart
|
||||
"x" eschexstrstart
|
||||
"abfnrtv\\\"\'&" strlit
|
||||
"A-Z" escasciistr buffer
|
||||
"^" escasciictrlstr
|
||||
" \t\n\r\v" stringgap recolor=-2
|
||||
|
||||
:escoctstrstart StringEscape string
|
||||
* strliterror recolor=-3 noeat
|
||||
"0-7" escoctstr
|
||||
|
||||
:escoctstr StringEscape string
|
||||
* strlit noeat
|
||||
"0-7" escoctstr
|
||||
|
||||
:escdecstr StringEscape string
|
||||
* strlit noeat
|
||||
"0-9" escdecstr
|
||||
|
||||
:eschexstrstart StringEscape string
|
||||
* strliterror recolor=-3 noeat
|
||||
"0-9a-fA-F" eschexstr
|
||||
|
||||
:eschexstr StringEscape string
|
||||
* strlit noeat
|
||||
"0-9a-fA-F" eschexstr
|
||||
|
||||
:escascnotfoundstr StringEscape string
|
||||
* strliterror recolormark noeat
|
||||
"A-Z" escasciistr
|
||||
|
||||
:escasciistr StringEscape string
|
||||
* strliterror noeat recolormark
|
||||
"A-Z\"" escascnotfoundstr noeat strings
|
||||
"NUL" asciidonestr
|
||||
"STX" asciidonestr
|
||||
"ETX" asciidonestr
|
||||
"EOT" asciidonestr
|
||||
"ENQ" asciidonestr
|
||||
"ACK" asciidonestr
|
||||
"BEL" asciidonestr
|
||||
"BS" asciidonestr
|
||||
"HT" asciidonestr
|
||||
"LF" asciidonestr
|
||||
"VT" asciidonestr
|
||||
"FF" asciidonestr
|
||||
"CR" asciidonestr
|
||||
"SO" asciiSOstr
|
||||
"SI" asciidonestr
|
||||
"DLE" asciidonestr
|
||||
"DC1" asciidonestr
|
||||
"DC2" asciidonestr
|
||||
"DC3" asciidonestr
|
||||
"DC4" asciidonestr
|
||||
"NAK" asciidonestr
|
||||
"SYN" asciidonestr
|
||||
"ETB" asciidonestr
|
||||
"CAN" asciidonestr
|
||||
"EM" asciidonestr
|
||||
"SUB" asciidonestr
|
||||
"ESC" asciidonestr
|
||||
"FS" asciidonestr
|
||||
"GS" asciidonestr
|
||||
"RS" asciidonestr
|
||||
"US" asciidonestr
|
||||
"SP" asciidonestr
|
||||
"DEL" asciidonestr
|
||||
done
|
||||
|
||||
:asciiSOstr StringEscape string
|
||||
* strlit noeat
|
||||
"H" strlit
|
||||
|
||||
:escasciictrlstr StringEscape string
|
||||
* strliterror noeat recolor=-3
|
||||
"A-Z@[\\]^_" strlit
|
||||
|
||||
:asciidonestr StringEscape string
|
||||
* strlit noeat
|
||||
|
||||
:stringgap StringGap string
|
||||
* strgaperror recolor=-1
|
||||
"\\" strlit
|
||||
" \n\r\t\v" stringgap
|
||||
|
||||
:strgaperror Bad
|
||||
* strgaperror
|
||||
"\\" strlit
|
||||
"\"" reset
|
||||
|
||||
:strliterror Bad
|
||||
* strlit noeat
|
||||
|
||||
1358
joe/usr/share/joe/syntax/html.jsf
Normal file
1358
joe/usr/share/joe/syntax/html.jsf
Normal file
File diff suppressed because it is too large
Load diff
7
joe/usr/share/joe/syntax/htmlerb.jsf
Normal file
7
joe/usr/share/joe/syntax/htmlerb.jsf
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
# JOE syntax highlight file for HTML embedded ERB
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
=Idle
|
||||
|
||||
:begin Idle
|
||||
* NULL noeat call=html.html(erb)
|
||||
79
joe/usr/share/joe/syntax/ini.jsf
Normal file
79
joe/usr/share/joe/syntax/ini.jsf
Normal file
|
|
@ -0,0 +1,79 @@
|
|||
# JOE syntax highlight file for INI files
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Escape
|
||||
=Bad
|
||||
=Value # Maybe should be +Constant but it's too colorful.
|
||||
|
||||
=Attr +Type
|
||||
=Key +Attr
|
||||
=Separator +Attr
|
||||
=Section +Preproc
|
||||
|
||||
:line_start Idle
|
||||
* key noeat
|
||||
"\n" line_start
|
||||
" \t\r" line_start # leading spaces
|
||||
";#" line_comment recolor=-1
|
||||
"[" section recolor=-1
|
||||
"=" missing_key recolor=-1
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" line_start
|
||||
|
||||
:section Section
|
||||
* section
|
||||
"]" section_end
|
||||
"\n" section_unexp_end recolor=-2
|
||||
|
||||
:section_end Bad
|
||||
* section_end
|
||||
"\n" line_start
|
||||
|
||||
:section_unexp_end Bad
|
||||
* line_start noeat
|
||||
|
||||
:missing_key Bad
|
||||
* value_pre noeat
|
||||
|
||||
:key Key
|
||||
* key
|
||||
" \t\r" key_post noeat
|
||||
"=" sep recolor=-1
|
||||
"\n" key_error recolor=-2
|
||||
|
||||
:key_post Idle
|
||||
* value_pre noeat
|
||||
" \t\r" key_post
|
||||
"=" sep recolor=-1
|
||||
|
||||
:key_error Bad
|
||||
* key noeat
|
||||
|
||||
:sep Separator
|
||||
* value_pre noeat
|
||||
|
||||
:value_pre Idle
|
||||
* value noeat
|
||||
" \t\r" value_pre
|
||||
|
||||
:value Value
|
||||
* value
|
||||
"\\" value_esc
|
||||
"\n" line_start
|
||||
" " maybe_comment recolor=-1
|
||||
|
||||
:value_esc Escape
|
||||
* value
|
||||
"\n" value_error recolor=-2
|
||||
|
||||
:value_error Bad
|
||||
* value noeat
|
||||
|
||||
:maybe_comment Idle
|
||||
* value noeat
|
||||
";#" line_comment recolor=-1
|
||||
129
joe/usr/share/joe/syntax/iptables.jsf
Normal file
129
joe/usr/share/joe/syntax/iptables.jsf
Normal file
|
|
@ -0,0 +1,129 @@
|
|||
# JOE syntax highlight file for ip(6)tables-save and -restore
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Constant
|
||||
=Escape
|
||||
=Bad
|
||||
|
||||
=Table +Preproc
|
||||
=Policy +Keyword
|
||||
=Option +Type
|
||||
=Module +DefinedIdent
|
||||
|
||||
:line_start Idle
|
||||
* rest noeat
|
||||
"#" line_comment recolor=-1
|
||||
"*" maybe_table buffer
|
||||
":" default_policy recolor=-1
|
||||
"C" maybe_commit buffer
|
||||
"-" command
|
||||
|
||||
:rest Idle
|
||||
* rest
|
||||
"\n" line_start
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"\n" line_start
|
||||
|
||||
:maybe_table Idle
|
||||
* bad noeat strings
|
||||
"*filter" table_name
|
||||
"*mangle" table_name
|
||||
"*nat" table_name
|
||||
"*raw" table_name
|
||||
done
|
||||
"a-z" maybe_table
|
||||
|
||||
:table_name Table
|
||||
* bad noeat
|
||||
"\n" line_start
|
||||
|
||||
:default_policy Policy
|
||||
* default_policy
|
||||
"\n" line_start
|
||||
|
||||
:maybe_commit Idle
|
||||
* bad noeat strings
|
||||
"COMMIT" commit
|
||||
done
|
||||
"A-Z" maybe_commit
|
||||
|
||||
:commit Table
|
||||
* bad noeat
|
||||
"\n" line_start
|
||||
|
||||
:command Idle
|
||||
* bad noeat
|
||||
"ADINX" chain_name_pre
|
||||
|
||||
:chain_name_pre Idle
|
||||
* chain_name noeat
|
||||
" " chain_name_pre
|
||||
|
||||
:chain_name Option
|
||||
* chain_name
|
||||
" " rule_spec noeat
|
||||
"\n" line_start
|
||||
|
||||
:rule_spec Idle
|
||||
* rule_option noeat
|
||||
" " rule_spec
|
||||
"\n" line_start
|
||||
|
||||
:rule_option Idle
|
||||
* rule_option
|
||||
" " rule_spec noeat
|
||||
"\n" line_start
|
||||
"-" rule_flag
|
||||
|
||||
:rule_flag Idle
|
||||
* rule_option
|
||||
"-" rule_flag_flag
|
||||
"iojp" rule_iojp_pre
|
||||
"sd" rule_sd_pre
|
||||
"m" rule_m_pre
|
||||
|
||||
:rule_flag_flag Idle
|
||||
* rule_flag_flag1 buffer
|
||||
|
||||
:rule_flag_flag1 Idle
|
||||
* rule_option noeat strings
|
||||
"sport" rule_sd_pre
|
||||
"dport" rule_sd_pre
|
||||
done
|
||||
"a-z-_" rule_flag_flag1
|
||||
|
||||
|
||||
:rule_iojp_pre Idle
|
||||
* rule_iojp noeat
|
||||
" " rule_iojp_pre
|
||||
|
||||
:rule_iojp Option
|
||||
* rule_iojp
|
||||
" " rule_option noeat
|
||||
"\n" line_start
|
||||
|
||||
:rule_sd_pre Idle
|
||||
* rule_sd noeat
|
||||
" " rule_sd_pre
|
||||
|
||||
:rule_sd Constant
|
||||
* rule_sd
|
||||
" " rule_option noeat
|
||||
"\n" line_start
|
||||
|
||||
:rule_m_pre Idle
|
||||
* rule_m noeat
|
||||
" " rule_m_pre
|
||||
|
||||
:rule_m Module
|
||||
* rule_m
|
||||
" " rule_option noeat
|
||||
"\n" line_start
|
||||
|
||||
:bad Bad
|
||||
* bad
|
||||
"\n" line_start
|
||||
311
joe/usr/share/joe/syntax/java.jsf
Normal file
311
joe/usr/share/joe/syntax/java.jsf
Normal file
|
|
@ -0,0 +1,311 @@
|
|||
# JOE syntax highlight file for JAVA
|
||||
|
||||
# Needs: improve escape parsing
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=Boolean +Constant
|
||||
=String +Constant
|
||||
=Character +String
|
||||
=Escape
|
||||
=StringEscape +Escape +String
|
||||
=CharacterEscape +StringEscape
|
||||
=Type
|
||||
=Keyword
|
||||
=Operator +Keyword
|
||||
=Bad
|
||||
=Brace
|
||||
=Control
|
||||
=Statement +Keyword
|
||||
=Conditional +Statement
|
||||
=Loop +Statement
|
||||
=Structure +Type +Keyword
|
||||
=StorageClass +Type +Keyword
|
||||
=Include +Preproc
|
||||
=Label +DefinedIdent
|
||||
|
||||
=Methods +DefinedFunction +DefinedIdent +Ident
|
||||
|
||||
:begin Idle
|
||||
* begin noeat call=.java()
|
||||
|
||||
#
|
||||
# Java as a subroute- for use as java script in html
|
||||
#
|
||||
|
||||
.subr java
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\n" idle
|
||||
"/" slash
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"\i\p{Sc}" ident mark buffer
|
||||
"{}" brace recolor=-1
|
||||
",:;=()><[]*&|!~+\-%^" control recolor=-1
|
||||
|
||||
:maybe_done Control
|
||||
* idle noeat
|
||||
"/" idle noeat return recolor=-2
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:control Control
|
||||
* idle noeat
|
||||
|
||||
:slash Idle
|
||||
* idle noeat
|
||||
"*" comment recolor=-2
|
||||
"/" line_comment recolor=-2
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"*" maybe_end_comment
|
||||
|
||||
:maybe_end_comment Comment comment
|
||||
* comment noeat
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"xX" hex
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* idle noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* idle noeat
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:decimal Number
|
||||
* idle noeat
|
||||
"0-9" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" idle
|
||||
"\\" string_escape recolor=-1
|
||||
"%" string_control recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"u" string_uni1
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
:string_uni1 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_uni2
|
||||
|
||||
:string_uni2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_uni3
|
||||
|
||||
:string_uni3 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_uni4
|
||||
|
||||
:string_uni4 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:string_control StringEscape string
|
||||
* string_control
|
||||
"\n" reset
|
||||
"diouxXeEfFgGaAcspn%SC" string
|
||||
|
||||
:char Character string
|
||||
* char
|
||||
"\n" reset
|
||||
"'" idle
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape CharacterEscape string
|
||||
* char
|
||||
"u" char_uni1
|
||||
"0-7" char_octal2
|
||||
"\n" char recolor=-2
|
||||
|
||||
:char_uni1 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_uni2
|
||||
|
||||
:char_uni2 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_uni3
|
||||
|
||||
:char_uni3 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_uni4
|
||||
|
||||
:char_uni4 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char
|
||||
|
||||
:char_octal2 CharacterEscape string
|
||||
* char noeat
|
||||
"0-7" char_octal3
|
||||
|
||||
:char_octal3 CharacterEscape string
|
||||
* char noeat
|
||||
"0-7" char
|
||||
|
||||
:ident Ident
|
||||
* ident_end noeat markend strings
|
||||
"abstract" storage
|
||||
"assert" stmt
|
||||
"boolean" type
|
||||
"break" loop
|
||||
"byte" type
|
||||
"case" label
|
||||
"catch" kw
|
||||
"char" type
|
||||
"class" struct
|
||||
"const" bad_kw
|
||||
"continue" loop
|
||||
"default" label
|
||||
"do" loop
|
||||
"double" type
|
||||
"else" cond
|
||||
"enum" storage
|
||||
"extends" storage
|
||||
"false" bool
|
||||
"final" storage
|
||||
"finally" kw
|
||||
"float" type
|
||||
"for" loop
|
||||
"goto" bad_kw
|
||||
"if" cond
|
||||
"implements" storage
|
||||
"import" include
|
||||
"instanceof" operator
|
||||
"int" type
|
||||
"interface" struct
|
||||
"long" type
|
||||
"native" include
|
||||
"new" operator
|
||||
"null" lit
|
||||
"package" include
|
||||
"private" storage
|
||||
"protected" storage
|
||||
"public" storage
|
||||
"return" stmt
|
||||
"serializable" storage
|
||||
"short" type
|
||||
"static" storage
|
||||
"strictfp" storage
|
||||
"super" kw
|
||||
"switch" cond
|
||||
"synchronized" storage
|
||||
"this" kw
|
||||
"throw" stmt
|
||||
"throws" storage
|
||||
"transient" storage
|
||||
"true" bool
|
||||
"try" kw
|
||||
"void" kw
|
||||
"volatile" storage
|
||||
"while" loop
|
||||
done
|
||||
"\c\p{Sc}" ident
|
||||
|
||||
:type Type
|
||||
* idle noeat
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:bad_kw Bad
|
||||
* idle noeat
|
||||
|
||||
:bool Boolean
|
||||
* idle noeat
|
||||
|
||||
:lit Constant
|
||||
* idle noeat
|
||||
|
||||
:operator Operator
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:storage StorageClass
|
||||
* idle noeat
|
||||
|
||||
:struct Structure
|
||||
* idle noeat
|
||||
|
||||
:include Include
|
||||
* idle noeat
|
||||
|
||||
:stmt Statement
|
||||
* idle noeat
|
||||
|
||||
:label Label
|
||||
* idle noeat
|
||||
|
||||
:ident_end Ident
|
||||
* idle noeat
|
||||
" " ident_end
|
||||
"(" method_end noeat recolormark
|
||||
|
||||
:method_end Methods
|
||||
* idle noeat
|
||||
|
||||
.end
|
||||
86
joe/usr/share/joe/syntax/jcf.jsf
Normal file
86
joe/usr/share/joe/syntax/jcf.jsf
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
# JOE syntax highlight file for Joe Colors
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Preproc
|
||||
=Define +DefinedIdent
|
||||
=ColorSection +Preproc
|
||||
=BuiltinSpec +Keyword
|
||||
=ColorAttr +Keyword
|
||||
=ColorDef +Type
|
||||
=ColorRef +Type
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=Operator
|
||||
=Macro +Variable +Escape
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"#" comment recolor=-1
|
||||
"0-9" number recolor=-1
|
||||
"$" hex_color recolor=-1
|
||||
"*" asterisk recolor=-1
|
||||
"=" color_def recolor=-1
|
||||
"+" color_ref recolor=-1
|
||||
"." pre recolor=-1 buffer
|
||||
"/" slash recolor=-1
|
||||
"-" builtin recolor=-1
|
||||
"[" macro_ref recolor=-1
|
||||
"a-zA-Z" attribute recolor=-1
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"\n" idle
|
||||
|
||||
:number Number
|
||||
* idle noeat
|
||||
"0-9" number
|
||||
|
||||
:hex_color Number
|
||||
* idle noeat
|
||||
"0-9a-fA-F" hex_color
|
||||
|
||||
:asterisk Operator
|
||||
* idle noeat
|
||||
|
||||
:slash Operator
|
||||
* idle noeat
|
||||
|
||||
:color_def ColorDef
|
||||
* idle noeat
|
||||
"\c." color_def
|
||||
|
||||
:color_ref ColorRef
|
||||
* idle noeat
|
||||
"\c." color_ref
|
||||
|
||||
:pre Preproc
|
||||
* idle noeat strings
|
||||
".colors" color_section
|
||||
".set" macro_def
|
||||
done
|
||||
"\c" pre
|
||||
|
||||
:color_section ColorSection
|
||||
* idle noeat
|
||||
|
||||
:macro_def Preproc
|
||||
* idle
|
||||
" \t" macro_def
|
||||
"\i" macro_name noeat
|
||||
|
||||
:macro_name Define
|
||||
* idle
|
||||
"\i\c" macro_name
|
||||
|
||||
:macro_ref Macro
|
||||
* macro_ref
|
||||
"\n]" idle
|
||||
|
||||
:builtin BuiltinSpec
|
||||
* idle noeat
|
||||
"\c" builtin
|
||||
|
||||
:attribute ColorAttr
|
||||
* idle noeat
|
||||
"a-zA-Z" attribute
|
||||
122
joe/usr/share/joe/syntax/joerc.jsf
Normal file
122
joe/usr/share/joe/syntax/joerc.jsf
Normal file
|
|
@ -0,0 +1,122 @@
|
|||
# JOE syntax highlight file for typical UNIX configuration files
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=Escape
|
||||
=Bad
|
||||
|
||||
:idle Idle
|
||||
* not_comment
|
||||
"\n" idle
|
||||
" " comment
|
||||
"-" option
|
||||
"\"" keybind_string recolor=-1
|
||||
"\i" keybind
|
||||
|
||||
:keybind Idle
|
||||
* keybind
|
||||
"\"" keybind_string recolor=-1
|
||||
"\n" idle
|
||||
"," keybind_after_comma
|
||||
" " keybind1
|
||||
|
||||
:keybind_after_comma Idle
|
||||
* keybind noeat
|
||||
" " keybind_after_comma
|
||||
"\n" keybind_after_comma
|
||||
|
||||
:keybind_string String string
|
||||
* keybind_string
|
||||
"\\" keybind_escape recolor=-1
|
||||
"\"" keybind
|
||||
|
||||
:keybind_escape Escape
|
||||
* keybind_string
|
||||
|
||||
:keybind1 Idle
|
||||
* keybind2
|
||||
"\n" idle
|
||||
" " keybind1
|
||||
|
||||
:keybind2 Idle
|
||||
* keybind2
|
||||
"\n" idle
|
||||
" " comment noeat
|
||||
" " maybe_com
|
||||
|
||||
:maybe_com Idle
|
||||
* keybind2 noeat
|
||||
" " comment noeat
|
||||
|
||||
:option Idle
|
||||
* bad recolor=-1
|
||||
"-" option
|
||||
"\i" ident buffer
|
||||
|
||||
:ident Idle
|
||||
* comment noeat strings
|
||||
"backpath" sopt
|
||||
"lines" nopt
|
||||
"baud" nopt
|
||||
"columns" nopt
|
||||
"skiptop" nopt
|
||||
"text_color" sopt
|
||||
"status_color" sopt
|
||||
"help_color" sopt
|
||||
"menu_color" sopt
|
||||
"prompt_color" sopt
|
||||
"msg_color" sopt
|
||||
"lmsg" sopt
|
||||
"rmsg" sopt
|
||||
"smsg" sopt
|
||||
"zmsg" sopt
|
||||
"xmsg" sopt
|
||||
"aborthint" sopt
|
||||
"helphint" sopt
|
||||
"cpara" sopt
|
||||
"encoding" sopt
|
||||
"syntax" sopt
|
||||
"indentc" nopt
|
||||
"istep" nopt
|
||||
"lmargin" nopt
|
||||
"rmargin" nopt
|
||||
"keymap" sopt
|
||||
"mfirst" sopt
|
||||
"mnew" sopt
|
||||
"mold" sopt
|
||||
"msnew" sopt
|
||||
"msold" sopt
|
||||
"text_delimiters" sopt
|
||||
done
|
||||
"\c" ident
|
||||
|
||||
:sopt Idle
|
||||
* dosopt # Do eat the space
|
||||
|
||||
:dosopt String string
|
||||
* dosopt
|
||||
"\n" idle
|
||||
|
||||
:nopt Idle
|
||||
* bad recolor=-1
|
||||
" \t" nopt
|
||||
"0-9" nopt1 recolor=-1
|
||||
|
||||
:nopt1 Number
|
||||
* comment noeat
|
||||
"0-9" nopt1
|
||||
|
||||
:bad Bad
|
||||
* bad
|
||||
"\n" idle
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"\n" idle
|
||||
|
||||
:not_comment Idle
|
||||
* not_comment
|
||||
"\n" idle
|
||||
704
joe/usr/share/joe/syntax/js.jsf
Normal file
704
joe/usr/share/joe/syntax/js.jsf
Normal file
|
|
@ -0,0 +1,704 @@
|
|||
# JOE syntax highlight file for JavaScript
|
||||
# by Christian Nicolai (http://mycrobase.de) and Rebecca Turner
|
||||
|
||||
# Define colors
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape
|
||||
=Regex +String
|
||||
=RegexEscape +StringEscape
|
||||
=RegexOptions
|
||||
=Number +Constant
|
||||
=Type
|
||||
=CustomType +DefinedType +DefinedIdent
|
||||
=Keyword
|
||||
=Global
|
||||
=Exports
|
||||
=ExportItem
|
||||
=Operator
|
||||
=Bad
|
||||
=Brace
|
||||
=Assign
|
||||
=Paren
|
||||
=Bracket
|
||||
=Semicolon
|
||||
=Comma
|
||||
=PropSep
|
||||
=Syntax
|
||||
=Ident
|
||||
=Method +Ident
|
||||
|
||||
# from html.jsf to support embedded languages
|
||||
=TagEdge
|
||||
|
||||
:begin Idle
|
||||
* begin noeat call=.js()
|
||||
"#" shebang recolor=-1
|
||||
|
||||
:shebang Comment comment
|
||||
* shebang
|
||||
"\n" begin
|
||||
|
||||
.subr js
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"/" re_or_comment recolor=-1
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" after_term call=.string() recolor=-1 save_c
|
||||
"'" after_term call=.string() recolor=-1 save_c
|
||||
"`" after_term call=.string(template) recolor=-1
|
||||
"A-Z" type_match mark buffer recolor=-1
|
||||
"$a-z_" ident mark buffer recolor=-1
|
||||
"{}" brace recolor=-1
|
||||
"()" paren noeat recolor=-1
|
||||
";" semicolon recolor=-1
|
||||
"," comma recolor=-1
|
||||
"=" assign_maybe recolor=-1
|
||||
"[]" bracket noeat recolor=-1
|
||||
"\-" subtract recolor=-1
|
||||
"+" add recolor=-1
|
||||
"*|&^%" mutate_maybe recolor=-1
|
||||
":?~" syntax recolor=-1
|
||||
.ifdef html
|
||||
"<" maybe_done recolor=-1
|
||||
">!" eqmixer_maybe recolor=-1
|
||||
.else
|
||||
.ifdef php
|
||||
"<" maybe_done recolor=-1
|
||||
">!" eqmixer_maybe recolor=-1
|
||||
.else
|
||||
.ifdef mason
|
||||
"<" maybe_done recolor=-1
|
||||
">!" eqmixer_maybe recolor=-1
|
||||
.else
|
||||
"<>!" eqmixer_maybe recolor=-1
|
||||
.endif
|
||||
.endif
|
||||
.endif
|
||||
|
||||
:subtract Assign
|
||||
* mutate_maybe noeat
|
||||
"\-" assign recolor=-2
|
||||
|
||||
:add Assign
|
||||
* mutate_maybe noeat
|
||||
"+" assign recolor=-2
|
||||
|
||||
:mutate_maybe Assign
|
||||
* syntax recolor=-2 noeat
|
||||
"=" assign recolor=-2
|
||||
|
||||
:syntax Syntax
|
||||
* idle recolor=-1 noeat
|
||||
|
||||
:assign Assign
|
||||
* idle recolor=-1 noeat
|
||||
|
||||
:eqmixer_maybe Syntax
|
||||
* idle recolor=-1 noeat
|
||||
"=" eqmixer_maybe
|
||||
|
||||
:assign_maybe Assign
|
||||
* idle recolor=-1 noeat
|
||||
"=" equality recolor=-2
|
||||
|
||||
:equality Syntax
|
||||
* idle recolor=-1 noeat
|
||||
"=" syntax
|
||||
|
||||
:maybe_done TagEdge
|
||||
* eqmixer_maybe noeat
|
||||
"/" idle noeat return recolor=-2
|
||||
.ifdef php
|
||||
"?" rtn_embed call=php.php()
|
||||
.endif
|
||||
.ifdef mason
|
||||
"&%" rtn_embed call=perl.perl()
|
||||
.endif
|
||||
|
||||
:rtn_embed TagEdge
|
||||
* idle noeat
|
||||
|
||||
:no_regex Idle
|
||||
* idle noeat
|
||||
"/" maybe_comment recolor=-1
|
||||
" " no_regex
|
||||
|
||||
:after_term Idle
|
||||
* after_term
|
||||
"\n" idle
|
||||
"/" maybe_comment recolor=-1
|
||||
"." prop_sep recolor=-1
|
||||
.ifdef typescript
|
||||
"\"'A-Za-z_0-9" idle noeat
|
||||
.else
|
||||
"a-z" infix_operator buffer recolor=-1
|
||||
"\"'A-Z_0-9" bad_after_term recolor=-1
|
||||
.endif
|
||||
"{}" brace recolor=-1
|
||||
"()" paren noeat recolor=-1
|
||||
";" semicolon recolor=-1
|
||||
"=" assign_maybe recolor=-1
|
||||
"," comma recolor=-1
|
||||
"[]" bracket noeat recolor=-1
|
||||
"\-" subtract recolor=-1
|
||||
"+" add recolor=-1
|
||||
"*|&^%" mutate_maybe recolor=-1
|
||||
":?~" syntax recolor=-1
|
||||
.ifdef html
|
||||
"<" maybe_done recolor=-1
|
||||
">!" eqmixer_maybe recolor=-1
|
||||
.else
|
||||
.ifdef php
|
||||
"<" maybe_done recolor=-1
|
||||
">!" eqmixer_maybe recolor=-1
|
||||
.else
|
||||
.ifdef mason
|
||||
"<" maybe_done recolor=-1
|
||||
">!" eqmixer_maybe recolor=-1
|
||||
.else
|
||||
"<>!" eqmixer_maybe recolor=-1
|
||||
.endif
|
||||
.endif
|
||||
.endif
|
||||
|
||||
:ident_only Idle
|
||||
* bad_after_term recolor=-1
|
||||
"A-Z" type_match mark buffer recolor=-1
|
||||
"$a-z_" ident mark buffer recolor=-1
|
||||
" \t" ident_only
|
||||
"\n" idle
|
||||
|
||||
:bad_after_term Bad
|
||||
* after_term noeat markend strings
|
||||
done
|
||||
"\"'" after_term
|
||||
"a-zA-Z0-9_." bad_after_term
|
||||
|
||||
:re_or_comment Syntax
|
||||
* regex noeat recolor=-2
|
||||
"*/" maybe_comment noeat
|
||||
|
||||
:maybe_comment Syntax
|
||||
* syntax noeat
|
||||
"*" comment recolor=-2
|
||||
"/" line_comment recolor=-2
|
||||
"=" assign recolor=-2
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
# might be TODO label
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"*" maybe_end_comment
|
||||
|
||||
:maybe_end_comment Comment comment
|
||||
* comment noeat
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
# might be TODO label
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:regex Regex
|
||||
* regex
|
||||
"\\" regex_quote recolor=-1
|
||||
"[" regex_charclass
|
||||
"/" regex_mod
|
||||
"\n" regex_bad
|
||||
|
||||
:regex_quote RegexEscape
|
||||
* regex
|
||||
"\n" regex_bad
|
||||
|
||||
:regex_charclass Regex
|
||||
* regex_charclass
|
||||
"\\" regex_cc_quote recolor=-1
|
||||
"\n" regex_bad_cc
|
||||
"]" regex
|
||||
|
||||
:regex_cc_quote RegexEscape
|
||||
* regex_charclass
|
||||
"\n" regex_bad_cc
|
||||
|
||||
:regex_bad Bad
|
||||
* regex_bad
|
||||
"\\" regex_bad_quote
|
||||
"[" regex_bad_cc
|
||||
"/" after_term
|
||||
|
||||
:regex_bad_quote Bad
|
||||
* regex_bad
|
||||
|
||||
:regex_bad_cc Bad
|
||||
* regex_bad_cc
|
||||
"\\" regex_bad_quote_cc
|
||||
"]" regex_bad
|
||||
|
||||
:regex_bad_quote_cc Bad
|
||||
* regex_bad_cc
|
||||
|
||||
:regex_mod RegexOptions
|
||||
* after_term noeat
|
||||
"igm" regex_mod
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:paren Paren
|
||||
"(" idle
|
||||
")" no_regex
|
||||
|
||||
:bracket Bracket
|
||||
"[" idle
|
||||
"]" after_term
|
||||
|
||||
:syntax Syntax
|
||||
* idle noeat
|
||||
|
||||
:comma Comma
|
||||
* idle noeat
|
||||
|
||||
:semicolon Semicolon
|
||||
* idle noeat
|
||||
|
||||
:first_digit Number
|
||||
* after_term noeat
|
||||
"xX" hex
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* after_term noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* after_term noeat
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* after_term noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:decimal Number
|
||||
* after_term noeat
|
||||
"0-9" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* prop_sep noeat recolor=-2
|
||||
.ifdef typescript
|
||||
"." ellipsis recolor=-2
|
||||
.endif
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:prop_sep PropSep
|
||||
* ident_only noeat
|
||||
|
||||
:float Number
|
||||
* after_term noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* after_term noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* after_term noeat
|
||||
"0-9" enum
|
||||
|
||||
:infix_operator Bad
|
||||
* bad_op noeat markend strings
|
||||
"in" operator
|
||||
"instanceof" operator
|
||||
"of" operator
|
||||
done
|
||||
"a-zA-Z0-9_" infix_operator
|
||||
|
||||
.ifdef typescript
|
||||
:ellipsis Idle
|
||||
* bad_after_term recolor=-3
|
||||
"." ident_only
|
||||
.endif
|
||||
|
||||
:bad_op Bad
|
||||
* idle noeat
|
||||
"a-zA-Z0-9_" bad_op
|
||||
|
||||
:operator Operator
|
||||
* idle noeat
|
||||
|
||||
:type_match CustomType
|
||||
* type_end noeat markend strings
|
||||
"Infinity" lit
|
||||
"NaN" lit
|
||||
"Array" type
|
||||
"ArrayBuffer" type
|
||||
"Boolean" type
|
||||
"DataView" type
|
||||
"Date" type
|
||||
"Error" type
|
||||
"EvalError" type
|
||||
"Function" type
|
||||
"Float32Array" type
|
||||
"Float64Array" type
|
||||
"Int16Array" type
|
||||
"Int32Array" type
|
||||
"Int8Array" type
|
||||
"JSON" type
|
||||
"Math" type
|
||||
"Number" type
|
||||
"Object" type
|
||||
"RangeError" type
|
||||
"ReferenceError" type
|
||||
"RegExp" type
|
||||
"String" type
|
||||
"SyntaxError" type
|
||||
"TypeError" type
|
||||
"Uint16Array" type
|
||||
"Uint32Array" type
|
||||
"Uint8Array" type
|
||||
"Uint8ClampedArray" type
|
||||
"URIError" type
|
||||
# node.js
|
||||
"Buffer" type
|
||||
done
|
||||
"a-zA-Z0-9_" type_match
|
||||
|
||||
:type_end Idle
|
||||
* after_term noeat
|
||||
" " type_end
|
||||
"." prop_sep recolor=-1
|
||||
|
||||
.ifdef typescript
|
||||
|
||||
:ident Ident
|
||||
* ident_end noeat markend strings
|
||||
"delete" operator
|
||||
"in" operator
|
||||
"instanceof" operator
|
||||
"typeof" operator
|
||||
"new" operator
|
||||
"arguments" kw
|
||||
"break" kw
|
||||
"case" kw
|
||||
"catch" kw
|
||||
"continue" kw
|
||||
"default" kw
|
||||
"do" kw
|
||||
"else" kw
|
||||
"finally" kw
|
||||
"for" kw
|
||||
"function" kw
|
||||
"if" kw
|
||||
"let" kw
|
||||
"of" kw
|
||||
"return" kw
|
||||
"switch" kw
|
||||
"throw" kw
|
||||
"try" kw
|
||||
"var" kw
|
||||
"void" kw
|
||||
"while" kw
|
||||
"with" kw
|
||||
"false" lit
|
||||
"null" lit
|
||||
"true" lit
|
||||
"decodeURI" global
|
||||
"decodeURIComponent" global
|
||||
"encodeURI" global
|
||||
"encodeURIComponent" global
|
||||
"escape" global
|
||||
"eval" global
|
||||
"isFinite" global
|
||||
"isNaN" global
|
||||
"parseFloat" global
|
||||
"parseInt" global
|
||||
"undefined" global
|
||||
"unescape" global
|
||||
"setImmediate" global
|
||||
"this" quasikw
|
||||
"prototype" quasikw
|
||||
# node.js
|
||||
"exports" export
|
||||
"module" global
|
||||
"process" global
|
||||
"global" global
|
||||
"console" global
|
||||
"setTimeout" global
|
||||
"setInterval" global
|
||||
"clearInterval" global
|
||||
"clearTimeout" global
|
||||
"require" quasikw
|
||||
"__filename" quasikw
|
||||
"__dirname" quasikw
|
||||
"const" kw
|
||||
# By convention...
|
||||
"self" quasikw
|
||||
|
||||
# Typescript-specific
|
||||
"abstract" kw
|
||||
"as" kw
|
||||
"async" kw
|
||||
"await" kw
|
||||
"class" kw
|
||||
"constructor" kw
|
||||
"declare" kw
|
||||
"enum" kw
|
||||
"extends" kw
|
||||
"export" kw
|
||||
"from" kw
|
||||
"get" kw
|
||||
"implements" kw
|
||||
"import" kw
|
||||
"instanceof" kw
|
||||
"interface" kw
|
||||
"is" kw
|
||||
"module" kw
|
||||
"namespace" kw
|
||||
"private" kw
|
||||
"public" kw
|
||||
"require" kw
|
||||
"set" kw
|
||||
"static" kw
|
||||
"super" kw
|
||||
"typeof" kw
|
||||
|
||||
"any" type
|
||||
"boolean" type
|
||||
"number" type
|
||||
"string" type
|
||||
|
||||
done
|
||||
"$a-zA-Z0-9_" ident
|
||||
|
||||
.else
|
||||
|
||||
:ident Ident
|
||||
* ident_end noeat markend strings
|
||||
"delete" operator
|
||||
"in" operator
|
||||
"instanceof" operator
|
||||
"typeof" operator
|
||||
"new" operator
|
||||
"arguments" kw
|
||||
"break" kw
|
||||
"case" kw
|
||||
"catch" kw
|
||||
"continue" kw
|
||||
"default" kw
|
||||
"do" kw
|
||||
"else" kw
|
||||
"finally" kw
|
||||
"for" kw
|
||||
"function" kw
|
||||
"if" kw
|
||||
"let" kw
|
||||
"of" kw
|
||||
"return" kw
|
||||
"switch" kw
|
||||
"throw" kw
|
||||
"try" kw
|
||||
"var" kw
|
||||
"void" kw
|
||||
"while" kw
|
||||
"with" kw
|
||||
"false" lit
|
||||
"null" lit
|
||||
"true" lit
|
||||
"decodeURI" global
|
||||
"decodeURIComponent" global
|
||||
"encodeURI" global
|
||||
"encodeURIComponent" global
|
||||
"escape" global
|
||||
"eval" global
|
||||
"isFinite" global
|
||||
"isNaN" global
|
||||
"parseFloat" global
|
||||
"parseInt" global
|
||||
"undefined" global
|
||||
"unescape" global
|
||||
"setImmediate" global
|
||||
"this" quasikw
|
||||
"prototype" quasikw
|
||||
# node.js
|
||||
"exports" export
|
||||
"module" global
|
||||
"process" global
|
||||
"global" global
|
||||
"console" global
|
||||
"setTimeout" global
|
||||
"setInterval" global
|
||||
"clearInterval" global
|
||||
"clearTimeout" global
|
||||
"require" quasikw
|
||||
"__filename" quasikw
|
||||
"__dirname" quasikw
|
||||
"const" kw
|
||||
# By convention...
|
||||
"self" quasikw
|
||||
done
|
||||
"$a-zA-Z0-9_" ident
|
||||
|
||||
.endif
|
||||
|
||||
:ident_end Idle
|
||||
* after_term noeat
|
||||
" " ident_end
|
||||
"." prop_sep recolor=-1
|
||||
"(" method_start recolor=-1
|
||||
|
||||
:method_start Paren
|
||||
* method_end noeat recolormark
|
||||
|
||||
:method_end Method
|
||||
* idle noeat
|
||||
|
||||
:type Type
|
||||
* after_term noeat
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:quasikw Keyword
|
||||
* after_term noeat
|
||||
|
||||
:global Global
|
||||
* after_term noeat
|
||||
|
||||
:export Exports
|
||||
* export_end noeat
|
||||
|
||||
:export_end Exports
|
||||
* after_term noeat
|
||||
" " export_end
|
||||
"." export_item_start
|
||||
|
||||
:export_item_start ExportItem
|
||||
* bad_after_term recolor=-1 noeat
|
||||
" " export_item_start
|
||||
"a-zA-Z_" export_item
|
||||
|
||||
:export_item ExportItem
|
||||
* after_term noeat
|
||||
"a-zA-Z0-9_" export_item
|
||||
|
||||
:lit Constant
|
||||
* lit_end noeat
|
||||
|
||||
:lit_end Constant
|
||||
* after_term noeat
|
||||
" " lit_end
|
||||
"." prop_sep recolor=-1
|
||||
|
||||
.end
|
||||
|
||||
.subr string
|
||||
|
||||
:string String string
|
||||
* string_body noeat mark
|
||||
|
||||
:string_body String string
|
||||
* string
|
||||
"\n" string_bad
|
||||
.ifdef template
|
||||
"$" string_template
|
||||
"`" after_term return # save_c saves ` as ' (by-design)
|
||||
.else
|
||||
& after_term return
|
||||
.endif
|
||||
"\\" string_escape recolor=-1
|
||||
|
||||
:string_bad Bad
|
||||
* string_bad
|
||||
"\\" string_bad_escape
|
||||
.ifdef template
|
||||
"`" after_term return
|
||||
.else
|
||||
& after_term return
|
||||
.endif
|
||||
|
||||
:string_bad_escape Bad
|
||||
* string_bad
|
||||
|
||||
:string_template StringEscape string
|
||||
* string_bad
|
||||
"{" string_template_expr
|
||||
|
||||
:string_template_expr Type
|
||||
* string_template_expr
|
||||
.ifdef template
|
||||
"`" string_body noeat
|
||||
.else
|
||||
& string_body noeat
|
||||
.endif
|
||||
"}" string_template_end noeat
|
||||
|
||||
:string_template_end StringEscape string
|
||||
* string
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"x" string_hex1
|
||||
"u" string_uni1
|
||||
"0-7" string_octal2
|
||||
"\n" string_bad noeat
|
||||
|
||||
:string_hex1 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_hex2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_uni1 StringEscape string
|
||||
* string noeat
|
||||
"{" string_uni_brackets
|
||||
"0-9a-fA-F" string_uni2
|
||||
|
||||
:string_uni2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_uni3
|
||||
|
||||
:string_uni3 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_uni4
|
||||
|
||||
:string_uni4 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_uni_brackets StringEscape string
|
||||
* string_bad_escape noeat
|
||||
.ifdef template
|
||||
"`" string noeat
|
||||
.else
|
||||
& string noeat
|
||||
.endif
|
||||
"}" string
|
||||
"0-9a-fA-F" string_uni_brackets
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
.end
|
||||
|
||||
627
joe/usr/share/joe/syntax/jsf.jsf
Normal file
627
joe/usr/share/joe/syntax/jsf.jsf
Normal file
|
|
@ -0,0 +1,627 @@
|
|||
# JOE Syntax-Highlighting Description
|
||||
# for
|
||||
# JOE Syntax-Highlighting Descriptions
|
||||
#
|
||||
# Author: Charles J. Tabony
|
||||
# Date: 2007-2-13
|
||||
#
|
||||
# This is a highlighting description for files like this one.
|
||||
#
|
||||
# When CHECKING is defined, it is very aggressive about error checking. The
|
||||
# idea is that anywhere the highlighted file contains a syntax error, at least
|
||||
# one visible character should be highlighted as Bad. While that feature is
|
||||
# useful for finding syntax errors, it is annoying when editing a file, since
|
||||
# nearly everything is an error until you finish typing it.
|
||||
#
|
||||
# In order to not annoy people by default, but keep the option of strictly
|
||||
# checking syntax, I predicated the stricter checking on the CHECKING parameter.
|
||||
# By default, things that are incomplete are generally not marked as errors.
|
||||
# Only things that appear to be actual mistakes are highlighted as Bad. To
|
||||
# enable the stricter checking, one can highlight the file with the jsf_check
|
||||
# syntax. jsf_check.jsf simply calls the entire jsf.jsf file with CHECKING
|
||||
# defined.
|
||||
#
|
||||
# The idea is for authors of a jsf file to edit their file, highlight it with
|
||||
# jsf_check, and then look for any red characters. That way they can check for
|
||||
# syntax errors before testing the changes.
|
||||
|
||||
|
||||
|
||||
|
||||
#####################
|
||||
# Color Definitions #
|
||||
#####################
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Conditional +Precond +Preproc
|
||||
=Parameter +Ident
|
||||
=Keyword
|
||||
=Color +Type
|
||||
=ColorRef
|
||||
=State +Ident
|
||||
=Subr +Ident
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape +String
|
||||
=Bad
|
||||
|
||||
|
||||
|
||||
|
||||
##################
|
||||
# Initial States #
|
||||
##################
|
||||
|
||||
# This is a dummy state that simply jumps to comment_or_bad. It is here so that
|
||||
# when this file calls itself with the STRINGS parameter defined, comment_or_bad
|
||||
# will effectively be the initial state. comment_or_bad should be the initial
|
||||
# state because strings and istrings options can only be used as the last option
|
||||
# of a transition.
|
||||
.ifdef STRINGS
|
||||
:strings_initial Idle
|
||||
* comment_or_bad noeat
|
||||
.endif
|
||||
|
||||
# Each new line (that is not considered bad from the beginning) begins in the
|
||||
# idle state. The first non-whitespace character determines what the rest of
|
||||
# the line should contain. Following a strings or istrings option, only strings
|
||||
# and comments are allowed until the word "done" denotes the end of the list.
|
||||
:idle Idle
|
||||
* bad noeat
|
||||
" \t\n" idle
|
||||
.ifdef STRINGS
|
||||
.else
|
||||
"-" sync_lines_first
|
||||
"." conditional_first mark recolor=-1
|
||||
"=" color_definition_first
|
||||
":" state_first
|
||||
"*&%" special_character recolor=-1
|
||||
.endif
|
||||
"\"" string recolor=-1
|
||||
.ifdef STRINGS
|
||||
"\i" special_word mark recolor=-1 buffer
|
||||
.endif
|
||||
"#" comment recolor=-1
|
||||
|
||||
|
||||
##############
|
||||
# Sync Lines #
|
||||
##############
|
||||
|
||||
# Following a '-' should be either the number of sync lines or nothing (meaning
|
||||
# unlimited). Nothing else other than a comment should appear on the same line.
|
||||
.ifdef STRINGS
|
||||
# A sync lines directive should not appear between "[i]strings" and "done".
|
||||
.else
|
||||
# If we see a non-digit or a '0', then we have seen the entire sync lines
|
||||
# directive. The only thing that may appear on the rest of the line is a
|
||||
# comment. Otherwise there may be more digits in the number.
|
||||
:sync_lines_first Number
|
||||
* comment_or_bad noeat
|
||||
"0" comment_or_bad
|
||||
"1-9" sync_lines
|
||||
|
||||
# Highlight the remainder of the number.
|
||||
:sync_lines Number
|
||||
* comment_or_bad noeat
|
||||
"0-9" sync_lines
|
||||
.endif
|
||||
|
||||
|
||||
##########################
|
||||
# Conditional Directives #
|
||||
##########################
|
||||
|
||||
# Following a '.' should be a conditional directive.
|
||||
.ifdef STRINGS
|
||||
# A conditional directive should not appear between "[i]strings" and "done".
|
||||
.else
|
||||
# Start buffering the conditional directive.
|
||||
:conditional_first Conditional
|
||||
* conditional noeat buffer
|
||||
|
||||
# Recognize the set of conditional directives.
|
||||
:conditional Idle
|
||||
* conditional_unknown noeat strings
|
||||
"ifdef" ifdef_color
|
||||
"else" conditional_color
|
||||
"endif" conditional_color
|
||||
"subr" subr_color
|
||||
"end" conditional_color
|
||||
done
|
||||
"\c" conditional
|
||||
|
||||
# We encountered what looks like a conditional directive but is unrecognized as
|
||||
# such.
|
||||
:conditional_unknown Idle
|
||||
.ifdef CHECKING
|
||||
* bad_line recolormark noeat
|
||||
.else
|
||||
* comment_or_bad noeat
|
||||
.endif
|
||||
|
||||
# We saw a conditional directive that does not take an argument. Nothing else
|
||||
# other than a comment should appear on the same line.
|
||||
:conditional_color Conditional
|
||||
* comment_or_bad noeat
|
||||
|
||||
# We saw a ".ifdef" which must be followed by a parameter.
|
||||
:ifdef_color Conditional
|
||||
* need_parameter noeat
|
||||
|
||||
# We loop over whitespace until we see the first character of the parameter.
|
||||
:need_parameter Idle
|
||||
* bad noeat
|
||||
" \t" need_parameter
|
||||
"\i" parameter recolor=-1
|
||||
|
||||
# Now we highlight the remainder of the parameter.
|
||||
:parameter Parameter
|
||||
* comment_or_bad noeat
|
||||
"\c" parameter
|
||||
|
||||
# The following three states are identical to the previous three except the
|
||||
# color.
|
||||
:subr_color Conditional
|
||||
* need_subr noeat
|
||||
|
||||
:need_subr Idle
|
||||
* bad noeat
|
||||
" \t" need_subr
|
||||
"\i" subr recolor=-1
|
||||
|
||||
:subr Subr
|
||||
* comment_or_bad noeat
|
||||
"\c" subr
|
||||
.endif
|
||||
|
||||
|
||||
####################
|
||||
# Color Definition #
|
||||
####################
|
||||
|
||||
# Following an '=' should be a color definition.
|
||||
.ifdef STRINGS
|
||||
# Color definitions should not appear between "[i]strings" and "done".
|
||||
.else
|
||||
# A color name must have at least one character.
|
||||
:color_definition_first Color
|
||||
* color_definition
|
||||
" \t#\n" bad noeat
|
||||
|
||||
# Highlight any remaining characters until we see whitespace, a comment, or a
|
||||
# newline.
|
||||
:color_definition Color
|
||||
* color_definition
|
||||
" \t#\n" colors_ws noeat
|
||||
|
||||
# The color name may be followed by zero or more standard colors or attributes,
|
||||
# ending in a comment or newline.
|
||||
:colors_ws Idle
|
||||
* color_bad recolor=-1
|
||||
" \t" colors_ws
|
||||
"+" color_ref recolor=-1
|
||||
"#\n" comment noeat
|
||||
|
||||
:color_ref ColorRef
|
||||
* colors_ws noeat
|
||||
"\c" color_ref
|
||||
|
||||
# We have encountered something that is not recognized as a standard color or
|
||||
# attribute. Continue to highlight characters as Bad until we see whitespace, a
|
||||
# comment, or a newline.
|
||||
:color_bad Bad
|
||||
* color_bad
|
||||
" \t#\n" colors_ws noeat
|
||||
.endif
|
||||
|
||||
|
||||
#########
|
||||
# State #
|
||||
#########
|
||||
|
||||
# Following a ':' should be a state definition.
|
||||
.ifdef STRINGS
|
||||
# New states should not appear between "[i]strings" and "done".
|
||||
.else
|
||||
# A state name must begin with an alpha character or an underscore.
|
||||
:state_first State
|
||||
* bad noeat
|
||||
"\i" state
|
||||
|
||||
# Subsequent characters in a state name must be alpha-numeric or underscores.
|
||||
:state State
|
||||
* bad noeat
|
||||
"\c" state
|
||||
" \t" need_state_color recolor=-1
|
||||
|
||||
# A state must have a color.
|
||||
:need_state_color Idle
|
||||
* state_color recolor=-1
|
||||
" \t" need_state_color
|
||||
"#\n" bad noeat
|
||||
|
||||
# Highlight any remaining characters until we see whitespace, a comment, or a
|
||||
# newline.
|
||||
:state_color Color
|
||||
* state_color
|
||||
" \t" context_ws recolor=-1
|
||||
"#\n" comment_or_bad noeat
|
||||
|
||||
# Following the state color, there might be one or more contexts. Loop over
|
||||
# whitespace until we find something else.
|
||||
:context_ws Idle
|
||||
* comment_or_bad noeat
|
||||
" \t" context_ws
|
||||
"\i" context mark recolor=-1 buffer
|
||||
|
||||
# Here we recognize the possible contexts.
|
||||
:context Idle
|
||||
* context_unknown noeat strings
|
||||
"comment" context_color
|
||||
"string" context_color
|
||||
done
|
||||
"\c" context
|
||||
|
||||
# We encountered what looks like a context but is unrecognized as such.
|
||||
:context_unknown Idle
|
||||
.ifdef CHECKING
|
||||
* context_bad recolormark noeat
|
||||
.else
|
||||
* context_ws noeat
|
||||
.endif
|
||||
|
||||
# We encountered a valid context.
|
||||
:context_color Keyword
|
||||
* context_ws noeat
|
||||
|
||||
# We saw something that is not a valid context name with checking enabled.
|
||||
# Continue to highlight it as Bad until we see whitespace or a comment.
|
||||
:context_bad Bad
|
||||
* context_bad
|
||||
" \t#\n" context_ws noeat
|
||||
.endif
|
||||
|
||||
|
||||
##############
|
||||
# Transition #
|
||||
##############
|
||||
|
||||
# A state transition starts with a '*', an '&', or a string.
|
||||
.ifdef STRINGS
|
||||
# Transitions must start with a string between "[i]strings" and "done".
|
||||
.else
|
||||
# We saw either a '*' or an '&'. Now we need the next state.
|
||||
:special_character Keyword
|
||||
* need_next_state noeat
|
||||
.endif
|
||||
|
||||
# We are in a string. Continue until we see the close quote or a newline.
|
||||
# Highlight escaped characters within the string differently. They start with a
|
||||
# '\'.
|
||||
:string String string
|
||||
* string
|
||||
"\\" escape recolor=-1
|
||||
"\"" need_next_state
|
||||
.ifdef CHECKING
|
||||
"\n" bad
|
||||
.else
|
||||
"\n" bad noeat
|
||||
.endif
|
||||
|
||||
# Highlight an escaped character within a string.
|
||||
:escape StringEscape string
|
||||
* string
|
||||
|
||||
# Loop over whitespace until we see the first character of the next state.
|
||||
:need_next_state Idle
|
||||
* bad noeat
|
||||
" \t" need_next_state
|
||||
"\i" next_state recolor=-1
|
||||
|
||||
# Now we highlight the remainder of the next state.
|
||||
:next_state State
|
||||
* bad noeat
|
||||
"\c" next_state
|
||||
" \t" options_ws
|
||||
"#\n" comment noeat
|
||||
|
||||
# Following the next state should be zero or more options. Loop over whitespace
|
||||
# until we find an option, comment, or newline.
|
||||
:options_ws Idle
|
||||
* option_bad recolor=-1
|
||||
" \t" options_ws
|
||||
"\i" option mark recolor=-1 buffer
|
||||
"#\n" comment noeat
|
||||
|
||||
# Here we recognize the possible options. The strings and istrings options
|
||||
# cannot be used between "[i]strings" and "done". Since conditional directives
|
||||
# cannot be used between "[i]strings" and "done" either, the list must be
|
||||
# duplicated, once without and once with the strings and istrings options.
|
||||
:option Idle
|
||||
.ifdef STRINGS
|
||||
* option_unknown recolormark noeat strings
|
||||
"noeat" option_color
|
||||
"recolor" recolor_color
|
||||
"mark" option_color
|
||||
"markend" option_color
|
||||
"recolormark" option_color
|
||||
"buffer" option_color
|
||||
"save_c" option_color
|
||||
"save_s" option_color
|
||||
"hold" option_color
|
||||
"call" call_color
|
||||
"return" option_color
|
||||
"reset" option_color
|
||||
done
|
||||
.else
|
||||
* option_unknown recolormark noeat strings
|
||||
"noeat" option_color
|
||||
"recolor" recolor_color
|
||||
"mark" option_color
|
||||
"markend" option_color
|
||||
"recolormark" option_color
|
||||
"buffer" option_color
|
||||
"save_c" option_color
|
||||
"save_s" option_color
|
||||
"strings" strings_color
|
||||
"istrings" strings_color
|
||||
"hold" option_color
|
||||
"call" call_color
|
||||
"return" option_color
|
||||
"reset" option_color
|
||||
done
|
||||
.endif
|
||||
"\c" option
|
||||
|
||||
# We encountered what looks like an option but is unrecognized as such.
|
||||
:option_unknown Idle
|
||||
.ifdef CHECKING
|
||||
* option_bad recolormark noeat
|
||||
.else
|
||||
* options_ws noeat
|
||||
.endif
|
||||
|
||||
# We have encountered an option that does not take an argument. Highlight it
|
||||
# and continue to look for more options.
|
||||
:option_color Keyword
|
||||
* options_ws noeat
|
||||
|
||||
.ifdef STRINGS
|
||||
# The strings and istrings options cannot be used between "[i]strings" and
|
||||
# "done".
|
||||
.else
|
||||
# The strings and istrings options are followed by a list of transitions.
|
||||
# Rather than duplicate all of the states that highlight transitions, we call
|
||||
# this entire file as a subroutine and use the STRINGS parameter to disable
|
||||
# everything else and enable the done keyword. We return to the comment_or_bad
|
||||
# state since we will return after seeing the done keyword, and nothing but a
|
||||
# comment should follow the done keyword.
|
||||
:strings_color Keyword
|
||||
* comment_or_bad noeat call=jsf(STRINGS)
|
||||
.endif
|
||||
|
||||
# Highlight the recolor option.
|
||||
:recolor_color Keyword
|
||||
* recolor_equal noeat
|
||||
|
||||
# The recolor option must be followed by an '='. Loop over whitespace until we
|
||||
# find one.
|
||||
:recolor_equal Idle
|
||||
.ifdef CHECKING
|
||||
* option_bad recolormark noeat
|
||||
.else
|
||||
* options_ws noeat
|
||||
.endif
|
||||
" \t" recolor_equal
|
||||
"=" recolor_minus mark
|
||||
|
||||
# The recolor option takes an integer argument, and that integer must be
|
||||
# negative. Thus the '=' must be followed by a minus sign. Loop over
|
||||
# whitespace until we find one.
|
||||
:recolor_minus Idle
|
||||
.ifdef CHECKING
|
||||
* option_bad recolormark noeat
|
||||
.else
|
||||
* options_ws noeat
|
||||
.endif
|
||||
" \t" recolor_minus
|
||||
"-" recolor_amount_first mark recolor=-1
|
||||
|
||||
# The first digit of the argument to recolor must be non-zero.
|
||||
:recolor_amount_first Number
|
||||
.ifdef CHECKING
|
||||
* option_bad recolormark noeat
|
||||
.else
|
||||
* options_ws recolormark noeat
|
||||
"0" option_bad recolormark noeat
|
||||
.endif
|
||||
"1-9" recolor_amount
|
||||
|
||||
# Keep highlighting digits until we see something else.
|
||||
:recolor_amount Number
|
||||
* option_bad recolormark recolor=-1
|
||||
"0-9" recolor_amount
|
||||
" \t#\n" options_ws noeat
|
||||
|
||||
# Highlight the call option.
|
||||
:call_color Keyword
|
||||
* call_equal noeat
|
||||
|
||||
# The call option must be followed by an '='. Loop over whitespace until we
|
||||
# find one.
|
||||
:call_equal Idle
|
||||
.ifdef CHECKING
|
||||
* option_bad recolormark noeat
|
||||
.else
|
||||
* options_ws noeat
|
||||
.endif
|
||||
" \t" call_equal
|
||||
"=" call_file_or_dot mark
|
||||
|
||||
# The first part of the argument to the call option is the name of the file
|
||||
# containing the subroutine or a '.', implying the current file. Loop over
|
||||
# whitespace until we see one of those two things.
|
||||
:call_file_or_dot Idle
|
||||
.ifdef CHECKING
|
||||
* option_bad recolormark noeat
|
||||
.else
|
||||
* options_ws noeat
|
||||
.endif
|
||||
" \t" call_file_or_dot
|
||||
"\i" call_file mark recolor=-1
|
||||
"." call_dot mark
|
||||
|
||||
# Highlight the remainder of the file name. The file name can be followed by a
|
||||
# '.', which must then be followed by the name of a subroutine, or by a list of
|
||||
# parameters in parentheses. The '.', if present, cannot have whitespace on
|
||||
# either side.
|
||||
:call_file Subr
|
||||
.ifdef CHECKING
|
||||
* option_bad recolormark noeat
|
||||
.else
|
||||
* options_ws noeat
|
||||
.endif
|
||||
"\c" call_file
|
||||
"." call_dot mark recolor=-1
|
||||
" \t(" call_open_paren noeat
|
||||
|
||||
# We saw a '.'. The next character must start the name of a subroutine.
|
||||
:call_dot Idle
|
||||
.ifdef CHECKING
|
||||
* option_bad recolormark noeat
|
||||
.else
|
||||
* options_ws noeat
|
||||
.endif
|
||||
"(" call_dot_bad recolormark noeat
|
||||
"\i" call_subr mark recolor=-1
|
||||
|
||||
# We have seen a dot followed by an open parenthesis. A dot must be followed by
|
||||
# a subroutine name. Highlight the dot as Bad.
|
||||
:call_dot_bad Bad
|
||||
* call_open_paren noeat
|
||||
|
||||
# Highlight the remainder of the subroutine name. Following the subroutine name
|
||||
# must be a list of parameters in parentheses, possibly preceded by whitespace.
|
||||
:call_subr Subr
|
||||
.ifdef CHECKING
|
||||
* option_bad recolormark noeat
|
||||
.else
|
||||
* options_ws noeat
|
||||
.endif
|
||||
"\c" call_subr
|
||||
" \t(" call_open_paren noeat
|
||||
|
||||
# Loop over whitespace until we find the open parenthesis.
|
||||
:call_open_paren Idle
|
||||
.ifdef CHECKING
|
||||
* option_bad recolormark noeat
|
||||
.else
|
||||
* options_ws noeat
|
||||
.endif
|
||||
" \t" call_open_paren
|
||||
"(" call_parameters_ws
|
||||
|
||||
# The list of parameters is delimited by whitespace. Loop over whitespace until
|
||||
# we find either the beginning of a parameter or a close parenthesis. We should
|
||||
# not see a comment or newline since the list should be terminated by a close
|
||||
# parenthesis.
|
||||
:call_parameters_ws Idle
|
||||
* call_parameter_bad recolor=-1
|
||||
" \t" call_parameters_ws
|
||||
"-" call_parameter_undef
|
||||
"\i" call_parameter recolor=-1
|
||||
")" options_ws
|
||||
"#\n" bad noeat
|
||||
|
||||
# We saw a "-". The next character should start the parameter being undefined.
|
||||
:call_parameter_undef Parameter
|
||||
* call_parameters_ws noeat
|
||||
"\i" call_parameter recolor=-2
|
||||
|
||||
# Highlight the remainder of the parameter.
|
||||
:call_parameter Parameter
|
||||
* call_parameters_ws noeat
|
||||
"\c" call_parameter
|
||||
|
||||
# We saw something that is not a valid parameter name. Continue to highlight it
|
||||
# as Bad until we see whitespace.
|
||||
:call_parameter_bad Bad
|
||||
* call_parameter_bad
|
||||
") \t#\n" call_parameters_ws noeat
|
||||
|
||||
# We saw something that is not a valid option name. Continue to highlight it as
|
||||
# Bad until we see whitespace or a comment.
|
||||
:option_bad Bad
|
||||
* option_bad
|
||||
" \t#\n" options_ws noeat
|
||||
|
||||
|
||||
########
|
||||
# Done #
|
||||
########
|
||||
|
||||
.ifdef STRINGS
|
||||
# The special word, "done", can only be used after a strings or istrings option.
|
||||
# Recognize the done keyword.
|
||||
:special_word Idle
|
||||
* bad_line recolormark noeat strings
|
||||
"done" done_color
|
||||
done
|
||||
"\c" special_word
|
||||
|
||||
# Highlight the done keyword and return to highlighting things normally, since
|
||||
# the list of strings has been terminated.
|
||||
:done_color Keyword
|
||||
* comment_or_bad return noeat
|
||||
.endif
|
||||
|
||||
|
||||
##################
|
||||
# Comment or Bad #
|
||||
##################
|
||||
|
||||
# We have seen everything that should appear on the current line except an
|
||||
# optional comment. Loop over whitespace until we find a comment or newline.
|
||||
:comment_or_bad Idle
|
||||
* bad noeat
|
||||
" \t" comment_or_bad
|
||||
"#\n" comment noeat
|
||||
|
||||
|
||||
###########
|
||||
# Comment #
|
||||
###########
|
||||
|
||||
# Continue to highlight the comment until the end of the line.
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
|
||||
#######
|
||||
# Bad #
|
||||
#######
|
||||
|
||||
.ifdef CHECKING
|
||||
# We have encountered incorrect syntax. Loop over whitespace until we see the
|
||||
# first visible character. Highlight that character and the rest of the line as
|
||||
# Bad.
|
||||
:bad Bad
|
||||
* bad_line
|
||||
" \t\n" bad
|
||||
.else
|
||||
# When not performing strict checking, don't go searching for the next visible
|
||||
# character to highlight as Bad. Simply highlight the rest of the line as Bad,
|
||||
# even if it is invisible.
|
||||
:bad Bad
|
||||
* bad_line noeat
|
||||
.endif
|
||||
|
||||
# Continue to highlight everything as Bad until the end of the line.
|
||||
:bad_line Bad
|
||||
* bad_line
|
||||
"\n" idle
|
||||
6
joe/usr/share/joe/syntax/jsf_check.jsf
Normal file
6
joe/usr/share/joe/syntax/jsf_check.jsf
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
# See jsf.jsf
|
||||
|
||||
=Idle
|
||||
|
||||
:initial Idle
|
||||
* initial noeat call=jsf(CHECKING)
|
||||
309
joe/usr/share/joe/syntax/json.jsf
Normal file
309
joe/usr/share/joe/syntax/json.jsf
Normal file
|
|
@ -0,0 +1,309 @@
|
|||
# JSON highlighter per json.org
|
||||
|
||||
# Written by Rebecca Turner (@ReBecaOrg)
|
||||
|
||||
# Define colors
|
||||
|
||||
=Idle
|
||||
=Comma
|
||||
=PairSep
|
||||
=Bracket +Brace
|
||||
=Brace +Control +Operator
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=Boolean +Constant
|
||||
=Null +Constant
|
||||
=String +Constant
|
||||
=Key +Attr +Type +String
|
||||
=Escape
|
||||
=StringEscape +Escape +String
|
||||
|
||||
=Bad
|
||||
=ERROR +Bad
|
||||
|
||||
:json Idle
|
||||
* end noeat call=.value()
|
||||
" \t\n" json
|
||||
|
||||
:end Idle
|
||||
* endBAD noeat
|
||||
" \t\n" end
|
||||
|
||||
:endBAD Bad
|
||||
* end
|
||||
|
||||
.subr value
|
||||
|
||||
:value Idle
|
||||
* valueBAD noeat
|
||||
"\"" end noeat call=.string()
|
||||
"-0-9" end noeat call=.number()
|
||||
"tfn" end noeat call=.bareword()
|
||||
"{" end noeat call=.object()
|
||||
"[" end noeat call=.array()
|
||||
|
||||
:valueBAD Bad
|
||||
* value
|
||||
|
||||
:end Idle
|
||||
* NULL noeat return
|
||||
|
||||
.end
|
||||
|
||||
.subr object
|
||||
|
||||
:object Brace
|
||||
* objectBAD noeat
|
||||
"{" maybeempty
|
||||
|
||||
:objectBAD ERROR
|
||||
* end
|
||||
|
||||
:maybeempty Brace
|
||||
* key noeat
|
||||
" \t\n" maybeempty
|
||||
"}" end recolor=-1
|
||||
|
||||
:key Idle
|
||||
* keyBAD noeat
|
||||
"\"" pairsep noeat call=.keystring()
|
||||
" \t\n" key
|
||||
|
||||
:keyBAD Bad
|
||||
* key
|
||||
|
||||
:pairsep PairSep
|
||||
* pairsepBAD noeat
|
||||
":" value
|
||||
" \t\n" pairsep
|
||||
|
||||
:pairsepBAD Bad
|
||||
* pairsep
|
||||
|
||||
:value Idle
|
||||
* nextpair noeat call=.value()
|
||||
" \t\n" value
|
||||
|
||||
:nextpair Comma
|
||||
* nextpairBAD noeat
|
||||
"}" end recolor=-1
|
||||
"," key
|
||||
" \t\n" nextpair
|
||||
|
||||
:nextpairBAD Bad
|
||||
* nextpair
|
||||
|
||||
:end Brace
|
||||
* NULL noeat return
|
||||
.end
|
||||
|
||||
.subr array
|
||||
|
||||
:array Bracket
|
||||
* arrayBAD noeat
|
||||
"[" maybeempty
|
||||
|
||||
:arrayBAD ERROR
|
||||
* end
|
||||
|
||||
:maybeempty Bracket
|
||||
* value noeat
|
||||
" \t\n" maybeempty
|
||||
"]" end recolor=-1
|
||||
|
||||
:value Idle
|
||||
* nextvalue noeat call=.value()
|
||||
" \t\n" value
|
||||
|
||||
:nextvalue Comma
|
||||
* nextvalueBAD noeat
|
||||
"]" end recolor=-1
|
||||
"," value
|
||||
" \t\n" nextvalue
|
||||
|
||||
:nextvalueBAD Bad
|
||||
* nextvalue
|
||||
|
||||
:end Bracket
|
||||
* NULL noeat return
|
||||
|
||||
.end
|
||||
|
||||
.subr string
|
||||
|
||||
:string String string
|
||||
* stringBAD noeat
|
||||
"\"" body
|
||||
|
||||
:body String string
|
||||
* body
|
||||
"\"" end
|
||||
"\\" escape recolor=-1
|
||||
|
||||
:stringBAD ERROR
|
||||
* end
|
||||
|
||||
:escape StringEscape string
|
||||
* escapeBAD recolor=-2 noeat
|
||||
"\"/bfnrt\\" body
|
||||
"u" unicode1
|
||||
|
||||
:escapeBAD Bad
|
||||
* body
|
||||
|
||||
:unicode1 StringEscape string
|
||||
* unicodeBAD recolor=-3 noeat
|
||||
"0-9a-fA-F" unicode2
|
||||
|
||||
:unicode2 StringEscape string
|
||||
* unicodeBAD recolor=-4 noeat
|
||||
"0-9a-fA-F" unicode3
|
||||
|
||||
:unicode3 StringEscape string
|
||||
* unicodeBAD recolor=-5 noeat
|
||||
"0-9a-fA-F" unicode4
|
||||
|
||||
:unicode4 StringEscape string
|
||||
* unicodeBAD recolor=-6 noeat
|
||||
"0-9a-fA-F" body
|
||||
|
||||
:unicodeBAD Bad
|
||||
* body
|
||||
|
||||
:end Idle
|
||||
* NULL noeat return
|
||||
|
||||
.end
|
||||
|
||||
.subr keystring
|
||||
|
||||
:string Key
|
||||
* stringBAD noeat
|
||||
"\"" body
|
||||
|
||||
:body Key
|
||||
* body
|
||||
"\"" end
|
||||
"\\" escape recolor=-1
|
||||
|
||||
:stringBAD ERROR
|
||||
* end
|
||||
|
||||
:escape Escape
|
||||
* escapeBAD recolor=-2 noeat
|
||||
"\"/bfnrt\\" body
|
||||
"u" unicode1
|
||||
|
||||
:escapeBAD Bad
|
||||
* body
|
||||
|
||||
:unicode1 Escape
|
||||
* unicodeBAD recolor=-3 noeat
|
||||
"0-9a-fA-F" unicode2
|
||||
|
||||
:unicode2 Escape
|
||||
* unicodeBAD recolor=-4 noeat
|
||||
"0-9a-fA-F" unicode3
|
||||
|
||||
:unicode3 Escape
|
||||
* unicodeBAD recolor=-5 noeat
|
||||
"0-9a-fA-F" unicode4
|
||||
|
||||
:unicode4 Escape
|
||||
* unicodeBAD recolor=-6 noeat
|
||||
"0-9a-fA-F" body
|
||||
|
||||
:unicodeBAD Bad
|
||||
* body
|
||||
|
||||
:end Idle
|
||||
* NULL noeat return
|
||||
|
||||
.end
|
||||
|
||||
.subr bareword
|
||||
|
||||
:bareword Idle
|
||||
* body noeat mark buffer
|
||||
|
||||
:body Bad
|
||||
* end noeat markend strings
|
||||
"true" boolean
|
||||
"false" boolean
|
||||
"null" null
|
||||
|
||||
done
|
||||
"truefalsn" body
|
||||
|
||||
:boolean Boolean
|
||||
* end noeat
|
||||
|
||||
:null Null
|
||||
* end noeat
|
||||
|
||||
:end Idle
|
||||
* NULL noeat return
|
||||
|
||||
.end
|
||||
|
||||
.subr number
|
||||
|
||||
:number Number
|
||||
* numberBAD
|
||||
"0-9" numberA noeat
|
||||
"-" numberA
|
||||
|
||||
:numberBAD ERROR
|
||||
* end
|
||||
|
||||
:numberA Number
|
||||
"0" decimalpoint
|
||||
"1-9" integer
|
||||
|
||||
:integer Number
|
||||
* end noeat
|
||||
"0-9" integer
|
||||
"." decimalpart
|
||||
"eE" exponentpart
|
||||
|
||||
:decimalpoint Number
|
||||
* end noeat
|
||||
"0-9" decimalpointBAD
|
||||
"eE" exponentpart
|
||||
"." decimalpart
|
||||
|
||||
:decimalpointBAD Bad
|
||||
* end
|
||||
|
||||
:decimalpart Number
|
||||
* decimalpartBAD
|
||||
"0-9" decimalpartA
|
||||
|
||||
:decimalpartBAD Bad
|
||||
* end
|
||||
|
||||
:decimalpartA Number
|
||||
* end noeat
|
||||
"0-9" decimalpartA
|
||||
"eE" exponentpart
|
||||
|
||||
:exponentpart Number
|
||||
* exponentpartBAD
|
||||
"-+" exponentpartA
|
||||
"0-9" exponentpartB
|
||||
|
||||
:exponentpartBAD Bad
|
||||
* end
|
||||
|
||||
:exponentpartA Number
|
||||
* exponentpartBAD
|
||||
"0-9" exponentpartB
|
||||
|
||||
:exponentpartB Number
|
||||
* end noeat
|
||||
"0-9" exponentpartB
|
||||
|
||||
:end Idle
|
||||
* NULL noeat return
|
||||
|
||||
.end
|
||||
26
joe/usr/share/joe/syntax/lisp.jsf
Normal file
26
joe/usr/share/joe/syntax/lisp.jsf
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
# JOE syntax highlight file for LISP
|
||||
|
||||
# Needs lots of work...
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=String +Constant
|
||||
=StringEscape +Escape
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
";" comment recolor=-1
|
||||
"\"" string recolor=-1
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"\n" idle
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" idle
|
||||
"\\" string_escape recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"\n" string recolor=-2
|
||||
349
joe/usr/share/joe/syntax/lua.jsf
Normal file
349
joe/usr/share/joe/syntax/lua.jsf
Normal file
|
|
@ -0,0 +1,349 @@
|
|||
# JOE syntax highlight file for LUA
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Bad
|
||||
=Comment
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=Boolean +Constant
|
||||
=String +Constant
|
||||
=Character +String +Constant
|
||||
=Escape
|
||||
=StringEscape +Escape
|
||||
=CharacterEscape +StringEscape
|
||||
=Keyword
|
||||
=Operator +Keyword
|
||||
=Statement +Keyword
|
||||
=Conditional +Statement
|
||||
=Loop +Statement
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"\i" ident buffer
|
||||
"-" maybe_comment
|
||||
"[" maybe_lua_string
|
||||
|
||||
:maybe_lua_string Idle
|
||||
* idle noeat
|
||||
"[" lua_string_0 recolor=-2
|
||||
"=" maybe_lua_1
|
||||
|
||||
:maybe_lua_1 Idle
|
||||
* idle noeat
|
||||
"[" lua_string_1 recolor=-3
|
||||
"=" maybe_lua_2
|
||||
|
||||
:maybe_lua_2 Idle
|
||||
* idle noeat
|
||||
"[" lua_string_2 recolor=-4
|
||||
"=" maybe_lua_3
|
||||
|
||||
:maybe_lua_3 Idle
|
||||
* idle noeat
|
||||
"[" lua_string_3 recolor=-5
|
||||
|
||||
:lua_string_0 String string
|
||||
* lua_string_0
|
||||
"]" lua_string_0_maybe_done
|
||||
|
||||
:lua_string_0_maybe_done String string
|
||||
* lua_string_0 noeat
|
||||
"]" idle
|
||||
|
||||
:lua_string_1 String string
|
||||
* lua_string_1
|
||||
"]" lua_string_1_maybe_donea
|
||||
|
||||
:lua_string_1_maybe_donea String string
|
||||
* lua_string_1 noeat
|
||||
"=" lua_string_1_maybe_done
|
||||
|
||||
:lua_string_1_maybe_done String string
|
||||
* lua_string_1 noeat
|
||||
"]" idle
|
||||
|
||||
:lua_string_2 String string
|
||||
* lua_string_2
|
||||
"]" lua_string_2_maybe_donea
|
||||
|
||||
:lua_string_2_maybe_donea String string
|
||||
* lua_string_2 noeat
|
||||
"=" lua_string_2_maybe_doneb
|
||||
|
||||
:lua_string_2_maybe_doneb String string
|
||||
* lua_string_2 noeat
|
||||
"=" lua_string_2_maybe_done
|
||||
|
||||
:lua_string_2_maybe_done String string
|
||||
* lua_string_2 noeat
|
||||
"]" idle
|
||||
|
||||
:lua_string_3 String string
|
||||
* lua_string_3
|
||||
"]" lua_string_3_maybe_donea
|
||||
|
||||
:lua_string_3_maybe_donea String string
|
||||
* lua_string_3 noeat
|
||||
"=" lua_string_3_maybe_doneb
|
||||
|
||||
:lua_string_3_maybe_doneb String string
|
||||
* lua_string_3 noeat
|
||||
"=" lua_string_3_maybe_donec
|
||||
|
||||
:lua_string_3_maybe_donec String string
|
||||
* lua_string_3 noeat
|
||||
"=" lua_string_3_maybe_done
|
||||
|
||||
:lua_string_3_maybe_done String string
|
||||
* lua_string_3 noeat
|
||||
"]" idle
|
||||
|
||||
:maybe_comment Idle
|
||||
* idle noeat
|
||||
"-" maybe_long_comment recolor=-2
|
||||
|
||||
:maybe_long_comment Comment comment
|
||||
* line_comment noeat
|
||||
"[" maybe_long_comment_0
|
||||
|
||||
:maybe_long_comment_0 Comment comment
|
||||
* line_comment noeat
|
||||
"=" maybe_long_comment_1
|
||||
"[" long_comment_0
|
||||
|
||||
:maybe_long_comment_1 Comment comment
|
||||
* line_comment noeat
|
||||
"=" maybe_long_comment_2
|
||||
"[" long_comment_1
|
||||
|
||||
:maybe_long_comment_2 Comment comment
|
||||
* line_comment noeat
|
||||
"=" maybe_long_comment_3
|
||||
"[" long_comment_2
|
||||
|
||||
:maybe_long_comment_3 Comment comment
|
||||
* line_comment noeat
|
||||
"[" long_comment_3
|
||||
|
||||
:long_comment_0 Comment comment
|
||||
* long_comment_0
|
||||
"BFHNTX" long_comment_0 noeat call=comment_todo.comment_todo()
|
||||
"]" maybe_done_comment_0
|
||||
|
||||
:maybe_done_comment_0 Comment comment
|
||||
* long_comment_0 noeat
|
||||
"]" idle
|
||||
|
||||
:long_comment_1 Comment comment
|
||||
* long_comment_1
|
||||
"BFHNTX" long_comment_1 noeat call=comment_todo.comment_todo()
|
||||
"]" maybe_done_comment_1a
|
||||
|
||||
:maybe_done_comment_1a Comment comment
|
||||
* long_comment_1 noeat
|
||||
"=" maybe_done_comment_1
|
||||
|
||||
:maybe_done_comment_1 Comment comment
|
||||
* long_comment_1 noeat
|
||||
"]" idle
|
||||
|
||||
:long_comment_2 Comment comment
|
||||
* long_comment_2
|
||||
"BFHNTX" long_comment_2 noeat call=comment_todo.comment_todo()
|
||||
"]" maybe_done_comment_2a
|
||||
|
||||
:maybe_done_comment_2a Comment comment
|
||||
* long_comment_2 noeat
|
||||
"=" maybe_done_comment_2b
|
||||
|
||||
:maybe_done_comment_2b Comment comment
|
||||
* long_comment_2 noeat
|
||||
"=" maybe_done_comment_2
|
||||
|
||||
:maybe_done_comment_2 Comment comment
|
||||
* long_comment_2 noeat
|
||||
"]" idle
|
||||
|
||||
:long_comment_3 Comment comment
|
||||
* long_comment_3
|
||||
"]" maybe_done_comment_3a
|
||||
|
||||
:maybe_done_comment_3a Comment comment
|
||||
* long_comment_3 noeat
|
||||
"=" maybe_done_comment_3b
|
||||
|
||||
:maybe_done_comment_3b Comment comment
|
||||
* long_comment_3 noeat
|
||||
"=" maybe_done_comment_3c
|
||||
|
||||
:maybe_done_comment_3c Comment comment
|
||||
* long_comment_3 noeat
|
||||
"=" maybe_done_comment_3
|
||||
|
||||
:maybe_done_comment_3 Comment comment
|
||||
* long_comment_2 noeat
|
||||
"]" idle
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"xX" hex
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* idle noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* idle noeat
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:decimal Number
|
||||
* idle noeat
|
||||
"0-9" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" idle
|
||||
"\\" string_escape recolor=-1
|
||||
"%" string_control recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"x" string_hex1
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
:string_hex1 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_hex2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:string_control StringEscape string
|
||||
* string
|
||||
"\"" string noeat
|
||||
"\n" reset
|
||||
"0-9.\-+ #hjILtz$" string_control
|
||||
|
||||
:char Character string
|
||||
* char
|
||||
"\n" reset
|
||||
"'" idle
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape CharacterEscape string
|
||||
* char
|
||||
"x" char_hex1
|
||||
"0-7" char_octal2
|
||||
"\n" char recolor=-2
|
||||
|
||||
:char_hex1 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex2
|
||||
|
||||
:char_hex2 CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char
|
||||
|
||||
:char_octal2 CharacterEscape string
|
||||
* char noeat
|
||||
"0-7" char_octal3
|
||||
|
||||
:char_octal3 CharacterEscape string
|
||||
* char noeat
|
||||
"0-7" char
|
||||
|
||||
:ident Ident
|
||||
* idle noeat strings
|
||||
"and" kw
|
||||
"end" kw
|
||||
"in" oper
|
||||
"repeat" loop
|
||||
"break" loop
|
||||
"false" bool
|
||||
"local" kw
|
||||
"return" stmt
|
||||
"do" loop
|
||||
"for" loop
|
||||
"nil" const
|
||||
"then" cond
|
||||
"else" cond
|
||||
"function" kw
|
||||
"not" oper
|
||||
"true" bool
|
||||
"elseif" cond
|
||||
"if" cond
|
||||
"or" oper
|
||||
"until" loop
|
||||
"while" loop
|
||||
done
|
||||
"\c" ident
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:oper Operator
|
||||
* idle noeat
|
||||
|
||||
:stmt Statement
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:bool Boolean
|
||||
* idle noeat
|
||||
|
||||
:const Constant
|
||||
* idle noeat
|
||||
122
joe/usr/share/joe/syntax/m4.jsf
Normal file
122
joe/usr/share/joe/syntax/m4.jsf
Normal file
|
|
@ -0,0 +1,122 @@
|
|||
# m4
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=Constant
|
||||
=Variable +Escape
|
||||
=Brace
|
||||
=Keyword
|
||||
|
||||
:start Idle
|
||||
* start noeat call=.m4()
|
||||
|
||||
.subr m4
|
||||
|
||||
.ifdef quote
|
||||
:idle Constant
|
||||
.else
|
||||
:idle Idle
|
||||
.endif
|
||||
* idle
|
||||
"[" idle recolor=-1 call=.m4(quote -brace)
|
||||
# "[" idle recolor=-1 call=.quote()
|
||||
"a-zA-Z_" ident buffer mark
|
||||
.ifdef quote
|
||||
"]" idle return
|
||||
.endif
|
||||
.ifdef brace
|
||||
")" endbrace recolor=-1
|
||||
.endif
|
||||
|
||||
:quote Constant string
|
||||
* quote
|
||||
"]" idle
|
||||
|
||||
:endbrace Brace
|
||||
* idle noeat return
|
||||
|
||||
.ifdef quote
|
||||
:ident Constant string
|
||||
.else
|
||||
:ident Ident
|
||||
.endif
|
||||
* maybe_macro noeat strings
|
||||
"builtin" maybe_kw
|
||||
"changecom" maybe_kw
|
||||
"changequote" maybe_kw
|
||||
"changeword" maybe_kw
|
||||
"debugfile" maybe_kw
|
||||
"debugmode" maybe_kw
|
||||
"decr" maybe_kw
|
||||
"define" maybe_kw
|
||||
"defn" maybe_kw
|
||||
"divert" maybe_kw
|
||||
"divnum" maybe_kw
|
||||
"dnl" comment
|
||||
"dumpdef" maybe_kw
|
||||
"errprint" maybe_kw
|
||||
"esyscmd" maybe_kw
|
||||
"eval" maybe_kw
|
||||
"file" maybe_kw
|
||||
"format" maybe_kw
|
||||
"ifdef" maybe_kw
|
||||
"ifelse" maybe_kw
|
||||
"include" maybe_kw
|
||||
"incr" maybe_kw
|
||||
"index" maybe_kw
|
||||
"indir" maybe_kw
|
||||
"len" maybe_kw
|
||||
"line" maybe_kw
|
||||
"m4exit" maybe_kw
|
||||
"m4wrap" maybe_kw
|
||||
"maketemp" maybe_kw
|
||||
"patsubst" maybe_kw
|
||||
"popdef" maybe_kw
|
||||
"pushdef" maybe_kw
|
||||
"regexp" maybe_kw
|
||||
"shift" maybe_kw
|
||||
"sinclude" maybe_kw
|
||||
"substr" maybe_kw
|
||||
"syscmd" maybe_kw
|
||||
"sysval" maybe_kw
|
||||
"traceoff" maybe_kw
|
||||
"traceon" maybe_kw
|
||||
"translit" maybe_kw
|
||||
"undefine" maybe_kw
|
||||
"undivert" maybe_kw
|
||||
done
|
||||
"a-zA-Z0-9_" ident
|
||||
|
||||
:maybe_macro Idle
|
||||
* idle noeat
|
||||
"(" macro recolormark noeat
|
||||
|
||||
:maybe_kw Idle
|
||||
* idle noeat
|
||||
"(" kw recolormark noeat
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
"(" macro noeat
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"\n" idle
|
||||
|
||||
:macro Variable
|
||||
* idle noeat
|
||||
"(" brace recolor=-1
|
||||
|
||||
:brace Brace
|
||||
* idle noeat call=.m4(brace -quote)
|
||||
|
||||
.end
|
||||
|
||||
.subr quote
|
||||
:idle Constant string
|
||||
* idle
|
||||
"]" idle return
|
||||
"[" idle call=.quote()
|
||||
|
||||
.end
|
||||
198
joe/usr/share/joe/syntax/mail.jsf
Normal file
198
joe/usr/share/joe/syntax/mail.jsf
Normal file
|
|
@ -0,0 +1,198 @@
|
|||
# JOE syntax highlight file for typical UNIX mail files
|
||||
# 2004-04-25 Tomas Szepe <szepe@pinerecords.com>
|
||||
|
||||
# Improved to handle quote characters commonly seen on Usenet, and
|
||||
# highlighting of the more frequently edited mail and news headers, with
|
||||
# some sanity checking of the same.
|
||||
# 2004-06-26 Jeff Hurwit <darkmoon@verizon.net>
|
||||
|
||||
-
|
||||
|
||||
=Idle
|
||||
=Head +Statement +Keyword
|
||||
=Email +Escape +Head
|
||||
=HdTo +Email
|
||||
=HdFrom +Email
|
||||
=HdSbj +Title +String +Constant +Head
|
||||
=HdDate +Number +Constant +Head
|
||||
=HdRRT +Email
|
||||
=HdGrp +Email
|
||||
=HdFuT +Email
|
||||
=HdBad +Bad
|
||||
=Quot1 +Comment
|
||||
=Quot2 +DefinedIdent
|
||||
=Sign +Preproc
|
||||
|
||||
# Start in headers. We know we're out at the first blank line.
|
||||
|
||||
:first Idle
|
||||
* hbol noeat
|
||||
"\n" newline
|
||||
">|:~}#]" newline noeat
|
||||
|
||||
# Require header
|
||||
# "\n" nohead
|
||||
|
||||
:nohead HdBad
|
||||
* nohead
|
||||
|
||||
:hbol Idle
|
||||
* hbad recolor=-1
|
||||
"\n" newline
|
||||
"A-Z" bufhdrs buffer
|
||||
"-" newline noeat
|
||||
|
||||
:hbad HdBad
|
||||
* hbad
|
||||
"\n" hbol
|
||||
|
||||
:hlbad HdBad
|
||||
* hbol
|
||||
|
||||
:bufhdrs Idle
|
||||
* hbad recolor=-1
|
||||
"\n" hlbad noeat recolor=-2
|
||||
"-_a-zA-Z0-9" bufhdrs
|
||||
":" headers hold
|
||||
|
||||
:headers Idle
|
||||
* hbad recolor=-1
|
||||
" \n" hnocolor noeat strings
|
||||
"To" hsto recolor=-2
|
||||
"Cc" hsto recolor=-2
|
||||
"Bcc" hsto recolor=-2
|
||||
"From" hsfrom recolor=-2
|
||||
"Subject" hssbj recolor=-2
|
||||
"Date" hsdate recolor=-2
|
||||
"Return-Receipt-To" hsrrecp recolor=-2
|
||||
"Newsgroups" hsgroups recolor=-2
|
||||
"Followup-To" hsfolup recolor=-2
|
||||
done
|
||||
|
||||
:hnocolor Idle
|
||||
* hnocolor
|
||||
"\n" cont_nocolor
|
||||
|
||||
:cont_nocolor Idle
|
||||
* hbol noeat
|
||||
" \t" hnocolor recolor=-1
|
||||
|
||||
:hsto Head
|
||||
* hto
|
||||
"\n" hbol
|
||||
|
||||
:hto HdTo
|
||||
* hto
|
||||
"\n" cont_to
|
||||
|
||||
:cont_to HdTo
|
||||
* hbol noeat
|
||||
" \t" hto recolor=-1
|
||||
|
||||
:hsfrom Head
|
||||
* hfrom
|
||||
"\n" hbol
|
||||
|
||||
:hfrom HdFrom
|
||||
* hfrom
|
||||
"\n" hbol
|
||||
|
||||
:hssbj Head
|
||||
* hsbj
|
||||
"\n" hbol
|
||||
|
||||
:hsbj HdSbj
|
||||
* hsbj
|
||||
"\n" cont_sbj
|
||||
|
||||
:cont_sbj HdSbj
|
||||
* hbol noeat
|
||||
" \t" hsbj recolor=-1
|
||||
|
||||
:hsdate Head
|
||||
* hdate
|
||||
"\n" hbol
|
||||
|
||||
:hdate HdDate
|
||||
* hdate
|
||||
"\n" hbol
|
||||
|
||||
:hsrrecp Head
|
||||
* hrrecp
|
||||
"\n" hbol
|
||||
|
||||
:hrrecp HdRRT
|
||||
* hrrecp
|
||||
"\n" hbol
|
||||
|
||||
:hsgroups Head
|
||||
* hgroups
|
||||
"\n" hbol
|
||||
|
||||
:hgroups HdGrp
|
||||
* hgroups
|
||||
"\n" hbol
|
||||
|
||||
:hsfolup Head
|
||||
* hfolup
|
||||
"\n" hbol
|
||||
|
||||
:hfolup HdFuT
|
||||
* hfolup
|
||||
"\n" hbol
|
||||
|
||||
# body of the message
|
||||
|
||||
:newline Idle
|
||||
* knocolor
|
||||
"\n" newline
|
||||
">|:~}#]" q1 recolor=-1
|
||||
"-" maybesign1 recolor=-1
|
||||
|
||||
:maybesign1 Quot1
|
||||
* q1
|
||||
" \t" q1
|
||||
"\n" newline recolor=-1
|
||||
">|:~}#]" q2 recolor=-1
|
||||
"-" maybesign2 recolor=-1
|
||||
|
||||
:maybesign2 Quot2
|
||||
* q2
|
||||
"\t" q2
|
||||
"\n" newline recolor=-1
|
||||
" " maybesign3 recolor=-1
|
||||
">|:~}#]" q1 recolor=-1
|
||||
"-" knocolor recolor=-3
|
||||
|
||||
:maybesign3 Quot2
|
||||
* q2
|
||||
" \t" q2
|
||||
"\n" sign recolor=-4
|
||||
"->|:~}#]" q1 recolor=-1
|
||||
|
||||
:sign Sign
|
||||
* sign
|
||||
|
||||
:q1 Quot1
|
||||
* kq1
|
||||
"\n" newline
|
||||
" \t" q1
|
||||
"->|:~}#]" q2 recolor=-1
|
||||
|
||||
:q2 Quot2
|
||||
* kq2
|
||||
"\n" newline
|
||||
" \t" q2
|
||||
"->|:~}#]" q1 recolor=-1
|
||||
|
||||
:knocolor Idle
|
||||
* knocolor
|
||||
"\n" newline
|
||||
|
||||
:kq1 Quot1
|
||||
* kq1
|
||||
"\n" newline
|
||||
|
||||
:kq2 Quot2
|
||||
* kq2
|
||||
"\n" newline
|
||||
8
joe/usr/share/joe/syntax/mason.jsf
Normal file
8
joe/usr/share/joe/syntax/mason.jsf
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
# JOE syntax file for Mason
|
||||
|
||||
=Idle
|
||||
|
||||
# Call HTML with mason flag. It will call perl.
|
||||
|
||||
:idle Idle
|
||||
* idle noeat call=html.html(mason)
|
||||
97
joe/usr/share/joe/syntax/matlab.jsf
Normal file
97
joe/usr/share/joe/syntax/matlab.jsf
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
# joe Matlab syntax highlighting
|
||||
# Created by Gustav Stenberg 2007-10-30
|
||||
#
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=Keyword
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=Secondary +Ident
|
||||
=Error +Bad
|
||||
=Command +Statement +Keyword
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"%" comment recolor=-1
|
||||
"\'" string mark recolor=-1
|
||||
"a-zA-Z_." ident buffer
|
||||
"!" command recolor=-1
|
||||
"([{" parent buffer
|
||||
"0-9" first_digit recolor=-1
|
||||
|
||||
:command Command
|
||||
* command
|
||||
"\n" idle
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:keyword Keyword
|
||||
* idle noeat
|
||||
|
||||
:keywordc Keyword
|
||||
* comment
|
||||
"\n" idle
|
||||
|
||||
:parent Idle
|
||||
* parent
|
||||
")]}" idle
|
||||
|
||||
:string Error
|
||||
* string
|
||||
"\'" stringdone recolormark recolor=-1
|
||||
"\n" idle
|
||||
|
||||
:stringdone String string
|
||||
* idle recolor=-1
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-9" first_digit
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:secondary Secondary
|
||||
* idle noeat
|
||||
"a-zA-Z_0-9. " secondary
|
||||
"\n;:=!\"\'+-,*(){}[]&\\\|/~" idle recolor=-1
|
||||
|
||||
:ident Ident
|
||||
* secondary noeat strings
|
||||
"..." keywordc
|
||||
"break" keyword
|
||||
"case" keyword
|
||||
"catch" keyword
|
||||
"continue" keyword
|
||||
"else" keyword
|
||||
"elseif" keyword
|
||||
"end" keyword
|
||||
"for" keyword
|
||||
"function" keyword
|
||||
"global" keyword
|
||||
"if" keyword
|
||||
"otherwise" keyword
|
||||
"persistent" keyword
|
||||
"return" keyword
|
||||
"switch" keyword
|
||||
"try" keyword
|
||||
"while" keyword
|
||||
done
|
||||
"a-zA-Z0-9_." ident
|
||||
135
joe/usr/share/joe/syntax/md.jsf
Normal file
135
joe/usr/share/joe/syntax/md.jsf
Normal file
|
|
@ -0,0 +1,135 @@
|
|||
# JOE syntax highlight file for Markdown
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
# And yes, this *is* a joke :p
|
||||
|
||||
# bold parsing is not that perfect since this works: **bold__
|
||||
|
||||
=Idle
|
||||
=Tag +DefinedFunction +DefinedIdent
|
||||
=Escape
|
||||
=Bad
|
||||
|
||||
=Bold +Keyword
|
||||
=Headline +Title +Preproc +Statement
|
||||
=Quote +Comment
|
||||
=Code +String +Constant
|
||||
=List +TagName +Tag
|
||||
=LinkDesc +Title +String
|
||||
=Link +Number +Constant
|
||||
=Rule +Preproc
|
||||
|
||||
:line_start Idle
|
||||
* idle noeat
|
||||
"#" headline_prefix recolor=-1
|
||||
">" quote recolor=-1
|
||||
" " maybe_code1
|
||||
"\t" code
|
||||
"-*" maybe_list
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\n" line_start
|
||||
"<" tag recolor=-1
|
||||
"\\" escape recolor=-1
|
||||
"*_" maybe_bold1
|
||||
"[" maybe_link_desc1
|
||||
|
||||
:headline_prefix Idle
|
||||
* headline
|
||||
"#" headline_prefix
|
||||
|
||||
:headline Headline
|
||||
* headline
|
||||
"\n" line_start
|
||||
|
||||
:quote Quote
|
||||
* quote
|
||||
"\n" line_start
|
||||
|
||||
:maybe_code1 Idle
|
||||
* idle
|
||||
" " maybe_code2
|
||||
|
||||
:maybe_code2 Idle
|
||||
* idle
|
||||
" " maybe_code3
|
||||
|
||||
:maybe_code3 Idle
|
||||
* idle
|
||||
" " code recolor=-4
|
||||
|
||||
:code Code
|
||||
* code
|
||||
"\n" line_start
|
||||
|
||||
:maybe_list Idle
|
||||
* idle
|
||||
" " list
|
||||
"-*" maybe_rule1
|
||||
|
||||
:list List
|
||||
* list
|
||||
"\n" line_start
|
||||
|
||||
:maybe_rule1 Idle
|
||||
* idle
|
||||
"-*" rule recolor=-3
|
||||
|
||||
:rule Rule
|
||||
* rule
|
||||
"\n" line_start
|
||||
|
||||
:tag Tag
|
||||
* idle
|
||||
"a-z0-9 /" tag
|
||||
">" idle
|
||||
|
||||
# do escaping of *_ and so on
|
||||
:escape Escape
|
||||
* idle
|
||||
|
||||
:maybe_bold1 Idle
|
||||
* idle noeat
|
||||
"*_" bold recolor=-2
|
||||
|
||||
:bold Bold
|
||||
* bold
|
||||
"\n" line_start # end if we reach newline during bold
|
||||
"*_" maybe_end_bold
|
||||
|
||||
:maybe_end_bold Bold
|
||||
* bold
|
||||
"*_" end_bold
|
||||
|
||||
:end_bold Bold
|
||||
* idle noeat
|
||||
|
||||
:maybe_link_desc1 Idle
|
||||
* maybe_link_desc mark
|
||||
|
||||
:maybe_link_desc Idle
|
||||
* maybe_link_desc
|
||||
"]" maybe_end_link_desc markend
|
||||
|
||||
:maybe_end_link_desc Idle
|
||||
* idle
|
||||
"(" link_inline1 recolormark
|
||||
"[" link_ref1 recolormark
|
||||
|
||||
:link_inline1 LinkDesc
|
||||
* link_inline noeat
|
||||
|
||||
:link_inline Link
|
||||
* link_inline
|
||||
")" link_end noeat
|
||||
|
||||
:link_ref1 LinkDesc
|
||||
* link_ref noeat
|
||||
|
||||
:link_ref Link
|
||||
* link_ref
|
||||
"]" link_end noeat
|
||||
|
||||
:link_end Idle
|
||||
* idle
|
||||
406
joe/usr/share/joe/syntax/ocaml.jsf
Normal file
406
joe/usr/share/joe/syntax/ocaml.jsf
Normal file
|
|
@ -0,0 +1,406 @@
|
|||
# JOE syntax highlight file for OCaml
|
||||
|
||||
=Idle
|
||||
=Bad
|
||||
=Comment
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape
|
||||
=Character +String
|
||||
=CharacterEscape +StringEscape
|
||||
=Boolean +Constant
|
||||
=Keyword
|
||||
=Type
|
||||
=Operator +Keyword
|
||||
=Control
|
||||
=Brace
|
||||
=LowId +Ident
|
||||
=CapId +DefinedIdent
|
||||
=Builtin +DefinedFunction +DefinedIdent
|
||||
=Structure +Keyword
|
||||
=StorageClass +Type +Keyword
|
||||
=Statement +Keyword
|
||||
=Loop +Statement
|
||||
=Conditional +Statement
|
||||
|
||||
# Bugs:
|
||||
# = in some contexts is a control, not an operator (let, etc)
|
||||
# "type" keyword introduces a type = type
|
||||
|
||||
:expr Idle
|
||||
* expr
|
||||
"#.,)];" control recolor=-1
|
||||
"!?" prefixop recolor=-1
|
||||
"=<>@^&+*/$%" infixop recolor=-1
|
||||
"\-" minus recolor=-1
|
||||
"~" tilde recolor=-1
|
||||
"[" brace recolor=-1
|
||||
"|" pipe recolor=-1
|
||||
":" colon recolor=-1
|
||||
"(" bracket recolor=-1
|
||||
"0" zero recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"\"" string recolor=-1
|
||||
"\'" char recolor=-1
|
||||
"a-z_" lowid buffer recolor=-1
|
||||
"A-Z`" capid buffer recolor=-1
|
||||
|
||||
:bad Bad
|
||||
* expr
|
||||
|
||||
:control Control
|
||||
* expr noeat
|
||||
|
||||
:prefixop Operator
|
||||
* operator noeat
|
||||
|
||||
:infixop Operator
|
||||
* operator noeat
|
||||
|
||||
:operator Operator
|
||||
* expr noeat
|
||||
"!?~=<>@^|&+*/$%.:\-" operator
|
||||
|
||||
:minus Operator
|
||||
* operator noeat
|
||||
"0" zero recolor=-2
|
||||
"1-9" decimal recolor=-2
|
||||
|
||||
:tilde Operator
|
||||
* prefixop noeat
|
||||
"a-z" opparam noeat
|
||||
|
||||
:opparam LowId
|
||||
* expr noeat
|
||||
"a-zA-Z0-9_'" opparam
|
||||
":" control
|
||||
|
||||
:brace Control
|
||||
* expr noeat
|
||||
"|" expr
|
||||
|
||||
:pipe Operator
|
||||
* infixop noeat
|
||||
"]" pipeclose recolor=-2
|
||||
|
||||
:pipeclose Control
|
||||
* expr noeat
|
||||
|
||||
:colon Operator
|
||||
* type1 noeat
|
||||
"=" assign recolor=-2
|
||||
|
||||
:assign Operator
|
||||
* expr noeat
|
||||
|
||||
:bracket Control
|
||||
* expr noeat
|
||||
"*" comment recolor=-2
|
||||
|
||||
:zero Number
|
||||
* expr noeat
|
||||
"0-9_" decimal
|
||||
"b" binaryl buffer
|
||||
"B" binaryh buffer
|
||||
"o" octall buffer
|
||||
"O" octalh buffer
|
||||
"x" hexl buffer
|
||||
"X" hexh buffer
|
||||
"e" epartl buffer
|
||||
"E" eparth buffer
|
||||
"." float
|
||||
|
||||
:decimal Number
|
||||
* expr noeat
|
||||
"0-9_" decimal
|
||||
"." float
|
||||
"e" epartl buffer
|
||||
"E" eparth buffer
|
||||
|
||||
:binaryl Number
|
||||
* lowid noeat recolor=-2
|
||||
"01" binary
|
||||
:binaryh Number
|
||||
* capid noeat recolor=-2
|
||||
"01" binary
|
||||
:binary Number
|
||||
* expr noeat
|
||||
"01_" binary
|
||||
|
||||
:octall Number
|
||||
* lowid noeat recolor=-2
|
||||
"0-7" octal
|
||||
:octalh Number
|
||||
* capid noeat recolor=-2
|
||||
"0-7" octal
|
||||
:octal Number
|
||||
* expr noeat
|
||||
"0-7_" octal
|
||||
|
||||
:hexl Number
|
||||
* lowid noeat recolor=-2
|
||||
"0-9a-fA-F" hex
|
||||
:hexh Number
|
||||
* capid noeat recolor=-2
|
||||
"0-9a-fA-F" hex
|
||||
:hex Number
|
||||
* expr noeat
|
||||
"0-9a-fA-F_" hex
|
||||
|
||||
:float Number
|
||||
* expr noeat
|
||||
"0-9_" float
|
||||
"e" epartl buffer
|
||||
"E" eparth buffer
|
||||
|
||||
:epartl Number
|
||||
* lowid noeat recolor=-2
|
||||
"0-9" enum
|
||||
"+\-" enum1
|
||||
:eparth Number
|
||||
* capid noeat recolor=-2
|
||||
"0-9" enum
|
||||
"+\-" enum1
|
||||
|
||||
:enum1 Number
|
||||
* bad noeat
|
||||
"0-9_" enum
|
||||
:enum Number
|
||||
* expr noeat
|
||||
"0-9_" enum
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" expr
|
||||
"\\" string_escape recolor=-1
|
||||
"%" string_control recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"x" string_hex1
|
||||
"0-7" string_octal2
|
||||
|
||||
:string_hex1 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_hex2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:string_control StringEscape string
|
||||
* string_control
|
||||
"\"" string noeat
|
||||
"diouxXeEfFgGaAcspn%SC" string
|
||||
|
||||
:char Character string
|
||||
* charend
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:charend Character string
|
||||
* bad noeat
|
||||
"\'" expr
|
||||
|
||||
:char_escape CharacterEscape string
|
||||
* charend
|
||||
"x" char_hex1
|
||||
"0-7" char_octal2
|
||||
|
||||
:char_hex1 CharacterEscape string
|
||||
* bad noeat
|
||||
"0-9a-fA-F" char_hex2
|
||||
|
||||
:char_hex2 CharacterEscape string
|
||||
* charend noeat
|
||||
"0-9a-fA-F" charend
|
||||
|
||||
:char_octal2 CharacterEscape string
|
||||
* charend noeat
|
||||
"0-7" char_octal3
|
||||
|
||||
:char_octal3 CharacterEscape string
|
||||
* charend noeat
|
||||
"0-7" charend
|
||||
|
||||
:lowid LowId
|
||||
* expr noeat strings
|
||||
"_" kw
|
||||
"and" kw
|
||||
"as" kw
|
||||
"assert" kw
|
||||
"begin" kw
|
||||
"class" kw
|
||||
"constraint" kw
|
||||
"do" kw
|
||||
"done" kw
|
||||
"downto" kw
|
||||
"else" kw
|
||||
"end" kw
|
||||
"exception" kw
|
||||
"external" kw
|
||||
"false" bool
|
||||
"for" loop
|
||||
"fun" kw
|
||||
"function" struct
|
||||
"functor" struct
|
||||
"if" cond
|
||||
"in" kw
|
||||
"include" kw
|
||||
"inherit" kw
|
||||
"initializer" kw
|
||||
"lazy" storage
|
||||
"let" kw
|
||||
"match" kw
|
||||
"method" struct
|
||||
"module" struct
|
||||
"mutable" storage
|
||||
"object" kw
|
||||
"of" kw
|
||||
"open" kw
|
||||
"private" storage
|
||||
"raise" kw # technically not, but ...
|
||||
"rec" kw
|
||||
"sig" kw
|
||||
"struct" kw
|
||||
"then" cond
|
||||
"to" kw
|
||||
"true" bool
|
||||
"try" kw
|
||||
"type" kw
|
||||
"val" kw
|
||||
"virtual" storage
|
||||
"when" loop
|
||||
"while" loop
|
||||
"with" kw
|
||||
"asr" operatorkw
|
||||
"land" operatorkw
|
||||
"lor" operatorkw
|
||||
"lsl" operatorkw
|
||||
"lsr" operatorkw
|
||||
"lxor" operatorkw
|
||||
"mod" operatorkw
|
||||
"new" operatorkw
|
||||
"or" operatorkw
|
||||
done
|
||||
"a-zA-Z0-9_'" lowid
|
||||
|
||||
:kw Keyword
|
||||
* expr noeat
|
||||
|
||||
:operatorkw Operator
|
||||
* expr noeat
|
||||
|
||||
:bool Boolean
|
||||
* expr noeat
|
||||
|
||||
:loop Loop
|
||||
* expr noeat
|
||||
|
||||
:struct Structure
|
||||
* expr noeat
|
||||
|
||||
:storage StorageClass
|
||||
* expr noeat
|
||||
|
||||
:cond Conditional
|
||||
* expr noeat
|
||||
|
||||
:capid CapId
|
||||
* expr noeat strings
|
||||
"Arg" stdlib
|
||||
"Array" stdlib
|
||||
"ArrayLabels" stdlib
|
||||
"Buffer" stdlib
|
||||
"Callback" stdlib
|
||||
"Char" stdlib
|
||||
"Complex" stdlib
|
||||
"Digest" stdlib
|
||||
"Filename" stdlib
|
||||
"Format" stdlib
|
||||
"Gc" stdlib
|
||||
"Genlex" stdlib
|
||||
"Hashtbl" stdlib
|
||||
"Int32" stdlib
|
||||
"Int64" stdlib
|
||||
"Lazy" stdlib
|
||||
"Lexing" stdlib
|
||||
"List" stdlib
|
||||
"ListLabels" stdlib
|
||||
"Map" stdlib
|
||||
"Marshal" stdlib
|
||||
"MoreLabels" stdlib
|
||||
"Nativeint" stdlib
|
||||
"Oo" stdlib
|
||||
"Parsing" stdlib
|
||||
"Printexc" stdlib
|
||||
"Printf" stdlib
|
||||
"Queue" stdlib
|
||||
"Random" stdlib
|
||||
"Scanf" stdlib
|
||||
"Set" stdlib
|
||||
"Sort" stdlib
|
||||
"Stack" stdlib
|
||||
"StdLabels" stdlib
|
||||
"Stream" stdlib
|
||||
"String" stdlib
|
||||
"StringLabels" stdlib
|
||||
"Sys" stdlib
|
||||
"Weak" stdlib
|
||||
done
|
||||
"a-zA-Z0-9_'" capid
|
||||
|
||||
:stdlib Builtin
|
||||
* expr noeat
|
||||
|
||||
:type1 Type
|
||||
* expr noeat
|
||||
"a-z *>'\t\-" type1
|
||||
"(" type2
|
||||
|
||||
:type2 Type
|
||||
* expr noeat
|
||||
"a-z *>'\t\-" type2
|
||||
"(" type3
|
||||
")" type1
|
||||
|
||||
:type3 Type
|
||||
* expr noeat
|
||||
"a-z *>'\t\-" type3
|
||||
"(" type4
|
||||
")" type2
|
||||
|
||||
:type4 Type
|
||||
* expr noeat
|
||||
"a-z *>'\t\-" type4
|
||||
"(" expr # too deep nesting
|
||||
")" type2
|
||||
|
||||
:comment Comment comment
|
||||
* expr call=.comment()
|
||||
|
||||
.subr comment
|
||||
|
||||
:comment_body Comment comment
|
||||
* comment_body
|
||||
"(" nest_comment
|
||||
"*" end_comment
|
||||
"BFHNTX" comment_body noeat call=comment_todo.comment_todo()
|
||||
|
||||
:end_comment Comment comment
|
||||
* comment_body noeat
|
||||
")" end_comment return
|
||||
|
||||
:nest_comment Comment comment
|
||||
* comment_body
|
||||
"*" comment_body call=.comment()
|
||||
|
||||
.end
|
||||
241
joe/usr/share/joe/syntax/pascal.jsf
Normal file
241
joe/usr/share/joe/syntax/pascal.jsf
Normal file
|
|
@ -0,0 +1,241 @@
|
|||
# PASCAL highlighter for JOE
|
||||
# With support for Delphi and FPC by Michael Van Canneyt
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Constant
|
||||
=String +Constant
|
||||
=Number +Constant
|
||||
=Type
|
||||
=Keyword
|
||||
=Statement +Keyword
|
||||
=Operator +Keyword
|
||||
=Loop +Statement
|
||||
=Conditional +Statement
|
||||
=DefinedFunction +DefinedIdent
|
||||
=Builtin +DefinedFunction
|
||||
=Structure +Type
|
||||
=Bad
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\i" ident buffer
|
||||
"(" maybe_comment
|
||||
"/" maybe_linecomment
|
||||
"{" comment recolor=-1
|
||||
"'" string recolor=-1
|
||||
"$" maybe_hex_number
|
||||
"%" maybe_bin_number
|
||||
"&" maybe_oct_number
|
||||
"0-9" number recolor=-1
|
||||
|
||||
# Comments
|
||||
|
||||
:maybe_comment Idle
|
||||
* idle noeat
|
||||
"*" comment recolor=-2
|
||||
|
||||
:maybe_linecomment Idle
|
||||
* idle noeat
|
||||
"/" line_comment recolor=-2
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" reset
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"*" maybe_end_comment
|
||||
"}" idle
|
||||
|
||||
:maybe_end_comment Comment comment
|
||||
* comment noeat
|
||||
")" idle
|
||||
|
||||
# String constant
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\n" idle
|
||||
"'" maybe_end_string
|
||||
|
||||
:maybe_end_string String string
|
||||
* idle recolor=-1 noeat
|
||||
"'" string
|
||||
|
||||
# Numeric constant
|
||||
|
||||
:maybe_hex_number Idle
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex_number recolor=-2
|
||||
|
||||
:maybe_bin_number Idle
|
||||
* idle noeat
|
||||
"01" bin_number recolor=-2
|
||||
|
||||
:maybe_oct_number Idle
|
||||
* idle noeat
|
||||
"0-7" oct_number recolor=-2
|
||||
|
||||
:bad Bad
|
||||
* idle noeat
|
||||
|
||||
:hex_number Number
|
||||
* idle noeat
|
||||
"0-9" hex_number
|
||||
"a-fA-F" hex_number
|
||||
|
||||
:bin_number Number
|
||||
* idle noeat
|
||||
"01" bin_number
|
||||
"2-9" bad recolor=-1
|
||||
|
||||
:oct_number Number
|
||||
* idle noeat
|
||||
"0-7" oct_number
|
||||
"89" bad recolor=-1
|
||||
|
||||
:number Number
|
||||
* idle noeat
|
||||
"0-9" number
|
||||
"eE" epart
|
||||
"." dot
|
||||
|
||||
:dot Number
|
||||
* idle noeat
|
||||
"0-9" float
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
|
||||
# Keywords
|
||||
|
||||
:ident Idle
|
||||
* idle noeat istrings
|
||||
"and" operator
|
||||
"array" type
|
||||
"begin" kw
|
||||
"case" cond
|
||||
"const" kw
|
||||
"div" operator
|
||||
"do" kw
|
||||
"downto" kw
|
||||
"else" cond
|
||||
"end" kw
|
||||
"file" kw
|
||||
"for" loop
|
||||
"function" kw
|
||||
"goto" loop
|
||||
"if" cond
|
||||
"in" kw
|
||||
"label" kw
|
||||
"mod" operator
|
||||
"nil" word_constant
|
||||
"not" operator
|
||||
"of" kw
|
||||
"or" operator
|
||||
"packed" kw
|
||||
"procedure" kw
|
||||
"program" kw
|
||||
"record" kw
|
||||
"repeat" loop
|
||||
"set" kw
|
||||
"then" kw
|
||||
"type" kw
|
||||
"until" loop
|
||||
"var" kw
|
||||
"while" loop
|
||||
"with" kw
|
||||
# Delphi keywords
|
||||
"to" kw
|
||||
"try" kw
|
||||
"finally" kw
|
||||
"raise" kw
|
||||
"absolute" kw
|
||||
"cdecl" kw
|
||||
"stdcall" kw
|
||||
"register" kw
|
||||
"interface" struct
|
||||
"library" kw
|
||||
"constructor" kw
|
||||
"destructor" kw
|
||||
"dispinterface" kw
|
||||
"inherited" kw
|
||||
"public" kw
|
||||
"private" kw
|
||||
"published" kw
|
||||
"protected" kw
|
||||
"initialization" kw
|
||||
"finalization" kw
|
||||
"class" struct
|
||||
"object" kw
|
||||
"resourcestring" kw
|
||||
"property" kw
|
||||
"threadvar" kw
|
||||
"integer" type
|
||||
"boolean" type
|
||||
"real" type
|
||||
"char" type
|
||||
"string" type
|
||||
"text" type
|
||||
"abs" function
|
||||
"atan" function
|
||||
"arctan" function
|
||||
"concat" function
|
||||
"cos" function
|
||||
"eof" function
|
||||
"eoln" function
|
||||
"exp" function
|
||||
"insert" function
|
||||
"length" function
|
||||
"ln" function
|
||||
"log" function
|
||||
"odd" function
|
||||
"ord" function
|
||||
"page" function
|
||||
"pred" function
|
||||
"round" function
|
||||
"sin" function
|
||||
"sqr" function
|
||||
"sqrt" function
|
||||
"succ" function
|
||||
"trun" function
|
||||
done
|
||||
"\c" ident
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:type Type
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:struct Structure
|
||||
* idle noeat
|
||||
|
||||
:operator Operator
|
||||
* idle noeat
|
||||
|
||||
:word_constant Constant
|
||||
* idle noeat
|
||||
|
||||
:function Builtin
|
||||
* idle noeat
|
||||
487
joe/usr/share/joe/syntax/perl.jsf
Normal file
487
joe/usr/share/joe/syntax/perl.jsf
Normal file
|
|
@ -0,0 +1,487 @@
|
|||
# JOE syntax highlight file for Perl
|
||||
|
||||
# Define colors
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=Pod +Preproc
|
||||
=Variable +DefinedIdent # TODO: Make this work.
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape
|
||||
=StringVariable +StringEscape
|
||||
=Regex +String
|
||||
=RegexEscape +StringEscape
|
||||
=Type
|
||||
=Keyword
|
||||
=Statement +Keyword
|
||||
=Loop +Statement
|
||||
=Conditional +Statement
|
||||
=Structure +Statement
|
||||
=Bad
|
||||
|
||||
:begin Idle
|
||||
* begin noeat call=.perl()
|
||||
|
||||
#
|
||||
# Perl as a subroutine for Mason
|
||||
#
|
||||
|
||||
.subr perl
|
||||
|
||||
# Detect pod
|
||||
|
||||
:idle Idle
|
||||
* idle1 noeat
|
||||
.ifdef mason_line
|
||||
"\n" idle return
|
||||
.else
|
||||
"\n" idle
|
||||
.endif
|
||||
"=" pod_start
|
||||
|
||||
# allow keywords
|
||||
|
||||
:idle1 Idle
|
||||
* idle1
|
||||
"#" line_comment_i recolor=-1
|
||||
"\n" idle noeat
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"`" backtick recolor=-1
|
||||
"<" maybe_inc
|
||||
"$" not_string buffer recolor=-1
|
||||
.ifdef mason_block
|
||||
"&%" perl_maybe_done buffer
|
||||
"-@\i" ident buffer recolor=-1
|
||||
.else
|
||||
"/" regex recolor=-1
|
||||
"-\i@%&" ident buffer recolor=-1
|
||||
.endif
|
||||
|
||||
:perl_maybe_done Idle
|
||||
* ident noeat
|
||||
">" idle1 recolor=-2 return
|
||||
|
||||
# prevent keywords
|
||||
|
||||
:rest Idle
|
||||
* rest
|
||||
"({;~" idle1
|
||||
"#" line_comment recolor=-1
|
||||
"\n" idle noeat
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"`" backtick recolor=-1
|
||||
"$" not_string buffer recolor=-1
|
||||
"<" maybe_inc
|
||||
.ifdef mason_block
|
||||
"&%" perl_maybe_done buffer recolor=-1
|
||||
"\i@" maybe_string buffer
|
||||
.else
|
||||
"\i@%&" maybe_string buffer
|
||||
.endif
|
||||
|
||||
:pod_start Idle
|
||||
* pod_start
|
||||
"\n" pod_block
|
||||
|
||||
:pod_block Pod
|
||||
* pod_block
|
||||
"=" pod_ident buffer
|
||||
|
||||
:pod_ident Pod
|
||||
* pod_block noeat strings
|
||||
"=cut" rest
|
||||
done
|
||||
"\c" pod_ident
|
||||
|
||||
:maybe_inc Idle
|
||||
* rest noeat
|
||||
.ifdef mason_block
|
||||
"/" perl_maybe_done_2
|
||||
.endif
|
||||
"<" maybe_inc1
|
||||
|
||||
:perl_maybe_done_2 Idle
|
||||
* perl_idle noeat
|
||||
"a-z" perl_maybe_done_2
|
||||
">" idle
|
||||
|
||||
|
||||
:maybe_inc1 Idle
|
||||
* rest noeat
|
||||
" " maybe_inc1
|
||||
"'\"" quoted_inc_start save_c recolor=-1
|
||||
"\i" inc buffer noeat
|
||||
|
||||
:quoted_inc_start Variable
|
||||
* quoted_inc buffer
|
||||
|
||||
:quoted_inc Variable
|
||||
* quoted_inc
|
||||
& skipline save_s
|
||||
|
||||
:inc Variable
|
||||
* skipline save_s noeat
|
||||
"\c" inc
|
||||
|
||||
# Should be treated as a normal line here...
|
||||
|
||||
:skipline Idle
|
||||
* skipline
|
||||
"\n" next_line
|
||||
|
||||
:todelim String string
|
||||
* todelim
|
||||
"\n" next_line strings
|
||||
"&" founddelim
|
||||
done
|
||||
|
||||
# eat \n so it's not in string.
|
||||
:next_line String string
|
||||
* todelim buffer
|
||||
"\n" next_line
|
||||
|
||||
:founddelim Variable
|
||||
* idle noeat
|
||||
|
||||
:regex Regex
|
||||
* regex
|
||||
"\\" regex_quote recolor=-1
|
||||
"/" rest
|
||||
|
||||
:regex_quote RegexEscape
|
||||
* regex
|
||||
|
||||
:not_string Idle
|
||||
* rest noeat
|
||||
"\i" ident
|
||||
"\"'`#" rest
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" rest
|
||||
|
||||
:line_comment_i Comment comment
|
||||
* line_comment_i
|
||||
"BFHNTX" line_comment_i noeat call=comment_todo.comment_todo()
|
||||
"\n" idle noeat
|
||||
|
||||
:end_of_file_comment Comment comment
|
||||
"BFHNTX" end_of_file_comment noeat call=comment_todo.comment_todo()
|
||||
* end_of_file_comment
|
||||
|
||||
:first_digit Number
|
||||
* rest noeat
|
||||
"x" hex
|
||||
"b" binary
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* rest noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* rest noeat
|
||||
"0-7_" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:binary Number
|
||||
* rest noeat
|
||||
"01_" binary
|
||||
"2-9" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* rest noeat
|
||||
"0-9A-Fa-f_" hex
|
||||
|
||||
:decimal Number
|
||||
* rest noeat
|
||||
"0-9_" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* rest recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* rest noeat
|
||||
"eE" epart
|
||||
"0-9_" float
|
||||
|
||||
:epart Number
|
||||
* rest noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* rest noeat
|
||||
"0-9_" enum
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" rest
|
||||
"\\" string_escape recolor=-1
|
||||
"$@" string_subst recolor=-1
|
||||
|
||||
:string_subst StringVariable string
|
||||
* string noeat recolor=-1
|
||||
"\c" string_subst
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"x" string_hex1
|
||||
"c" string_ctrl
|
||||
"N" string_named
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
:string_named StringEscape string
|
||||
* string
|
||||
"{" string_named_rest
|
||||
|
||||
:string_named_rest StringEscape string
|
||||
* string_named_rest
|
||||
"}" string
|
||||
|
||||
:string_ctrl StringEscape string
|
||||
* string
|
||||
|
||||
:string_hex1 StringEscape string
|
||||
* string noeat
|
||||
"{" string_unicode
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_unicode StringEscape string
|
||||
* string_unicode
|
||||
"}" string
|
||||
|
||||
:string_hex2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:char String string
|
||||
* char
|
||||
"\n" idle noeat
|
||||
"'" rest
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape StringEscape string
|
||||
* char recolor=-2
|
||||
"\\'" char
|
||||
|
||||
:backtick String string
|
||||
* backtick
|
||||
"`" rest
|
||||
"\\" backtick_escape recolor=-1
|
||||
"$@" backtick_subst recolor=-1
|
||||
|
||||
:backtick_subst StringVariable string
|
||||
* backtick noeat recolor=-1
|
||||
"\c" backtick_subst
|
||||
|
||||
:backtick_escape StringEscape string
|
||||
* backtick
|
||||
"x" backtick_hex1
|
||||
"c" backtick_ctrl
|
||||
"N" backtick_named
|
||||
"0-7" backtick_octal2
|
||||
"\n" backtick recolor=-2
|
||||
|
||||
:backtick_named StringEscape string
|
||||
* backtick
|
||||
"{" backtick_named_rest
|
||||
|
||||
:backtick_named_rest StringEscape string
|
||||
* backtick_named_rest
|
||||
"}" backtick
|
||||
|
||||
:backtick_ctrl StringEscape string
|
||||
* backtick
|
||||
|
||||
:backtick_hex1 StringEscape string
|
||||
* backtick noeat
|
||||
"{" backtick_unicode
|
||||
"0-9a-fA-F" backtick_hex2
|
||||
|
||||
:backtick_unicode StringEscape string
|
||||
* backtick_unicode
|
||||
"}" backtick
|
||||
|
||||
:backtick_hex2 StringEscape string
|
||||
* backtick noeat
|
||||
"0-9a-fA-F" backtick
|
||||
|
||||
:backtick_octal2 StringEscape string
|
||||
* backtick noeat
|
||||
"0-7" backtick_octal3
|
||||
|
||||
:backtick_octal3 StringEscape string
|
||||
* backtick noeat
|
||||
"0-7" backtick
|
||||
|
||||
# TODO: Tease out the variable logic from this so that we can highlight
|
||||
# variables separate from other identifiers.
|
||||
|
||||
:ident Ident
|
||||
* rest noeat strings
|
||||
"BEGIN" kw
|
||||
"END" kw
|
||||
"if" cond
|
||||
"unless" cond
|
||||
"while" loop
|
||||
"until" loop
|
||||
"foreach" loop
|
||||
"sub" struct
|
||||
"my" kw
|
||||
"do" loop
|
||||
"if" cond
|
||||
"else" cond
|
||||
"elsif" cond
|
||||
"for" loop
|
||||
"continue" loop
|
||||
"last" loop
|
||||
"print" stmt
|
||||
"reset" kw
|
||||
"die" stmt
|
||||
"goto" stmt
|
||||
"require" stmt
|
||||
"use" kw
|
||||
"eval" kw
|
||||
"redo" kw
|
||||
"next" loop
|
||||
"warn" stmt
|
||||
"return" stmt
|
||||
"printf" stmt
|
||||
"close" stmt
|
||||
"package" kw
|
||||
"m" match
|
||||
"qr" match
|
||||
"qq" match
|
||||
"qx" match
|
||||
"qw" match
|
||||
"q" match
|
||||
"s" subst
|
||||
"tr" subst
|
||||
"y" subst
|
||||
"__END__" end_of_file_comment
|
||||
"__DATA__" end_of_file_comment
|
||||
done
|
||||
"\c" ident
|
||||
|
||||
:maybe_string Idle
|
||||
* rest noeat strings
|
||||
"qr" match
|
||||
"qq" match
|
||||
"qx" match
|
||||
"qw" match
|
||||
"q" match
|
||||
done
|
||||
"\c" maybe_string
|
||||
|
||||
:type Type
|
||||
* rest noeat
|
||||
|
||||
:kw Keyword
|
||||
* rest noeat
|
||||
|
||||
:cond Conditional
|
||||
* rest noeat
|
||||
|
||||
:loop Loop
|
||||
* rest noeat
|
||||
|
||||
:struct Structure
|
||||
* rest noeat
|
||||
|
||||
:stmt Statement
|
||||
* rest noeat
|
||||
|
||||
:match Idle
|
||||
* inmatch save_c recolor=-1
|
||||
" " match
|
||||
|
||||
:inmatch Regex
|
||||
* inmatch
|
||||
% inmatch call=.inmatch()
|
||||
& rest
|
||||
"\\" inmatch_quote recolor=-1
|
||||
|
||||
:inmatch_quote RegexEscape
|
||||
* inmatch
|
||||
|
||||
:subst Idle
|
||||
* insubst save_c recolor=-1
|
||||
"<([{`" delim_insubst save_c recolor=-1
|
||||
" " subst
|
||||
|
||||
:insubst Regex
|
||||
* insubst
|
||||
& inrepl
|
||||
"\\" insubst_quote recolor=-1
|
||||
|
||||
:insubst_quote RegexEscape
|
||||
* insubst
|
||||
|
||||
:inrepl Regex
|
||||
* inrepl
|
||||
& rest
|
||||
"\\" inrepl_quote
|
||||
|
||||
:inrepl_quote RegexEscape
|
||||
* inrepl
|
||||
|
||||
:delim_insubst Regex
|
||||
* delim_insubst
|
||||
& delim_repl
|
||||
"\\" delim_quote
|
||||
|
||||
:delim_quote RegexEscape
|
||||
* delim_insubst
|
||||
|
||||
:delim_repl Regex
|
||||
* repl save_c recolor=-1
|
||||
" " delim_repl
|
||||
|
||||
:repl Regex
|
||||
* repl
|
||||
& rest
|
||||
"\\" repl_quote
|
||||
|
||||
:repl_quote RegexEscape
|
||||
* repl
|
||||
|
||||
.end
|
||||
|
||||
.subr inmatch
|
||||
|
||||
:inmatch Regex
|
||||
* inmatch
|
||||
% inmatch call=.inmatch()
|
||||
& inmatch return
|
||||
"\\" inmatch_quote recolor=-1
|
||||
|
||||
:inmatch_quote RegexEscape
|
||||
* inmatch
|
||||
.end
|
||||
339
joe/usr/share/joe/syntax/php.jsf
Normal file
339
joe/usr/share/joe/syntax/php.jsf
Normal file
|
|
@ -0,0 +1,339 @@
|
|||
# JOE syntax highlight file for PHP
|
||||
# modified by Eric Lin
|
||||
|
||||
# TODO:
|
||||
# * heredoc support (as good as possible)
|
||||
# * highlight function and class names?
|
||||
|
||||
# Define colors
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape
|
||||
=Character +Constant
|
||||
=CharacterEscape +Escape
|
||||
=Boolean +Constant
|
||||
=Escape
|
||||
=Keyword
|
||||
=Variable +DefinedIdent
|
||||
=Builtin +DefinedFunc
|
||||
=Operator +Keyword
|
||||
=Statement +Keyword
|
||||
=Conditional +Statement
|
||||
=Loop +Statement
|
||||
=Structure +Statement
|
||||
=Label +DefinedIdent
|
||||
=StorageClass +Type +Keyword
|
||||
|
||||
# Call HTML highlighter. It will call the PHP highlighter subroutine in this file.
|
||||
|
||||
:begin Idle
|
||||
* call_failed noeat call=html.html(php)
|
||||
|
||||
:call_failed Variable
|
||||
* call_failed
|
||||
|
||||
# PHP highlighter.
|
||||
|
||||
.subr php
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"<" idle_done
|
||||
"?" idle_qmark
|
||||
"%" idle_hash
|
||||
"#" sh_comment recolor=-1
|
||||
"/" slash
|
||||
"0-9" first_digit recolor=-1
|
||||
"'" string_sq recolor=-1
|
||||
"\"" string_dq recolor=-1
|
||||
"\`" string_bq recolor=-1
|
||||
"\i" ident buffer
|
||||
"$" php_var recolor=-1
|
||||
"-" maybe_method
|
||||
"{}" brace recolor=-1
|
||||
|
||||
:idle_done Idle
|
||||
* idle noeat
|
||||
"/" idle noeat recolor=-2 return
|
||||
"<" idle_here
|
||||
|
||||
:idle_here Idle
|
||||
* idle noeat
|
||||
"<" here_doc
|
||||
|
||||
:here_doc Idle
|
||||
* idle noeat
|
||||
" " here_doc
|
||||
"\i" here_name buffer
|
||||
|
||||
:here_name Idle
|
||||
* inhere_doc save_s
|
||||
"\c" here_name
|
||||
|
||||
:inhere_doc Constant
|
||||
* inhere_not_eol
|
||||
"\n" inhere_doc
|
||||
"\i" inhere_name buffer
|
||||
|
||||
:inhere_not_eol Constant
|
||||
* inhere_not_eol
|
||||
"\n" inhere_doc
|
||||
|
||||
:inhere_name Constant
|
||||
* inhere_doc
|
||||
";" inhere_doc strings
|
||||
"&" idle
|
||||
done
|
||||
"\c" inhere_name
|
||||
|
||||
:brace Builtin
|
||||
* idle noeat
|
||||
|
||||
:php_var Variable
|
||||
* idle noeat
|
||||
"\c" php_var
|
||||
|
||||
:var_indqstring Variable
|
||||
* string_dq recolor=-1
|
||||
"\i" var_indqstringr
|
||||
"\"" string_dq noeat
|
||||
"\\" string_dq_esc recolor=-1
|
||||
|
||||
:var_indqstringr Variable
|
||||
* string_dq recolor=-1
|
||||
"\c" var_indqstringr
|
||||
"\"" string_dq noeat
|
||||
"\\" string_dq_esc recolor=-1
|
||||
|
||||
:var_inbqstring Variable
|
||||
* string_bq recolor=-1
|
||||
"\i" var_inbqstringr
|
||||
"\`" string_bq noeat
|
||||
"\\" string_bq_esc recolor=-1
|
||||
|
||||
:var_inbqstringr Variable
|
||||
* string_bq recolor=-1
|
||||
"\c" var_inbqstringr
|
||||
"\`" string_bq noeat
|
||||
"\\" string_bq_esc recolor=-1
|
||||
|
||||
:maybe_method Builtin
|
||||
* idle recolor=-1
|
||||
"?" idle_qmark
|
||||
"%" idle_hash
|
||||
"#" sh_comment recolor=-1
|
||||
"/" slash
|
||||
"0-9" first_digit recolor=-1
|
||||
"'" string_sq recolor=-1
|
||||
"\"" string_dq recolor=-1
|
||||
"\i" ident buffer
|
||||
"$" php_var recolor=-1
|
||||
"{}" brace recolor=-1
|
||||
">" method recolor=-2
|
||||
|
||||
:method Builtin
|
||||
* idle recolor=-1
|
||||
"\i\c" method recolor=-1
|
||||
|
||||
:idle_qmark Idle
|
||||
* idle noeat
|
||||
">" idle recolor=-2 return
|
||||
|
||||
:idle_hash Idle
|
||||
* idle noeat
|
||||
">" idle recolor=-2 return
|
||||
|
||||
:sh_comment Comment comment
|
||||
* sh_comment
|
||||
"BFHNTX" sh_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:slash Idle
|
||||
* idle noeat
|
||||
"*" comment recolor=-2
|
||||
"/" line_comment recolor=-2
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"*" maybe_end_comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
|
||||
:maybe_end_comment Comment comment
|
||||
* comment
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"\n" idle
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
|
||||
:string_sq Character string
|
||||
* string_sq
|
||||
"\'" idle
|
||||
"\\" string_sq_esc recolor=-1
|
||||
|
||||
:string_sq_esc CharacterEscape string
|
||||
* string_sq
|
||||
"\n" string_sq recolor=-2
|
||||
|
||||
:string_dq String string
|
||||
* string_dq
|
||||
"$" var_indqstring recolor=-1
|
||||
"\"" idle
|
||||
"\\" string_dq_esc recolor=-1
|
||||
|
||||
:string_dq_esc StringEscape string
|
||||
* string_dq
|
||||
"\n" string_dq recolor=-2
|
||||
|
||||
:string_bq String string
|
||||
* string_bq
|
||||
"$" var_inbqstring recolor=-1
|
||||
"\`" idle
|
||||
"\\" string_bq_esc recolor=-1
|
||||
|
||||
:string_bq_esc StringEscape string
|
||||
* string_bq
|
||||
"\n" string_bq recolor=-2
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"xX" hex
|
||||
"." float
|
||||
"0" octal
|
||||
"1-9" first_number
|
||||
|
||||
:octal Number
|
||||
* idle noeat
|
||||
"0-7" octal
|
||||
|
||||
:hex Number
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:first_number Number
|
||||
* idle noeat
|
||||
"0-9" first_number
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:ident Idle
|
||||
* idle noeat strings
|
||||
"addslashes" builtin
|
||||
"array" builtin
|
||||
"array_keys" builtin
|
||||
"count" builtin
|
||||
"date" builtin
|
||||
"chr" builtin
|
||||
"empty" builtin
|
||||
"end" builtin
|
||||
"header" builtin
|
||||
"highlight_file" builtin
|
||||
"htmlspecialchars" builtin
|
||||
"isset" builtin
|
||||
"shuffle" builtin
|
||||
"strip_tags" builtin
|
||||
"strlen" builtin
|
||||
"strpos" builtin
|
||||
"strrpos" builtin
|
||||
"substr" builtin
|
||||
"trim" builtin
|
||||
"TRUE" bool
|
||||
"FALSE" bool
|
||||
"true" bool
|
||||
"false" bool
|
||||
"and" oper
|
||||
"as" oper
|
||||
"break" loop
|
||||
"case" label
|
||||
"class" struct
|
||||
"continue" loop
|
||||
"declare" struct
|
||||
"default" kw
|
||||
"die" kw
|
||||
"do" loop
|
||||
"echo" stmt
|
||||
"else" cond
|
||||
"elseif" cond
|
||||
"eval" kw
|
||||
"exception" kw
|
||||
"exit" kw
|
||||
"extends" struct
|
||||
"for" loop
|
||||
"foreach" loop
|
||||
"function" struct
|
||||
"global" kw
|
||||
"if" cond
|
||||
"include" stmt
|
||||
"include_once" stmt
|
||||
"list" kw
|
||||
"new" kw
|
||||
"or" oper
|
||||
"print" stmt
|
||||
"private" storage
|
||||
"public" storage
|
||||
"require" stmt
|
||||
"require_once" stmt
|
||||
"return" stmt
|
||||
"static" storage
|
||||
"switch" cond
|
||||
"unset" stmt
|
||||
"while" loop
|
||||
done
|
||||
"\c" ident
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:builtin Builtin
|
||||
* idle noeat
|
||||
|
||||
:bool Boolean
|
||||
* idle noeat
|
||||
|
||||
:var Variable
|
||||
* mark noeat
|
||||
|
||||
:oper Operator
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:stmt Statement
|
||||
* idle noeat
|
||||
|
||||
:label Label
|
||||
* idle noeat
|
||||
|
||||
:struct Structure
|
||||
* idle noeat
|
||||
|
||||
:storage StorageClass
|
||||
* idle noeat
|
||||
|
||||
.end
|
||||
329
joe/usr/share/joe/syntax/powershell.jsf
Normal file
329
joe/usr/share/joe/syntax/powershell.jsf
Normal file
|
|
@ -0,0 +1,329 @@
|
|||
# PowerShell syntax highlighting for Joe's Own Editor
|
||||
# Oskar Liljeblad <oskar@osk.mine.nu>, 2014-02-11
|
||||
#
|
||||
# PowerShell is the poor man's[1] replacement for a real shell such as Bash.
|
||||
# [1] Someone who has to use Windows for whatever reason.
|
||||
#
|
||||
# Reference: http://www.microsoft.com/en-us/download/details.aspx?id=36389
|
||||
# Status:
|
||||
# 1 100%
|
||||
# 2.1 100%
|
||||
# 2.2.1 100% except signature support
|
||||
# 2.2.2 100%
|
||||
# 2.2.3 100% except requires support
|
||||
# 2.2.4 100%
|
||||
# 2.3.1 100%
|
||||
# 2.3.2 100% except automatic variables
|
||||
# 2.3.3 100% no coloring
|
||||
# 2.3.4 100% no coloring
|
||||
# 2.3.5 100% no coloring
|
||||
# 2.3.6 100%
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=Boolean +Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape
|
||||
=StringVariable +StringEscape
|
||||
=Keyword
|
||||
=Type
|
||||
=Operator +Keyword
|
||||
=Statement +Keyword
|
||||
=Structure +Statement
|
||||
=Conditional +Statement
|
||||
=Loop +Statement
|
||||
=Variable +DefinedIdent
|
||||
=VariableEscape +Escape
|
||||
|
||||
=ParamKey +Attr +Operator
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"#" comment recolor=-1
|
||||
"$" var recolor=-1 mark
|
||||
"@" var_array recolor=-1
|
||||
"<" idle1
|
||||
"[" typespec
|
||||
"\"" string_dq recolor=-1
|
||||
"'" string_sq recolor=-1
|
||||
"@" idle2
|
||||
"a-zA-Z_" ident buffer
|
||||
"-" param recolor=-1
|
||||
|
||||
:idle1 Idle
|
||||
* idle noeat
|
||||
"#" delim_comment recolor=-2
|
||||
|
||||
:idle2 Idle
|
||||
* idle noeat
|
||||
"\"" herestr_dq recolor=-2
|
||||
"'" herestr_sq recolor=-2
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"\r\n" idle
|
||||
|
||||
:var_array Variable
|
||||
* idle noeat
|
||||
"$?^" idle mark
|
||||
"a-zA-Z_" var_name
|
||||
|
||||
:var Variable
|
||||
* idle noeat
|
||||
"{" var_brack
|
||||
"$?^" idle
|
||||
"a-zA-Z_" var_name buffer
|
||||
|
||||
:var_name Variable
|
||||
* idle noeat recolor=-1 istrings
|
||||
"true" bool recolormark markend
|
||||
"false" bool recolormark markend
|
||||
"null" kw recolormark markend
|
||||
done
|
||||
"a-zA-Z0-9_:?" var_name
|
||||
|
||||
:bool Boolean
|
||||
* idle
|
||||
|
||||
:var_brack Variable
|
||||
* var_brack
|
||||
"`" var_escape recolor=-1
|
||||
"}" idle
|
||||
|
||||
:var_escape VariableEscape
|
||||
* var_brack
|
||||
|
||||
:delim_comment Comment comment
|
||||
* delim_comment
|
||||
"BFHNTX" delim_comment noeat call=comment_todo.comment_todo()
|
||||
"#" delim_comment1
|
||||
|
||||
:delim_comment1 Comment comment
|
||||
* delim_comment noeat
|
||||
">" idle
|
||||
|
||||
:string_dq String string
|
||||
* string_dq
|
||||
"\"\n" idle
|
||||
"$" string_dq_subst recolor=-1
|
||||
"`" string_dq_esc recolor=-1
|
||||
|
||||
:string_dq_subst StringVariable string
|
||||
* string_dq noeat recolor=-2
|
||||
"a-zA-Z_" string_dq_subst_name
|
||||
"{" string_dq_subst_brack
|
||||
"(" string_dq_subst_parens
|
||||
"`" string_dq_subst_escape recolor=-1
|
||||
|
||||
:string_dq_subst_name StringVariable string
|
||||
* string_dq recolor=-1 noeat
|
||||
"a-zA-Z0-9_:" string_dq_subst_name
|
||||
"`" string_dq_subst_escape recolor=-1
|
||||
|
||||
:string_dq_subst_escape VariableEscape string
|
||||
* string_dq_subst_name
|
||||
|
||||
:string_dq_subst_brack Variable string
|
||||
* string_dq_subst_brack
|
||||
"}" string_dq
|
||||
|
||||
:string_dq_subst_parens Variable string
|
||||
* string_dq_sustr_parens
|
||||
")" string_dq
|
||||
|
||||
:string_sq String string
|
||||
* string_sq
|
||||
"\'\n" idle
|
||||
|
||||
:string_dq_esc StringEscape string
|
||||
* string_dq
|
||||
|
||||
:string_sq_esc StringEscape string
|
||||
* string_sq
|
||||
|
||||
:herestr_dq String string
|
||||
* herestr_dq
|
||||
"\"" herestr_dq1
|
||||
"$" herestr_dq_subst recolor=-1
|
||||
|
||||
:herestr_dq1 String string
|
||||
* herestr_dq noeat
|
||||
"@" idle
|
||||
|
||||
:herestr_dq_subst Variable string
|
||||
* herestr_dq noeat recolor=-2
|
||||
"a-zA-Z_" herestr_dq_subst_name
|
||||
"(" herestr_dq_subst_parens
|
||||
"`" herestr_dq_subst_escape recolor=-1
|
||||
|
||||
:herestr_dq_subst_name Variable string
|
||||
* herestr_dq recolor=-1 noeat
|
||||
"a-zA-Z0-9_:" herestr_dq_subst_name
|
||||
"`" herestr_dq_subst_escape recolor=-1
|
||||
|
||||
:herestr_dq_subst_escape VariableEscape string
|
||||
* herestr_dq_subst_name
|
||||
|
||||
:herestr_dq_subst_parens Variable string
|
||||
* herestr_dq_subst_parens
|
||||
")" herestr_dq
|
||||
|
||||
:herestr_sq String string
|
||||
* herestr_sq
|
||||
"\'" herestr_sq1
|
||||
|
||||
:herestr_sq1 String string
|
||||
* herestr_sq noeat
|
||||
"@" idle
|
||||
|
||||
:typespec_start Idle
|
||||
* idle noeat
|
||||
"\s" typespec_start
|
||||
"\i.:" typespec noeat
|
||||
|
||||
:typespec Type
|
||||
* idle noeat
|
||||
"\i.:\s" typespec
|
||||
"[" typespec_brack
|
||||
|
||||
:typespec_brack Type
|
||||
* typespec noeat
|
||||
"\s" typespec_brack
|
||||
"]" typespec
|
||||
|
||||
:param ParamKey
|
||||
* after_param noeat istrings
|
||||
"-and" oper
|
||||
"-band" oper
|
||||
"-bnot" oper
|
||||
"-bor" oper
|
||||
"-bxor" oper
|
||||
"-not" oper
|
||||
"-or" oper
|
||||
"-xor" oper
|
||||
"-f" oper
|
||||
"-as" oper
|
||||
"-ccontains" oper
|
||||
"-ceq" oper
|
||||
"-cge" oper
|
||||
"-cgt" oper
|
||||
"-cle" oper
|
||||
"-clike" oper
|
||||
"-clt" oper
|
||||
"-cmatch" oper
|
||||
"-cne" oper
|
||||
"-cnotcontains" oper
|
||||
"-cnotlike" oper
|
||||
"-cnotmatch" oper
|
||||
"-contains" oper
|
||||
"-creplace" oper
|
||||
"-csplit" oper
|
||||
"-eq" oper
|
||||
"-ge" oper
|
||||
"-gt" oper
|
||||
"-icontains" oper
|
||||
"-ieq" oper
|
||||
"-ige" oper
|
||||
"-igt" oper
|
||||
"-ile" oper
|
||||
"-ilike" oper
|
||||
"-ilt" oper
|
||||
"-imatch" oper
|
||||
"-in" oper
|
||||
"-ine" oper
|
||||
"-inotcontains" oper
|
||||
"-inotlike" oper
|
||||
"-inotmatch" oper
|
||||
"-ireplace" oper
|
||||
"-is" oper
|
||||
"-isnot" oper
|
||||
"-isplit" oper
|
||||
"-join" oper
|
||||
"-le" oper
|
||||
"-like" oper
|
||||
"-lt" oper
|
||||
"-match" oper
|
||||
"-ne" oper
|
||||
"-notcontains" oper
|
||||
"-notin" oper
|
||||
"-notlike" oper
|
||||
"-notmatch" oper
|
||||
"-replace" oper
|
||||
"-shl" oper
|
||||
"-shr" oper
|
||||
"-split" oper
|
||||
done
|
||||
"a-zA-Z_" param
|
||||
|
||||
:after_param Ident
|
||||
* herestr_noq noeat
|
||||
" \t" after_param
|
||||
|
||||
# Unquoted strings (after -parameter key)
|
||||
:herestr_noq String string
|
||||
* idle noeat
|
||||
" \t\r\n" idle recolor=-1
|
||||
"\i" herestr_noq
|
||||
|
||||
# After an operator, we do not assume what follows is an unquoted string.
|
||||
:oper Operator
|
||||
* idle noeat
|
||||
|
||||
:ident Ident
|
||||
* idle noeat istrings
|
||||
"begin" kw
|
||||
"break" loop
|
||||
"catch" kw
|
||||
"class" struct
|
||||
"continue" loop
|
||||
"data" kw
|
||||
"define" kw
|
||||
"do" loop
|
||||
"dynamicparam" struct
|
||||
"else" cond
|
||||
"elseif" cond
|
||||
"end" kw
|
||||
"exit" stmt
|
||||
"filter" kw
|
||||
"finally" kw
|
||||
"for" loop
|
||||
"foreach" loop
|
||||
"from" kw
|
||||
"function" struct
|
||||
"if" cond
|
||||
"in" kw
|
||||
"inlinescript" kw
|
||||
"parallel" kw
|
||||
"param" struct
|
||||
"process" kw
|
||||
"return" stmt
|
||||
"switch" cond
|
||||
"throw" kw
|
||||
"trap" kw
|
||||
"try" kw
|
||||
"until" loop
|
||||
"using" kw
|
||||
"var" kw
|
||||
"while" loop
|
||||
"workflow" kw
|
||||
done
|
||||
"a-zA-Z_\-" ident
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:stmt Statement
|
||||
* idle noeat
|
||||
|
||||
:struct Structure
|
||||
* idle noeat
|
||||
160
joe/usr/share/joe/syntax/prolog.jsf
Normal file
160
joe/usr/share/joe/syntax/prolog.jsf
Normal file
|
|
@ -0,0 +1,160 @@
|
|||
# JOE syntax highlight file for Prolog
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=String +Constant
|
||||
=Number +Constant
|
||||
=Escape
|
||||
=StringEscape +Escape
|
||||
=Keyword
|
||||
=Bad
|
||||
|
||||
=Brace
|
||||
=Variable
|
||||
=Predicate +DefinedFunction +DefinedIdent
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\n" idle
|
||||
"%" line_comment recolor=-1
|
||||
"/" maybe_comment
|
||||
"0-9" first_digit recolor=-1
|
||||
"'" string_sq_1 recolor=-1
|
||||
"\"" string_dq_1 recolor=-1
|
||||
|
||||
# marking -> predicate hilite
|
||||
# buffering -> keyword hilite
|
||||
"a-z" atom mark buffer
|
||||
|
||||
"A-Z" variable recolor=-1
|
||||
"_" _variable
|
||||
"[]" brace recolor=-1
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:maybe_comment Idle
|
||||
* idle noeat
|
||||
"*" comment recolor=-2
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"*" maybe_end_comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
|
||||
:maybe_end_comment Comment comment
|
||||
* comment noeat
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:string_sq_1 String string
|
||||
* string_sq noeat
|
||||
|
||||
:string_sq String string
|
||||
* string_sq
|
||||
"\'" idle
|
||||
"\\" string_sq_esc recolor=-1
|
||||
|
||||
:string_sq_esc StringEscape string
|
||||
* string_sq
|
||||
"\n" string_sq recolor=-2
|
||||
|
||||
:string_dq_1 String string
|
||||
* string_dq noeat
|
||||
|
||||
:string_dq String string
|
||||
* string_dq
|
||||
"\"" idle
|
||||
"\\" string_dq_esc recolor=-1
|
||||
|
||||
:string_dq_esc StringEscape string
|
||||
* string_dq
|
||||
"\n" string_dq recolor=-2
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
# no float support
|
||||
# "." float
|
||||
"0-9" first_number
|
||||
|
||||
:first_number Number
|
||||
* idle noeat
|
||||
"0-9" first_number
|
||||
"." float
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
# list of keywords includes some predicates...
|
||||
:atom Ident
|
||||
* atom_end noeat markend strings
|
||||
"append" kw
|
||||
"atom" kw
|
||||
"atomic" kw
|
||||
"call" kw
|
||||
"catch" kw
|
||||
"clause" kw
|
||||
"close" kw
|
||||
"fail" kw
|
||||
"findall" kw
|
||||
"float" kw
|
||||
"halt" kw
|
||||
"integer" kw
|
||||
"is" kw
|
||||
"member" kw
|
||||
"nl" kw
|
||||
"nonvar" kw
|
||||
"number" kw
|
||||
"once" kw
|
||||
"op" kw
|
||||
"open" kw
|
||||
"read" kw
|
||||
"repeat" kw
|
||||
"throw" kw
|
||||
"true" kw
|
||||
"var" kw
|
||||
"write" kw
|
||||
done
|
||||
"a-zA-Z0-9_" atom
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:atom_end Idle
|
||||
* idle noeat
|
||||
" " atom_end
|
||||
"(" pred_end recolormark
|
||||
":" maybe_pred_end
|
||||
|
||||
:pred_end Predicate
|
||||
* idle noeat
|
||||
|
||||
:maybe_pred_end Idle
|
||||
* idle noeat
|
||||
"-" pred_end recolormark
|
||||
|
||||
:variable Variable
|
||||
* idle noeat
|
||||
"a-zA-Z0-9_" variable
|
||||
|
||||
:_variable Idle
|
||||
* idle noeat
|
||||
# if it's not only _, color it
|
||||
"a-zA-Z0-9_" variable recolor=-2
|
||||
89
joe/usr/share/joe/syntax/properties.jsf
Normal file
89
joe/usr/share/joe/syntax/properties.jsf
Normal file
|
|
@ -0,0 +1,89 @@
|
|||
# JOE syntax highlight file for properties files
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
=Idle
|
||||
=Comment
|
||||
=Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape
|
||||
=Escape
|
||||
=Bad
|
||||
|
||||
=Key +Attr +Type
|
||||
=KeyEscape +Escape
|
||||
=Separator +Control
|
||||
|
||||
:line_start Idle
|
||||
* key noeat
|
||||
"\n" line_start
|
||||
" \t\r" line_start # leading spaces
|
||||
"#!" line_comment recolor=-1
|
||||
"=:" missing_key recolor=-1
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" line_start
|
||||
|
||||
:missing_key Bad
|
||||
* value_pre noeat
|
||||
|
||||
:key Key
|
||||
* key
|
||||
"\\" key_esc recolor=-1
|
||||
" \t\r" key_post noeat
|
||||
"=:" sep recolor=-1
|
||||
"\n" key_error recolor=-2
|
||||
|
||||
# one escaped char
|
||||
:key_esc KeyEscape
|
||||
* key
|
||||
"\n" key_error recolor=-2
|
||||
|
||||
:key_post Idle
|
||||
* value_pre noeat
|
||||
" \t\r" key_post
|
||||
"=:" sep recolor=-1
|
||||
|
||||
:key_error Bad
|
||||
* key noeat
|
||||
|
||||
:sep Separator
|
||||
* value_pre noeat
|
||||
|
||||
:value_pre Idle
|
||||
* value noeat
|
||||
" \t\r" value_pre
|
||||
|
||||
:value String string
|
||||
* value
|
||||
"\\" value_esc recolor=-1
|
||||
"\n" line_start
|
||||
|
||||
:value_esc StringEscape string
|
||||
* value_error recolor=-2
|
||||
"u" value_unicode_hex1
|
||||
"\n" value_cont
|
||||
|
||||
:value_unicode_hex1 StringEscape string
|
||||
* value_error recolor=-3
|
||||
"A-Fa-f0-9" value_unicode_hex2
|
||||
|
||||
:value_unicode_hex2 StringEscape string
|
||||
* value_error recolor=-4
|
||||
"A-Fa-f0-9" value_unicode_hex3
|
||||
|
||||
:value_unicode_hex3 StringEscape string
|
||||
* value_error recolor=-5
|
||||
"A-Fa-f0-9" value_unicode_hex4
|
||||
|
||||
:value_unicode_hex4 StringEscape string
|
||||
* value_error recolor=-6
|
||||
"A-Fa-f0-9" value
|
||||
|
||||
:value_cont String string
|
||||
* value
|
||||
" \t\r" value_cont # leading spaces
|
||||
|
||||
:value_error Bad
|
||||
* value noeat
|
||||
380
joe/usr/share/joe/syntax/ps.jsf
Normal file
380
joe/usr/share/joe/syntax/ps.jsf
Normal file
|
|
@ -0,0 +1,380 @@
|
|||
# JOE syntax highlight file for Postscript
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Bad
|
||||
=Comment
|
||||
=Constant
|
||||
=Boolean +Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape
|
||||
=Number +Constant
|
||||
=Keyword
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"%" line_comment recolor=-1
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float
|
||||
"(<" string recolor=-1 save_c
|
||||
"a-zA-Z_" ident buffer
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"xX" hex
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* idle noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* idle noeat
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:hex Number
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:decimal Number
|
||||
* idle noeat
|
||||
"0-9" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:string String string
|
||||
* string
|
||||
& idle
|
||||
"\\" string_escape recolor=-1
|
||||
"%" string_control recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"x" string_hex1
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
:string_hex1 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_hex2 StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:string_control StringEscape string
|
||||
* string_control
|
||||
"\n" idle
|
||||
"diouxXeEfFgGaAcspn%SC" string
|
||||
|
||||
:ident Ident
|
||||
* idle noeat istrings
|
||||
"exch" kw
|
||||
"pop" kw
|
||||
"copy" kw
|
||||
"dup" kw
|
||||
"index" kw
|
||||
"roll" kw
|
||||
"clear" kw
|
||||
"count" kw
|
||||
"mark" kw
|
||||
"cleartomark" kw
|
||||
"countomark" kw
|
||||
"add" kw
|
||||
"div" kw
|
||||
"sub" kw
|
||||
"idiv" kw
|
||||
"mul" kw
|
||||
"mod" kw
|
||||
"abs" kw
|
||||
"neg" kw
|
||||
"ceiling" kw
|
||||
"floor" kw
|
||||
"round" kw
|
||||
"truncate" kw
|
||||
"sqrt" kw
|
||||
"atan" kw
|
||||
"cos" kw
|
||||
"sin" kw
|
||||
"exp" kw
|
||||
"ln" kw
|
||||
"log" kw
|
||||
"rand" kw
|
||||
"srand" kw
|
||||
"rrand" kw
|
||||
"array" kw
|
||||
"length" kw
|
||||
"get" kw
|
||||
"put" kw
|
||||
"getinterval" kw
|
||||
"putinterval" kw
|
||||
"aload" kw
|
||||
"astore" kw
|
||||
"copy" kw
|
||||
"forall" kw
|
||||
"dict" kw
|
||||
"length" kw
|
||||
"maxlength" kw
|
||||
"begin" kw
|
||||
"end" kw
|
||||
"def" kw
|
||||
"load" kw
|
||||
"store" kw
|
||||
"get" kw
|
||||
"put" kw
|
||||
"known" kw
|
||||
"where" kw
|
||||
"copy" kw
|
||||
"forall" kw
|
||||
"errordict" kw
|
||||
"systemdict" kw
|
||||
"userdict" kw
|
||||
"currentdict" kw
|
||||
"countdictstack" kw
|
||||
"dictstack" kw
|
||||
"string" kw
|
||||
"length" kw
|
||||
"get" kw
|
||||
"put" kw
|
||||
"getinterval" kw
|
||||
"putinterval" kw
|
||||
"copy" kw
|
||||
"forall" kw
|
||||
"anchorsearch" kw
|
||||
"search" kw
|
||||
"token" kw
|
||||
"eq" kw
|
||||
"ne" kw
|
||||
"ge" kw
|
||||
"gt" kw
|
||||
"le" kw
|
||||
"lt" kw
|
||||
"and" kw
|
||||
"not" kw
|
||||
"or" kw
|
||||
"xor" kw
|
||||
"true" bool
|
||||
"false" bool
|
||||
"bitshift" kw
|
||||
"exec" kw
|
||||
"if" kw
|
||||
"ifelse" kw
|
||||
"for" kw
|
||||
"repeat" kw
|
||||
"loop" kw
|
||||
"exit" kw
|
||||
"stop" kw
|
||||
"stopped" kw
|
||||
"countexecstack" kw
|
||||
"execstack" kw
|
||||
"quit" kw
|
||||
"start" kw
|
||||
"type" kw
|
||||
"cvlit" kw
|
||||
"cvx" kw
|
||||
"xcheck" kw
|
||||
"executeonly" kw
|
||||
"noaccess" kw
|
||||
"readonly" kw
|
||||
"rcheck" kw
|
||||
"wcheck" kw
|
||||
"cvi" kw
|
||||
"cvn" kw
|
||||
"cvr" kw
|
||||
"cvrs" kw
|
||||
"cvs" kw
|
||||
"file" kw
|
||||
"closefile" kw
|
||||
"read" kw
|
||||
"write" kw
|
||||
"readhexstring" kw
|
||||
"writehexstring" kw
|
||||
"readstring" kw
|
||||
"writestring" kw
|
||||
"readline" kw
|
||||
"token" kw
|
||||
"bytesavailable" kw
|
||||
"flush" kw
|
||||
"flushfile" kw
|
||||
"resetfile" kw
|
||||
"status" kw
|
||||
"run" kw
|
||||
"currentfile" kw
|
||||
"print" kw
|
||||
"stack" kw
|
||||
"pstack" kw
|
||||
"prompt" kw
|
||||
"echo" kw
|
||||
"save" kw
|
||||
"restore" kw
|
||||
"vmstatus" kw
|
||||
"bind" kw
|
||||
"null" kw
|
||||
"usertime" kw
|
||||
"version" kw
|
||||
"gsave" kw
|
||||
"grestore" kw
|
||||
"grestoreall" kw
|
||||
"initgraphics" kw
|
||||
"setlinewidth" kw
|
||||
"currentlinewidth" kw
|
||||
"setlinecap" kw
|
||||
"currentlinecap" kw
|
||||
"setlinejoin" kw
|
||||
"currentlinejoin" kw
|
||||
"setmiterlimit" kw
|
||||
"currentmiterlimit" kw
|
||||
"setdash" kw
|
||||
"currentdash" kw
|
||||
"setflat" kw
|
||||
"currentflat" kw
|
||||
"setgray" kw
|
||||
"currentgray" kw
|
||||
"sethsbcolor" kw
|
||||
"currenthsbcolor" kw
|
||||
"setrgbcolor" kw
|
||||
"currentrgbcolor" kw
|
||||
"setscreen" kw
|
||||
"currentscreen" kw
|
||||
"settransfer" kw
|
||||
"currenttransfer" kw
|
||||
"matrix" kw
|
||||
"initmatrix" kw
|
||||
"identmatrix" kw
|
||||
"defaultmatrix" kw
|
||||
"currentmatrix" kw
|
||||
"setmatrix" kw
|
||||
"translate" kw
|
||||
"translate" kw
|
||||
"scale" kw
|
||||
"scale" kw
|
||||
"rotate" kw
|
||||
"concat" kw
|
||||
"concatmatrix" kw
|
||||
"transform" kw
|
||||
"transform" kw
|
||||
"dtransform" kw
|
||||
"dtransform" kw
|
||||
"itransform" kw
|
||||
"itransform" kw
|
||||
"idtransform" kw
|
||||
"idtransform" kw
|
||||
"invertmatrix" kw
|
||||
"newpath" kw
|
||||
"currentpoint" kw
|
||||
"moveto" kw
|
||||
"rmoveto" kw
|
||||
"lineto" kw
|
||||
"rlineto" kw
|
||||
"arc" kw
|
||||
"arcn" kw
|
||||
"arcto" kw
|
||||
"curveto" kw
|
||||
"rcurveto" kw
|
||||
"closepath" kw
|
||||
"flattenpath" kw
|
||||
"reversepath" kw
|
||||
"strokepath" kw
|
||||
"charpath" kw
|
||||
"clippath" kw
|
||||
"pathbbox" kw
|
||||
"pathforall" kw
|
||||
"initclip" kw
|
||||
"clip" kw
|
||||
"eoclip" kw
|
||||
"erasepage" kw
|
||||
"fill" kw
|
||||
"eofill" kw
|
||||
"stroke" kw
|
||||
"image" kw
|
||||
"imagemask" kw
|
||||
"showpage" kw
|
||||
"copypage" kw
|
||||
"banddevice" kw
|
||||
"framedevice" kw
|
||||
"nulldevice" kw
|
||||
"renderbands" kw
|
||||
"definefont" kw
|
||||
"findfont" kw
|
||||
"scalefont" kw
|
||||
"makefont" kw
|
||||
"setfont" kw
|
||||
"currentfont" kw
|
||||
"show" kw
|
||||
"ashow" kw
|
||||
"widthshow" kw
|
||||
"awidthshow" kw
|
||||
"kshow" kw
|
||||
"stringwidth" kw
|
||||
"cachestatus" kw
|
||||
"setcachedevice" kw
|
||||
"setcharwidth" kw
|
||||
"setcachelimit" kw
|
||||
"dictfull" kw
|
||||
"dictstackoverflow" kw
|
||||
"dictstackunderflow" kw
|
||||
"execstackoverflow" kw
|
||||
"handleerror" kw
|
||||
"interrupt" kw
|
||||
"invalidaccess" kw
|
||||
"invalidexit" kw
|
||||
"invalidfileaccess" kw
|
||||
"invalidfont" kw
|
||||
"invalidrestore" kw
|
||||
"ioerror" kw
|
||||
"limitcheck" kw
|
||||
"nocurrentpoint" kw
|
||||
"rangecheck" kw
|
||||
"stackoverflow" kw
|
||||
"stackunderflow" kw
|
||||
"syntaxerror" kw
|
||||
"timeout" kw
|
||||
"typecheck" kw
|
||||
"undefined" kw
|
||||
"undefinedfilename" kw
|
||||
"undefinedresult" kw
|
||||
"unmatchedmark" kw
|
||||
"unregistered" kw
|
||||
done
|
||||
"a-zA-Z0-9_\-" ident
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:bool Boolean
|
||||
* idle noeat
|
||||
167
joe/usr/share/joe/syntax/puppet.jsf
Normal file
167
joe/usr/share/joe/syntax/puppet.jsf
Normal file
|
|
@ -0,0 +1,167 @@
|
|||
# JOE syntax highlight file for Puppet
|
||||
# by Christian Nicolai (http://mycrobase.de)
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=Regex +String
|
||||
=StringEscape +Escape
|
||||
=StringVariable +StringEscape
|
||||
=RegexEscape +StringEscape
|
||||
=Type
|
||||
=Keyword
|
||||
=Bad
|
||||
=Variable +DefinedIdent
|
||||
=Brace
|
||||
|
||||
=KeywordAttr +Attr +Type
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\n" idle
|
||||
"#" line_comment recolor=-1
|
||||
"{[]}" brace recolor=-1
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"/" slash
|
||||
"$" variable recolor=-1
|
||||
"A-Z" type recolor=-1
|
||||
"a-z" ident buffer
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"*" maybe_end_comment
|
||||
|
||||
:maybe_end_comment Comment comment
|
||||
* comment noeat
|
||||
"/" idle
|
||||
"*" maybe_end_comment
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
# that's not completely accurate since a regex may start with a * too
|
||||
:slash Idle
|
||||
* regex noeat recolor=-2
|
||||
"*" comment recolor=-2
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"0-7" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:bad_number Bad
|
||||
* idle noeat
|
||||
"0-9" bad_number
|
||||
|
||||
:octal Number
|
||||
* idle noeat
|
||||
"0-7_" octal
|
||||
"89" bad_number recolor=-1
|
||||
|
||||
:decimal Number
|
||||
* idle noeat
|
||||
"0-9_" decimal
|
||||
|
||||
:char String string
|
||||
* char
|
||||
"'" idle
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" idle
|
||||
"$" maybe_string_subst recolor=-1
|
||||
|
||||
:maybe_string_subst String string
|
||||
* string noeat
|
||||
"{" string_subst recolor=-2
|
||||
|
||||
:string_subst StringVariable string
|
||||
* string_subst
|
||||
"}" string
|
||||
|
||||
:regex Regex string
|
||||
* regex
|
||||
"\\" regex_quote recolor=-1
|
||||
"/" idle
|
||||
|
||||
:regex_quote RegexEscape string
|
||||
* regex
|
||||
|
||||
:variable Variable
|
||||
* idle noeat
|
||||
"a-zA-Z0-9_" variable
|
||||
|
||||
:type Type
|
||||
* idle noeat
|
||||
"a-zA-Z0-9_" type
|
||||
|
||||
:ident Ident
|
||||
* idle noeat strings
|
||||
"case" kw
|
||||
"class" kw
|
||||
"define" kw
|
||||
"else" kw
|
||||
"elsif" kw
|
||||
"false" kw
|
||||
"if" kw
|
||||
"in" kw
|
||||
"inherits" kw
|
||||
"true" kw
|
||||
"undef" kw
|
||||
# prominent attrs
|
||||
"ensure" kw_attr
|
||||
"default" kw_attr
|
||||
# methods
|
||||
"alert" method
|
||||
"create_resources" method
|
||||
"crit" method
|
||||
"debug" method
|
||||
"defined" method
|
||||
"emerg" method
|
||||
"err" method
|
||||
"extlookup" method
|
||||
"fail" method
|
||||
"file" method
|
||||
"fqdn_rand" method
|
||||
"generate" method
|
||||
"include" method
|
||||
"info" method
|
||||
"inline_template" method
|
||||
"md5" method
|
||||
"notice" method
|
||||
"realize" method
|
||||
"regsubst" method
|
||||
"require" method
|
||||
"search" method
|
||||
"sha1" method
|
||||
"shellquote" method
|
||||
"split" method
|
||||
"sprintf" method
|
||||
"tag" method
|
||||
"tagged" method
|
||||
"template" method
|
||||
"versioncmp" method
|
||||
"warning" method
|
||||
done
|
||||
"a-zA-Z0-9_" ident
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:kw_attr KeywordAttr
|
||||
* idle noeat
|
||||
|
||||
:method Keyword
|
||||
* idle noeat
|
||||
403
joe/usr/share/joe/syntax/python.jsf
Normal file
403
joe/usr/share/joe/syntax/python.jsf
Normal file
|
|
@ -0,0 +1,403 @@
|
|||
# JOE syntax highlight file for Python
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Comment
|
||||
=Docstring +Comment
|
||||
=DocstringLabel +Docstring
|
||||
=DocEscape +Escape +Docstring
|
||||
=Constant
|
||||
=String +Constant
|
||||
=Number +Constant
|
||||
=Boolean +Constant
|
||||
=StringEscape +Escape
|
||||
=Keyword
|
||||
=Statement +Keyword
|
||||
=Loop +Statement
|
||||
=Conditional +Statement
|
||||
=StorageClass +Type +Keyword
|
||||
=Operator +Keyword
|
||||
=Bad
|
||||
=Brace
|
||||
|
||||
=DefinedIdent +Ident
|
||||
=DefinedFunction +DefinedIdent
|
||||
=DefinedType +DefinedIdent
|
||||
=SpecialIdent +Ident
|
||||
=Decorator +Define +Preproc
|
||||
=Builtin +DefinedFunction
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"#" comment recolor=-1
|
||||
"0-9" first_digit recolor=-1
|
||||
"'\"" string_quot_1 recolor=-1 save_c
|
||||
"\i" ident noeat
|
||||
"{}" brace recolor=-1
|
||||
"@" decorator recolor=-1
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
# annotations
|
||||
:decorator Decorator
|
||||
* decorator
|
||||
" (\t\r\n" idle noeat
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
# might be TODO label
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"xX" hex
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-9" first_number
|
||||
|
||||
:hex Number
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:first_number Number
|
||||
* idle noeat
|
||||
"0-9" first_number
|
||||
"." float
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
|
||||
:ident Ident
|
||||
* ident1 noeat buffer
|
||||
"_" priv_member recolor=-1
|
||||
|
||||
:ident1 Ident
|
||||
* idle noeat strings
|
||||
"and" oper
|
||||
"as" stmt
|
||||
"assert" stmt
|
||||
"break" loop
|
||||
"class" classstmt
|
||||
"continue" loop
|
||||
"def" defstmt
|
||||
"del" stmt
|
||||
"elif" cond
|
||||
"else" cond
|
||||
"except" stmt
|
||||
"finally" stmt
|
||||
"for" loop
|
||||
"from" stmt
|
||||
"global" stmt
|
||||
"if" cond
|
||||
"import" stmt
|
||||
"in" oper
|
||||
"is" oper
|
||||
"lambda" kw
|
||||
"not" oper
|
||||
"or" oper
|
||||
"pass" stmt
|
||||
"raise" stmt
|
||||
"return" stmt
|
||||
"try" stmt
|
||||
"while" loop
|
||||
"with" stmt
|
||||
"yield" stmt
|
||||
|
||||
# quasi-keywords
|
||||
"False" bool
|
||||
"True" bool
|
||||
"None" kw
|
||||
|
||||
# builtins
|
||||
"abs" builtin
|
||||
"all" builtin
|
||||
"any" builtin
|
||||
"ascii" builtin
|
||||
"bin" builtin
|
||||
"bool" builtin
|
||||
"bytearray" builtin
|
||||
"bytes" builtin
|
||||
"callable" builtin
|
||||
"chr" builtin
|
||||
"classmethod" builtin
|
||||
"compile" builtin
|
||||
"complex" builtin
|
||||
"copyright" builtin
|
||||
"credits" builtin
|
||||
"delattr" builtin
|
||||
"dict" builtin
|
||||
"dir" builtin
|
||||
"divmod" builtin
|
||||
"enumerate" builtin
|
||||
"eval" builtin
|
||||
"exec" builtin
|
||||
"exit" builtin
|
||||
"filter" builtin
|
||||
"float" builtin
|
||||
"format" builtin
|
||||
"frozenset" builtin
|
||||
"getattr" builtin
|
||||
"globals" builtin
|
||||
"hasattr" builtin
|
||||
"hash" builtin
|
||||
"help" builtin
|
||||
"hex" builtin
|
||||
"id" builtin
|
||||
"input" builtin
|
||||
"int" builtin
|
||||
"isinstance" builtin
|
||||
"issubclass" builtin
|
||||
"iter" builtin
|
||||
"len" builtin
|
||||
"license" builtin
|
||||
"list" builtin
|
||||
"locals" builtin
|
||||
"map" builtin
|
||||
"max" builtin
|
||||
"memoryview" builtin
|
||||
"min" builtin
|
||||
"next" builtin
|
||||
"object" builtin
|
||||
"oct" builtin
|
||||
"open" builtin
|
||||
"ord" builtin
|
||||
"pow" builtin
|
||||
"print" builtin
|
||||
"property" builtin
|
||||
"quit" builtin
|
||||
"range" builtin
|
||||
"repr" builtin
|
||||
"reversed" builtin
|
||||
"round" builtin
|
||||
"set" builtin
|
||||
"setattr" builtin
|
||||
"slice" builtin
|
||||
"sorted" builtin
|
||||
"staticmethod" builtin
|
||||
"str" builtin
|
||||
"sum" builtin
|
||||
"super" builtin
|
||||
"tuple" builtin
|
||||
"type" builtin
|
||||
"vars" builtin
|
||||
"zip" builtin
|
||||
|
||||
done
|
||||
"'\"" idle noeat istrings
|
||||
"u" string_pre
|
||||
"b" string_pre
|
||||
"r" string_raw_pre
|
||||
"br" string_raw_pre
|
||||
"rb" string_raw_pre
|
||||
done
|
||||
"\c" ident1
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:cond Conditional
|
||||
* idle noeat
|
||||
|
||||
:oper Operator
|
||||
* idle noeat
|
||||
|
||||
:bool Boolean
|
||||
* idle noeat
|
||||
|
||||
:loop Loop
|
||||
* idle noeat
|
||||
|
||||
:stmt Statement
|
||||
* idle noeat
|
||||
|
||||
:builtin Builtin
|
||||
* idle noeat
|
||||
|
||||
:classstmt Statement
|
||||
* idle noeat recolor=-1
|
||||
"\i" classstmt
|
||||
" \t" classname_1
|
||||
|
||||
:classname_1 DefinedType
|
||||
* classname
|
||||
|
||||
:classname DefinedType
|
||||
* idle noeat recolor=-1
|
||||
"\c" classname
|
||||
|
||||
:defstmt Statement
|
||||
* idle noeat recolor=-1
|
||||
"\i" defstmt
|
||||
" \t" defname_1
|
||||
|
||||
:defname_1 DefinedFunction
|
||||
* defname
|
||||
|
||||
:defname DefinedFunction
|
||||
* idle noeat recolor=-1
|
||||
"\c" defname
|
||||
|
||||
:priv_member SpecialIdent
|
||||
* idle noeat
|
||||
"\c" priv_member
|
||||
|
||||
# Handle string prefixes up to the string itself.
|
||||
:string_pre String string
|
||||
* idle noeat
|
||||
"'\"" string_quot_1 save_c
|
||||
|
||||
:string_raw_pre String string
|
||||
* idle noeat
|
||||
"'\"" string_quot_raw_1 save_c
|
||||
|
||||
# Differentiate between docstrings and regular strings, carrying with it raw state
|
||||
:string_quot_1 String string
|
||||
* idle call=.string() noeat
|
||||
& string_quot_2
|
||||
|
||||
:string_quot_2 String string
|
||||
* idle noeat
|
||||
& idle call=.string(docstring) recolor=-3
|
||||
|
||||
:string_quot_raw_1 String string
|
||||
* idle call=.string(raw)
|
||||
& string_quot_raw_2
|
||||
|
||||
:string_quot_raw_2 String string
|
||||
* idle noeat
|
||||
& idle call=.string(docstring raw) recolor=-3
|
||||
|
||||
.subr string
|
||||
|
||||
.ifdef docstring # Long strings
|
||||
:string Docstring string
|
||||
* string
|
||||
"BFHNTX" string noeat call=.comment_todo_docstr()
|
||||
.ifdef raw
|
||||
.else
|
||||
"\\" string_esc mark
|
||||
.endif
|
||||
& doc_end_1
|
||||
|
||||
:doc_end_1 Docstring string
|
||||
* string noeat
|
||||
& doc_end_2
|
||||
|
||||
:doc_end_2 Docstring string
|
||||
* string noeat
|
||||
& string return
|
||||
|
||||
.else # Short strings
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\n" string return
|
||||
.ifdef raw
|
||||
.else
|
||||
"\\" string_esc mark
|
||||
.endif
|
||||
& string return
|
||||
|
||||
.endif
|
||||
|
||||
:string_esc String string
|
||||
* string_esc_done
|
||||
"x" string_hex2
|
||||
"u" string_hex4
|
||||
"U" string_hex8
|
||||
"0-7" string_octal2
|
||||
"\n" string_esc_done
|
||||
|
||||
# Recolor whole escape sequence based on whether this is a docstring.
|
||||
:string_esc_done String string
|
||||
* string_esc_really_done noeat markend recolormark
|
||||
|
||||
.ifdef docstring
|
||||
:string_esc_really_done DocEscape
|
||||
* string noeat
|
||||
.else
|
||||
:string_esc_really_done StringEscape string
|
||||
* string noeat
|
||||
.endif
|
||||
|
||||
:string_hex1 StringEscape string
|
||||
* string_esc_done noeat
|
||||
"0-9a-fA-F" string_esc_done
|
||||
|
||||
:string_hex2 StringEscape string
|
||||
* string_esc_done noeat
|
||||
"0-9a-fA-F" string_hex1
|
||||
|
||||
:string_hex3 StringEscape string
|
||||
* string_esc_done noeat
|
||||
"0-9a-fA-F" string_hex2
|
||||
|
||||
:string_hex4 StringEscape string
|
||||
* string_esc_done noeat
|
||||
"0-9a-fA-F" string_hex3
|
||||
|
||||
:string_hex5 StringEscape string
|
||||
* string_esc_done noeat
|
||||
"0-9a-fA-F" string_hex4
|
||||
|
||||
:string_hex6 StringEscape string
|
||||
* string_esc_done noeat
|
||||
"0-9a-fA-F" string_hex5
|
||||
|
||||
:string_hex7 StringEscape string
|
||||
* string_esc_done noeat
|
||||
"0-9a-fA-F" string_hex6
|
||||
|
||||
:string_hex8 StringEscape string
|
||||
* string_esc_done noeat
|
||||
"0-9a-fA-F" string_hex7
|
||||
|
||||
:string_octal1 StringEscape string
|
||||
* string_esc_done noeat
|
||||
"0-7" string_esc_done
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string_esc_done noeat
|
||||
"0-7" string_octal1
|
||||
|
||||
.end
|
||||
|
||||
.subr comment_todo_docstr
|
||||
# initial state
|
||||
:comment_todo_init Docstring string
|
||||
* comment_todo_guess buffer
|
||||
|
||||
# highlight common TODO labels
|
||||
:comment_todo_guess Docstring string
|
||||
* comment_todo_unknown noeat strings
|
||||
"BUG" comment_todo
|
||||
"FIXME" comment_todo
|
||||
"HACK" comment_todo
|
||||
"NOTE" comment_todo
|
||||
"TODO" comment_todo
|
||||
"XXX" comment_todo
|
||||
done
|
||||
"A-Z" comment_todo_guess
|
||||
|
||||
:comment_todo_unknown Docstring string
|
||||
* NULL noeat return
|
||||
|
||||
:comment_todo DocstringLabel string
|
||||
* NULL noeat return
|
||||
.end
|
||||
175
joe/usr/share/joe/syntax/r.jsf
Normal file
175
joe/usr/share/joe/syntax/r.jsf
Normal file
|
|
@ -0,0 +1,175 @@
|
|||
# JOE syntax highlight file for R
|
||||
|
||||
=Idle
|
||||
=Ident
|
||||
=Bad
|
||||
=Comment
|
||||
=Constant
|
||||
=Number +Constant
|
||||
=String +Constant
|
||||
=StringEscape +Escape
|
||||
=Character +Constant
|
||||
=CharacterEscape +Escape
|
||||
=Boolean +Constant
|
||||
=Escape
|
||||
=Keyword
|
||||
=Brace
|
||||
=Control
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"#" line_comment recolor=-1
|
||||
"0" first_digit recolor=-1
|
||||
"1-9" decimal recolor=-1
|
||||
"." maybe_float buffer
|
||||
"\"" string recolor=-1
|
||||
"'" char recolor=-1
|
||||
"\p{L}\p{Nl}" ident buffer
|
||||
"\\" outside_escape recolor=-1
|
||||
"{}" brace recolor=-1
|
||||
"/,:;=()><[]*&|!~+\-%^" control recolor=-1
|
||||
|
||||
:outside_escape Escape
|
||||
* idle
|
||||
|
||||
:brace Brace
|
||||
* idle noeat
|
||||
|
||||
:control Control
|
||||
* idle noeat
|
||||
|
||||
:line_comment Comment comment
|
||||
* line_comment
|
||||
"BFHNTX" line_comment noeat call=comment_todo.comment_todo()
|
||||
"\n" idle
|
||||
|
||||
:first_digit Number
|
||||
* idle noeat
|
||||
"xX" hex
|
||||
"." float
|
||||
"eE" epart
|
||||
"0-9" decimal
|
||||
"L" idle
|
||||
|
||||
:hex Number
|
||||
* idle noeat
|
||||
"0-9A-Fa-f" hex
|
||||
|
||||
:decimal Number
|
||||
* idle noeat
|
||||
"0-9" decimal
|
||||
"eE" epart
|
||||
"." float
|
||||
"L" idle
|
||||
|
||||
:maybe_float Number
|
||||
* idle recolor=-2 noeat
|
||||
"\i." ident recolor=-2
|
||||
"0-9" float recolor=-2
|
||||
|
||||
:float Number
|
||||
* idle noeat
|
||||
"eE" epart
|
||||
"0-9" float
|
||||
"L" idle
|
||||
|
||||
:epart Number
|
||||
* idle noeat
|
||||
"0-9+\-" enum
|
||||
|
||||
:enum Number
|
||||
* idle noeat
|
||||
"0-9" enum
|
||||
"L" idle
|
||||
|
||||
:string String string
|
||||
* string
|
||||
"\"" idle
|
||||
"\\" string_escape recolor=-1
|
||||
"%" string_control recolor=-1
|
||||
|
||||
:string_escape StringEscape string
|
||||
* string
|
||||
"x" string_hex
|
||||
"0-7" string_octal2
|
||||
"\n" string recolor=-2
|
||||
|
||||
# \x will consume all successive hex digits (ANSI C).
|
||||
:string_hex StringEscape string
|
||||
* string noeat
|
||||
"0-9a-fA-F" string_hex
|
||||
|
||||
:string_octal2 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string_octal3
|
||||
|
||||
:string_octal3 StringEscape string
|
||||
* string noeat
|
||||
"0-7" string
|
||||
|
||||
:string_control StringEscape string
|
||||
* string
|
||||
"\"" string noeat
|
||||
"\n" idle
|
||||
"\\" string_escape recolor=-1
|
||||
"0-9.\-+ #hjILtz$" string_control
|
||||
|
||||
:char Character string
|
||||
* char
|
||||
"\n" idle
|
||||
"'" idle
|
||||
"\\" char_escape recolor=-1
|
||||
|
||||
:char_escape CharacterEscape string
|
||||
* char
|
||||
"x" char_hex
|
||||
"0-7" char_octal2
|
||||
"\n" char recolor=-2
|
||||
|
||||
# \x will consume all successive hex digits (ANSI C).
|
||||
:char_hex CharacterEscape string
|
||||
* char noeat
|
||||
"0-9a-fA-F" char_hex
|
||||
|
||||
:char_octal2 CharacterEscape string
|
||||
* char noeat
|
||||
"0-7" char_octal3
|
||||
|
||||
:char_octal3 CharacterEscape string
|
||||
* char noeat
|
||||
"0-7" char
|
||||
|
||||
# It feels to me like this could use some more work...
|
||||
|
||||
:ident Ident
|
||||
* idle noeat strings
|
||||
"TRUE" bool
|
||||
"FALSE" bool
|
||||
"NULL" val
|
||||
"Inf" val
|
||||
"NaN" val
|
||||
"NA" val
|
||||
"NA_integer_" val
|
||||
"NA_real_" val
|
||||
"NA_complex_" val
|
||||
"NA_character_" val
|
||||
"if" kw
|
||||
"else" kw
|
||||
"repeat" kw
|
||||
"while" kw
|
||||
"function" kw
|
||||
"for" kw
|
||||
"in" kw
|
||||
"next" kw
|
||||
"break" kw
|
||||
done
|
||||
"\c." ident
|
||||
|
||||
:bool Boolean
|
||||
* idle noeat
|
||||
|
||||
:val Constant
|
||||
* idle noeat
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
82
joe/usr/share/joe/syntax/rexx.jsf
Normal file
82
joe/usr/share/joe/syntax/rexx.jsf
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
# JOE syntax highlight file for REXX
|
||||
|
||||
=Idle
|
||||
=Bad
|
||||
=Comment
|
||||
=Constant
|
||||
=String +Constant
|
||||
=Keyword
|
||||
|
||||
:idle Idle
|
||||
* idle
|
||||
"\"" dquote recolor=-1
|
||||
"'" squote recolor=-1
|
||||
"a-zA-Z.!?@_0-9" symbol buffer
|
||||
"/" idle call=.maybe_comment()
|
||||
|
||||
:symbol Idle
|
||||
* idle noeat istrings
|
||||
"address" kw
|
||||
"arg" kw
|
||||
"call" kw
|
||||
"do" kw
|
||||
"drop" kw
|
||||
"exit" kw
|
||||
"if" kw
|
||||
"interpret" kw
|
||||
"iterate" kw
|
||||
"leave" kw
|
||||
"nop" kw
|
||||
"numeric" kw
|
||||
"options" kw
|
||||
"parse" kw
|
||||
"procedure" kw
|
||||
"pull" kw
|
||||
"push" kw
|
||||
"queue" kw
|
||||
"return" kw
|
||||
"say" kw
|
||||
"select" kw
|
||||
"signal" kw
|
||||
"trace" kw
|
||||
"upper" kw
|
||||
"then" kw
|
||||
"end" kw
|
||||
"else" kw
|
||||
"when" kw
|
||||
"otherwise" kw
|
||||
done
|
||||
"a-zA-Z.!?@_0-9" symbol
|
||||
|
||||
:kw Keyword
|
||||
* idle noeat
|
||||
|
||||
:squote String string
|
||||
* squote
|
||||
"'" idle
|
||||
|
||||
:dquote String string
|
||||
* dquote
|
||||
"\"" idle
|
||||
|
||||
#
|
||||
# Subroutine to parse recursive /* */ comments
|
||||
#
|
||||
|
||||
.subr maybe_comment
|
||||
|
||||
:maybe_comment Idle
|
||||
* maybe_comment return noeat
|
||||
"*" comment recolor=-2
|
||||
|
||||
:comment Comment comment
|
||||
* comment
|
||||
"BFHNTX" comment noeat call=comment_todo.comment_todo()
|
||||
"*" maybe_done
|
||||
"/" comment call=.maybe_comment()
|
||||
|
||||
:maybe_done Comment comment
|
||||
* comment noeat
|
||||
"/" comment return
|
||||
|
||||
.end
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue