mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	add grammar for xbase and harbour languages
This commit is contained in:
		
							
								
								
									
										3
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							| @@ -656,3 +656,6 @@ | |||||||
| [submodule "vendor/grammars/language-crystal"] | [submodule "vendor/grammars/language-crystal"] | ||||||
| 	path = vendor/grammars/language-crystal | 	path = vendor/grammars/language-crystal | ||||||
| 	url = https://github.com/k2b6s9j/language-crystal | 	url = https://github.com/k2b6s9j/language-crystal | ||||||
|  | [submodule "vendor/grammars/language-xbase"] | ||||||
|  | 	path = vendor/grammars/language-xbase | ||||||
|  | 	url = https://github.com/hernad/atom-language-harbour | ||||||
|   | |||||||
| @@ -338,6 +338,8 @@ vendor/grammars/language-python: | |||||||
| vendor/grammars/language-shellscript: | vendor/grammars/language-shellscript: | ||||||
| - source.shell | - source.shell | ||||||
| - text.shell-session | - text.shell-session | ||||||
|  | vendor/grammars/language-xbase: | ||||||
|  | - source.harbour | ||||||
| vendor/grammars/language-yaml: | vendor/grammars/language-yaml: | ||||||
| - source.yaml | - source.yaml | ||||||
| vendor/grammars/latex.tmbundle: | vendor/grammars/latex.tmbundle: | ||||||
|   | |||||||
| @@ -1349,7 +1349,7 @@ Harbour: | |||||||
|   color: "#0e60e3" |   color: "#0e60e3" | ||||||
|   extensions: |   extensions: | ||||||
|   - .hb |   - .hb | ||||||
|   tm_scope: none |   tm_scope: source.harbour | ||||||
|   ace_mode: text |   ace_mode: text | ||||||
|  |  | ||||||
| Haskell: | Haskell: | ||||||
| @@ -3783,5 +3783,6 @@ xBase: | |||||||
|   color: "#403a40" |   color: "#403a40" | ||||||
|   extensions: |   extensions: | ||||||
|   - .prg |   - .prg | ||||||
|   tm_scope: none |   - .ch | ||||||
|  |   tm_scope: source.harbour | ||||||
|   ace_mode: text |   ace_mode: text | ||||||
|   | |||||||
							
								
								
									
										167
									
								
								samples/xBase/sample.prg
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										167
									
								
								samples/xBase/sample.prg
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,167 @@ | |||||||
|  | #require "hbtest" | ||||||
|  |  | ||||||
|  | #pragma linenumber=on | ||||||
|  |  | ||||||
|  | #include "hbclass.ch" | ||||||
|  |  | ||||||
|  | #stdout "stdout" | ||||||
|  | #warning "warning" | ||||||
|  |  | ||||||
|  | #define MYCONST  100 | ||||||
|  | #undef MYCONST | ||||||
|  |  | ||||||
|  | #ifdef __HARBOUR__ | ||||||
|  | #else | ||||||
|  | #endif | ||||||
|  |  | ||||||
|  | #if defined( __HARBOUR__ ) .OR. .T. | ||||||
|  | #elif defined( __HARBOUR__ ) | ||||||
|  | #endif | ||||||
|  |  | ||||||
|  | THREAD STATIC t_var := "thread" | ||||||
|  |  | ||||||
|  | REQUEST AllTrim | ||||||
|  | ANNOUNCE my_module | ||||||
|  |  | ||||||
|  | PROCEDURE Main() | ||||||
|  |  | ||||||
|  |    MEMVAR p_var, m_var | ||||||
|  |    FIELD fld | ||||||
|  |  | ||||||
|  |    STATIC s_test := "static" | ||||||
|  |    LOCAL o := TTest():New( "one", "two" ), tmp | ||||||
|  |    LOCAL oError | ||||||
|  |    LOCAL bBlock := {| tmp | QOut( tmp ) } | ||||||
|  |    LOCAL hHash := { "name" => "value", "name2" => "value2", 2 => 1 } | ||||||
|  |    PUBLIC p_var := "public" | ||||||
|  |    PRIVATE m_var := "private" | ||||||
|  |    PARAMETERS p1 | ||||||
|  |  | ||||||
|  |    Set( _SET_DATEFORMAT, "yyyy-mm-dd" ) | ||||||
|  |  | ||||||
|  |    CLS | ||||||
|  |    @ 10, 10 SAY "Hello world!" | ||||||
|  |  | ||||||
|  |    ? hb_ValToExp( o ) | ||||||
|  |    ? m->p1 | ||||||
|  |    ? hHash[ "name" ], hHash[ 2 ] | ||||||
|  |  | ||||||
|  |    FOR tmp := 1 TO 10 STEP 2 | ||||||
|  |       ? tmp | ||||||
|  |    NEXT | ||||||
|  |  | ||||||
|  |    FOR EACH tmp IN { "a", "b" } DESCEND | ||||||
|  |       ? tmp | ||||||
|  |    NEXT | ||||||
|  |  | ||||||
|  |    ? 10.01 + 2 - 3 / 4 * 5 ^ 6 ** 1 | ||||||
|  |    ? 2 < 1, 2 > 1, 2 >= 1, 2 <= 1, 2 == 1, 2 = 1, 2 != 1, 2 <> 1, 2 # 1 | ||||||
|  |    ? -( 1 + 2 ), "a" $ "ab", 10 % 2 | ||||||
|  |  | ||||||
|  |    tmp := 0 | ||||||
|  |    DO WHILE tmp < 2 | ||||||
|  |       ? tmp++ | ||||||
|  |    ENDDO | ||||||
|  |  | ||||||
|  |    tmp := 0 | ||||||
|  |    WHILE tmp < 2 | ||||||
|  |       ? ++tmp | ||||||
|  |       IF tmp >= 0xFF | ||||||
|  |          LOOP | ||||||
|  |       ENDIF | ||||||
|  |       EXIT | ||||||
|  |    ENDDO | ||||||
|  |  | ||||||
|  |    --tmp | ||||||
|  |    tmp-- | ||||||
|  |  | ||||||
|  |    IF tmp < -10.0 | ||||||
|  |       ? NIL | ||||||
|  |    ELSEIF .F. | ||||||
|  |       ? 0d19800101 | ||||||
|  |    ELSE | ||||||
|  |       ? "string" | ||||||
|  |    ENDIF | ||||||
|  |  | ||||||
|  |    DO CASE | ||||||
|  |    CASE tmp == 1 | ||||||
|  |       ? "A" | ||||||
|  |    OTHERWISE | ||||||
|  |       ? "B" | ||||||
|  |    ENDCASE | ||||||
|  |  | ||||||
|  |    SWITCH tmp | ||||||
|  |    CASE 1 | ||||||
|  |       ? "A" | ||||||
|  |       EXIT | ||||||
|  |    OTHERWISE | ||||||
|  |       ? "B" | ||||||
|  |    ENDSWITCH | ||||||
|  |  | ||||||
|  |    BEGIN SEQUENCE WITH __BreakBlock() | ||||||
|  |       BREAK | ||||||
|  |    RECOVER USING oError | ||||||
|  |    END /* SEQUENCE */ | ||||||
|  |  | ||||||
|  |    local_func( @hHash ) | ||||||
|  |  | ||||||
|  |    RETURN | ||||||
|  |  | ||||||
|  | INIT PROCEDURE init_proc() | ||||||
|  |    RETURN | ||||||
|  |  | ||||||
|  | EXIT PROCEDURE exit_proc() | ||||||
|  |    RETURN | ||||||
|  |  | ||||||
|  | PROCEDURE returning_nothing() | ||||||
|  |    RETURN | ||||||
|  |  | ||||||
|  | FUNCTION pub_func() | ||||||
|  |    RETURN .T. | ||||||
|  |  | ||||||
|  | STATIC FUNCTION local_func() | ||||||
|  |    RETURN .F. | ||||||
|  |  | ||||||
|  | CREATE CLASS TTest INHERIT TParent | ||||||
|  |    VAR One, Two | ||||||
|  |    METHOD New( One ) | ||||||
|  |    METHOD Test() INLINE QOut( "Hello" ) | ||||||
|  |    METHOD MethProc() | ||||||
|  | ENDCLASS | ||||||
|  |  | ||||||
|  | METHOD PROCEDURE MethProc() | ||||||
|  |    RETURN | ||||||
|  |  | ||||||
|  | METHOD New( One ) CLASS TTest | ||||||
|  |  | ||||||
|  |    ::super:New() | ||||||
|  |    ::One := One | ||||||
|  |  | ||||||
|  |    RETURN Self | ||||||
|  |  | ||||||
|  | CREATE CLASS TParent | ||||||
|  |    VAR One | ||||||
|  |    METHOD New() | ||||||
|  | ENDCLASS | ||||||
|  |  | ||||||
|  | METHOD New() CLASS TParent | ||||||
|  |    ? "TParent:New()" | ||||||
|  |    RETURN Self | ||||||
|  |  | ||||||
|  | // This is a comment | ||||||
|  | /* This is a comment */ | ||||||
|  | /* This is | ||||||
|  | a comment */ | ||||||
|  | * This is a comment | ||||||
|  | && This is a comment | ||||||
|  | NOTE This is a comment | ||||||
|  | note This is a comment | ||||||
|  | NOTE | ||||||
|  |  | ||||||
|  | FUNCTION pub_func2() | ||||||
|  |    ? "hello world!" | ||||||
|  |    ? 'hello world!' | ||||||
|  |    ? "hello\world!" | ||||||
|  |    ? "\" | ||||||
|  |    ? "hello world!" | ||||||
|  |    RETURN .T. | ||||||
							
								
								
									
										1
									
								
								vendor/grammars/language-xbase
									
									
									
									
										vendored
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								vendor/grammars/language-xbase
									
									
									
									
										vendored
									
									
										Submodule
									
								
							 Submodule vendor/grammars/language-xbase added at 86f0c6c370
									
								
							
		Reference in New Issue
	
	Block a user