mirror of
				https://github.com/sharkdp/bat.git
				synced 2025-10-31 07:04:04 +00:00 
			
		
		
		
	feat: add Nim syntax test file
This commit is contained in:
		
							
								
								
									
										41
									
								
								tests/syntax-tests/highlighted/nim/main.nim
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								tests/syntax-tests/highlighted/nim/main.nim
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,41 @@ | |||||||
|  | [38;2;249;38;114mimport[0m[38;2;248;248;242m json[0m | ||||||
|  |  | ||||||
|  | [38;2;249;38;114mconst[0m | ||||||
|  | [38;2;248;248;242m  message = [0m[38;2;230;219;116m"hello world"[0m | ||||||
|  | [38;2;248;248;242m  multiLine = [0m[38;2;230;219;116m"""[0m | ||||||
|  | [38;2;230;219;116m    foo[0m | ||||||
|  | [38;2;230;219;116m    bar[0m | ||||||
|  | [38;2;230;219;116m  """[0m | ||||||
|  | [38;2;248;248;242m  numbers = @[[0m[38;2;190;132;255m1[0m[38;2;248;248;242m, [0m[38;2;190;132;255m2[0m[38;2;248;248;242m, [0m[38;2;190;132;255m3[0m[38;2;248;248;242m][0m | ||||||
|  |  | ||||||
|  | [38;2;249;38;114mtype[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mOptions[0m[38;2;248;248;242m = [0m[38;2;249;38;114menum[0m | ||||||
|  | [38;2;248;248;242m  A,[0m | ||||||
|  | [38;2;248;248;242m  B,[0m | ||||||
|  | [38;2;248;248;242m  C[0m | ||||||
|  |  | ||||||
|  | [38;2;117;113;94m## [0m[38;2;117;113;94mTop-level comment[0m | ||||||
|  | [38;2;249;38;114mtype[0m | ||||||
|  | [38;2;248;248;242m  [0m[3;38;2;166;226;46mSomeStruct[0m[38;2;248;248;242m* = [0m[38;2;249;38;114mref[0m[38;2;248;248;242m [0m[38;2;249;38;114mobject[0m | ||||||
|  | [38;2;248;248;242m    value*: [0m[3;38;2;102;217;239mstring[0m | ||||||
|  |  | ||||||
|  | [3;38;2;102;217;239mproc[0m[38;2;248;248;242m someFunc*(): [0m[3;38;2;102;217;239mstring[0m[38;2;248;248;242m =[0m | ||||||
|  | [38;2;248;248;242m  [0m[38;2;117;113;94m## [0m[38;2;117;113;94mFunction docs[0m | ||||||
|  | [38;2;248;248;242m  [0m[38;2;117;113;94m##[0m | ||||||
|  | [38;2;248;248;242m  [0m[38;2;117;113;94m## [0m[38;2;117;113;94mMore docs[0m | ||||||
|  | [38;2;248;248;242m  result = message[0m | ||||||
|  |  | ||||||
|  | [3;38;2;102;217;239mproc[0m[38;2;248;248;242m [0m[38;2;102;217;239msomeOtherFunc[0m[38;2;248;248;242m(startingValue: [0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m): ([0m[3;38;2;102;217;239mstring[0m[38;2;248;248;242m, [0m[3;38;2;102;217;239mint[0m[38;2;248;248;242m) =[0m | ||||||
|  | [38;2;248;248;242m  [0m[38;2;249;38;114mvar[0m[38;2;248;248;242m num = startingValue[0m | ||||||
|  | [38;2;248;248;242m  num += [0m[38;2;190;132;255m1[0m | ||||||
|  | [38;2;248;248;242m  [0m[38;2;249;38;114mif[0m[38;2;248;248;242m num > [0m[38;2;190;132;255m10[0m[38;2;248;248;242m * [0m[38;2;190;132;255m10[0m[38;2;248;248;242m * [0m[38;2;190;132;255m10[0m[38;2;248;248;242m:[0m | ||||||
|  | [38;2;248;248;242m    [0m[38;2;249;38;114mecho[0m[38;2;248;248;242m [0m[38;2;230;219;116m"Encountered an error"[0m | ||||||
|  | [38;2;248;248;242m    [0m[38;2;249;38;114mraise[0m[38;2;248;248;242m [0m[38;2;249;38;114mnewException[0m[38;2;248;248;242m([0m[3;38;2;166;226;46mValueError[0m[38;2;248;248;242m, [0m[38;2;230;219;116m"Value was over 1000"[0m[38;2;248;248;242m)[0m | ||||||
|  | [38;2;248;248;242m  ([0m[38;2;230;219;116m"Fizz"[0m[38;2;248;248;242m, num)[0m | ||||||
|  |  | ||||||
|  | [3;38;2;102;217;239mproc[0m[38;2;248;248;242m `+=[0m[38;2;102;217;239m`[0m[38;2;248;248;242m(a: [0m[38;2;249;38;114mvar[0m[38;2;248;248;242m [0m[3;38;2;166;226;46mSomeStruct[0m[38;2;248;248;242m, b: [0m[3;38;2;166;226;46mSomeStruct[0m[38;2;248;248;242m)[0m[38;2;249;38;114m:[0m[38;2;248;248;242m [0m[3;38;2;102;217;239mstring[0m[38;2;248;248;242m =[0m | ||||||
|  | [38;2;248;248;242m  a.value.[0m[38;2;102;217;239madd[0m[38;2;248;248;242m(b.value)[0m | ||||||
|  | [38;2;248;248;242m  [0m[38;2;249;38;114mreturn[0m[38;2;248;248;242m a.value[0m | ||||||
|  |  | ||||||
|  | [38;2;249;38;114mecho[0m[38;2;248;248;242m [0m[38;2;102;217;239msomeFunc[0m[38;2;248;248;242m()[0m | ||||||
|  | [38;2;249;38;114mecho[0m[38;2;248;248;242m([0m[38;2;102;217;239msomeOtherFunc[0m[38;2;248;248;242m([0m[38;2;190;132;255m123[0m[38;2;248;248;242m))[0m | ||||||
|  | [38;2;249;38;114mdiscard[0m[38;2;248;248;242m [0m[38;2;102;217;239msomeFunc[0m[38;2;248;248;242m()[0m | ||||||
							
								
								
									
										41
									
								
								tests/syntax-tests/source/nim/main.nim
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								tests/syntax-tests/source/nim/main.nim
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,41 @@ | |||||||
|  | import json | ||||||
|  |  | ||||||
|  | const | ||||||
|  |   message = "hello world" | ||||||
|  |   multiLine = """ | ||||||
|  |     foo | ||||||
|  |     bar | ||||||
|  |   """ | ||||||
|  |   numbers = @[1, 2, 3] | ||||||
|  |  | ||||||
|  | type Options = enum | ||||||
|  |   A, | ||||||
|  |   B, | ||||||
|  |   C | ||||||
|  |  | ||||||
|  | ## Top-level comment | ||||||
|  | type | ||||||
|  |   SomeStruct* = ref object | ||||||
|  |     value*: string | ||||||
|  |  | ||||||
|  | proc someFunc*(): string = | ||||||
|  |   ## Function docs | ||||||
|  |   ## | ||||||
|  |   ## More docs | ||||||
|  |   result = message | ||||||
|  |  | ||||||
|  | proc someOtherFunc(startingValue: int): (string, int) = | ||||||
|  |   var num = startingValue | ||||||
|  |   num += 1 | ||||||
|  |   if num > 10 * 10 * 10: | ||||||
|  |     echo "Encountered an error" | ||||||
|  |     raise newException(ValueError, "Value was over 1000") | ||||||
|  |   ("Fizz", num) | ||||||
|  |  | ||||||
|  | proc `+=`(a: var SomeStruct, b: SomeStruct): string = | ||||||
|  |   a.value.add(b.value) | ||||||
|  |   return a.value | ||||||
|  |  | ||||||
|  | echo someFunc() | ||||||
|  | echo(someOtherFunc(123)) | ||||||
|  | discard someFunc() | ||||||
		Reference in New Issue
	
	Block a user