changeset 33957:e1ae246924ee

runtime(logtalk): Update Logtalk runtime files for the latest language spec (#13697) Commit: https://github.com/vim/vim/commit/0f61943eb7769777a281e0f8b8ba4c5f46d13e84 Author: Paulo Moura <pmoura@logtalk.org> Date: Sat Dec 16 13:27:09 2023 +0000 runtime(logtalk): Update Logtalk runtime files for the latest language spec (https://github.com/vim/vim/issues/13697) Signed-off-by: Paulo Moura <pmoura@logtalk.org> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Sat, 16 Dec 2023 14:30:08 +0100
parents e0535b3b9d77
children e4d3d59728e6
files runtime/ftplugin/logtalk.dict runtime/syntax/logtalk.vim
diffstat 2 files changed, 39 insertions(+), 31 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/ftplugin/logtalk.dict
+++ b/runtime/ftplugin/logtalk.dict
@@ -18,10 +18,7 @@ atan2
 atom
 atomic
 atom_chars
-atom_chars
 atom_codes
-atom_codes
-atom_concat
 atom_concat
 atom_length
 at_end_of_stream
@@ -32,6 +29,7 @@ call
 callable
 calls
 catch
+catchall_catch
 category
 category_property
 ceiling
@@ -45,9 +43,9 @@ coinduction
 coinductive
 compare
 complements
-complements
 complements_object
 compound
+conditionals
 conforms_to_protocol
 context
 context_switching_calls
@@ -87,6 +85,7 @@ end_object
 end_protocol
 engines
 ensure_loaded
+error
 evaluation_error
 events
 existence_error
@@ -152,12 +151,13 @@ nonvar
 number
 numbervars
 number_chars
-number_chars
-number_codes
 number_codes
 object
 object_property
 once
+one
+one_or_error
+one_or_more
 op
 open
 optimize
@@ -226,6 +226,7 @@ term_variables
 this
 threaded
 threaded_call
+threaded_cancel
 threaded_engine
 threaded_engine_create
 threaded_engine_destroy
@@ -250,6 +251,7 @@ type_error
 undefined_predicates
 underscore_variables
 unify_with_occurs_check
+uninstantiation_error
 unknown_entities
 unknown_predicates
 uses
@@ -260,3 +262,8 @@ write
 writeq
 write_canonical
 xor
+zero
+zero_or_error
+zero_or_more
+zero_or_one
+zero_or_one_or_error
--- a/runtime/syntax/logtalk.vim
+++ b/runtime/syntax/logtalk.vim
@@ -1,8 +1,9 @@
 " Vim syntax file
 "
 " Language:	Logtalk
-" Maintainer:	Paulo Moura <pmoura@logtalk.org>
-" Last Change:	August 3, 2018
+" Maintainer:   Paulo Moura <pmoura@logtalk.org>
+" Last Change:  December 16, 2023
+
 
 
 " quit when a syntax file was already loaded
@@ -30,7 +31,7 @@ syn match	logtalkOperator		":-"
 
 " Logtalk quoted atoms and strings
 
-syn region	logtalkString		start=+"+	skip=+\\"+	end=+"+
+syn region	logtalkString		start=+"+	skip=+\\"+	end=+"+		contains=logtalkEscapeSequence
 syn region	logtalkAtom		start=+'+	skip=+\\'+	end=+'+		contains=logtalkEscapeSequence
 
 syn match	logtalkEscapeSequence	contained	"\\\([\\abfnrtv\"\']\|\(x[a-fA-F0-9]\+\|[0-7]\+\)\\\)"
@@ -39,7 +40,7 @@ syn match	logtalkEscapeSequence	containe
 " Logtalk message sending operators
 
 syn match	logtalkOperator		"::"
-syn match	logtalkOperator		":"
+syn match	logtalkOperator		"\(0'\)\@<!:"
 syn match	logtalkOperator		"\^\^"
 
 
@@ -138,7 +139,7 @@ syn match	logtalkBuiltIn		"\<logtalk_mak
 
 syn match	logtalkBuiltIn		"\<\(for\|retract\)all\ze("
 
-syn match	logtalkBuiltIn		"\<threaded\(_\(call\|once\|ignore\|exit\|peek\|wait\|notify\)\)\?\ze("
+syn match	logtalkBuiltIn		"\<threaded\(_\(ca\(ll\|ncel\)\|once\|ignore\|exit\|peek\|wait\|notify\)\)\?\ze("
 syn match	logtalkBuiltIn		"\<threaded_engine\(_\(create\|destroy\|self\|next\|next_reified\|yield\|post\|fetch\)\)\?\ze("
 
 
@@ -171,8 +172,8 @@ syn match	logtalkBuiltInMethod	"\<phrase
 
 " Mode operators
 
-syn match	logtalkOperator		"?"
-syn match	logtalkOperator		"@"
+syn match	logtalkOperator		"\(0'\)\@<!?"
+syn match	logtalkOperator		"\(0'\)\@<!@"
 
 
 " Control constructs
@@ -181,19 +182,19 @@ syn match	logtalkKeyword		"\<true\>"
 syn match	logtalkKeyword		"\<fail\>"
 syn match	logtalkKeyword		"\<false\>"
 syn match	logtalkKeyword		"\<ca\(ll\|tch\)\ze("
-syn match	logtalkOperator		"!"
-" syn match	logtalkOperator		","
-syn match	logtalkOperator		";"
+syn match	logtalkOperator		"\(0'\)\@<!!"
+" syn match	logtalkOperator		"\(0'\)\@<!,"
+syn match	logtalkOperator		"\(0'\)\@<!;"
 syn match	logtalkOperator		"-->"
 syn match	logtalkOperator		"->"
 syn match	logtalkKeyword		"\<throw\ze("
 syn match	logtalkKeyword		"\<\(instantiation\|system\)_error\>"
-syn match	logtalkKeyword		"\<\(type\|domain\|existence\|permission\|representation\|evaluation\|resource\|syntax\)_error\ze("
+syn match	logtalkKeyword		"\<\(uninstantiation\|type\|domain\|existence\|permission\|representation\|evaluation\|resource\|syntax\)_error\ze("
 
 
 " Term unification
 
-syn match	logtalkOperator		"="
+syn match	logtalkOperator		"\(0'\)\@<!="
 syn match	logtalkKeyword		"\<subsumes_term\ze("
 syn match	logtalkKeyword		"\<unify_with_occurs_check\ze("
 syn match	logtalkOperator		"\\="
@@ -246,9 +247,9 @@ syn match	logtalkOperator		"\<is\>"
 
 syn match	logtalkOperator		"=:="
 syn match	logtalkOperator		"=\\="
-syn match	logtalkOperator		"<"
+syn match	logtalkOperator		"\(0'\)\@<!<"
 syn match	logtalkOperator		"=<"
-syn match	logtalkOperator		">"
+syn match	logtalkOperator		"\(0'\)\@<!>"
 syn match	logtalkOperator		">="
 
 
@@ -310,11 +311,11 @@ syn match	logtalkKeyword		"\<\(key\)\?so
 
 " Evaluable functors
 
-syn match	logtalkOperator		"+"
-syn match	logtalkOperator		"-"
-syn match	logtalkOperator		"\*"
+syn match	logtalkOperator		"\(0'\)\@<![+]"
+syn match	logtalkOperator		"\(0'\)\@<![-]"
+syn match	logtalkOperator		"\(0'\)\@<!\*"
 syn match	logtalkOperator		"//"
-syn match	logtalkOperator		"/"
+syn match	logtalkOperator		"\(0'\)\@<!/"
 syn match	logtalkKeyword		"\<div\ze("
 syn match	logtalkKeyword		"\<r\(ound\|em\)\ze("
 syn match	logtalkKeyword		"\<e\>"
@@ -330,7 +331,7 @@ syn match	logtalkKeyword		"\<t\(an\|runc
 syn match	logtalkKeyword		"\<ceiling\ze("
 
 
-" Other arithmetic functors
+" Other arithemtic functors
 
 syn match	logtalkOperator		"\*\*"
 syn match	logtalkKeyword		"\<s\(in\|qrt\)\ze("
@@ -346,18 +347,18 @@ syn match	logtalkOperator		">>"
 syn match	logtalkOperator		"<<"
 syn match	logtalkOperator		"/\\"
 syn match	logtalkOperator		"\\/"
-syn match	logtalkOperator		"\\"
+syn match	logtalkOperator		"0'\@<!\\"
 syn match	logtalkKeyword		"\<xor\ze("
 
 
 " Logtalk list operator
 
-syn match	logtalkOperator		"|"
+syn match	logtalkOperator		"\(0'\)\@<!|"
 
 
 " Logtalk existential quantifier operator
 
-syn match	logtalkOperator		"\^"
+syn match	logtalkOperator		"\(0'\)\@<!^"
 
 
 " Logtalk numbers 
@@ -366,7 +367,7 @@ syn match	logtalkNumber		"\<\d\+\>"
 syn match	logtalkNumber		"\<\d\+\.\d\+\>"
 syn match	logtalkNumber		"\<\d\+[eE][-+]\=\d\+\>"
 syn match	logtalkNumber		"\<\d\+\.\d\+[eE][-+]\=\d\+\>"
-syn match	logtalkNumber		"\<0'[\\]\?.\|0''\|0'\"\>"
+syn match	logtalkNumber		"0'[\\]\?."
 syn match	logtalkNumber		"\<0b[0-1]\+\>"
 syn match	logtalkNumber		"\<0o\o\+\>"
 syn match	logtalkNumber		"\<0x\x\+\>"
@@ -374,13 +375,13 @@ syn match	logtalkNumber		"\<0x\x\+\>"
 
 " Logtalk end-of-clause
 
-syn match	logtalkOperator		"\."
+syn match	logtalkOperator		"\(0'\)\@<!\."
 
 
 " Logtalk comments
 
 syn region	logtalkBlockComment	start="/\*"	end="\*/"	fold
-syn match	logtalkLineComment	"%.*"
+syn match	logtalkLineComment	"%.*$"
 
 syn cluster	logtalkComment		contains=logtalkBlockComment,logtalkLineComment