Explorar o código

Merge topic 'update-vim-syntax'

84d67356 Merge branch 'upstream-vim-cmake-syntax'
88da716c vim-cmake-syntax 2017-08-30 (40f5f4f3)

Acked-by: Kitware Robot <[email protected]>
Merge-request: !1214
Brad King %!s(int64=8) %!d(string=hai) anos
pai
achega
9bad65940c

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 12 - 7
Auxiliary/vim/cmake.vim.in


+ 19 - 2
Auxiliary/vim/extract-upper-case.pl

@@ -29,8 +29,8 @@ push @modules, "ExternalProject";
 # variables
 # variables
 open(CMAKE, "$cmake --help-variable-list|") or die "could not run cmake";
 open(CMAKE, "$cmake --help-variable-list|") or die "could not run cmake";
 while (<CMAKE>) {
 while (<CMAKE>) {
+	next if /\</; # skip if containing < or >
 	chomp;
 	chomp;
-	next if /\</; # skip VARIABLES which contained <>-"templates"
 	push @variables, $_;
 	push @variables, $_;
 }
 }
 close(CMAKE);
 close(CMAKE);
@@ -70,11 +70,24 @@ my @generator_expr = extract_upper("$cmake --help-manual cmake-generator-express
 # properties
 # properties
 open(CMAKE, "$cmake --help-property-list|");
 open(CMAKE, "$cmake --help-property-list|");
 while (<CMAKE>) {
 while (<CMAKE>) {
+	next if /\</; # skip if containing < or >
 	chomp;
 	chomp;
 	push @properties, $_;
 	push @properties, $_;
 }
 }
 close(CMAKE);
 close(CMAKE);
 
 
+# transform all properties in a hash
+my %properties = map { $_ => 1 } @properties;
+
+# version
+open(CMAKE, "$cmake --version|");
+my $version = 'unknown';
+while (<CMAKE>) {
+	chomp;
+	$version = $_ if /cmake version/;
+}
+close(CMAKE);
+
 # generate cmake.vim
 # generate cmake.vim
 open(IN,  "<cmake.vim.in") or die "could not read cmake.vim.in";
 open(IN,  "<cmake.vim.in") or die "could not read cmake.vim.in";
 open(OUT, ">syntax/cmake.vim") or die "could not write to syntax/cmake.vim";
 open(OUT, ">syntax/cmake.vim") or die "could not write to syntax/cmake.vim";
@@ -102,6 +115,8 @@ while(<IN>)
 			print OUT " " x 12 , "\\ ", join(" ", sort keys %loop), "\n";
 			print OUT " " x 12 , "\\ ", join(" ", sort keys %loop), "\n";
 		} elsif ($1 eq "DEPRECATED") {
 		} elsif ($1 eq "DEPRECATED") {
 			print OUT " " x 12 , "\\ ", join(" ", sort keys %deprecated), "\n";
 			print OUT " " x 12 , "\\ ", join(" ", sort keys %deprecated), "\n";
+		} elsif ($1 eq "PROPERTIES") {
+			print OUT " " x 12 , "\\ ", join(" ", sort keys %properties), "\n";
 		} elsif ($1 eq "KEYWORDS") {
 		} elsif ($1 eq "KEYWORDS") {
 			foreach my $k (sort keys %keywords) {
 			foreach my $k (sort keys %keywords) {
 				print OUT "syn keyword cmakeKW$k contained\n";
 				print OUT "syn keyword cmakeKW$k contained\n";
@@ -111,6 +126,9 @@ while(<IN>)
 			}
 			}
 		} elsif ($1 eq "KEYWORDS_HIGHLIGHT") {
 		} elsif ($1 eq "KEYWORDS_HIGHLIGHT") {
 			print OUT join("\n", @keyword_hi), "\n";
 			print OUT join("\n", @keyword_hi), "\n";
+		} elsif ($1 eq "VERSION") {
+			$_ =~ s/\@VERSION\@/$version/;
+			print OUT $_;
 		} else {
 		} else {
 			print "ERROR do not know how to replace $1\n";
 			print "ERROR do not know how to replace $1\n";
 		}
 		}
@@ -128,7 +146,6 @@ sub extract_upper
 
 
 	open(KW, $input);
 	open(KW, $input);
 	while (<KW>) {
 	while (<KW>) {
-
 		foreach my $w (m/\b([A-Z_]{2,})\b/g) {
 		foreach my $w (m/\b([A-Z_]{2,})\b/g) {
 			next
 			next
 				if exists $variables{$w} or  # skip if it is a variable
 				if exists $variables{$w} or  # skip if it is a variable

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 13 - 7
Auxiliary/vim/syntax/cmake.vim


Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio