blob: 358349c463c493ae525661969d4162d00f07e4eb [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: SQL*Forms (Oracle 7), based on sql.vim (vim5.0)
3" Maintainer: Austin Ziegler (austin@halostatue.ca)
4" Last Change: 2003 May 11
5" Prev Change: 19980710
6" URL: http://www.halostatue.ca/vim/syntax/proc.vim
7"
8" TODO Find a new maintainer who knows SQL*Forms.
9
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020010" quit when a syntax file was already loaded
11if exists("b:current_syntax")
Bram Moolenaar071d4272004-06-13 20:20:40 +000012 finish
13endif
14
15syntax case ignore
16
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020017setlocal iskeyword=a-z,A-Z,48-57,_,.,-,>
Bram Moolenaar071d4272004-06-13 20:20:40 +000018
19
20 " The SQL reserved words, defined as keywords.
21syntax match sqlTriggers /on-.*$/
22syntax match sqlTriggers /key-.*$/
23syntax match sqlTriggers /post-.*$/
24syntax match sqlTriggers /pre-.*$/
25syntax match sqlTriggers /user-.*$/
26
27syntax keyword sqlSpecial null false true
28
29syntax keyword sqlProcedure abort_query anchor_view bell block_menu break call
30syntax keyword sqlProcedure call_input call_query clear_block clear_eol
31syntax keyword sqlProcedure clear_field clear_form clear_record commit_form
32syntax keyword sqlProcedure copy count_query create_record default_value
33syntax keyword sqlProcedure delete_record display_error display_field down
34syntax keyword sqlProcedure duplicate_field duplicate_record edit_field
35syntax keyword sqlProcedure enter enter_query erase execute_query
36syntax keyword sqlProcedure execute_trigger exit_form first_Record go_block
37syntax keyword sqlProcedure go_field go_record help hide_menu hide_page host
38syntax keyword sqlProcedure last_record list_values lock_record message
39syntax keyword sqlProcedure move_view new_form next_block next_field next_key
40syntax keyword sqlProcedure next_record next_set pause post previous_block
41syntax keyword sqlProcedure previous_field previous_record print redisplay
42syntax keyword sqlProcedure replace_menu resize_view scroll_down scroll_up
43syntax keyword sqlProcedure set_field show_keys show_menu show_page
44syntax keyword sqlProcedure synchronize up user_exit
45
46syntax keyword sqlFunction block_characteristic error_code error_text
47syntax keyword sqlFunction error_type field_characteristic form_failure
48syntax keyword sqlFunction form_fatal form_success name_in
49
50syntax keyword sqlParameters hide no_hide replace no_replace ask_commit
51syntax keyword sqlParameters do_commit no_commit no_validate all_records
52syntax keyword sqlParameters for_update no_restrict restrict no_screen
53syntax keyword sqlParameters bar full_screen pull_down auto_help auto_skip
54syntax keyword sqlParameters fixed_length enterable required echo queryable
55syntax keyword sqlParameters updateable update_null upper_case attr_on
56syntax keyword sqlParameters attr_off base_table first_field last_field
57syntax keyword sqlParameters datatype displayed display_length field_length
58syntax keyword sqlParameters list page primary_key query_length x_pos y_pos
59
60syntax match sqlSystem /system\.block_status/
61syntax match sqlSystem /system\.current_block/
62syntax match sqlSystem /system\.current_field/
63syntax match sqlSystem /system\.current_form/
64syntax match sqlSystem /system\.current_value/
65syntax match sqlSystem /system\.cursor_block/
66syntax match sqlSystem /system\.cursor_field/
67syntax match sqlSystem /system\.cursor_record/
68syntax match sqlSystem /system\.cursor_value/
69syntax match sqlSystem /system\.form_status/
70syntax match sqlSystem /system\.last_query/
71syntax match sqlSystem /system\.last_record/
72syntax match sqlSystem /system\.message_level/
73syntax match sqlSystem /system\.record_status/
74syntax match sqlSystem /system\.trigger_block/
75syntax match sqlSystem /system\.trigger_field/
76syntax match sqlSystem /system\.trigger_record/
77syntax match sqlSystem /\$\$date\$\$/
78syntax match sqlSystem /\$\$time\$\$/
79
80syntax keyword sqlKeyword accept access add as asc by check cluster column
81syntax keyword sqlKeyword compress connect current decimal default
82syntax keyword sqlKeyword desc exclusive file for from group
83syntax keyword sqlKeyword having identified immediate increment index
84syntax keyword sqlKeyword initial into is level maxextents mode modify
85syntax keyword sqlKeyword nocompress nowait of offline on online start
86syntax keyword sqlKeyword successful synonym table to trigger uid
87syntax keyword sqlKeyword unique user validate values view whenever
88syntax keyword sqlKeyword where with option order pctfree privileges
89syntax keyword sqlKeyword public resource row rowlabel rownum rows
90syntax keyword sqlKeyword session share size smallint sql\*forms_version
91syntax keyword sqlKeyword terse define form name title procedure begin
92syntax keyword sqlKeyword default_menu_application trigger block field
93syntax keyword sqlKeyword enddefine declare exception raise when cursor
94syntax keyword sqlKeyword definition base_table pragma
95syntax keyword sqlKeyword column_name global trigger_type text description
96syntax match sqlKeyword "<<<"
97syntax match sqlKeyword ">>>"
98
99syntax keyword sqlOperator not and or out to_number to_date message erase
100syntax keyword sqlOperator in any some all between exists substr nvl
101syntax keyword sqlOperator exception_init
102syntax keyword sqlOperator like escape trunc lpad rpad sum
103syntax keyword sqlOperator union intersect minus to_char greatest
104syntax keyword sqlOperator prior distinct decode least avg
105syntax keyword sqlOperator sysdate true false field_characteristic
106syntax keyword sqlOperator display_field call host
107
108syntax keyword sqlStatement alter analyze audit comment commit create
109syntax keyword sqlStatement delete drop explain grant insert lock noaudit
110syntax keyword sqlStatement rename revoke rollback savepoint select set
111syntax keyword sqlStatement truncate update if elsif loop then
112syntax keyword sqlStatement open fetch close else end
113
114syntax keyword sqlType char character date long raw mlslabel number rowid
115syntax keyword sqlType varchar varchar2 float integer boolean global
116
117syntax keyword sqlCodes sqlcode no_data_found too_many_rows others
118syntax keyword sqlCodes form_trigger_failure notfound found
119syntax keyword sqlCodes validate no_commit
120
121 " Comments:
122syntax region sqlComment start="/\*" end="\*/"
123syntax match sqlComment "--.*"
124
125 " Strings and characters:
126syntax region sqlString start=+"+ skip=+\\\\\|\\"+ end=+"+
127syntax region sqlString start=+'+ skip=+\\\\\|\\"+ end=+'+
128
129 " Numbers:
130syntax match sqlNumber "-\=\<[0-9]*\.\=[0-9_]\>"
131
132syntax sync ccomment sqlComment
133
Bram Moolenaar89bcfda2016-08-30 23:26:57 +0200134command -nargs=+ HiLink hi def link <args>
Bram Moolenaar071d4272004-06-13 20:20:40 +0000135
Bram Moolenaar89bcfda2016-08-30 23:26:57 +0200136HiLink sqlComment Comment
137HiLink sqlKeyword Statement
138HiLink sqlNumber Number
139HiLink sqlOperator Statement
140HiLink sqlProcedure Statement
141HiLink sqlFunction Statement
142HiLink sqlSystem Identifier
143HiLink sqlSpecial Special
144HiLink sqlStatement Statement
145HiLink sqlString String
146HiLink sqlType Type
147HiLink sqlCodes Identifier
148HiLink sqlTriggers PreProc
Bram Moolenaar071d4272004-06-13 20:20:40 +0000149
Bram Moolenaar89bcfda2016-08-30 23:26:57 +0200150delcommand HiLink
Bram Moolenaar071d4272004-06-13 20:20:40 +0000151
152let b:current_syntax = "sqlforms"
153
154" vim: ts=8 sw=4