Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
jal.vim237 linesDownload Raw Back to syntax
1" Vim syntax file2" Language:	JAL3" Version: 0.14" Last Change:	2003 May 115" Maintainer:  Mark Gross <mark@thegnar.org>6" This is a syntax definition for the JAL language.7" It is based on the Source Forge compiler source code.8" https://sourceforge.net/projects/jal/9"10" TODO test.11 12" quit when a syntax file was already loaded13if exists("b:current_syntax")14  finish15endif16 17syn case ignore18syn sync lines=25019 20syn keyword picTodo NOTE TODO XXX contained21 22syn match picIdentifier "[a-z_$][a-z0-9_$]*"23syn match picLabel      "^[A-Z_$][A-Z0-9_$]*"24syn match picLabel      "^[A-Z_$][A-Z0-9_$]*:"me=e-125 26syn match picASCII      "A\='.'"27syn match picBinary     "B'[0-1]\+'"28syn match picDecimal    "D'\d\+'"29syn match picDecimal    "\d\+"30syn match picHexadecimal "0x\x\+"31syn match picHexadecimal "H'\x\+'"32syn match picHexadecimal "[0-9]\x*h"33syn match picOctal      "O'[0-7]\o*'"34 35syn match picComment    ";.*" contains=picTodo36 37syn region picString    start=+"+ end=+"+38 39syn keyword picRegister indf tmr0 pcl status fsr port_a port_b port_c port_d port_e x84_eedata x84_eeadr pclath intcon40syn keyword picRegister f877_tmr1l   f877_tmr1h   f877_t1con   f877_t2con   f877_ccpr1l  f877_ccpr1h  f877_ccp1con41syn keyword picRegister f877_pir1    f877_pir2    f877_pie1    f877_adcon1  f877_adcon0  f877_pr2     f877_adresl  f877_adresh42syn keyword picRegister f877_eeadr   f877_eedath  f877_eeadrh  f877_eedata  f877_eecon1  f877_eecon2  f628_EECON243syn keyword picRegister f877_rcsta   f877_txsta   f877_spbrg   f877_txreg   f877_rcreg   f628_EEDATA  f628_EEADR   f628_EECON144 45" Register --- bits46" STATUS47syn keyword picRegisterPart status_c status_dc status_z status_pd48syn keyword picRegisterPart status_to status_rp0 status_rp1 status_irp49 50" pins51syn keyword picRegisterPart pin_a0 pin_a1 pin_a2 pin_a3 pin_a4 pin_a552syn keyword picRegisterPart pin_b0 pin_b1 pin_b2 pin_b3 pin_b4 pin_b5 pin_b6 pin_b753syn keyword picRegisterPart pin_c0 pin_c1 pin_c2 pin_c3 pin_c4 pin_c5 pin_c6 pin_c754syn keyword picRegisterPart pin_d0 pin_d1 pin_d2 pin_d3 pin_d4 pin_d5 pin_d6 pin_d755syn keyword picRegisterPart pin_e0 pin_e1 pin_e256 57syn keyword picPortDir port_a_direction  port_b_direction  port_c_direction  port_d_direction  port_e_direction58 59syn match picPinDir "pin_a[012345]_direction"60syn match picPinDir "pin_b[01234567]_direction"61syn match picPinDir "pin_c[01234567]_direction"62syn match picPinDir "pin_d[01234567]_direction"63syn match picPinDir "pin_e[012]_direction"64 65 66" INTCON67syn keyword picRegisterPart intcon_gie intcon_eeie intcon_peie intcon_t0ie intcon_inte68syn keyword picRegisterPart intcon_rbie intcon_t0if intcon_intf intcon_rbif69 70" TIMER71syn keyword picRegisterPart t1ckps1 t1ckps0 t1oscen t1sync tmr1cs tmr1on tmr1ie tmr1if72 73"cpp bits74syn keyword picRegisterPart ccp1x ccp1y75 76" adcon bits77syn keyword picRegisterPart adcon0_go adcon0_ch0 adcon0_ch1 adcon0_ch278 79" EECON80syn keyword picRegisterPart  eecon1_rd eecon1_wr eecon1_wren eecon1_wrerr eecon1_eepgd81syn keyword picRegisterPart f628_eecon1_rd f628_eecon1_wr f628_eecon1_wren f628_eecon1_wrerr82 83" usart84syn keyword picRegisterPart tx9 txen sync brgh tx9d85syn keyword picRegisterPart spen rx9 cren ferr oerr rx9d86syn keyword picRegisterPart TXIF RCIF87 88" OpCodes...89syn keyword picOpcode addlw andlw call clrwdt goto iorlw movlw option retfie retlw return sleep sublw tris90syn keyword picOpcode xorlw addwf andwf clrf clrw comf decf decfsz incf incfsz retiw iorwf movf movwf nop91syn keyword picOpcode rlf rrf subwf swapf xorwf bcf bsf btfsc btfss skpz skpnz setz clrz skpc skpnc setc clrc92syn keyword picOpcode skpdc skpndc setdc clrdc movfw tstf bank page HPAGE mullw mulwf cpfseq cpfsgt cpfslt banka bankb93 94 95syn keyword jalBoolean		true false96syn keyword jalBoolean		off on97syn keyword jalBit		high low98syn keyword jalConstant		Input Output all_input all_output99syn keyword jalConditional	if else then elsif end if100syn keyword jalLabel		goto101syn keyword jalRepeat		for while forever loop102syn keyword jalStatement	procedure function103syn keyword jalStatement	return end volatile const var104syn keyword jalType		bit byte105 106syn keyword jalModifier		interrupt assembler asm put get107syn keyword jalStatement	out in is begin at108syn keyword jalDirective	pragma jump_table target target_clock target_chip name error test assert109syn keyword jalPredefined       hs xt rc lp internal 16c84 16f84 16f877 sx18 sx28 12c509a 12c508110syn keyword jalPredefined       12ce674 16f628 18f252 18f242 18f442 18f452 12f629 12f675 16f88111syn keyword jalPredefined	16f876 16f873 sx_12 sx18 sx28 pic_12 pic_14 pic_16112 113syn keyword jalDirective chip osc clock  fuses  cpu watchdog powerup protection114 115syn keyword jalFunction		bank_0 bank_1 bank_2 bank_3 bank_4 bank_5 bank_6 bank_7 trisa trisb trisc trisd trise116syn keyword jalFunction		_trisa_flush _trisb_flush _trisc_flush _trisd_flush _trise_flush117 118syn keyword jalPIC		local idle_loop119 120syn region  jalAsm		matchgroup=jalAsmKey start="\<assembler\>" end="\<end assembler\>" contains=jalComment,jalPreProc,jalLabel,picIdentifier, picLabel,picASCII,picDecimal,picHexadecimal,picOctal,picComment,picString,picRegister,picRigisterPart,picOpcode,picDirective,jalPIC121syn region  jalAsm		matchgroup=jalAsmKey start="\<asm\>" end=/$/ contains=jalComment,jalPreProc,jalLabel,picIdentifier, picLabel,picASCII,picDecimal,picHexadecimal,picOctal,picComment,picString,picRegister,picRigisterPart,picOpcode,picDirective,jalPIC122 123syn region  jalPsudoVars matchgroup=jalPsudoVarsKey start="\<'put\>" end="/<is/>"  contains=jalComment124 125syn match  jalStringEscape	contained "#[12][0-9]\=[0-9]\="126syn match   jalIdentifier		"\<[a-zA-Z_][a-zA-Z0-9_]*\>"127syn match   jalSymbolOperator		"[+\-/*=]"128syn match   jalSymbolOperator		"!"129syn match   jalSymbolOperator		"<"130syn match   jalSymbolOperator		">"131syn match   jalSymbolOperator		"<="132syn match   jalSymbolOperator		">="133syn match   jalSymbolOperator		"!="134syn match   jalSymbolOperator		"=="135syn match   jalSymbolOperator		"<<"136syn match   jalSymbolOperator		">>"137syn match   jalSymbolOperator		"|"138syn match   jalSymbolOperator		"&"139syn match   jalSymbolOperator		"%"140syn match   jalSymbolOperator		"?"141syn match   jalSymbolOperator		"[()]"142syn match   jalSymbolOperator		"[\^.]"143syn match   jalLabel			"[\^]*:"144 145syn match  jalNumber		"-\=\<\d[0-9_]\+\>"146syn match  jalHexNumber		"0x[0-9A-Fa-f_]\+\>"147syn match  jalBinNumber		"0b[01_]\+\>"148 149" String150"wrong strings151syn region  jalStringError matchgroup=jalStringError start=+"+ end=+"+ end=+$+ contains=jalStringEscape152 153"right strings154syn region  jalString matchgroup=jalString start=+'+ end=+'+ oneline contains=jalStringEscape155" To see the start and end of strings:156syn region  jalString matchgroup=jalString start=+"+ end=+"+ oneline contains=jalStringEscapeGPC157 158syn keyword jalTodo contained	TODO159syn region jalComment		start=/-- /  end=/$/ oneline contains=jalTodo160syn region jalComment		start=/--\t/  end=/$/ oneline contains=jalTodo161syn match  jalComment		/--\_$/162syn region jalPreProc		start="include"  end=/$/ contains=JalComment,jalToDo163 164 165if exists("jal_no_tabs")166	syn match jalShowTab "\t"167endif168 169 170" Define the default highlighting.171" Only when an item doesn't have highlighting yet172 173hi def link jalAcces		jalStatement174hi def link jalBoolean		Boolean175hi def link jalBit			Boolean176hi def link jalComment		Comment177hi def link jalConditional		Conditional178hi def link jalConstant		Constant179hi def link jalDelimiter		Identifier180hi def link jalDirective		PreProc181hi def link jalException		Exception182hi def link jalFloat		Float183hi def link jalFunction		Function184hi def link jalPsudoVarsKey	Function185hi def link jalLabel		Label186hi def link jalMatrixDelimiter	Identifier187hi def link jalModifier		Type188hi def link jalNumber		Number189hi def link jalBinNumber		Number190hi def link jalHexNumber		Number191hi def link jalOperator		Operator192hi def link jalPredefined		Constant193hi def link jalPreProc		PreProc194hi def link jalRepeat		Repeat195hi def link jalStatement		Statement196hi def link jalString		String197hi def link jalStringEscape	Special198hi def link jalStringEscapeGPC	Special199hi def link jalStringError		Error200hi def link jalStruct		jalStatement201hi def link jalSymbolOperator	jalOperator202hi def link jalTodo		Todo203hi def link jalType		Type204hi def link jalUnclassified	Statement205hi def link jalAsm			Assembler206hi def link jalError		Error207hi def link jalAsmKey		Statement208hi def link jalPIC			Statement209 210hi def link jalShowTab		Error211 212hi def link picTodo		Todo213hi def link picComment		Comment214hi def link picDirective		Statement215hi def link picLabel		Label216hi def link picString		String217 218hi def link picOpcode		Keyword219hi def link picRegister		Structure220hi def link picRegisterPart	Special221hi def link picPinDir		SPecial222hi def link picPortDir		SPecial223 224hi def link picASCII		String225hi def link picBinary		Number226hi def link picDecimal		Number227hi def link picHexadecimal		Number228hi def link picOctal		Number229 230hi def link picIdentifier		Identifier231 232 233 234let b:current_syntax = "jal"235 236" vim: ts=8 sw=2237 
codekingpro/portable-devtools · Team Ai