1 |
" Vim syntax file |
2 |
" Language: Crossfire Maps |
3 |
" Maintainer: Pippijn van Steenhoven <pip88nl@gmail.com> |
4 |
" Last Change: 2007 Jan 05 |
5 |
" |
6 |
" Usage: |
7 |
" put these lines in some script: |
8 |
" if getline(1) =~ '^arch map$' |
9 |
" set ft=cfmap |
10 |
" endif |
11 |
" |
12 |
" then put this into your vimrc: |
13 |
" au BufReadPost * so /path/to/that/small/script |
14 |
" |
15 |
" I have: |
16 |
" au BufReadPost * so ~/.vim/ftdetect/cfmap.vim |
17 |
" |
18 |
" drop this file into ~/.vim/syntax |
19 |
|
20 |
if exists("b:current_syntax") |
21 |
finish |
22 |
endif |
23 |
|
24 |
" Comments: {{{1 |
25 |
"========== |
26 |
syn cluster cfCommentGroup contains=cfTodo,@Spell |
27 |
syn keyword cfTodo contained COMBAK FIXME TODO XXX |
28 |
syn match cfComment "#.*$" contains=@cfCommentGroup |
29 |
|
30 |
" Keywords: {{{1 |
31 |
"========== |
32 |
syn keyword cfBlock1 arch end |
33 |
|
34 |
syn keyword cfMap darkness width height enter_x enter_y per_player region difficulty |
35 |
syn keyword cfMap reset_timeout reset_time swap_time maplore endmaplore |
36 |
syn keyword cfMap fixed_resettime per_player per_party shopitems shopgreed shopmin |
37 |
syn keyword cfMap shopmax shoprace outdoor tile_path_1 tile_path_2 tile_path_3 tile_path_4 |
38 |
syn keyword cfMap file_format_version temp pressure humid windspeed winddir sky map |
39 |
|
40 |
syn keyword cfArch no_pass walk_on walk_off fly_on fly_off |
41 |
syn keyword cfArch flying ac activate_on_push activate_on_release alive anim_speed animation |
42 |
syn keyword cfArch applied armour attach attack_movement attacktype auto_apply |
43 |
syn keyword cfArch been_applied berserk blocksview body_range body_arm body_torso body_head |
44 |
syn keyword cfArch body_neck body_skill body_finger body_shoulder body_foot body_hand |
45 |
syn keyword cfArch body_wrist body_waist can_apply can_cast_spell can_roll can_see_in_dark |
46 |
syn keyword cfArch can_use_armour can_use_bow can_use_horn can_use_range can_use_ring |
47 |
syn keyword cfArch can_use_rod can_use_scroll can_use_shield can_use_skill can_use_wand |
48 |
syn keyword cfArch can_use_weapon carrying casting_time cha changing client_type con |
49 |
syn keyword cfArch confused connected container cursed custom_name dam dam_modifier damned |
50 |
syn keyword cfArch dex direction duration duration_modifier editable editor_folder elevation |
51 |
syn keyword cfArch endlore exp expmul face food friendly gen_sp_armour generator |
52 |
syn keyword cfArch glow_radius grace has_ready_bow has_ready_horn has_ready_rod |
53 |
syn keyword cfArch has_ready_scroll has_ready_skill has_ready_wand has_ready_weapon |
54 |
syn keyword cfArch has_ready_range hitback hp identified immune int inv_locked invisible |
55 |
syn keyword cfArch is_animated is_blind is_buildable is_cauldron is_dust is_floor is_hilly |
56 |
syn keyword cfArch is_lightable is_thrown is_turnable is_used_up is_water is_wooded |
57 |
syn keyword cfArch item_power known_cursed known_magical last_eat last_grace last_heal |
58 |
syn keyword cfArch last_sp level lifesave lore luck magic make_invisible material |
59 |
syn keyword cfArch materialname maxgrace maxhp maxsp monster more move_allow move_block |
60 |
syn keyword cfArch move_off move_on move_slow move_slow_penalty move_state move_type |
61 |
syn keyword cfArch neutral no_attack no_damage no_drop no_fix_player no_magic |
62 |
syn keyword cfArch no_pick no_skill_ident no_steal no_strength nrof object oid one_hit |
63 |
syn keyword cfArch only_attack other_arch overlay_floor path_attuned path_denied |
64 |
syn keyword cfArch path_repelled perm_exp pick_up player_sold pow protected race random_move |
65 |
syn keyword cfArch random_movement randomitems range range_modifier reflect_missile |
66 |
syn keyword cfArch reflect_spell reflecting resist_acid resist_blind resist_cancellation |
67 |
syn keyword cfArch resist_chaos resist_cold resist_confusion resist_counterspell |
68 |
syn keyword cfArch resist_death resist_deplete resist_disease resist_drain |
69 |
syn keyword cfArch resist_electricity resist_fear resist_fire resist_ghosthit |
70 |
syn keyword cfArch resist_godpower resist_holyword resist_internal resist_life_stealing |
71 |
syn keyword cfArch resist_magic resist_paralyze resist_physical resist_poison resist_slow |
72 |
syn keyword cfArch resist_turn_undead resist_weaponmagic run_away scared see_anywhere |
73 |
syn keyword cfArch see_invisible skill slaying sleep slow_move smoothlevel sp speed |
74 |
syn keyword cfArch speed_left splitting stand_still startequip state stealth str subtype |
75 |
syn keyword cfArch tear_down title tooltype treasure type unaggressive undead unique unpaid |
76 |
syn keyword cfArch use_content_on_gen uuid value vulnerable was_wiz wc weapontype weight |
77 |
syn keyword cfArch will_apply wis wiz x xrays y |
78 |
syn keyword cfArch savebed_map bed_x bed_y password explore shoottype bowtype petmode gen_hp |
79 |
syn keyword cfArch gen_sp gen_grace listening peaceful digestion pickup outputs_sync |
80 |
syn keyword cfArch outputs_count usekeys unapply weapon_sp lev_array endplst |
81 |
|
82 |
" Strings: {{{1 |
83 |
"========= |
84 |
syn region cfString matchgroup=cfBlock2 start=+^msg$+ end=+^endmsg$+ |
85 |
syn region cfString matchgroup=cfArch start=+^name + end=+$+ |
86 |
syn region cfString matchgroup=cfArch start=+^name_pl + end=+$+ |
87 |
syn region cfString matchgroup=cfBlock2 start=+^anim$+ end=+^mina$+ |
88 |
|
89 |
" Numbers: {{{1 |
90 |
"========= |
91 |
syn match cfNumber "[-+]\=\(\<\d[[:digit:]_]*L\=\>\|0[xX]\x[[:xdigit:]_]*\>\)" |
92 |
|
93 |
" Highlights: {{{1 |
94 |
"============ |
95 |
hi def link cfArch cfStatement |
96 |
hi def link cfBlock1 cfSpecial |
97 |
hi def link cfBlock2 cfIdentifier |
98 |
hi def link cfMap cfPreProc |
99 |
|
100 |
hi def link cfNumber Number |
101 |
hi def link cfTodo Todo |
102 |
hi def link cfComment Comment |
103 |
hi def link cfStatement Statement |
104 |
hi def link cfSpecial Special |
105 |
hi def link cfIdentifier Identifier |
106 |
hi def link cfPreProc PreProc |
107 |
hi def link cfString String |