Skip to content

Commit 0c1ff16

Browse files
committed
updated runtime files. Add avra syntax.
1 parent 02cfac8 commit 0c1ff16

3 files changed

Lines changed: 75 additions & 1 deletion

File tree

runtime/optwin.vim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
" These commands create the option window.
22
"
33
" Maintainer: Bram Moolenaar <[email protected]>
4-
" Last Change: 2016 Mar 19
4+
" Last Change: 2016 Apr 21
55

66
" If there already is an option window, jump to that one.
77
if bufwinnr("option-window") > 0

runtime/synmenu.vim

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ an 50.10.320 &Syntax.AB.Ascii\ Doc :cal SetSyn("asciidoc")<CR>
6161
an 50.10.330 &Syntax.AB.ASP\ with\ VBScript :cal SetSyn("aspvbs")<CR>
6262
an 50.10.340 &Syntax.AB.ASP\ with\ Perl :cal SetSyn("aspperl")<CR>
6363
an 50.10.350 &Syntax.AB.Assembly.680x0 :cal SetSyn("asm68k")<CR>
64+
an 50.10.355 &Syntax.AB.Assembly.AVR :cal SetSyn("avra")<CR>
6465
an 50.10.360 &Syntax.AB.Assembly.Flat :cal SetSyn("fasm")<CR>
6566
an 50.10.370 &Syntax.AB.Assembly.GNU :cal SetSyn("asm")<CR>
6667
an 50.10.380 &Syntax.AB.Assembly.GNU\ H-8300 :cal SetSyn("asmh8300")<CR>

runtime/syntax/avra.vim

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
" Vim syntax file
2+
" Language: AVR Assembler (AVRA)
3+
" AVRA Home: http://avra.sourceforge.net/index.html
4+
" AVRA Version: 1.3.0
5+
" Maintainer: Marius Ghita <[email protected]>
6+
7+
let s:cpo_save = &cpo
8+
set cpo&vim
9+
10+
setlocal iskeyword=a-z,A-Z,48-57,.,_
11+
" 'isident' is a global option, better not set it
12+
" setlocal isident=a-z,A-Z,48-57,.,_
13+
syn case ignore
14+
15+
syn keyword avraRegister r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14
16+
syn keyword avraRegister r15 r16 r17 r18 r19 r20 r21 r22 r23 r24 r25 r26 r27
17+
syn keyword avraRegister r28 r29 r30 r31
18+
19+
syn keyword avraInstr add adc adiw sub subi sbc sbci sbiw and andi or ori eor
20+
syn keyword avraInstr com neg sbr cbr inc dec tst clr ser mul muls mulsu fmul
21+
syn keyword avraInstr fmuls fmulsu des rjmp ijmp eijmp jmp rcall icall eicall
22+
syn keyword avraInstr call ret reti cpse cp cpc cpi sbrc sbrs sbic sbis brbs
23+
syn keyword avraInstr brbc breq brne brcs brcc brsh brlo brmi brpl brge brlt
24+
syn keyword avraInstr brhs brhc brts brtc brvs brvc brie brid mov movw ldi lds
25+
syn keyword avraInstr ld ldd sts st std lpm elpm spm in out push pop xch las
26+
syn keyword avraInstr lac lat lsl lsr rol ror asr swap bset bclr sbi cbi bst bld
27+
syn keyword avraInstr sec clc sen cln sez clz sei cli ses cls sev clv set clt
28+
syn keyword avraInstr seh clh break nop sleep wdr
29+
30+
syn keyword avraDirective .byte .cseg .db .def .device .dseg .dw .endmacro .equ
31+
syn keyword avraDirective .eseg .exit .include .list .listmac .macro .nolist
32+
syn keyword avraDirective .org .set .define .undef .ifdef .ifndef .if .else
33+
syn keyword avraDirective .elif .elseif .warning
34+
35+
syn keyword avraOperator low high byte2 byte3 byte4 lwrd hwrd page exp2 log2
36+
37+
syn match avraNumericOperator "[-*/+]"
38+
syn match avraUnaryOperator "!"
39+
syn match avraBinaryOperator "<<\|>>\|<\|<=\|>\|>=\|==\|!="
40+
syn match avraBitwiseOperator "[~&^|]\|&&\|||"
41+
42+
syn match avraBinaryNumber "\<0[bB][0-1]*\>"
43+
syn match avraHexNumber "\<0[xX][0-9a-fA-F]\+\>"
44+
syn match avraDecNumber "\<\(0\|[1-9]\d*\)\>"
45+
46+
syn region avraComment start=";" end="$"
47+
syn region avraString start="\"" end="\"\|$"
48+
49+
syn match avraLabel "^\s*[^; \t]\+:"
50+
51+
hi def link avraBinaryNumber avraNumber
52+
hi def link avraHexNumber avraNumber
53+
hi def link avraDecNumber avraNumber
54+
55+
hi def link avraNumericOperator avraOperator
56+
hi def link avraUnaryOperator avraOperator
57+
hi def link avraBinaryOperator avraOperator
58+
hi def link avraBitwiseOperator avraOperator
59+
60+
61+
hi def link avraOperator operator
62+
hi def link avraComment comment
63+
hi def link avraDirective preproc
64+
hi def link avraRegister type
65+
hi def link avraNumber constant
66+
hi def link avraString String
67+
hi def link avraInstr keyword
68+
hi def link avraLabel label
69+
70+
let b:current_syntax = "avra"
71+
72+
let &cpo = s:cpo_save
73+
unlet s:cpo_save

0 commit comments

Comments
 (0)