mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	Compare commits
	
		
			41 Commits
		
	
	
		
			vmg/empty-
			...
			master
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					14a7cb2d1b | ||
| 
						 | 
					54ae7e7b4d | ||
| 
						 | 
					5363e045bb | ||
| 
						 | 
					cc4da98616 | ||
| 
						 | 
					a9ff59aef5 | ||
| 
						 | 
					7b9ec3d1b3 | ||
| 
						 | 
					51d3711faf | ||
| 
						 | 
					14fcd75773 | ||
| 
						 | 
					34c623eaba | ||
| 
						 | 
					324bc83914 | ||
| 
						 | 
					ecc62784ca | ||
| 
						 | 
					f452612666 | ||
| 
						 | 
					0bf4b8a482 | ||
| 
						 | 
					718c9efaca | ||
| 
						 | 
					49593a6a6d | ||
| 
						 | 
					ba1cf12776 | ||
| 
						 | 
					03f394626d | ||
| 
						 | 
					cf385d9e77 | ||
| 
						 | 
					dd3b1eec91 | ||
| 
						 | 
					2b65318a61 | ||
| 
						 | 
					1b3cdda4f7 | ||
| 
						 | 
					50d46eed38 | ||
| 
						 | 
					1bbcfa5683 | ||
| 
						 | 
					c2d3170064 | ||
| 
						 | 
					fe3981ff03 | ||
| 
						 | 
					3769216c7a | ||
| 
						 | 
					052c048fb5 | ||
| 
						 | 
					cec3a26496 | ||
| 
						 | 
					4f0f9bd51d | ||
| 
						 | 
					04e7956407 | ||
| 
						 | 
					2abf488e65 | ||
| 
						 | 
					812797b51d | ||
| 
						 | 
					dc32876113 | ||
| 
						 | 
					a18ad1d489 | ||
| 
						 | 
					25ac140d58 | ||
| 
						 | 
					f7835f7119 | ||
| 
						 | 
					a7f835a653 | ||
| 
						 | 
					6220286f42 | ||
| 
						 | 
					15e2b74dec | ||
| 
						 | 
					969333610c | ||
| 
						 | 
					8438c6cd3e | 
							
								
								
									
										1458
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1458
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -5,19 +5,18 @@ addons:
 | 
				
			|||||||
  apt:
 | 
					  apt:
 | 
				
			||||||
    packages:
 | 
					    packages:
 | 
				
			||||||
    - libicu-dev
 | 
					    - libicu-dev
 | 
				
			||||||
    - libicu48
 | 
					    - libicu52
 | 
				
			||||||
 | 
					
 | 
				
			||||||
before_install: script/travis/before_install
 | 
					before_install: script/travis/before_install
 | 
				
			||||||
 | 
					
 | 
				
			||||||
script:
 | 
					script:
 | 
				
			||||||
  - bundle exec rake
 | 
					  - bundle exec rake
 | 
				
			||||||
  - script/licensed verify
 | 
					  - script/licensed status
 | 
				
			||||||
 | 
					
 | 
				
			||||||
rvm:
 | 
					rvm:
 | 
				
			||||||
  - 2.1
 | 
					 | 
				
			||||||
  - 2.2
 | 
					 | 
				
			||||||
  - 2.3.3
 | 
					  - 2.3.3
 | 
				
			||||||
  - 2.4.0
 | 
					  - 2.4.0
 | 
				
			||||||
 | 
					  - 2.5.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
notifications:
 | 
					notifications:
 | 
				
			||||||
  disabled: true
 | 
					  disabled: true
 | 
				
			||||||
@@ -27,6 +26,6 @@ git:
 | 
				
			|||||||
  depth: 3
 | 
					  depth: 3
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cache: bundler
 | 
					cache: bundler
 | 
				
			||||||
dist: precise
 | 
					dist: trusty
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bundler_args: --without debug
 | 
					bundler_args: --without debug
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,6 +1,10 @@
 | 
				
			|||||||
# Contributing
 | 
					# Contributing
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Hi there! We're thrilled that you'd like to contribute to this project. Your help is essential for keeping it great. This project adheres to the [Contributor Covenant Code of Conduct](http://contributor-covenant.org/). By participating, you are expected to uphold this code.
 | 
					Hi there! We're thrilled that you'd like to contribute to this project. Your help is essential for keeping it great.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Contributions to this project are [released](https://help.github.com/articles/github-terms-of-service/#6-contributions-under-repository-license) to the public under the [project's open source license](LICENSE).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This project adheres to the [Contributor Covenant Code of Conduct](http://contributor-covenant.org/). By participating, you are expected to uphold this code.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
The majority of contributions won't need to touch any Ruby code at all.
 | 
					The majority of contributions won't need to touch any Ruby code at all.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -24,9 +28,9 @@ To run Linguist from the cloned repository:
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
### Dependencies
 | 
					### Dependencies
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Linguist uses the [`charlock_holmes`](https://github.com/brianmario/charlock_holmes) character encoding detection library which in turn uses [ICU](http://site.icu-project.org/), and the libgit2 bindings for Ruby provided by [`rugged`](https://github.com/libgit2/rugged). These components have their own dependencies - `icu4c`, and `cmake` and `pkg-config` respectively - which you may need to install before you can install Linguist.
 | 
					Linguist uses the [`charlock_holmes`](https://github.com/brianmario/charlock_holmes) character encoding detection library which in turn uses [ICU](http://site.icu-project.org/), and the libgit2 bindings for Ruby provided by [`rugged`](https://github.com/libgit2/rugged). [Docker](https://www.docker.com/) is also required when adding or updating grammars. These components have their own dependencies - `icu4c`, and `cmake` and `pkg-config` respectively - which you may need to install before you can install Linguist.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
For example, on macOS with [Homebrew](http://brew.sh/): `brew install cmake pkg-config icu4c` and on Ubuntu: `apt-get install cmake pkg-config libicu-dev`.
 | 
					For example, on macOS with [Homebrew](http://brew.sh/): `brew install cmake pkg-config icu4c docker` and on Ubuntu: `apt-get install cmake pkg-config libicu-dev docker-ce`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Adding an extension to a language
 | 
					## Adding an extension to a language
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -97,7 +97,7 @@ If the language stats bar is reporting a language that you don't expect:
 | 
				
			|||||||
1. If the files are misclassified, search for [open issues][issues] to see if anyone else has already reported the issue. Any information you can add, especially links to public repositories, is helpful. You can also use the [manual overrides](#overrides) feature to correctly classify them in your repository.
 | 
					1. If the files are misclassified, search for [open issues][issues] to see if anyone else has already reported the issue. Any information you can add, especially links to public repositories, is helpful. You can also use the [manual overrides](#overrides) feature to correctly classify them in your repository.
 | 
				
			||||||
1. If there are no reported issues of this misclassification, [open an issue][new-issue] and include a link to the repository or a sample of the code that is being misclassified.
 | 
					1. If there are no reported issues of this misclassification, [open an issue][new-issue] and include a link to the repository or a sample of the code that is being misclassified.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Keep in mind that the repository language stats are only [updated when you push changes](#how-linguist-works-on-github-com), and the results are cached for the lifetime of your repository. If you have not made any changes to your repository in a while, you may find pushing another change will correct the stats.
 | 
					Keep in mind that the repository language stats are only [updated when you push changes](#how-linguist-works-on-githubcom), and the results are cached for the lifetime of your repository. If you have not made any changes to your repository in a while, you may find pushing another change will correct the stats.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
### My repository isn't showing my language
 | 
					### My repository isn't showing my language
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,7 +2,7 @@ require File.expand_path('../lib/linguist/version', __FILE__)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
Gem::Specification.new do |s|
 | 
					Gem::Specification.new do |s|
 | 
				
			||||||
  s.name    = 'github-linguist'
 | 
					  s.name    = 'github-linguist'
 | 
				
			||||||
  s.version = Linguist::VERSION
 | 
					  s.version = ENV['GEM_VERSION'] || Linguist::VERSION
 | 
				
			||||||
  s.summary = "GitHub Language detection"
 | 
					  s.summary = "GitHub Language detection"
 | 
				
			||||||
  s.description = 'We use this library at GitHub to detect blob languages, highlight code, ignore binary files, suppress generated files in diffs, and generate language breakdown graphs.'
 | 
					  s.description = 'We use this library at GitHub to detect blob languages, highlight code, ignore binary files, suppress generated files in diffs, and generate language breakdown graphs.'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -14,7 +14,7 @@ Gem::Specification.new do |s|
 | 
				
			|||||||
  s.executables = ['linguist', 'git-linguist']
 | 
					  s.executables = ['linguist', 'git-linguist']
 | 
				
			||||||
  s.extensions = ['ext/linguist/extconf.rb']
 | 
					  s.extensions = ['ext/linguist/extconf.rb']
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  s.add_dependency 'charlock_holmes', '~> 0.7.5'
 | 
					  s.add_dependency 'charlock_holmes', '~> 0.7.6'
 | 
				
			||||||
  s.add_dependency 'escape_utils',    '~> 1.2.0'
 | 
					  s.add_dependency 'escape_utils',    '~> 1.2.0'
 | 
				
			||||||
  s.add_dependency 'mime-types',      '>= 1.19'
 | 
					  s.add_dependency 'mime-types',      '>= 1.19'
 | 
				
			||||||
  s.add_dependency 'rugged',          '>= 0.25.1'
 | 
					  s.add_dependency 'rugged',          '>= 0.25.1'
 | 
				
			||||||
@@ -27,6 +27,6 @@ Gem::Specification.new do |s|
 | 
				
			|||||||
  s.add_development_dependency 'rake'
 | 
					  s.add_development_dependency 'rake'
 | 
				
			||||||
  s.add_development_dependency 'yajl-ruby'
 | 
					  s.add_development_dependency 'yajl-ruby'
 | 
				
			||||||
  s.add_development_dependency 'color-proximity', '~> 0.2.1'
 | 
					  s.add_development_dependency 'color-proximity', '~> 0.2.1'
 | 
				
			||||||
  s.add_development_dependency 'licensed'
 | 
					  s.add_development_dependency 'licensed', '~> 1.0.0'
 | 
				
			||||||
  s.add_development_dependency 'licensee', '~> 8.8.0'
 | 
					  s.add_development_dependency 'licensee'
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										26
									
								
								grammars.yml
									
									
									
									
									
								
							
							
						
						
									
										26
									
								
								grammars.yml
									
									
									
									
									
								
							@@ -9,6 +9,8 @@ vendor/grammars/Agda.tmbundle:
 | 
				
			|||||||
- source.agda
 | 
					- source.agda
 | 
				
			||||||
vendor/grammars/Alloy.tmbundle:
 | 
					vendor/grammars/Alloy.tmbundle:
 | 
				
			||||||
- source.alloy
 | 
					- source.alloy
 | 
				
			||||||
 | 
					vendor/grammars/Assembly-Syntax-Definition:
 | 
				
			||||||
 | 
					- source.assembly.unix
 | 
				
			||||||
vendor/grammars/AutoHotkey:
 | 
					vendor/grammars/AutoHotkey:
 | 
				
			||||||
- source.ahk
 | 
					- source.ahk
 | 
				
			||||||
vendor/grammars/BrightScript.tmbundle:
 | 
					vendor/grammars/BrightScript.tmbundle:
 | 
				
			||||||
@@ -48,6 +50,8 @@ vendor/grammars/Lean.tmbundle:
 | 
				
			|||||||
- source.lean
 | 
					- source.lean
 | 
				
			||||||
vendor/grammars/LiveScript.tmbundle:
 | 
					vendor/grammars/LiveScript.tmbundle:
 | 
				
			||||||
- source.livescript
 | 
					- source.livescript
 | 
				
			||||||
 | 
					vendor/grammars/MATLAB-Language-grammar:
 | 
				
			||||||
 | 
					- source.matlab
 | 
				
			||||||
vendor/grammars/MQL5-sublime:
 | 
					vendor/grammars/MQL5-sublime:
 | 
				
			||||||
- source.mql5
 | 
					- source.mql5
 | 
				
			||||||
vendor/grammars/MagicPython:
 | 
					vendor/grammars/MagicPython:
 | 
				
			||||||
@@ -246,6 +250,8 @@ vendor/grammars/chapel-tmbundle:
 | 
				
			|||||||
vendor/grammars/cmake.tmbundle:
 | 
					vendor/grammars/cmake.tmbundle:
 | 
				
			||||||
- source.cache.cmake
 | 
					- source.cache.cmake
 | 
				
			||||||
- source.cmake
 | 
					- source.cmake
 | 
				
			||||||
 | 
					vendor/grammars/conllu-linguist-grammar:
 | 
				
			||||||
 | 
					- text.conllu
 | 
				
			||||||
vendor/grammars/cool-tmbundle:
 | 
					vendor/grammars/cool-tmbundle:
 | 
				
			||||||
- source.cool
 | 
					- source.cool
 | 
				
			||||||
vendor/grammars/cpp-qt.tmbundle:
 | 
					vendor/grammars/cpp-qt.tmbundle:
 | 
				
			||||||
@@ -316,12 +322,9 @@ vendor/grammars/graphviz.tmbundle:
 | 
				
			|||||||
- source.dot
 | 
					- source.dot
 | 
				
			||||||
vendor/grammars/groovy.tmbundle:
 | 
					vendor/grammars/groovy.tmbundle:
 | 
				
			||||||
- source.groovy
 | 
					- source.groovy
 | 
				
			||||||
vendor/grammars/haxe-sublime-bundle:
 | 
					vendor/grammars/haxe-TmLanguage:
 | 
				
			||||||
- source.erazor
 | 
					- source.hx
 | 
				
			||||||
- source.haxe.2
 | 
					 | 
				
			||||||
- source.hss.1
 | 
					 | 
				
			||||||
- source.hxml
 | 
					- source.hxml
 | 
				
			||||||
- source.nmml
 | 
					 | 
				
			||||||
vendor/grammars/html.tmbundle:
 | 
					vendor/grammars/html.tmbundle:
 | 
				
			||||||
- text.html.basic
 | 
					- text.html.basic
 | 
				
			||||||
vendor/grammars/idl.tmbundle:
 | 
					vendor/grammars/idl.tmbundle:
 | 
				
			||||||
@@ -354,8 +357,6 @@ vendor/grammars/jflex.tmbundle:
 | 
				
			|||||||
- source.jflex
 | 
					- source.jflex
 | 
				
			||||||
vendor/grammars/json.tmbundle:
 | 
					vendor/grammars/json.tmbundle:
 | 
				
			||||||
- source.json
 | 
					- source.json
 | 
				
			||||||
vendor/grammars/kotlin-sublime-package:
 | 
					 | 
				
			||||||
- source.Kotlin
 | 
					 | 
				
			||||||
vendor/grammars/language-agc:
 | 
					vendor/grammars/language-agc:
 | 
				
			||||||
- source.agc
 | 
					- source.agc
 | 
				
			||||||
vendor/grammars/language-apl:
 | 
					vendor/grammars/language-apl:
 | 
				
			||||||
@@ -387,7 +388,6 @@ vendor/grammars/language-csharp:
 | 
				
			|||||||
- source.cake
 | 
					- source.cake
 | 
				
			||||||
- source.cs
 | 
					- source.cs
 | 
				
			||||||
- source.csx
 | 
					- source.csx
 | 
				
			||||||
- source.nant-build
 | 
					 | 
				
			||||||
vendor/grammars/language-csound:
 | 
					vendor/grammars/language-csound:
 | 
				
			||||||
- source.csound
 | 
					- source.csound
 | 
				
			||||||
- source.csound-document
 | 
					- source.csound-document
 | 
				
			||||||
@@ -439,6 +439,8 @@ vendor/grammars/language-jolie:
 | 
				
			|||||||
vendor/grammars/language-jsoniq:
 | 
					vendor/grammars/language-jsoniq:
 | 
				
			||||||
- source.jq
 | 
					- source.jq
 | 
				
			||||||
- source.xq
 | 
					- source.xq
 | 
				
			||||||
 | 
					vendor/grammars/language-kotlin:
 | 
				
			||||||
 | 
					- source.kotlin
 | 
				
			||||||
vendor/grammars/language-less:
 | 
					vendor/grammars/language-less:
 | 
				
			||||||
- source.css.less
 | 
					- source.css.less
 | 
				
			||||||
vendor/grammars/language-maxscript:
 | 
					vendor/grammars/language-maxscript:
 | 
				
			||||||
@@ -484,6 +486,8 @@ vendor/grammars/language-ruby:
 | 
				
			|||||||
- source.ruby
 | 
					- source.ruby
 | 
				
			||||||
- source.ruby.gemfile
 | 
					- source.ruby.gemfile
 | 
				
			||||||
- text.html.erb
 | 
					- text.html.erb
 | 
				
			||||||
 | 
					vendor/grammars/language-sed:
 | 
				
			||||||
 | 
					- source.sed
 | 
				
			||||||
vendor/grammars/language-shellscript:
 | 
					vendor/grammars/language-shellscript:
 | 
				
			||||||
- source.shell
 | 
					- source.shell
 | 
				
			||||||
- text.shell-session
 | 
					- text.shell-session
 | 
				
			||||||
@@ -541,9 +545,6 @@ vendor/grammars/marko-tmbundle:
 | 
				
			|||||||
- text.marko
 | 
					- text.marko
 | 
				
			||||||
vendor/grammars/mathematica-tmbundle:
 | 
					vendor/grammars/mathematica-tmbundle:
 | 
				
			||||||
- source.mathematica
 | 
					- source.mathematica
 | 
				
			||||||
vendor/grammars/matlab.tmbundle:
 | 
					 | 
				
			||||||
- source.matlab
 | 
					 | 
				
			||||||
- source.octave
 | 
					 | 
				
			||||||
vendor/grammars/maven.tmbundle:
 | 
					vendor/grammars/maven.tmbundle:
 | 
				
			||||||
- text.xml.pom
 | 
					- text.xml.pom
 | 
				
			||||||
vendor/grammars/mediawiki.tmbundle:
 | 
					vendor/grammars/mediawiki.tmbundle:
 | 
				
			||||||
@@ -622,7 +623,6 @@ vendor/grammars/sass-textmate-bundle:
 | 
				
			|||||||
- source.sass
 | 
					- source.sass
 | 
				
			||||||
vendor/grammars/scala.tmbundle:
 | 
					vendor/grammars/scala.tmbundle:
 | 
				
			||||||
- source.sbt
 | 
					- source.sbt
 | 
				
			||||||
- source.scala
 | 
					 | 
				
			||||||
vendor/grammars/scheme.tmbundle:
 | 
					vendor/grammars/scheme.tmbundle:
 | 
				
			||||||
- source.scheme
 | 
					- source.scheme
 | 
				
			||||||
vendor/grammars/scilab.tmbundle:
 | 
					vendor/grammars/scilab.tmbundle:
 | 
				
			||||||
@@ -729,6 +729,8 @@ vendor/grammars/verilog.tmbundle:
 | 
				
			|||||||
- source.verilog
 | 
					- source.verilog
 | 
				
			||||||
vendor/grammars/vhdl:
 | 
					vendor/grammars/vhdl:
 | 
				
			||||||
- source.vhdl
 | 
					- source.vhdl
 | 
				
			||||||
 | 
					vendor/grammars/vscode-scala-syntax:
 | 
				
			||||||
 | 
					- source.scala
 | 
				
			||||||
vendor/grammars/vue-syntax-highlight:
 | 
					vendor/grammars/vue-syntax-highlight:
 | 
				
			||||||
- text.html.vue
 | 
					- text.html.vue
 | 
				
			||||||
vendor/grammars/wdl-sublime-syntax-highlighter:
 | 
					vendor/grammars/wdl-sublime-syntax-highlighter:
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -15,6 +15,7 @@
 | 
				
			|||||||
- ^[Mm]an/
 | 
					- ^[Mm]an/
 | 
				
			||||||
- ^[Ee]xamples/
 | 
					- ^[Ee]xamples/
 | 
				
			||||||
- ^[Dd]emos?/
 | 
					- ^[Dd]emos?/
 | 
				
			||||||
 | 
					- (^|/)inst/doc/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Documentation files ##
 | 
					## Documentation files ##
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -57,6 +57,7 @@ module Linguist
 | 
				
			|||||||
      generated_net_designer_file? ||
 | 
					      generated_net_designer_file? ||
 | 
				
			||||||
      generated_net_specflow_feature_file? ||
 | 
					      generated_net_specflow_feature_file? ||
 | 
				
			||||||
      composer_lock? ||
 | 
					      composer_lock? ||
 | 
				
			||||||
 | 
					      cargo_lock? ||
 | 
				
			||||||
      node_modules? ||
 | 
					      node_modules? ||
 | 
				
			||||||
      go_vendor? ||
 | 
					      go_vendor? ||
 | 
				
			||||||
      npm_shrinkwrap_or_package_lock? ||
 | 
					      npm_shrinkwrap_or_package_lock? ||
 | 
				
			||||||
@@ -222,7 +223,7 @@ module Linguist
 | 
				
			|||||||
    #
 | 
					    #
 | 
				
			||||||
    # Returns true or false
 | 
					    # Returns true or false
 | 
				
			||||||
    def generated_net_designer_file?
 | 
					    def generated_net_designer_file?
 | 
				
			||||||
      name.downcase =~ /\.designer\.cs$/
 | 
					      name.downcase =~ /\.designer\.(cs|vb)$/
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Internal: Is this a codegen file for Specflow feature file?
 | 
					    # Internal: Is this a codegen file for Specflow feature file?
 | 
				
			||||||
@@ -378,6 +379,13 @@ module Linguist
 | 
				
			|||||||
      !!name.match(/.\.zep\.(?:c|h|php)$/)
 | 
					      !!name.match(/.\.zep\.(?:c|h|php)$/)
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Internal: Is the blob a generated Rust Cargo lock file?
 | 
				
			||||||
 | 
					    #
 | 
				
			||||||
 | 
					    # Returns true or false.
 | 
				
			||||||
 | 
					    def cargo_lock?
 | 
				
			||||||
 | 
					      !!name.match(/Cargo\.lock/)
 | 
				
			||||||
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Is the blob a VCR Cassette file?
 | 
					    # Is the blob a VCR Cassette file?
 | 
				
			||||||
    #
 | 
					    #
 | 
				
			||||||
    # Returns true or false
 | 
					    # Returns true or false
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -518,6 +518,8 @@ module Linguist
 | 
				
			|||||||
        Language["RPC"]
 | 
					        Language["RPC"]
 | 
				
			||||||
      elsif /^%(end|ctor|hook|group)\b/.match(data)
 | 
					      elsif /^%(end|ctor|hook|group)\b/.match(data)
 | 
				
			||||||
        Language["Logos"]
 | 
					        Language["Logos"]
 | 
				
			||||||
 | 
					      elsif /OUTPUT_ARCH\(|OUTPUT_FORMAT\(|SECTIONS/.match(data)
 | 
				
			||||||
 | 
					        Language["Linker Script"]
 | 
				
			||||||
      end
 | 
					      end
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -539,14 +539,6 @@ module Linguist
 | 
				
			|||||||
      end
 | 
					      end
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if fns = filenames[name]
 | 
					 | 
				
			||||||
      fns.each do |filename|
 | 
					 | 
				
			||||||
        if !options['filenames'].include?(filename)
 | 
					 | 
				
			||||||
          options['filenames'] << filename
 | 
					 | 
				
			||||||
        end
 | 
					 | 
				
			||||||
      end
 | 
					 | 
				
			||||||
    end
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    Language.create(
 | 
					    Language.create(
 | 
				
			||||||
      :name              => name,
 | 
					      :name              => name,
 | 
				
			||||||
      :color             => options['color'],
 | 
					      :color             => options['color'],
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -239,6 +239,10 @@ ApacheConf:
 | 
				
			|||||||
  extensions:
 | 
					  extensions:
 | 
				
			||||||
  - ".apacheconf"
 | 
					  - ".apacheconf"
 | 
				
			||||||
  - ".vhost"
 | 
					  - ".vhost"
 | 
				
			||||||
 | 
					  filenames:
 | 
				
			||||||
 | 
					  - ".htaccess"
 | 
				
			||||||
 | 
					  - apache2.conf
 | 
				
			||||||
 | 
					  - httpd.conf
 | 
				
			||||||
  tm_scope: source.apache-config
 | 
					  tm_scope: source.apache-config
 | 
				
			||||||
  ace_mode: apache_conf
 | 
					  ace_mode: apache_conf
 | 
				
			||||||
  language_id: 16
 | 
					  language_id: 16
 | 
				
			||||||
@@ -301,6 +305,7 @@ Assembly:
 | 
				
			|||||||
  type: programming
 | 
					  type: programming
 | 
				
			||||||
  color: "#6E4C13"
 | 
					  color: "#6E4C13"
 | 
				
			||||||
  aliases:
 | 
					  aliases:
 | 
				
			||||||
 | 
					  - asm
 | 
				
			||||||
  - nasm
 | 
					  - nasm
 | 
				
			||||||
  extensions:
 | 
					  extensions:
 | 
				
			||||||
  - ".asm"
 | 
					  - ".asm"
 | 
				
			||||||
@@ -729,6 +734,17 @@ Closure Templates:
 | 
				
			|||||||
  - ".soy"
 | 
					  - ".soy"
 | 
				
			||||||
  tm_scope: text.html.soy
 | 
					  tm_scope: text.html.soy
 | 
				
			||||||
  language_id: 357046146
 | 
					  language_id: 357046146
 | 
				
			||||||
 | 
					CoNLL-U:
 | 
				
			||||||
 | 
					  type: data
 | 
				
			||||||
 | 
					  extensions:
 | 
				
			||||||
 | 
					  - ".conllu"
 | 
				
			||||||
 | 
					  - ".conll"
 | 
				
			||||||
 | 
					  tm_scope: text.conllu
 | 
				
			||||||
 | 
					  ace_mode: text
 | 
				
			||||||
 | 
					  aliases:
 | 
				
			||||||
 | 
					  - CoNLL
 | 
				
			||||||
 | 
					  - CoNLL-X
 | 
				
			||||||
 | 
					  language_id: 421026389
 | 
				
			||||||
CoffeeScript:
 | 
					CoffeeScript:
 | 
				
			||||||
  type: programming
 | 
					  type: programming
 | 
				
			||||||
  tm_scope: source.coffee
 | 
					  tm_scope: source.coffee
 | 
				
			||||||
@@ -1455,6 +1471,8 @@ GN:
 | 
				
			|||||||
  - ".gni"
 | 
					  - ".gni"
 | 
				
			||||||
  interpreters:
 | 
					  interpreters:
 | 
				
			||||||
  - gn
 | 
					  - gn
 | 
				
			||||||
 | 
					  filenames:
 | 
				
			||||||
 | 
					  - ".gn"
 | 
				
			||||||
  tm_scope: source.gn
 | 
					  tm_scope: source.gn
 | 
				
			||||||
  ace_mode: python
 | 
					  ace_mode: python
 | 
				
			||||||
  codemirror_mode: python
 | 
					  codemirror_mode: python
 | 
				
			||||||
@@ -1733,6 +1751,7 @@ HTML+Django:
 | 
				
			|||||||
  group: HTML
 | 
					  group: HTML
 | 
				
			||||||
  extensions:
 | 
					  extensions:
 | 
				
			||||||
  - ".jinja"
 | 
					  - ".jinja"
 | 
				
			||||||
 | 
					  - ".jinja2"
 | 
				
			||||||
  - ".mustache"
 | 
					  - ".mustache"
 | 
				
			||||||
  - ".njk"
 | 
					  - ".njk"
 | 
				
			||||||
  aliases:
 | 
					  aliases:
 | 
				
			||||||
@@ -1802,6 +1821,13 @@ HTTP:
 | 
				
			|||||||
  codemirror_mode: http
 | 
					  codemirror_mode: http
 | 
				
			||||||
  codemirror_mime_type: message/http
 | 
					  codemirror_mime_type: message/http
 | 
				
			||||||
  language_id: 152
 | 
					  language_id: 152
 | 
				
			||||||
 | 
					HXML:
 | 
				
			||||||
 | 
					  type: data
 | 
				
			||||||
 | 
					  ace_mode: text
 | 
				
			||||||
 | 
					  extensions:
 | 
				
			||||||
 | 
					  - ".hxml"
 | 
				
			||||||
 | 
					  tm_scope: source.hxml
 | 
				
			||||||
 | 
					  language_id: 786683730
 | 
				
			||||||
Hack:
 | 
					Hack:
 | 
				
			||||||
  type: programming
 | 
					  type: programming
 | 
				
			||||||
  ace_mode: php
 | 
					  ace_mode: php
 | 
				
			||||||
@@ -1864,7 +1890,7 @@ Haxe:
 | 
				
			|||||||
  extensions:
 | 
					  extensions:
 | 
				
			||||||
  - ".hx"
 | 
					  - ".hx"
 | 
				
			||||||
  - ".hxsl"
 | 
					  - ".hxsl"
 | 
				
			||||||
  tm_scope: source.haxe.2
 | 
					  tm_scope: source.hx
 | 
				
			||||||
  language_id: 158
 | 
					  language_id: 158
 | 
				
			||||||
Hy:
 | 
					Hy:
 | 
				
			||||||
  type: programming
 | 
					  type: programming
 | 
				
			||||||
@@ -1912,6 +1938,8 @@ INI:
 | 
				
			|||||||
  - ".pro"
 | 
					  - ".pro"
 | 
				
			||||||
  - ".properties"
 | 
					  - ".properties"
 | 
				
			||||||
  filenames:
 | 
					  filenames:
 | 
				
			||||||
 | 
					  - ".editorconfig"
 | 
				
			||||||
 | 
					  - ".gitconfig"
 | 
				
			||||||
  - buildozer.spec
 | 
					  - buildozer.spec
 | 
				
			||||||
  tm_scope: source.ini
 | 
					  tm_scope: source.ini
 | 
				
			||||||
  aliases:
 | 
					  aliases:
 | 
				
			||||||
@@ -2024,12 +2052,23 @@ JSON:
 | 
				
			|||||||
  searchable: false
 | 
					  searchable: false
 | 
				
			||||||
  extensions:
 | 
					  extensions:
 | 
				
			||||||
  - ".json"
 | 
					  - ".json"
 | 
				
			||||||
 | 
					  - ".avsc"
 | 
				
			||||||
  - ".geojson"
 | 
					  - ".geojson"
 | 
				
			||||||
 | 
					  - ".gltf"
 | 
				
			||||||
  - ".JSON-tmLanguage"
 | 
					  - ".JSON-tmLanguage"
 | 
				
			||||||
 | 
					  - ".jsonl"
 | 
				
			||||||
 | 
					  - ".tfstate"
 | 
				
			||||||
 | 
					  - ".tfstate.backup"
 | 
				
			||||||
  - ".topojson"
 | 
					  - ".topojson"
 | 
				
			||||||
 | 
					  - ".webapp"
 | 
				
			||||||
 | 
					  - ".webmanifest"
 | 
				
			||||||
  filenames:
 | 
					  filenames:
 | 
				
			||||||
  - ".arcconfig"
 | 
					  - ".arcconfig"
 | 
				
			||||||
 | 
					  - ".htmlhintrc"
 | 
				
			||||||
 | 
					  - ".jscsrc"
 | 
				
			||||||
  - ".jshintrc"
 | 
					  - ".jshintrc"
 | 
				
			||||||
 | 
					  - ".tern-config"
 | 
				
			||||||
 | 
					  - ".tern-project"
 | 
				
			||||||
  - composer.lock
 | 
					  - composer.lock
 | 
				
			||||||
  - mcmod.info
 | 
					  - mcmod.info
 | 
				
			||||||
  language_id: 174
 | 
					  language_id: 174
 | 
				
			||||||
@@ -2039,6 +2078,7 @@ JSON5:
 | 
				
			|||||||
  - ".json5"
 | 
					  - ".json5"
 | 
				
			||||||
  filenames:
 | 
					  filenames:
 | 
				
			||||||
  - ".babelrc"
 | 
					  - ".babelrc"
 | 
				
			||||||
 | 
					  - ".jslintrc"
 | 
				
			||||||
  tm_scope: source.js
 | 
					  tm_scope: source.js
 | 
				
			||||||
  ace_mode: javascript
 | 
					  ace_mode: javascript
 | 
				
			||||||
  codemirror_mode: javascript
 | 
					  codemirror_mode: javascript
 | 
				
			||||||
@@ -2243,7 +2283,7 @@ Kotlin:
 | 
				
			|||||||
  - ".kt"
 | 
					  - ".kt"
 | 
				
			||||||
  - ".ktm"
 | 
					  - ".ktm"
 | 
				
			||||||
  - ".kts"
 | 
					  - ".kts"
 | 
				
			||||||
  tm_scope: source.Kotlin
 | 
					  tm_scope: source.kotlin
 | 
				
			||||||
  ace_mode: text
 | 
					  ace_mode: text
 | 
				
			||||||
  codemirror_mode: clike
 | 
					  codemirror_mode: clike
 | 
				
			||||||
  codemirror_mime_type: text/x-kotlin
 | 
					  codemirror_mime_type: text/x-kotlin
 | 
				
			||||||
@@ -2364,6 +2404,7 @@ Linker Script:
 | 
				
			|||||||
  extensions:
 | 
					  extensions:
 | 
				
			||||||
  - ".ld"
 | 
					  - ".ld"
 | 
				
			||||||
  - ".lds"
 | 
					  - ".lds"
 | 
				
			||||||
 | 
					  - ".x"
 | 
				
			||||||
  filenames:
 | 
					  filenames:
 | 
				
			||||||
  - ld.script
 | 
					  - ld.script
 | 
				
			||||||
  tm_scope: none
 | 
					  tm_scope: none
 | 
				
			||||||
@@ -2475,6 +2516,7 @@ Lua:
 | 
				
			|||||||
  - ".lua"
 | 
					  - ".lua"
 | 
				
			||||||
  - ".fcgi"
 | 
					  - ".fcgi"
 | 
				
			||||||
  - ".nse"
 | 
					  - ".nse"
 | 
				
			||||||
 | 
					  - ".p8"
 | 
				
			||||||
  - ".pd_lua"
 | 
					  - ".pd_lua"
 | 
				
			||||||
  - ".rbxs"
 | 
					  - ".rbxs"
 | 
				
			||||||
  - ".wlua"
 | 
					  - ".wlua"
 | 
				
			||||||
@@ -2905,7 +2947,7 @@ Nextflow:
 | 
				
			|||||||
  extensions:
 | 
					  extensions:
 | 
				
			||||||
  - ".nf"
 | 
					  - ".nf"
 | 
				
			||||||
  filenames:
 | 
					  filenames:
 | 
				
			||||||
  - "nextflow.config"  
 | 
					  - nextflow.config
 | 
				
			||||||
  interpreters:
 | 
					  interpreters:
 | 
				
			||||||
  - nextflow
 | 
					  - nextflow
 | 
				
			||||||
  language_id: 506780613
 | 
					  language_id: 506780613
 | 
				
			||||||
@@ -3199,6 +3241,7 @@ PHP:
 | 
				
			|||||||
  - ".phps"
 | 
					  - ".phps"
 | 
				
			||||||
  - ".phpt"
 | 
					  - ".phpt"
 | 
				
			||||||
  filenames:
 | 
					  filenames:
 | 
				
			||||||
 | 
					  - ".php"
 | 
				
			||||||
  - ".php_cs"
 | 
					  - ".php_cs"
 | 
				
			||||||
  - ".php_cs.dist"
 | 
					  - ".php_cs.dist"
 | 
				
			||||||
  - Phakefile
 | 
					  - Phakefile
 | 
				
			||||||
@@ -3343,9 +3386,15 @@ Perl:
 | 
				
			|||||||
  - ".psgi"
 | 
					  - ".psgi"
 | 
				
			||||||
  - ".t"
 | 
					  - ".t"
 | 
				
			||||||
  filenames:
 | 
					  filenames:
 | 
				
			||||||
 | 
					  - Makefile.PL
 | 
				
			||||||
 | 
					  - Rexfile
 | 
				
			||||||
 | 
					  - ack
 | 
				
			||||||
  - cpanfile
 | 
					  - cpanfile
 | 
				
			||||||
  interpreters:
 | 
					  interpreters:
 | 
				
			||||||
 | 
					  - cperl
 | 
				
			||||||
  - perl
 | 
					  - perl
 | 
				
			||||||
 | 
					  aliases:
 | 
				
			||||||
 | 
					  - cperl
 | 
				
			||||||
  language_id: 282
 | 
					  language_id: 282
 | 
				
			||||||
Perl 6:
 | 
					Perl 6:
 | 
				
			||||||
  type: programming
 | 
					  type: programming
 | 
				
			||||||
@@ -3362,8 +3411,6 @@ Perl 6:
 | 
				
			|||||||
  - ".pm"
 | 
					  - ".pm"
 | 
				
			||||||
  - ".pm6"
 | 
					  - ".pm6"
 | 
				
			||||||
  - ".t"
 | 
					  - ".t"
 | 
				
			||||||
  filenames:
 | 
					 | 
				
			||||||
  - Rexfile
 | 
					 | 
				
			||||||
  interpreters:
 | 
					  interpreters:
 | 
				
			||||||
  - perl6
 | 
					  - perl6
 | 
				
			||||||
  aliases:
 | 
					  aliases:
 | 
				
			||||||
@@ -3489,6 +3536,8 @@ PowerShell:
 | 
				
			|||||||
  - ".ps1"
 | 
					  - ".ps1"
 | 
				
			||||||
  - ".psd1"
 | 
					  - ".psd1"
 | 
				
			||||||
  - ".psm1"
 | 
					  - ".psm1"
 | 
				
			||||||
 | 
					  interpreters:
 | 
				
			||||||
 | 
					  - pwsh
 | 
				
			||||||
  language_id: 293
 | 
					  language_id: 293
 | 
				
			||||||
Processing:
 | 
					Processing:
 | 
				
			||||||
  type: programming
 | 
					  type: programming
 | 
				
			||||||
@@ -3631,6 +3680,7 @@ Python:
 | 
				
			|||||||
  - python3
 | 
					  - python3
 | 
				
			||||||
  aliases:
 | 
					  aliases:
 | 
				
			||||||
  - rusthon
 | 
					  - rusthon
 | 
				
			||||||
 | 
					  - python3
 | 
				
			||||||
  language_id: 303
 | 
					  language_id: 303
 | 
				
			||||||
Python console:
 | 
					Python console:
 | 
				
			||||||
  type: programming
 | 
					  type: programming
 | 
				
			||||||
@@ -3681,6 +3731,7 @@ R:
 | 
				
			|||||||
  - ".rsx"
 | 
					  - ".rsx"
 | 
				
			||||||
  filenames:
 | 
					  filenames:
 | 
				
			||||||
  - ".Rprofile"
 | 
					  - ".Rprofile"
 | 
				
			||||||
 | 
					  - expr-dist
 | 
				
			||||||
  interpreters:
 | 
					  interpreters:
 | 
				
			||||||
  - Rscript
 | 
					  - Rscript
 | 
				
			||||||
  ace_mode: r
 | 
					  ace_mode: r
 | 
				
			||||||
@@ -4007,6 +4058,7 @@ Ruby:
 | 
				
			|||||||
  - Berksfile
 | 
					  - Berksfile
 | 
				
			||||||
  - Brewfile
 | 
					  - Brewfile
 | 
				
			||||||
  - Buildfile
 | 
					  - Buildfile
 | 
				
			||||||
 | 
					  - Capfile
 | 
				
			||||||
  - Dangerfile
 | 
					  - Dangerfile
 | 
				
			||||||
  - Deliverfile
 | 
					  - Deliverfile
 | 
				
			||||||
  - Fastfile
 | 
					  - Fastfile
 | 
				
			||||||
@@ -4270,8 +4322,29 @@ Shell:
 | 
				
			|||||||
  - ".bash_logout"
 | 
					  - ".bash_logout"
 | 
				
			||||||
  - ".bash_profile"
 | 
					  - ".bash_profile"
 | 
				
			||||||
  - ".bashrc"
 | 
					  - ".bashrc"
 | 
				
			||||||
 | 
					  - ".cshrc"
 | 
				
			||||||
 | 
					  - ".login"
 | 
				
			||||||
 | 
					  - ".profile"
 | 
				
			||||||
 | 
					  - ".zlogin"
 | 
				
			||||||
 | 
					  - ".zlogout"
 | 
				
			||||||
 | 
					  - ".zprofile"
 | 
				
			||||||
 | 
					  - ".zshenv"
 | 
				
			||||||
 | 
					  - ".zshrc"
 | 
				
			||||||
 | 
					  - 9fs
 | 
				
			||||||
  - PKGBUILD
 | 
					  - PKGBUILD
 | 
				
			||||||
 | 
					  - bash_logout
 | 
				
			||||||
 | 
					  - bash_profile
 | 
				
			||||||
 | 
					  - bashrc
 | 
				
			||||||
 | 
					  - cshrc
 | 
				
			||||||
  - gradlew
 | 
					  - gradlew
 | 
				
			||||||
 | 
					  - login
 | 
				
			||||||
 | 
					  - man
 | 
				
			||||||
 | 
					  - profile
 | 
				
			||||||
 | 
					  - zlogin
 | 
				
			||||||
 | 
					  - zlogout
 | 
				
			||||||
 | 
					  - zprofile
 | 
				
			||||||
 | 
					  - zshenv
 | 
				
			||||||
 | 
					  - zshrc
 | 
				
			||||||
  interpreters:
 | 
					  interpreters:
 | 
				
			||||||
  - ash
 | 
					  - ash
 | 
				
			||||||
  - bash
 | 
					  - bash
 | 
				
			||||||
@@ -4521,6 +4594,8 @@ TOML:
 | 
				
			|||||||
  type: data
 | 
					  type: data
 | 
				
			||||||
  extensions:
 | 
					  extensions:
 | 
				
			||||||
  - ".toml"
 | 
					  - ".toml"
 | 
				
			||||||
 | 
					  filenames:
 | 
				
			||||||
 | 
					  - Cargo.lock
 | 
				
			||||||
  tm_scope: source.toml
 | 
					  tm_scope: source.toml
 | 
				
			||||||
  ace_mode: toml
 | 
					  ace_mode: toml
 | 
				
			||||||
  codemirror_mode: toml
 | 
					  codemirror_mode: toml
 | 
				
			||||||
@@ -4540,6 +4615,9 @@ Tcl:
 | 
				
			|||||||
  - ".tcl"
 | 
					  - ".tcl"
 | 
				
			||||||
  - ".adp"
 | 
					  - ".adp"
 | 
				
			||||||
  - ".tm"
 | 
					  - ".tm"
 | 
				
			||||||
 | 
					  filenames:
 | 
				
			||||||
 | 
					  - owh
 | 
				
			||||||
 | 
					  - starfield
 | 
				
			||||||
  interpreters:
 | 
					  interpreters:
 | 
				
			||||||
  - tclsh
 | 
					  - tclsh
 | 
				
			||||||
  - wish
 | 
					  - wish
 | 
				
			||||||
@@ -4615,6 +4693,7 @@ Text:
 | 
				
			|||||||
  - ".no"
 | 
					  - ".no"
 | 
				
			||||||
  filenames:
 | 
					  filenames:
 | 
				
			||||||
  - COPYING
 | 
					  - COPYING
 | 
				
			||||||
 | 
					  - COPYING.regex
 | 
				
			||||||
  - COPYRIGHT.regex
 | 
					  - COPYRIGHT.regex
 | 
				
			||||||
  - FONTLOG
 | 
					  - FONTLOG
 | 
				
			||||||
  - INSTALL
 | 
					  - INSTALL
 | 
				
			||||||
@@ -4629,6 +4708,7 @@ Text:
 | 
				
			|||||||
  - delete.me
 | 
					  - delete.me
 | 
				
			||||||
  - keep.me
 | 
					  - keep.me
 | 
				
			||||||
  - read.me
 | 
					  - read.me
 | 
				
			||||||
 | 
					  - readme.1st
 | 
				
			||||||
  - test.me
 | 
					  - test.me
 | 
				
			||||||
  tm_scope: none
 | 
					  tm_scope: none
 | 
				
			||||||
  ace_mode: text
 | 
					  ace_mode: text
 | 
				
			||||||
@@ -4730,7 +4810,7 @@ Unix Assembly:
 | 
				
			|||||||
  extensions:
 | 
					  extensions:
 | 
				
			||||||
  - ".s"
 | 
					  - ".s"
 | 
				
			||||||
  - ".ms"
 | 
					  - ".ms"
 | 
				
			||||||
  tm_scope: source.assembly
 | 
					  tm_scope: source.assembly.unix
 | 
				
			||||||
  ace_mode: assembly_x86
 | 
					  ace_mode: assembly_x86
 | 
				
			||||||
  language_id: 120
 | 
					  language_id: 120
 | 
				
			||||||
Uno:
 | 
					Uno:
 | 
				
			||||||
@@ -4816,6 +4896,7 @@ Vim script:
 | 
				
			|||||||
  extensions:
 | 
					  extensions:
 | 
				
			||||||
  - ".vim"
 | 
					  - ".vim"
 | 
				
			||||||
  filenames:
 | 
					  filenames:
 | 
				
			||||||
 | 
					  - ".gvimrc"
 | 
				
			||||||
  - ".nvimrc"
 | 
					  - ".nvimrc"
 | 
				
			||||||
  - ".vimrc"
 | 
					  - ".vimrc"
 | 
				
			||||||
  - _vimrc
 | 
					  - _vimrc
 | 
				
			||||||
@@ -5054,6 +5135,7 @@ XML:
 | 
				
			|||||||
  - ".zcml"
 | 
					  - ".zcml"
 | 
				
			||||||
  filenames:
 | 
					  filenames:
 | 
				
			||||||
  - ".classpath"
 | 
					  - ".classpath"
 | 
				
			||||||
 | 
					  - ".cproject"
 | 
				
			||||||
  - ".project"
 | 
					  - ".project"
 | 
				
			||||||
  - App.config
 | 
					  - App.config
 | 
				
			||||||
  - NuGet.config
 | 
					  - NuGet.config
 | 
				
			||||||
@@ -5162,6 +5244,7 @@ YAML:
 | 
				
			|||||||
  filenames:
 | 
					  filenames:
 | 
				
			||||||
  - ".clang-format"
 | 
					  - ".clang-format"
 | 
				
			||||||
  - ".clang-tidy"
 | 
					  - ".clang-tidy"
 | 
				
			||||||
 | 
					  - ".gemrc"
 | 
				
			||||||
  ace_mode: yaml
 | 
					  ace_mode: yaml
 | 
				
			||||||
  codemirror_mode: yaml
 | 
					  codemirror_mode: yaml
 | 
				
			||||||
  codemirror_mime_type: text/x-yaml
 | 
					  codemirror_mime_type: text/x-yaml
 | 
				
			||||||
@@ -5279,6 +5362,19 @@ reStructuredText:
 | 
				
			|||||||
  codemirror_mode: rst
 | 
					  codemirror_mode: rst
 | 
				
			||||||
  codemirror_mime_type: text/x-rst
 | 
					  codemirror_mime_type: text/x-rst
 | 
				
			||||||
  language_id: 419
 | 
					  language_id: 419
 | 
				
			||||||
 | 
					sed:
 | 
				
			||||||
 | 
					  type: programming
 | 
				
			||||||
 | 
					  color: "#64b970"
 | 
				
			||||||
 | 
					  extensions:
 | 
				
			||||||
 | 
					  - ".sed"
 | 
				
			||||||
 | 
					  interpreters:
 | 
				
			||||||
 | 
					  - gsed
 | 
				
			||||||
 | 
					  - minised
 | 
				
			||||||
 | 
					  - sed
 | 
				
			||||||
 | 
					  - ssed
 | 
				
			||||||
 | 
					  ace_mode: text
 | 
				
			||||||
 | 
					  tm_scope: source.sed
 | 
				
			||||||
 | 
					  language_id: 847830017
 | 
				
			||||||
wdl:
 | 
					wdl:
 | 
				
			||||||
  type: programming
 | 
					  type: programming
 | 
				
			||||||
  color: "#42f1f4"
 | 
					  color: "#42f1f4"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -3,17 +3,20 @@ module Linguist
 | 
				
			|||||||
    # Public: Use shebang to detect language of the blob.
 | 
					    # Public: Use shebang to detect language of the blob.
 | 
				
			||||||
    #
 | 
					    #
 | 
				
			||||||
    # blob               - An object that quacks like a blob.
 | 
					    # blob               - An object that quacks like a blob.
 | 
				
			||||||
 | 
					    # candidates         - A list of candidate languages.
 | 
				
			||||||
    #
 | 
					    #
 | 
				
			||||||
    # Examples
 | 
					    # Examples
 | 
				
			||||||
    #
 | 
					    #
 | 
				
			||||||
    #   Shebang.call(FileBlob.new("path/to/file"))
 | 
					    #   Shebang.call(FileBlob.new("path/to/file"))
 | 
				
			||||||
    #
 | 
					    #
 | 
				
			||||||
    # Returns an Array with one Language if the blob has a shebang with a valid
 | 
					    # Returns an array of languages from the candidate list for which the
 | 
				
			||||||
    # interpreter, or empty if there is no shebang.
 | 
					    # blob's shebang is valid. Returns an empty list if there is no shebang.
 | 
				
			||||||
    def self.call(blob, _ = nil)
 | 
					    # If the candidate list is empty, any language is a valid candidate.
 | 
				
			||||||
 | 
					    def self.call(blob, candidates)
 | 
				
			||||||
      return [] if blob.symlink?
 | 
					      return [] if blob.symlink?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      Language.find_by_interpreter interpreter(blob.data)
 | 
					      languages = Language.find_by_interpreter interpreter(blob.data)
 | 
				
			||||||
 | 
					      candidates.any? ? candidates & languages : languages
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Public: Get the interpreter from the shebang
 | 
					    # Public: Get the interpreter from the shebang
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,8 +2,21 @@ module Linguist
 | 
				
			|||||||
  module Strategy
 | 
					  module Strategy
 | 
				
			||||||
    # Detects language based on extension
 | 
					    # Detects language based on extension
 | 
				
			||||||
    class Extension
 | 
					    class Extension
 | 
				
			||||||
      def self.call(blob, _)
 | 
					      # Public: Use the file extension to detect the blob's language.
 | 
				
			||||||
        Language.find_by_extension(blob.name.to_s)
 | 
					      #
 | 
				
			||||||
 | 
					      # blob               - An object that quacks like a blob.
 | 
				
			||||||
 | 
					      # candidates         - A list of candidate languages.
 | 
				
			||||||
 | 
					      #
 | 
				
			||||||
 | 
					      # Examples
 | 
				
			||||||
 | 
					      #
 | 
				
			||||||
 | 
					      #   Extension.call(FileBlob.new("path/to/file"))
 | 
				
			||||||
 | 
					      #
 | 
				
			||||||
 | 
					      # Returns an array of languages associated with a blob's file extension.
 | 
				
			||||||
 | 
					      # Selected languages must be in the candidate list, except if it's empty,
 | 
				
			||||||
 | 
					      # in which case any language is a valid candidate.
 | 
				
			||||||
 | 
					      def self.call(blob, candidates)
 | 
				
			||||||
 | 
					        languages = Language.find_by_extension(blob.name.to_s)
 | 
				
			||||||
 | 
					        candidates.any? ? candidates & languages : languages
 | 
				
			||||||
      end
 | 
					      end
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2,9 +2,22 @@ module Linguist
 | 
				
			|||||||
  module Strategy
 | 
					  module Strategy
 | 
				
			||||||
    # Detects language based on filename
 | 
					    # Detects language based on filename
 | 
				
			||||||
    class Filename
 | 
					    class Filename
 | 
				
			||||||
      def self.call(blob, _)
 | 
					      # Public: Use the filename to detect the blob's language.
 | 
				
			||||||
 | 
					      #
 | 
				
			||||||
 | 
					      # blob               - An object that quacks like a blob.
 | 
				
			||||||
 | 
					      # candidates         - A list of candidate languages.
 | 
				
			||||||
 | 
					      #
 | 
				
			||||||
 | 
					      # Examples
 | 
				
			||||||
 | 
					      #
 | 
				
			||||||
 | 
					      #   Filename.call(FileBlob.new("path/to/file"))
 | 
				
			||||||
 | 
					      #
 | 
				
			||||||
 | 
					      # Returns an array of languages with a associated blob's filename.
 | 
				
			||||||
 | 
					      # Selected languages must be in the candidate list, except if it's empty,
 | 
				
			||||||
 | 
					      # in which case any language is a valid candidate.
 | 
				
			||||||
 | 
					      def self.call(blob, candidates)
 | 
				
			||||||
        name = blob.name.to_s
 | 
					        name = blob.name.to_s
 | 
				
			||||||
        Language.find_by_filename(name)
 | 
					        languages = Language.find_by_filename(name)
 | 
				
			||||||
 | 
					        candidates.any? ? candidates & languages : languages
 | 
				
			||||||
      end
 | 
					      end
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -276,6 +276,13 @@
 | 
				
			|||||||
- (^|/)gradlew\.bat$
 | 
					- (^|/)gradlew\.bat$
 | 
				
			||||||
- (^|/)gradle/wrapper/
 | 
					- (^|/)gradle/wrapper/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Java ##
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Maven
 | 
				
			||||||
 | 
					- (^|/)mvnw$
 | 
				
			||||||
 | 
					- (^|/)mvnw\.cmd$
 | 
				
			||||||
 | 
					- (^|/)\.mvn/wrapper/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## .NET ##
 | 
					## .NET ##
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Visual Studio IntelliSense
 | 
					# Visual Studio IntelliSense
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,3 +1,3 @@
 | 
				
			|||||||
module Linguist
 | 
					module Linguist
 | 
				
			||||||
  VERSION = "5.3.3"
 | 
					  VERSION = "6.0.1"
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										159
									
								
								samples/CoNLL-U/CF1.conllu
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										159
									
								
								samples/CoNLL-U/CF1.conllu
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,159 @@
 | 
				
			|||||||
 | 
					# text = PT no governo
 | 
				
			||||||
 | 
					# source = CETENFolha n=1 cad=Opinião sec=opi sem=94a
 | 
				
			||||||
 | 
					# sent_id = CF1-1
 | 
				
			||||||
 | 
					# id = 1
 | 
				
			||||||
 | 
					1	PT	PT	PROPN	PROP|M|S|@NPHR	Gender=Masc|Number=Sing	0	root	_	_
 | 
				
			||||||
 | 
					2-3	no	_	_	_	_	_	_	_	_
 | 
				
			||||||
 | 
					2	em	em	ADP	<sam->|PRP|@N<	_	4	case	_	_
 | 
				
			||||||
 | 
					3	o	o	DET	<-sam>|<artd>|ART|M|S|@>N	Definite=Def|Gender=Masc|Number=Sing|PronType=Art	4	det	_	_
 | 
				
			||||||
 | 
					4	governo	governo	NOUN	<np-def>|N|M|S|@P<	Gender=Masc|Number=Sing	1	nmod	_	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# text = BRASÍLIA Pesquisa Datafolha publicada hoje revela um dado supreendente: recusando uma postura radical, a esmagadora maioria (77%) dos eleitores quer o PT participando do Governo Fernando Henrique Cardoso.
 | 
				
			||||||
 | 
					# source = CETENFolha n=1 cad=Opinião sec=opi sem=94a &W
 | 
				
			||||||
 | 
					# sent_id = CF1-3
 | 
				
			||||||
 | 
					# id = 2
 | 
				
			||||||
 | 
					1	BRASÍLIA	Brasília	PROPN	PROP|F|S|@ADVL>	Gender=Fem|Number=Sing	6	dep	_	_
 | 
				
			||||||
 | 
					2	Pesquisa	Pesquisa	PROPN	_	Gender=Fem|Number=Sing	6	nsubj	_	ChangedBy=Issue119|MWE=Pesquisa_Datafolha|MWEPOS=PROPN
 | 
				
			||||||
 | 
					3	Datafolha	Datafolha	PROPN	_	Number=Sing	2	flat:name	_	ChangedBy=Issue119
 | 
				
			||||||
 | 
					4	publicada	publicar	VERB	<mv>|V|PCP|F|S|@ICL-N<	Gender=Fem|Number=Sing|VerbForm=Part	2	acl	_	_
 | 
				
			||||||
 | 
					5	hoje	hoje	ADV	ADV|@<ADVL	_	4	advmod	_	_
 | 
				
			||||||
 | 
					6	revela	revelar	VERB	<mv>|V|PR|3S|IND|@FS-STA	Mood=Ind|Number=Sing|Person=3|Tense=Pres|VerbForm=Fin	0	root	_	_
 | 
				
			||||||
 | 
					7	um	um	DET	<arti>|ART|M|S|@>N	Definite=Ind|Gender=Masc|Number=Sing|PronType=Art	8	det	_	_
 | 
				
			||||||
 | 
					8	dado	dado	NOUN	<np-idf>|N|M|S|@<ACC	Gender=Masc|Number=Sing	6	obj	_	_
 | 
				
			||||||
 | 
					9	supreendente	surpreendente	ADJ	ADJ|M|S|@N<	Gender=Masc|Number=Sing	8	amod	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					10	:	:	PUNCT	PU|@PU	_	26	punct	_	_
 | 
				
			||||||
 | 
					11	recusando	recusar	VERB	<mv>|V|GER|@ICL-ADVL>	VerbForm=Ger	26	advcl	_	_
 | 
				
			||||||
 | 
					12	uma	um	DET	<arti>|ART|F|S|@>N	Definite=Ind|Gender=Fem|Number=Sing|PronType=Art	13	det	_	_
 | 
				
			||||||
 | 
					13	postura	postura	NOUN	<np-idf>|N|F|S|@<ACC	Gender=Fem|Number=Sing	11	obj	_	_
 | 
				
			||||||
 | 
					14	radical	radical	ADJ	ADJ|F|S|@N<	Gender=Fem|Number=Sing	13	amod	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					15	,	,	PUNCT	PU|@PU	_	26	punct	_	_
 | 
				
			||||||
 | 
					16	a	o	DET	<artd>|ART|F|S|@>N	Definite=Def|Gender=Fem|Number=Sing|PronType=Art	18	det	_	_
 | 
				
			||||||
 | 
					17	esmagadora	esmagador	ADJ	ADJ|F|S|@>N	Gender=Fem|Number=Sing	18	amod	_	_
 | 
				
			||||||
 | 
					18	maioria	maioria	NOUN	<np-def>|N|F|S|@SUBJ>	Gender=Fem|Number=Sing	26	nsubj	_	_
 | 
				
			||||||
 | 
					19	(	(	PUNCT	PU|@PU	_	21	punct	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					20	77	77	NUM	<card>|NUM|M|P|@>N	NumType=Card	21	nummod	_	ChangedBy=Issue165|ChangedBy=Issue168|SpaceAfter=No
 | 
				
			||||||
 | 
					21	%	%	SYM	<np-def>|N|M|P|@N<PRED	Gender=Masc|Number=Plur	18	appos	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					22	)	)	PUNCT	PU|@PU	_	21	punct	_	_
 | 
				
			||||||
 | 
					23-24	dos	_	_	_	_	_	_	_	_
 | 
				
			||||||
 | 
					23	de	de	ADP	<sam->|PRP|@N<	_	25	case	_	_
 | 
				
			||||||
 | 
					24	os	o	DET	<-sam>|<artd>|ART|M|P|@>N	Definite=Def|Gender=Masc|Number=Plur|PronType=Art	25	det	_	_
 | 
				
			||||||
 | 
					25	eleitores	eleitor	NOUN	<np-def>|N|M|P|@P<	Gender=Masc|Number=Plur	18	nmod	_	_
 | 
				
			||||||
 | 
					26	quer	querer	VERB	<mv>|V|PR|3S|IND|@FS-N<PRED	Mood=Ind|Number=Sing|Person=3|Tense=Pres|VerbForm=Fin	8	acl:relcl	_	_
 | 
				
			||||||
 | 
					27	o	o	DET	<artd>|ART|M|S|@>N	Definite=Def|Gender=Masc|Number=Sing|PronType=Art	28	det	_	_
 | 
				
			||||||
 | 
					28	PT	PT	PROPN	PROP|M|S|@<ACC	Gender=Masc|Number=Sing	26	obj	_	_
 | 
				
			||||||
 | 
					29	participando	participar	VERB	<mv>|V|GER|@ICL-<OC	VerbForm=Ger	26	xcomp	_	_
 | 
				
			||||||
 | 
					30-31	do	_	_	_	_	_	_	_	_
 | 
				
			||||||
 | 
					30	de	de	ADP	<sam->|PRP|@<PIV	_	32	case	_	_
 | 
				
			||||||
 | 
					31	o	o	DET	<-sam>|<artd>|ART|M|S|@>N	Definite=Def|Gender=Masc|Number=Sing|PronType=Art	32	det	_	_
 | 
				
			||||||
 | 
					32	Governo	governo	NOUN	<prop>|<np-def>|N|M|S|@P<	Gender=Masc|Number=Sing	29	obl	_	_
 | 
				
			||||||
 | 
					33	Fernando	Fernando	PROPN	_	Gender=Masc|Number=Sing	32	nmod	_	ChangedBy=Issue119|MWE=Fernando_Henrique_Cardoso|MWEPOS=PROPN
 | 
				
			||||||
 | 
					34	Henrique	Henrique	PROPN	_	Number=Sing	33	flat:name	_	ChangedBy=Issue119
 | 
				
			||||||
 | 
					35	Cardoso	Cardoso	PROPN	_	Number=Sing	33	flat:name	_	SpaceAfter=No
 | 
				
			||||||
 | 
					36	.	.	PUNCT	PU|@PU	_	6	punct	_	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# text = Tem sentido -- aliás, muitíssimo sentido.
 | 
				
			||||||
 | 
					# source = CETENFolha n=1 cad=Opinião sec=opi sem=94a &D
 | 
				
			||||||
 | 
					# sent_id = CF1-4
 | 
				
			||||||
 | 
					# id = 3
 | 
				
			||||||
 | 
					1	Tem	ter	VERB	<mv>|V|PR|3S|IND|@FS-STA	Mood=Ind|Number=Sing|Person=3|Tense=Pres|VerbForm=Fin	0	root	_	_
 | 
				
			||||||
 | 
					2	sentido	sentido	NOUN	<np-idf>|N|M|S|@<ACC	Gender=Masc|Number=Sing	1	obj	_	_
 | 
				
			||||||
 | 
					3	--	--	PUNCT	PU|@PU	_	1	punct	_	_
 | 
				
			||||||
 | 
					4	aliás	aliás	ADV	<kc>|ADV|@<ADVL	_	1	advmod	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					5	,	,	PUNCT	PU|@PU	_	7	punct	_	_
 | 
				
			||||||
 | 
					6	muitíssimo	muitíssimo	DET	<quant>|<SUP>|DET|M|S|@>N	Gender=Masc|Number=Sing|PronType=Ind	7	det	_	_
 | 
				
			||||||
 | 
					7	sentido	sentido	NOUN	<np-idf>|N|M|S|@N<PRED	Gender=Masc|Number=Sing	2	appos	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					8	.	.	PUNCT	PU|@PU	_	1	punct	_	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# text = Muito mais do que nos tempos na ditadura, a solidez do PT está, agora, ameaçada.
 | 
				
			||||||
 | 
					# source = CETENFolha n=1 cad=Opinião sec=opi sem=94a
 | 
				
			||||||
 | 
					# sent_id = CF1-5
 | 
				
			||||||
 | 
					# id = 4
 | 
				
			||||||
 | 
					1	Muito	muito	ADV	<quant>|ADV|@>A	_	2	advmod	_	_
 | 
				
			||||||
 | 
					2	mais	mais	ADV	<quant>|<KOMP>|<COMP>|ADV|@ADVL>	_	22	advmod	_	_
 | 
				
			||||||
 | 
					3-4	do	_	_	_	_	_	_	_	_
 | 
				
			||||||
 | 
					3	de	de	ADP	<sam->|PRP|@COM	_	8	case	_	_
 | 
				
			||||||
 | 
					4	o	o	PRON	<dem>|<-sam>|DET|M|S|@P<	Gender=Masc|Number=Sing|PronType=Dem	3	fixed	_	_
 | 
				
			||||||
 | 
					5	que	que	PRON	<rel>|INDP|M|S|@N<	Gender=Masc|Number=Sing|PronType=Rel	3	fixed	_	_
 | 
				
			||||||
 | 
					6-7	nos	_	_	_	_	_	_	_	_
 | 
				
			||||||
 | 
					6	em	em	ADP	<sam->|<first-cjt>|PRP|@KOMP<	_	8	case	_	_
 | 
				
			||||||
 | 
					7	os	o	DET	<-sam>|<artd>|ART|M|P|@>N	Definite=Def|Gender=Masc|Number=Plur|PronType=Art	8	det	_	_
 | 
				
			||||||
 | 
					8	tempos	tempo	NOUN	<first-cjt>|<np-def>|N|M|P|@P<	Gender=Masc|Number=Plur	2	obl	_	_
 | 
				
			||||||
 | 
					9-10	na	_	_	_	_	_	_	_	_
 | 
				
			||||||
 | 
					9	em	em	ADP	<sam->|PRP|@N<	_	11	case	_	_
 | 
				
			||||||
 | 
					10	a	o	DET	<-sam>|<artd>|ART|F|S|@>N	Definite=Def|Gender=Fem|Number=Sing|PronType=Art	11	det	_	_
 | 
				
			||||||
 | 
					11	ditadura	ditadura	NOUN	<np-def>|N|F|S|@P<	Gender=Fem|Number=Sing	8	nmod	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					12	,	,	PUNCT	PU|@PU	_	2	punct	_	_
 | 
				
			||||||
 | 
					13	a	o	DET	<artd>|ART|F|S|@>N	Definite=Def|Gender=Fem|Number=Sing|PronType=Art	14	det	_	_
 | 
				
			||||||
 | 
					14	solidez	solidez	NOUN	<np-def>|N|F|S|@SUBJ>	Gender=Fem|Number=Sing	22	nsubj	_	_
 | 
				
			||||||
 | 
					15-16	do	_	_	_	_	_	_	_	_
 | 
				
			||||||
 | 
					15	de	de	ADP	<sam->|PRP|@N<	_	17	case	_	_
 | 
				
			||||||
 | 
					16	o	o	DET	<-sam>|<artd>|ART|M|S|@>N	Definite=Def|Gender=Masc|Number=Sing|PronType=Art	17	det	_	_
 | 
				
			||||||
 | 
					17	PT	PT	PROPN	PROP|M|S|@P<	Gender=Masc|Number=Sing	14	nmod	_	_
 | 
				
			||||||
 | 
					18	está	estar	AUX	<mv>|V|PR|3S|IND|@FS-STA	Mood=Ind|Number=Sing|Person=3|Tense=Pres|VerbForm=Fin	22	cop	_	ChangedBy=Issue165|ChangedBy=Issue167|SpaceAfter=No
 | 
				
			||||||
 | 
					19	,	,	PUNCT	PU|@PU	_	20	punct	_	_
 | 
				
			||||||
 | 
					20	agora	agora	ADV	<kc>|ADV|@<ADVL	_	22	advmod	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					21	,	,	PUNCT	PU|@PU	_	20	punct	_	_
 | 
				
			||||||
 | 
					22	ameaçada	ameaçar	VERB	<mv>|V|PCP|F|S|@ICL-<SC	Gender=Fem|Number=Sing|VerbForm=Part	0	root	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					23	.	.	PUNCT	PU|@PU	_	22	punct	_	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# text = Nem Lula nem o partido ainda encontraram um discurso para se diferenciar.
 | 
				
			||||||
 | 
					# source = CETENFolha n=1 cad=Opinião sec=opi sem=94a
 | 
				
			||||||
 | 
					# sent_id = CF1-6
 | 
				
			||||||
 | 
					# id = 5
 | 
				
			||||||
 | 
					1	Nem	nem	CCONJ	<parkc-1>|KC|@CO	_	2	cc	_	_
 | 
				
			||||||
 | 
					2	Lula	Lula	PROPN	<first-cjt>|PROP|M|S|@SUBJ>	Gender=Masc|Number=Sing	7	nsubj	_	_
 | 
				
			||||||
 | 
					3	nem	nem	CCONJ	<co-subj>|<parkc-2>|KC|@CO	_	5	cc	_	_
 | 
				
			||||||
 | 
					4	o	o	DET	<artd>|ART|M|S|@>N	Definite=Def|Gender=Masc|Number=Sing|PronType=Art	5	det	_	_
 | 
				
			||||||
 | 
					5	partido	partido	NOUN	<cjt>|<np-def>|N|M|S|@SUBJ>	Gender=Masc|Number=Sing	2	conj	_	_
 | 
				
			||||||
 | 
					6	ainda	ainda	ADV	ADV|@ADVL>	_	7	advmod	_	_
 | 
				
			||||||
 | 
					7	encontraram	encontrar	VERB	<mv>|V|PS/MQP|3P|IND|@FS-STA	Mood=Ind|Number=Plur|Person=3|VerbForm=Fin	0	root	_	_
 | 
				
			||||||
 | 
					8	um	um	DET	_	Definite=Ind|Gender=Masc|Number=Sing|PronType=Art	9	det	_	_
 | 
				
			||||||
 | 
					9	discurso	discurso	NOUN	<np-idf>|N|M|S|@<ACC	Gender=Masc|Number=Sing	7	obj	_	_
 | 
				
			||||||
 | 
					10	para	para	ADP	_	_	12	case	_	_
 | 
				
			||||||
 | 
					11	se	se	PRON	PERS|M|3S|ACC|@ACC>-PASS	Case=Acc|Gender=Masc|Number=Sing|Person=3|PronType=Prs	12	expl	_	ChangedBy=Issue135
 | 
				
			||||||
 | 
					12	diferenciar	diferenciar	VERB	_	VerbForm=Inf	9	acl	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					13	.	.	PUNCT	PU|@PU	_	7	punct	_	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# text = Eles se dizem oposição, mas ainda não informaram o que vão combater.
 | 
				
			||||||
 | 
					# source = CETENFolha n=1 cad=Opinião sec=opi sem=94a
 | 
				
			||||||
 | 
					# sent_id = CF1-7
 | 
				
			||||||
 | 
					# id = 6
 | 
				
			||||||
 | 
					1	Eles	eles	PRON	PERS|M|3P|NOM|@SUBJ>	Case=Nom|Gender=Masc|Number=Plur|Person=3|PronType=Prs	3	nsubj	_	_
 | 
				
			||||||
 | 
					2	se	se	PRON	PERS|M|3P|ACC|@ACC>-PASS	Case=Acc|Gender=Masc|Number=Plur|Person=3|PronType=Prs	3	expl	_	ChangedBy=Issue135
 | 
				
			||||||
 | 
					3	dizem	dizer	VERB	<first-cjt>|<mv>|<se-passive>|V|PR|3P|IND|@FS-STA	Mood=Ind|Number=Plur|Person=3|Tense=Pres|VerbForm=Fin	0	root	_	_
 | 
				
			||||||
 | 
					4	oposição	oposição	NOUN	<np-idf>|N|F|S|@<OC	Gender=Fem|Number=Sing	3	xcomp	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					5	,	,	PUNCT	PU|@PU	_	9	punct	_	_
 | 
				
			||||||
 | 
					6	mas	mas	CCONJ	<co-fcl>|KC|@CO	_	9	cc	_	_
 | 
				
			||||||
 | 
					7	ainda	ainda	ADV	ADV|@>A	_	8	advmod	_	_
 | 
				
			||||||
 | 
					8	não	não	ADV	_	Polarity=Neg	9	advmod	_	_
 | 
				
			||||||
 | 
					9	informaram	informar	VERB	<cjt>|<mv>|V|PS/MQP|3P|IND|@FS-STA	Mood=Ind|Number=Plur|Person=3|VerbForm=Fin	3	conj	_	_
 | 
				
			||||||
 | 
					10	o	o	PRON	_	Gender=Masc|Number=Sing|PronType=Dem	11	det	_	_
 | 
				
			||||||
 | 
					11	que	que	PRON	<interr>|INDP|M|S|@ACC>	Gender=Masc|Number=Sing|PronType=Int	13	obj	_	_
 | 
				
			||||||
 | 
					12	vão	ir	AUX	<aux>|V|PR|3P|IND|@FS-<ACC	Mood=Ind|Number=Plur|Person=3|Tense=Pres|VerbForm=Fin	13	aux	_	_
 | 
				
			||||||
 | 
					13	combater	combater	VERB	<mv>|V|INF|@ICL-AUX<	VerbForm=Inf	9	ccomp	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					14	.	.	PUNCT	PU|@PU	_	3	punct	_	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# text = Muitas das prioridades do novo governo coincidem com as prioridades do PT.
 | 
				
			||||||
 | 
					# source = CETENFolha n=1 cad=Opinião sec=opi sem=94a
 | 
				
			||||||
 | 
					# sent_id = CF1-8
 | 
				
			||||||
 | 
					# id = 7
 | 
				
			||||||
 | 
					1	Muitas	muito	PRON	<quant>|DET|F|P|@SUBJ>	Gender=Fem|Number=Plur|PronType=Ind	9	nsubj	_	_
 | 
				
			||||||
 | 
					2-3	das	_	_	_	_	_	_	_	_
 | 
				
			||||||
 | 
					2	de	de	ADP	<sam->|PRP|@N<	_	4	case	_	_
 | 
				
			||||||
 | 
					3	as	o	DET	<-sam>|<artd>|ART|F|P|@>N	Definite=Def|Gender=Fem|Number=Plur|PronType=Art	4	det	_	_
 | 
				
			||||||
 | 
					4	prioridades	prioridade	NOUN	<np-def>|N|F|P|@P<	Gender=Fem|Number=Plur	1	nmod	_	_
 | 
				
			||||||
 | 
					5-6	do	_	_	_	_	_	_	_	_
 | 
				
			||||||
 | 
					5	de	de	ADP	<sam->|PRP|@N<	_	8	case	_	_
 | 
				
			||||||
 | 
					6	o	o	DET	<-sam>|<artd>|ART|M|S|@>N	Definite=Def|Gender=Masc|Number=Sing|PronType=Art	8	det	_	_
 | 
				
			||||||
 | 
					7	novo	novo	ADJ	ADJ|M|S|@>N	Gender=Masc|Number=Sing	8	amod	_	_
 | 
				
			||||||
 | 
					8	governo	governo	NOUN	<np-def>|N|M|S|@P<	Gender=Masc|Number=Sing	4	nmod	_	_
 | 
				
			||||||
 | 
					9	coincidem	coincidir	VERB	<mv>|V|PR|3P|IND|@FS-STA	Mood=Ind|Number=Plur|Person=3|Tense=Pres|VerbForm=Fin	0	root	_	_
 | 
				
			||||||
 | 
					10	com	com	ADP	PRP|@<PIV	_	12	case	_	_
 | 
				
			||||||
 | 
					11	as	o	DET	<artd>|ART|F|P|@>N	Definite=Def|Gender=Fem|Number=Plur|PronType=Art	12	det	_	_
 | 
				
			||||||
 | 
					12	prioridades	prioridade	NOUN	<np-def>|N|F|P|@P<	Gender=Fem|Number=Plur	9	obj	_	_
 | 
				
			||||||
 | 
					13-14	do	_	_	_	_	_	_	_	_
 | 
				
			||||||
 | 
					13	de	de	ADP	<sam->|PRP|@N<	_	15	case	_	_
 | 
				
			||||||
 | 
					14	o	o	DET	<-sam>|<artd>|ART|M|S|@>N	Definite=Def|Gender=Masc|Number=Sing|PronType=Art	15	det	_	_
 | 
				
			||||||
 | 
					15	PT	PT	PROPN	PROP|M|S|@P<	Gender=Masc|Number=Sing	12	nmod	_	ChangedBy=Issue165|SpaceAfter=No
 | 
				
			||||||
 | 
					16	.	.	PUNCT	PU|@PU	_	9	punct	_	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										122
									
								
								samples/CoNLL-U/en-ud-test-abridged.conllu
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										122
									
								
								samples/CoNLL-U/en-ud-test-abridged.conllu
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,122 @@
 | 
				
			|||||||
 | 
					# newdoc id = weblog-blogspot.com_zentelligence_20040423000200_ENG_20040423_000200
 | 
				
			||||||
 | 
					# sent_id = weblog-blogspot.com_zentelligence_20040423000200_ENG_20040423_000200-0001
 | 
				
			||||||
 | 
					# text = What if Google Morphed Into GoogleOS?
 | 
				
			||||||
 | 
					1	What	what	PRON	WP	PronType=Int	0	root	0:root	_
 | 
				
			||||||
 | 
					2	if	if	SCONJ	IN	_	4	mark	4:mark	_
 | 
				
			||||||
 | 
					3	Google	Google	PROPN	NNP	Number=Sing	4	nsubj	4:nsubj	_
 | 
				
			||||||
 | 
					4	Morphed	morph	VERB	VBD	Mood=Ind|Tense=Past|VerbForm=Fin	1	advcl	1:advcl	_
 | 
				
			||||||
 | 
					5	Into	into	ADP	IN	_	6	case	6:case	_
 | 
				
			||||||
 | 
					6	GoogleOS	GoogleOS	PROPN	NNP	Number=Sing	4	obl	4:obl	SpaceAfter=No
 | 
				
			||||||
 | 
					7	?	?	PUNCT	.	_	4	punct	4:punct	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# sent_id = weblog-blogspot.com_zentelligence_20040423000200_ENG_20040423_000200-0002
 | 
				
			||||||
 | 
					# text = What if Google expanded on its search-engine (and now e-mail) wares into a full-fledged operating system?
 | 
				
			||||||
 | 
					1	What	what	PRON	WP	PronType=Int	0	root	0:root	_
 | 
				
			||||||
 | 
					2	if	if	SCONJ	IN	_	4	mark	4:mark	_
 | 
				
			||||||
 | 
					3	Google	Google	PROPN	NNP	Number=Sing	4	nsubj	4:nsubj	_
 | 
				
			||||||
 | 
					4	expanded	expand	VERB	VBD	Mood=Ind|Tense=Past|VerbForm=Fin	1	advcl	1:advcl	_
 | 
				
			||||||
 | 
					5	on	on	ADP	IN	_	15	case	15:case	_
 | 
				
			||||||
 | 
					6	its	its	PRON	PRP$	Gender=Neut|Number=Sing|Person=3|Poss=Yes|PronType=Prs	15	nmod:poss	15:nmod:poss	_
 | 
				
			||||||
 | 
					7	search	search	NOUN	NN	Number=Sing	9	compound	9:compound	SpaceAfter=No
 | 
				
			||||||
 | 
					8	-	-	PUNCT	HYPH	_	9	punct	9:punct	SpaceAfter=No
 | 
				
			||||||
 | 
					9	engine	engine	NOUN	NN	Number=Sing	15	compound	15:compound	_
 | 
				
			||||||
 | 
					10	(	(	PUNCT	-LRB-	_	9	punct	9:punct	SpaceAfter=No
 | 
				
			||||||
 | 
					11	and	and	CCONJ	CC	_	13	cc	13:cc	_
 | 
				
			||||||
 | 
					12	now	now	ADV	RB	_	13	advmod	13:advmod	_
 | 
				
			||||||
 | 
					13	e-mail	e-mail	NOUN	NN	Number=Sing	9	conj	9:conj	SpaceAfter=No
 | 
				
			||||||
 | 
					14	)	)	PUNCT	-RRB-	_	15	punct	15:punct	_
 | 
				
			||||||
 | 
					15	wares	wares	NOUN	NNS	Number=Plur	4	obl	4:obl	_
 | 
				
			||||||
 | 
					16	into	into	ADP	IN	_	22	case	22:case	_
 | 
				
			||||||
 | 
					17	a	a	DET	DT	Definite=Ind|PronType=Art	22	det	22:det	_
 | 
				
			||||||
 | 
					18	full	full	ADV	RB	_	20	advmod	20:advmod	SpaceAfter=No
 | 
				
			||||||
 | 
					19	-	-	PUNCT	HYPH	_	20	punct	20:punct	SpaceAfter=No
 | 
				
			||||||
 | 
					20	fledged	fledged	ADJ	JJ	Degree=Pos	22	amod	22:amod	_
 | 
				
			||||||
 | 
					21	operating	operating	NOUN	NN	Number=Sing	22	compound	22:compound	_
 | 
				
			||||||
 | 
					22	system	system	NOUN	NN	Number=Sing	4	obl	4:obl	SpaceAfter=No
 | 
				
			||||||
 | 
					23	?	?	PUNCT	.	_	4	punct	4:punct	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# sent_id = weblog-blogspot.com_zentelligence_20040423000200_ENG_20040423_000200-0003
 | 
				
			||||||
 | 
					# text = [via Microsoft Watch from Mary Jo Foley ]
 | 
				
			||||||
 | 
					1	[	[	PUNCT	-LRB-	_	4	punct	4:punct	SpaceAfter=No
 | 
				
			||||||
 | 
					2	via	via	ADP	IN	_	4	case	4:case	_
 | 
				
			||||||
 | 
					3	Microsoft	Microsoft	PROPN	NNP	Number=Sing	4	compound	4:compound	_
 | 
				
			||||||
 | 
					4	Watch	Watch	PROPN	NNP	Number=Sing	0	root	0:root	_
 | 
				
			||||||
 | 
					5	from	from	ADP	IN	_	6	case	6:case	_
 | 
				
			||||||
 | 
					6	Mary	Mary	PROPN	NNP	Number=Sing	4	nmod	4:nmod	_
 | 
				
			||||||
 | 
					7	Jo	Jo	PROPN	NNP	Number=Sing	6	flat	6:flat	_
 | 
				
			||||||
 | 
					8	Foley	Foley	PROPN	NNP	Number=Sing	6	flat	6:flat	_
 | 
				
			||||||
 | 
					9	]	]	PUNCT	-RRB-	_	4	punct	4:punct	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# newdoc id = weblog-blogspot.com_marketview_20050511222700_ENG_20050511_222700
 | 
				
			||||||
 | 
					# sent_id = weblog-blogspot.com_marketview_20050511222700_ENG_20050511_222700-0001
 | 
				
			||||||
 | 
					# text = (And, by the way, is anybody else just a little nostalgic for the days when that was a good thing?)
 | 
				
			||||||
 | 
					1	(	(	PUNCT	-LRB-	_	14	punct	14:punct	SpaceAfter=No
 | 
				
			||||||
 | 
					2	And	and	CCONJ	CC	_	14	cc	14:cc	SpaceAfter=No
 | 
				
			||||||
 | 
					3	,	,	PUNCT	,	_	14	punct	14:punct	_
 | 
				
			||||||
 | 
					4	by	by	ADP	IN	_	6	case	6:case	_
 | 
				
			||||||
 | 
					5	the	the	DET	DT	Definite=Def|PronType=Art	6	det	6:det	_
 | 
				
			||||||
 | 
					6	way	way	NOUN	NN	Number=Sing	14	obl	14:obl	SpaceAfter=No
 | 
				
			||||||
 | 
					7	,	,	PUNCT	,	_	14	punct	14:punct	_
 | 
				
			||||||
 | 
					8	is	be	AUX	VBZ	Mood=Ind|Number=Sing|Person=3|Tense=Pres|VerbForm=Fin	14	cop	14:cop	_
 | 
				
			||||||
 | 
					9	anybody	anybody	PRON	NN	Number=Sing	14	nsubj	14:nsubj	_
 | 
				
			||||||
 | 
					10	else	else	ADJ	JJ	Degree=Pos	9	amod	9:amod	_
 | 
				
			||||||
 | 
					11	just	just	ADV	RB	_	13	advmod	13:advmod	_
 | 
				
			||||||
 | 
					12	a	a	DET	DT	Definite=Ind|PronType=Art	13	det	13:det	_
 | 
				
			||||||
 | 
					13	little	little	ADJ	JJ	Degree=Pos	14	obl:npmod	14:obl:npmod	_
 | 
				
			||||||
 | 
					14	nostalgic	nostalgic	NOUN	NN	Number=Sing	0	root	0:root	_
 | 
				
			||||||
 | 
					15	for	for	ADP	IN	_	17	case	17:case	_
 | 
				
			||||||
 | 
					16	the	the	DET	DT	Definite=Def|PronType=Art	17	det	17:det	_
 | 
				
			||||||
 | 
					17	days	day	NOUN	NNS	Number=Plur	14	nmod	14:nmod	_
 | 
				
			||||||
 | 
					18	when	when	ADV	WRB	PronType=Rel	23	advmod	23:advmod	_
 | 
				
			||||||
 | 
					19	that	that	PRON	DT	Number=Sing|PronType=Dem	23	nsubj	23:nsubj	_
 | 
				
			||||||
 | 
					20	was	be	AUX	VBD	Mood=Ind|Number=Sing|Person=3|Tense=Past|VerbForm=Fin	23	cop	23:cop	_
 | 
				
			||||||
 | 
					21	a	a	DET	DT	Definite=Ind|PronType=Art	23	det	23:det	_
 | 
				
			||||||
 | 
					22	good	good	ADJ	JJ	Degree=Pos	23	amod	23:amod	_
 | 
				
			||||||
 | 
					23	thing	thing	NOUN	NN	Number=Sing	17	acl:relcl	17:acl:relcl	SpaceAfter=No
 | 
				
			||||||
 | 
					24	?	?	PUNCT	.	_	14	punct	14:punct	SpaceAfter=No
 | 
				
			||||||
 | 
					25	)	)	PUNCT	-RRB-	_	14	punct	14:punct	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# sent_id = weblog-blogspot.com_marketview_20050511222700_ENG_20050511_222700-0002
 | 
				
			||||||
 | 
					# text = This BuzzMachine post argues that Google's rush toward ubiquity might backfire -- which we've all heard before, but it's particularly well-put in this post.
 | 
				
			||||||
 | 
					1	This	this	DET	DT	Number=Sing|PronType=Dem	3	det	3:det	_
 | 
				
			||||||
 | 
					2	BuzzMachine	BuzzMachine	PROPN	NNP	Number=Sing	3	compound	3:compound	_
 | 
				
			||||||
 | 
					3	post	post	NOUN	NN	Number=Sing	4	nsubj	4:nsubj	_
 | 
				
			||||||
 | 
					4	argues	argue	VERB	VBZ	Mood=Ind|Number=Sing|Person=3|Tense=Pres|VerbForm=Fin	0	root	0:root	_
 | 
				
			||||||
 | 
					5	that	that	SCONJ	IN	_	12	mark	12:mark	_
 | 
				
			||||||
 | 
					6	Google	Google	PROPN	NNP	Number=Sing	8	nmod:poss	8:nmod:poss	SpaceAfter=No
 | 
				
			||||||
 | 
					7	's	's	PART	POS	_	6	case	6:case	_
 | 
				
			||||||
 | 
					8	rush	rush	NOUN	NN	Number=Sing	12	nsubj	12:nsubj	_
 | 
				
			||||||
 | 
					9	toward	toward	ADP	IN	_	10	case	10:case	_
 | 
				
			||||||
 | 
					10	ubiquity	ubiquity	NOUN	NN	Number=Sing	8	nmod	8:nmod	_
 | 
				
			||||||
 | 
					11	might	might	AUX	MD	VerbForm=Fin	12	aux	12:aux	_
 | 
				
			||||||
 | 
					12	backfire	backfire	VERB	VB	VerbForm=Inf	4	ccomp	4:ccomp	_
 | 
				
			||||||
 | 
					13	--	--	PUNCT	,	_	12	punct	12:punct	_
 | 
				
			||||||
 | 
					14	which	which	PRON	WDT	PronType=Rel	18	obj	18:obj	_
 | 
				
			||||||
 | 
					15	we	we	PRON	PRP	Case=Nom|Number=Plur|Person=1|PronType=Prs	18	nsubj	18:nsubj	SpaceAfter=No
 | 
				
			||||||
 | 
					16	've	have	AUX	VBP	Mood=Ind|Tense=Pres|VerbForm=Fin	18	aux	18:aux	_
 | 
				
			||||||
 | 
					17	all	all	ADV	RB	_	18	advmod	18:advmod	_
 | 
				
			||||||
 | 
					18	heard	hear	VERB	VBN	Tense=Past|VerbForm=Part	12	acl:relcl	12:acl:relcl	_
 | 
				
			||||||
 | 
					19	before	before	ADV	RB	_	18	advmod	18:advmod	SpaceAfter=No
 | 
				
			||||||
 | 
					20	,	,	PUNCT	,	_	27	punct	27:punct	_
 | 
				
			||||||
 | 
					21	but	but	CCONJ	CC	_	27	cc	27:cc	_
 | 
				
			||||||
 | 
					22	it	it	PRON	PRP	Case=Nom|Gender=Neut|Number=Sing|Person=3|PronType=Prs	27	nsubj:pass	27:nsubj:pass	SpaceAfter=No
 | 
				
			||||||
 | 
					23	's	be	VERB	VBZ	Mood=Ind|Number=Sing|Person=3|Tense=Pres|VerbForm=Fin	27	aux:pass	27:aux:pass	_
 | 
				
			||||||
 | 
					24	particularly	particularly	ADV	RB	_	27	advmod	27:advmod	_
 | 
				
			||||||
 | 
					25	well	well	ADV	RB	Degree=Pos	27	advmod	27:advmod	SpaceAfter=No
 | 
				
			||||||
 | 
					26	-	-	PUNCT	HYPH	_	27	punct	27:punct	SpaceAfter=No
 | 
				
			||||||
 | 
					27	put	put	VERB	VBN	Tense=Past|VerbForm=Part	4	conj	4:conj	_
 | 
				
			||||||
 | 
					28	in	in	ADP	IN	_	30	case	30:case	_
 | 
				
			||||||
 | 
					29	this	this	DET	DT	Number=Sing|PronType=Dem	30	det	30:det	_
 | 
				
			||||||
 | 
					30	post	post	NOUN	NN	Number=Sing	27	obl	27:obl	SpaceAfter=No
 | 
				
			||||||
 | 
					31	.	.	PUNCT	.	_	4	punct	4:punct	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# sent_id = weblog-blogspot.com_marketview_20050511222700_ENG_20050511_222700-0003
 | 
				
			||||||
 | 
					# text = Google is a nice search engine.
 | 
				
			||||||
 | 
					1	Google	Google	PROPN	NNP	Number=Sing	6	nsubj	6:nsubj	_
 | 
				
			||||||
 | 
					2	is	be	AUX	VBZ	Mood=Ind|Number=Sing|Person=3|Tense=Pres|VerbForm=Fin	6	cop	6:cop	_
 | 
				
			||||||
 | 
					3	a	a	DET	DT	Definite=Ind|PronType=Art	6	det	6:det	_
 | 
				
			||||||
 | 
					4	nice	nice	ADJ	JJ	Degree=Pos	6	amod	6:amod	_
 | 
				
			||||||
 | 
					5	search	search	NOUN	NN	Number=Sing	6	compound	6:compound	_
 | 
				
			||||||
 | 
					6	engine	engine	NOUN	NN	Number=Sing	0	root	0:root	SpaceAfter=No
 | 
				
			||||||
 | 
					7	.	.	PUNCT	.	_	6	punct	6:punct	_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										121
									
								
								samples/CoNLL-U/ug-ud-test-abridged.conllu
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										121
									
								
								samples/CoNLL-U/ug-ud-test-abridged.conllu
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,121 @@
 | 
				
			|||||||
 | 
					# sent_id = s1
 | 
				
			||||||
 | 
					# text = ئاسماننى كۆپكۈك، دەريا، كۆل سۇلىرىنى سۈپسۈزۈك تۇرۇشقا، دەل - دەرەخلەرنى بۈك - باراقسان بولۇشقا، ھايۋانلارنى ئەركىن ئازادە ياشاشقا ئىگە قىلىش... بىزنىڭ ئورتاق ئارزۇيىمىز.
 | 
				
			||||||
 | 
					1	ئاسماننى	_	NOUN	N	_	30	csubj	_	Translit=asmanni
 | 
				
			||||||
 | 
					2	كۆپكۈك	_	VERB	V	_	1	orphan	_	SpaceAfter=No|Translit=köpkük
 | 
				
			||||||
 | 
					3	،	_	PUNCT	Y	_	2	punct	_	Translit=,
 | 
				
			||||||
 | 
					4	دەريا	_	NOUN	N	_	7	nmod:poss	_	SpaceAfter=No|Translit=derya
 | 
				
			||||||
 | 
					5	،	_	PUNCT	Y	_	4	punct	_	Translit=,
 | 
				
			||||||
 | 
					6	كۆل	_	NOUN	N	_	4	conj	_	Translit=köl
 | 
				
			||||||
 | 
					7	سۇلىرىنى	_	NOUN	N	_	9	obj	_	Translit=sulirini
 | 
				
			||||||
 | 
					8	سۈپسۈزۈك	_	ADJ	A	_	9	advmod	_	Translit=süpsüzük
 | 
				
			||||||
 | 
					9	تۇرۇشقا	_	VERB	V	_	1	conj	_	SpaceAfter=No|Translit=turushqa
 | 
				
			||||||
 | 
					10	،	_	PUNCT	Y	_	1	punct	_	Translit=,
 | 
				
			||||||
 | 
					11	دەل	_	ADV	D	_	13	compound:redup	_	Translit=del
 | 
				
			||||||
 | 
					12	-	_	PUNCT	Y	_	11	punct	_	Translit=-
 | 
				
			||||||
 | 
					13	دەرەخلەرنى	_	NOUN	N	_	17	obj	_	Translit=derexlerni
 | 
				
			||||||
 | 
					14	بۈك	_	ADJ	A	_	16	compound	_	Translit=bük
 | 
				
			||||||
 | 
					15	-	_	PUNCT	Y	_	14	punct	_	Translit=-
 | 
				
			||||||
 | 
					16	باراقسان	_	ADJ	A	_	17	advmod	_	Translit=baraqsan
 | 
				
			||||||
 | 
					17	بولۇشقا	_	VERB	V	_	9	orphan	_	SpaceAfter=No|Translit=bolushqa
 | 
				
			||||||
 | 
					18	،	_	PUNCT	Y	_	17	punct	_	Translit=,
 | 
				
			||||||
 | 
					19	ھايۋانلارنى	_	NOUN	N	_	24	obj	_	Translit=haywanlarni
 | 
				
			||||||
 | 
					20	ئەركىن	_	ADJ	A	_	21	compound:redup	_	Translit=erkin
 | 
				
			||||||
 | 
					21	ئازادە	_	ADJ	A	_	22	advmod	_	Translit=azade
 | 
				
			||||||
 | 
					22	ياشاشقا	_	NOUN	N	_	24	advcl	_	Translit=yashashqa
 | 
				
			||||||
 | 
					23	ئىگە	_	NOUN	N	_	24	compound	_	Translit=ige
 | 
				
			||||||
 | 
					24	قىلىش	_	VERB	V	_	1	conj	_	SpaceAfter=No|Translit=qilish
 | 
				
			||||||
 | 
					25	.	_	PUNCT	Y	_	1	punct	_	SpaceAfter=No|Translit=.
 | 
				
			||||||
 | 
					26	.	_	PUNCT	Y	_	1	punct	_	SpaceAfter=No|Translit=.
 | 
				
			||||||
 | 
					27	.	_	PUNCT	Y	_	1	punct	_	Translit=.
 | 
				
			||||||
 | 
					28	بىزنىڭ	_	PRON	P	_	30	nmod:poss	_	Translit=bizning
 | 
				
			||||||
 | 
					29	ئورتاق	_	ADJ	A	_	30	amod	_	Translit=ortaq
 | 
				
			||||||
 | 
					30	ئارزۇيىمىز	_	NOUN	N	_	0	root	_	SpaceAfter=No|Translit=arzuyimiz
 | 
				
			||||||
 | 
					31	.	_	PUNCT	Y	_	30	punct	_	Translit=.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# sent_id = s2
 | 
				
			||||||
 | 
					# text = بۇ بۆلەكتىكى تېكىستلەرنى ئوقۇش ئارقىلىق، كىشىلەرنىڭ ھايۋانلار ۋە ئۆسۈملۈكلەرگە قانداق مۇئامىلە قىلغانلىقى، ئاقىۋىتىنىڭ قانداق بولغانلىقىنى كۆرۈپ باقايلى،
 | 
				
			||||||
 | 
					1	بۇ	_	PRON	P	_	2	det	_	Translit=bu
 | 
				
			||||||
 | 
					2	بۆلەكتىكى	_	NOUN	N	_	3	nmod	_	Translit=bölektiki
 | 
				
			||||||
 | 
					3	تېكىستلەرنى	_	NOUN	N	_	4	obj	_	Translit=tëkistlerni
 | 
				
			||||||
 | 
					4	ئوقۇش	_	VERB	V	_	18	advcl	_	Translit=oqush
 | 
				
			||||||
 | 
					5	ئارقىلىق	_	ADP	R	_	4	case	_	SpaceAfter=No|Translit=arqiliq
 | 
				
			||||||
 | 
					6	،	_	PUNCT	Y	_	5	punct	_	Translit=,
 | 
				
			||||||
 | 
					7	كىشىلەرنىڭ	_	NOUN	N	_	13	nsubj	_	Translit=kishilerning
 | 
				
			||||||
 | 
					8	ھايۋانلار	_	NOUN	N	_	13	obl	_	Translit=haywanlar
 | 
				
			||||||
 | 
					9	ۋە	_	CCONJ	C	_	10	cc	_	Translit=we
 | 
				
			||||||
 | 
					10	ئۆسۈملۈكلەرگە	_	NOUN	N	_	8	conj	_	Translit=ösümlüklerge
 | 
				
			||||||
 | 
					11	قانداق	_	PRON	P	_	13	advmod	_	Translit=qandaq
 | 
				
			||||||
 | 
					12	مۇئامىلە	_	NOUN	N	_	13	compound	_	Translit=muamile
 | 
				
			||||||
 | 
					13	قىلغانلىقى	_	VERB	V	_	18	conj	_	SpaceAfter=No|Translit=qilghanliqi
 | 
				
			||||||
 | 
					14	،	_	PUNCT	Y	_	13	punct	_	Translit=,
 | 
				
			||||||
 | 
					15	ئاقىۋىتىنىڭ	_	NOUN	N	_	17	nsubj	_	Translit=aqiwitining
 | 
				
			||||||
 | 
					16	قانداق	_	PRON	P	_	17	advmod	_	Translit=qandaq
 | 
				
			||||||
 | 
					17	بولغانلىقىنى	_	VERB	V	_	18	obj	_	Translit=bolghanliqini
 | 
				
			||||||
 | 
					18	كۆرۈپ	_	VERB	V	_	0	root	_	Translit=körüp
 | 
				
			||||||
 | 
					19	باقايلى	_	VERB	V	_	18	aux	_	SpaceAfter=No|Translit=baqayli
 | 
				
			||||||
 | 
					20	،	_	PUNCT	Y	_	19	punct	_	Translit=,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# sent_id = s3
 | 
				
			||||||
 | 
					# text = يەنە ئەتراپىمىزدىكى مۇھىتنى ياخشى كۆزىتىپ، مۇھىتنى قوغداش ئۈچۈن نېمىلەرنى قىلالايدىغانلىقىمىز توغرۇلۇق ئويلىنىپ باقايلى.
 | 
				
			||||||
 | 
					1	يەنە	_	ADV	D	_	13	cc	_	Translit=yene
 | 
				
			||||||
 | 
					2	ئەتراپىمىزدىكى	_	NOUN	N	_	3	amod	_	Translit=etrapimizdiki
 | 
				
			||||||
 | 
					3	مۇھىتنى	_	NOUN	N	_	5	obj	_	Translit=muhitni
 | 
				
			||||||
 | 
					4	ياخشى	_	ADJ	A	_	5	advmod	_	Translit=yaxshi
 | 
				
			||||||
 | 
					5	كۆزىتىپ	_	VERB	V	_	13	advcl	_	SpaceAfter=No|Translit=közitip
 | 
				
			||||||
 | 
					6	،	_	PUNCT	Y	_	5	punct	_	Translit=,
 | 
				
			||||||
 | 
					7	مۇھىتنى	_	NOUN	N	_	8	obj	_	Translit=muhitni
 | 
				
			||||||
 | 
					8	قوغداش	_	VERB	V	_	11	advcl	_	Translit=qoghdash
 | 
				
			||||||
 | 
					9	ئۈچۈن	_	CCONJ	C	_	8	case	_	Translit=üchün
 | 
				
			||||||
 | 
					10	نېمىلەرنى	_	PRON	P	_	11	obj	_	Translit=nëmilerni
 | 
				
			||||||
 | 
					11	قىلالايدىغانلىقىمىز	_	VERB	V	_	13	obj	_	Translit=qilalaydighanliqimiz
 | 
				
			||||||
 | 
					12	توغرۇلۇق	_	ADP	R	_	11	case	_	Translit=toghruluq
 | 
				
			||||||
 | 
					13	ئويلىنىپ	_	VERB	V	_	0	root	_	Translit=oylinip
 | 
				
			||||||
 | 
					14	باقايلى	_	VERB	V	_	13	aux	_	SpaceAfter=No|Translit=baqayli
 | 
				
			||||||
 | 
					15	.	_	PUNCT	Y	_	14	punct	_	Translit=.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# sent_id = s4
 | 
				
			||||||
 | 
					# text = بىر يىلى باھار كۈنلىرىنىڭ بىرىدە، شىۋېتسارىيىنىڭ بىر ۋوگزالىدا ھاۋا تەڭشىگۈچ ئورنىتىلغان چىرايلىق، ئازادە بىر پويىز قوزغىلىش ئالدىدا تۇراتتى.
 | 
				
			||||||
 | 
					1	بىر	_	NUM	M	_	2	nummod	_	Translit=bir
 | 
				
			||||||
 | 
					2	يىلى	_	NOUN	N	_	20	nmod:tmod	_	Translit=yili
 | 
				
			||||||
 | 
					3	باھار	_	NOUN	N	_	4	nmod:poss	_	Translit=bahar
 | 
				
			||||||
 | 
					4	كۈنلىرىنىڭ	_	NOUN	N	_	5	nmod:part	_	Translit=künlirining
 | 
				
			||||||
 | 
					5	بىرىدە	_	NUM	M	_	20	nmod:tmod	_	SpaceAfter=No|Translit=biride
 | 
				
			||||||
 | 
					6	،	_	PUNCT	Y	_	5	punct	_	Translit=,
 | 
				
			||||||
 | 
					7	شىۋېتسارىيىنىڭ	_	NOUN	N	_	9	nmod:poss	_	Translit=shiwëtsariyining
 | 
				
			||||||
 | 
					8	بىر	_	NUM	M	_	9	det	_	Translit=bir
 | 
				
			||||||
 | 
					9	ۋوگزالىدا	_	NOUN	N	_	20	obl	_	Translit=wogzalida
 | 
				
			||||||
 | 
					10	ھاۋا	_	NOUN	N	_	11	compound	_	Translit=hawa
 | 
				
			||||||
 | 
					11	تەڭشىگۈچ	_	NOUN	N	_	12	nsubj	_	Translit=tengshigüch
 | 
				
			||||||
 | 
					12	ئورنىتىلغان	_	NOUN	N	_	17	amod	_	Translit=ornitilghan
 | 
				
			||||||
 | 
					13	چىرايلىق	_	ADJ	A	_	17	amod	_	SpaceAfter=No|Translit=chirayliq
 | 
				
			||||||
 | 
					14	،	_	PUNCT	Y	_	13	punct	_	Translit=,
 | 
				
			||||||
 | 
					15	ئازادە	_	ADJ	A	_	13	conj	_	Translit=azade
 | 
				
			||||||
 | 
					16	بىر	_	NUM	M	_	17	det	_	Translit=bir
 | 
				
			||||||
 | 
					17	پويىز	_	NOUN	N	_	20	nsubj	_	Translit=poyiz
 | 
				
			||||||
 | 
					18	قوزغىلىش	_	VERB	V	_	19	nmod:poss	_	Translit=qozghilish
 | 
				
			||||||
 | 
					19	ئالدىدا	_	NOUN	N	_	20	obl	_	Translit=aldida
 | 
				
			||||||
 | 
					20	تۇراتتى	_	VERB	V	_	0	root	_	SpaceAfter=No|Translit=turatti
 | 
				
			||||||
 | 
					21	.	_	PUNCT	Y	_	20	punct	_	Translit=.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# sent_id = s5
 | 
				
			||||||
 | 
					# text = ۋوگزال سۇپىسى ئۇزاتقۇچىلار بىلەن تولۇپ كەتكەنىدى.
 | 
				
			||||||
 | 
					1	ۋوگزال	_	NOUN	N	_	2	nmod:poss	_	Translit=wogzal
 | 
				
			||||||
 | 
					2	سۇپىسى	_	NOUN	N	_	5	nsubj	_	Translit=supisi
 | 
				
			||||||
 | 
					3	ئۇزاتقۇچىلار	_	NOUN	N	_	5	obl	_	Translit=uzatquchilar
 | 
				
			||||||
 | 
					4	بىلەن	_	ADP	R	_	3	case	_	Translit=bilen
 | 
				
			||||||
 | 
					5	تولۇپ	_	VERB	V	_	0	root	_	Translit=tolup
 | 
				
			||||||
 | 
					6	كەتكەنىدى	_	VERB	V	_	5	aux	_	SpaceAfter=No|Translit=ketkenidi
 | 
				
			||||||
 | 
					7	.	_	PUNCT	Y	_	6	punct	_	Translit=.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# sent_id = s6
 | 
				
			||||||
 | 
					# text = ئۇلارنىڭ ئۇزاتماقچى بولغىنى ئۆزگىچە مىھمان - قارلىغاچلار ئىدى.
 | 
				
			||||||
 | 
					1	ئۇلارنىڭ	_	PRON	P	_	2	nsubj	_	Translit=ularning
 | 
				
			||||||
 | 
					2	ئۇزاتماقچى	_	NOUN	N	_	5	acl	_	Translit=uzatmaqchi
 | 
				
			||||||
 | 
					3	بولغىنى	_	AUX	V	_	2	cop	_	Translit=bolghini
 | 
				
			||||||
 | 
					4	ئۆزگىچە	_	ADJ	A	_	5	amod	_	Translit=özgiche
 | 
				
			||||||
 | 
					5	مىھمان	_	NOUN	N	_	7	appos	_	Translit=mihman
 | 
				
			||||||
 | 
					6	-	_	PUNCT	Y	_	5	punct	_	Translit=-
 | 
				
			||||||
 | 
					7	قارلىغاچلار	_	NOUN	N	_	0	root	_	Translit=qarlighachlar
 | 
				
			||||||
 | 
					8	ئىدى	_	AUX	V	_	7	cop	_	SpaceAfter=No|Translit=idi
 | 
				
			||||||
 | 
					9	.	_	PUNCT	Y	_	8	punct	_	Translit=.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										38
									
								
								samples/HTML+Django/_worker.jinja2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								samples/HTML+Django/_worker.jinja2
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,38 @@
 | 
				
			|||||||
 | 
					<h1>Workers</h1>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<table class="workers">
 | 
				
			||||||
 | 
					  <tr>
 | 
				
			||||||
 | 
					    <th>Job server</th>
 | 
				
			||||||
 | 
					    <th>IP</th>
 | 
				
			||||||
 | 
					    <th>File descriptor</th>
 | 
				
			||||||
 | 
					    <th>Client ID</th>
 | 
				
			||||||
 | 
					    <th>Functions</th>
 | 
				
			||||||
 | 
					  </tr>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					{% for server_info in server_infos %}
 | 
				
			||||||
 | 
					  <tr {% if server_info['failed'] %} class="failure" {% endif %} >
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    <th>{{ server_info['hostport'][0] }}:{{ server_info['hostport'][1] }}</th>
 | 
				
			||||||
 | 
					    <th>
 | 
				
			||||||
 | 
					      {%- if server_info['failed'] -%} Not responding! {%- endif -%}
 | 
				
			||||||
 | 
					    </th>
 | 
				
			||||||
 | 
					    <th></th>
 | 
				
			||||||
 | 
					    <th></th>
 | 
				
			||||||
 | 
					    <th></th>
 | 
				
			||||||
 | 
					  </tr>
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  {% if not server_info['failed'] %}
 | 
				
			||||||
 | 
					    {% for worker in server_info['workers'] %}
 | 
				
			||||||
 | 
					    <tr>
 | 
				
			||||||
 | 
					      <td class="server"></td>
 | 
				
			||||||
 | 
					      <td class="ip">{{ worker['ip'] }}</td>
 | 
				
			||||||
 | 
					      <td class="file_descriptor">{{ worker['file_descriptor'] }}</td>
 | 
				
			||||||
 | 
					      <td class="client_id">{{ worker['client_id'] }}</td>
 | 
				
			||||||
 | 
					      <td class="functions">
 | 
				
			||||||
 | 
					        {{ worker['tasks']|join(', ') }}
 | 
				
			||||||
 | 
					      </td>
 | 
				
			||||||
 | 
					    </tr>
 | 
				
			||||||
 | 
					    {% endfor %}
 | 
				
			||||||
 | 
					  {% endif %}
 | 
				
			||||||
 | 
					{% endfor %}
 | 
				
			||||||
 | 
					</table>
 | 
				
			||||||
							
								
								
									
										10
									
								
								samples/HXML/checkstyle.hxml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								samples/HXML/checkstyle.hxml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
				
			|||||||
 | 
					buildGlobal.hxml
 | 
				
			||||||
 | 
					-lib mcover:2.1.1
 | 
				
			||||||
 | 
					-D unittest
 | 
				
			||||||
 | 
					-x TestMain
 | 
				
			||||||
 | 
					--macro mcover.MCover.coverage(['checkstyle'], ['src'], ['checkstyle.reporter', 'checkstyle.Main'])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					--next
 | 
				
			||||||
 | 
					-cmd neko run -s src -s test -p resources/static-analysis.txt
 | 
				
			||||||
 | 
					-cmd neko run --default-config resources/default-config.json
 | 
				
			||||||
 | 
					-cmd neko run -c resources/default-config.json
 | 
				
			||||||
							
								
								
									
										31
									
								
								samples/HXML/vshaxe.hxml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								samples/HXML/vshaxe.hxml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,31 @@
 | 
				
			|||||||
 | 
					# This file is generated with vshaxe-build - DO NOT EDIT MANUALLY!
 | 
				
			||||||
 | 
					-cp vscode-extern/src
 | 
				
			||||||
 | 
					-cp src-api
 | 
				
			||||||
 | 
					-cp src
 | 
				
			||||||
 | 
					-cp server/src
 | 
				
			||||||
 | 
					-cp server/protocol/src
 | 
				
			||||||
 | 
					-cp server/formatter/src
 | 
				
			||||||
 | 
					-cp server/test
 | 
				
			||||||
 | 
					-cp server/formatter/test
 | 
				
			||||||
 | 
					-cp syntaxes/src
 | 
				
			||||||
 | 
					-D analyzer-optimize
 | 
				
			||||||
 | 
					-D js_unflatten
 | 
				
			||||||
 | 
					-D hxnodejs-no-version-warning
 | 
				
			||||||
 | 
					-D JSTACK_MAIN=vshaxe.Main.main
 | 
				
			||||||
 | 
					-D JSTACK_ASYNC_ENTRY
 | 
				
			||||||
 | 
					-D JSTACK_FORMAT=vscode
 | 
				
			||||||
 | 
					-lib hxnodejs
 | 
				
			||||||
 | 
					-lib jstack
 | 
				
			||||||
 | 
					-lib haxe-hxparser
 | 
				
			||||||
 | 
					-lib compiletime
 | 
				
			||||||
 | 
					-lib mockatoo
 | 
				
			||||||
 | 
					-lib mconsole
 | 
				
			||||||
 | 
					-lib hx3compat
 | 
				
			||||||
 | 
					-lib hxargs
 | 
				
			||||||
 | 
					-lib json2object
 | 
				
			||||||
 | 
					-lib yaml
 | 
				
			||||||
 | 
					-lib plist
 | 
				
			||||||
 | 
					-debug
 | 
				
			||||||
 | 
					-js bin/build.js
 | 
				
			||||||
 | 
					--no-inline
 | 
				
			||||||
 | 
					-main Build
 | 
				
			||||||
							
								
								
									
										136
									
								
								samples/JSON/Material_Alpha_01.gltf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										136
									
								
								samples/JSON/Material_Alpha_01.gltf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,136 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
						"accessors": [
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"bufferView": 0,
 | 
				
			||||||
 | 
								"componentType": 5126,
 | 
				
			||||||
 | 
								"count": 4,
 | 
				
			||||||
 | 
								"type": "VEC3",
 | 
				
			||||||
 | 
								"max": [
 | 
				
			||||||
 | 
									0.5,
 | 
				
			||||||
 | 
									0.5,
 | 
				
			||||||
 | 
									0.0
 | 
				
			||||||
 | 
								],
 | 
				
			||||||
 | 
								"min": [
 | 
				
			||||||
 | 
									-0.5,
 | 
				
			||||||
 | 
									-0.5,
 | 
				
			||||||
 | 
									0.0
 | 
				
			||||||
 | 
								],
 | 
				
			||||||
 | 
								"name": "Positions Accessor"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"bufferView": 1,
 | 
				
			||||||
 | 
								"componentType": 5126,
 | 
				
			||||||
 | 
								"count": 4,
 | 
				
			||||||
 | 
								"type": "VEC4",
 | 
				
			||||||
 | 
								"name": "Colors Accessor"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"bufferView": 2,
 | 
				
			||||||
 | 
								"componentType": 5126,
 | 
				
			||||||
 | 
								"count": 4,
 | 
				
			||||||
 | 
								"type": "VEC2",
 | 
				
			||||||
 | 
								"name": "UV Accessor 0"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"bufferView": 3,
 | 
				
			||||||
 | 
								"componentType": 5125,
 | 
				
			||||||
 | 
								"count": 6,
 | 
				
			||||||
 | 
								"type": "SCALAR",
 | 
				
			||||||
 | 
								"name": "Indices Accessor"
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"asset": {
 | 
				
			||||||
 | 
							"generator": "glTF Asset Generator",
 | 
				
			||||||
 | 
							"version": "2.0",
 | 
				
			||||||
 | 
							"extras": {
 | 
				
			||||||
 | 
								"Attributes": "VertexColor_Vector4_Float - AlphaMode_Mask - AlphaCutoff - DoubleSided - BaseColorFactor - BaseColorTexture"
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						"buffers": [
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"uri": "Material_Alpha_01.bin",
 | 
				
			||||||
 | 
								"byteLength": 168
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"bufferViews": [
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"buffer": 0,
 | 
				
			||||||
 | 
								"byteLength": 48,
 | 
				
			||||||
 | 
								"name": "Positions"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"buffer": 0,
 | 
				
			||||||
 | 
								"byteOffset": 48,
 | 
				
			||||||
 | 
								"byteLength": 64,
 | 
				
			||||||
 | 
								"name": "Colors"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"buffer": 0,
 | 
				
			||||||
 | 
								"byteOffset": 112,
 | 
				
			||||||
 | 
								"byteLength": 32,
 | 
				
			||||||
 | 
								"name": "Texture Coords 0"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"buffer": 0,
 | 
				
			||||||
 | 
								"byteOffset": 144,
 | 
				
			||||||
 | 
								"byteLength": 24,
 | 
				
			||||||
 | 
								"name": "Indices"
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"images": [
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"uri": "Texture_baseColor.png"
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"materials": [
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"pbrMetallicRoughness": {
 | 
				
			||||||
 | 
									"baseColorFactor": [
 | 
				
			||||||
 | 
										1.0,
 | 
				
			||||||
 | 
										1.0,
 | 
				
			||||||
 | 
										1.0,
 | 
				
			||||||
 | 
										0.6
 | 
				
			||||||
 | 
									],
 | 
				
			||||||
 | 
									"baseColorTexture": {
 | 
				
			||||||
 | 
										"index": 0
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								},
 | 
				
			||||||
 | 
								"alphaMode": "MASK",
 | 
				
			||||||
 | 
								"alphaCutoff": 0.7,
 | 
				
			||||||
 | 
								"doubleSided": true
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"meshes": [
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"primitives": [
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										"attributes": {
 | 
				
			||||||
 | 
											"POSITION": 0,
 | 
				
			||||||
 | 
											"COLOR_0": 1,
 | 
				
			||||||
 | 
											"TEXCOORD_0": 2
 | 
				
			||||||
 | 
										},
 | 
				
			||||||
 | 
										"indices": 3,
 | 
				
			||||||
 | 
										"material": 0
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								]
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"nodes": [
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"mesh": 0
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"scene": 0,
 | 
				
			||||||
 | 
						"scenes": [
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"nodes": [
 | 
				
			||||||
 | 
									0
 | 
				
			||||||
 | 
								]
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"textures": [
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"source": 0
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						]
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										25
									
								
								samples/JSON/filenames/.htmlhintrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								samples/JSON/filenames/.htmlhintrc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
						"alt-require": true,
 | 
				
			||||||
 | 
						"attr-lowercase": true,
 | 
				
			||||||
 | 
						"attr-no-duplication": true,
 | 
				
			||||||
 | 
						"attr-unsafe-chars": true,
 | 
				
			||||||
 | 
						"attr-value-double-quotes": true,
 | 
				
			||||||
 | 
						"attr-value-not-empty": false,
 | 
				
			||||||
 | 
						"doctype-first": true,
 | 
				
			||||||
 | 
						"doctype-html5": true,
 | 
				
			||||||
 | 
						"head-script-disabled": false,
 | 
				
			||||||
 | 
						"href-abs-or-rel": false,
 | 
				
			||||||
 | 
						"id-class-ad-disabled": true,
 | 
				
			||||||
 | 
						"id-class-value": false,
 | 
				
			||||||
 | 
						"id-unique": true,
 | 
				
			||||||
 | 
						"inline-script-disabled": true,
 | 
				
			||||||
 | 
						"inline-style-disabled": true,
 | 
				
			||||||
 | 
						"space-tab-mixed-disabled": "space",
 | 
				
			||||||
 | 
						"spec-char-escape": true,
 | 
				
			||||||
 | 
						"src-not-empty": true,
 | 
				
			||||||
 | 
						"style-disabled": false,
 | 
				
			||||||
 | 
						"tag-pair": true,
 | 
				
			||||||
 | 
						"tag-self-close": false,
 | 
				
			||||||
 | 
						"tagname-lowercase": true,
 | 
				
			||||||
 | 
						"title-require": true
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										88
									
								
								samples/JSON/filenames/.jscsrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								samples/JSON/filenames/.jscsrc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,88 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
						"requireCurlyBraces": [
 | 
				
			||||||
 | 
							"if",
 | 
				
			||||||
 | 
							"else",
 | 
				
			||||||
 | 
							"for",
 | 
				
			||||||
 | 
							"while",
 | 
				
			||||||
 | 
							"do",
 | 
				
			||||||
 | 
							"try",
 | 
				
			||||||
 | 
							"catch"
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"requireSpaceAfterKeywords": [
 | 
				
			||||||
 | 
							"if",
 | 
				
			||||||
 | 
							"else",
 | 
				
			||||||
 | 
							"for",
 | 
				
			||||||
 | 
							"while",
 | 
				
			||||||
 | 
							"do",
 | 
				
			||||||
 | 
							"switch",
 | 
				
			||||||
 | 
							"case",
 | 
				
			||||||
 | 
							"return",
 | 
				
			||||||
 | 
							"try",
 | 
				
			||||||
 | 
							"catch",
 | 
				
			||||||
 | 
							"typeof"
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"requireSpaceBeforeBlockStatements": true,
 | 
				
			||||||
 | 
						"requireParenthesesAroundIIFE": true,
 | 
				
			||||||
 | 
						"requireSpacesInConditionalExpression": true,
 | 
				
			||||||
 | 
						"disallowSpacesInNamedFunctionExpression": {
 | 
				
			||||||
 | 
							"beforeOpeningRoundBrace": true
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						"disallowSpacesInFunctionDeclaration": {
 | 
				
			||||||
 | 
							"beforeOpeningRoundBrace": true
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						"requireSpaceBetweenArguments": true,
 | 
				
			||||||
 | 
						"requireBlocksOnNewline": true,
 | 
				
			||||||
 | 
						"disallowEmptyBlocks": true,
 | 
				
			||||||
 | 
						"disallowSpacesInsideArrayBrackets": true,
 | 
				
			||||||
 | 
						"disallowSpacesInsideParentheses": true,
 | 
				
			||||||
 | 
						"disallowDanglingUnderscores": true,
 | 
				
			||||||
 | 
						"requireCommaBeforeLineBreak": true,
 | 
				
			||||||
 | 
						"disallowSpacesInCallExpression": true,
 | 
				
			||||||
 | 
						"disallowSpaceAfterPrefixUnaryOperators": true,
 | 
				
			||||||
 | 
						"disallowSpaceBeforePostfixUnaryOperators": true,
 | 
				
			||||||
 | 
						"disallowSpaceBeforeBinaryOperators": [
 | 
				
			||||||
 | 
							","
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"requireSpacesInForStatement": true,
 | 
				
			||||||
 | 
						"requireSpaceBeforeBinaryOperators": true,
 | 
				
			||||||
 | 
						"requireSpaceAfterBinaryOperators": true,
 | 
				
			||||||
 | 
						"disallowKeywords": [
 | 
				
			||||||
 | 
							"with"
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"disallowMixedSpacesAndTabs": true,
 | 
				
			||||||
 | 
						"disallowTrailingWhitespace": true,
 | 
				
			||||||
 | 
						"disallowKeywordsOnNewLine": [
 | 
				
			||||||
 | 
							"else"
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"requireLineFeedAtFileEnd": true,
 | 
				
			||||||
 | 
						"requireCapitalizedConstructors": true,
 | 
				
			||||||
 | 
						"requireDotNotation": true,
 | 
				
			||||||
 | 
						"disallowNewlineBeforeBlockStatements": true,
 | 
				
			||||||
 | 
						"disallowMultipleLineStrings": true,
 | 
				
			||||||
 | 
						"requireSpaceBeforeObjectValues": true,
 | 
				
			||||||
 | 
						"validateQuoteMarks": "'",
 | 
				
			||||||
 | 
						"requireSpaceAfterLineComment": true,
 | 
				
			||||||
 | 
						"validateIndentation": 2,
 | 
				
			||||||
 | 
						"validateLineBreaks": "LF",
 | 
				
			||||||
 | 
						"disallowSpacesInFunction": {
 | 
				
			||||||
 | 
							"beforeOpeningRoundBrace": true
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						"requireSpacesInFunction": {
 | 
				
			||||||
 | 
							"beforeOpeningCurlyBrace": true
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						"disallowMultipleLineBreaks": true,
 | 
				
			||||||
 | 
						"disallowYodaConditions": true,
 | 
				
			||||||
 | 
						"disallowFunctionDeclarations": true,
 | 
				
			||||||
 | 
						"disallowMultipleVarDecl": "exceptUndefined",
 | 
				
			||||||
 | 
						"requirePaddingNewlinesBeforeKeywords": [
 | 
				
			||||||
 | 
							"do",
 | 
				
			||||||
 | 
							"for",
 | 
				
			||||||
 | 
							"if",
 | 
				
			||||||
 | 
							"switch",
 | 
				
			||||||
 | 
							"try",
 | 
				
			||||||
 | 
							"void",
 | 
				
			||||||
 | 
							"while",
 | 
				
			||||||
 | 
							"return"
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"excludeFiles": ["**/node_modules/**", "**/min/**", "**/*.min.js"]
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										19
									
								
								samples/JSON/filenames/.tern-config
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								samples/JSON/filenames/.tern-config
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
						"ecmaVersion": 6,
 | 
				
			||||||
 | 
						"libs": [
 | 
				
			||||||
 | 
							"browser",
 | 
				
			||||||
 | 
							"jquery"
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"dontLoad": [
 | 
				
			||||||
 | 
							"node_modules/**"
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"plugins": {
 | 
				
			||||||
 | 
							"es_modules": {},
 | 
				
			||||||
 | 
							"node": {},
 | 
				
			||||||
 | 
							"angular": {},
 | 
				
			||||||
 | 
							"doc_comment": {
 | 
				
			||||||
 | 
								"fullDocs": true,
 | 
				
			||||||
 | 
								"strong": true
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										15
									
								
								samples/JSON/filenames/.tern-project
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								samples/JSON/filenames/.tern-project
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,15 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
						"ecmaVersion": 6,
 | 
				
			||||||
 | 
						"libs": [],
 | 
				
			||||||
 | 
						"loadEagerly": [
 | 
				
			||||||
 | 
							"src/app/**/*.js"
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"dontLoad": [
 | 
				
			||||||
 | 
							"node_modules"
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"plugins": {
 | 
				
			||||||
 | 
							"requirejs": {
 | 
				
			||||||
 | 
								"baseURL": "src"
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										18
									
								
								samples/JSON/http_response.avsc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								samples/JSON/http_response.avsc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
					    "type": "record",
 | 
				
			||||||
 | 
					    "name": "Response",
 | 
				
			||||||
 | 
					    "namespace": "org.rflow.message.data.http",
 | 
				
			||||||
 | 
					    "aliases": [],
 | 
				
			||||||
 | 
					    "fields": [
 | 
				
			||||||
 | 
					        {"name": "client_ip",    "type": ["string", "null"]},
 | 
				
			||||||
 | 
					        {"name": "client_port",  "type": ["int", "null"]},
 | 
				
			||||||
 | 
					        {"name": "server_ip",    "type": ["string", "null"]},
 | 
				
			||||||
 | 
					        {"name": "server_port",  "type": ["int", "null"]},
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        {"name": "protocol",             "type": "string"},
 | 
				
			||||||
 | 
					        {"name": "status_code",          "type": "int"},
 | 
				
			||||||
 | 
					        {"name": "status_reason_phrase", "type": "string"},
 | 
				
			||||||
 | 
					        {"name": "headers",              "type": {"type": "map", "values": "string"}},
 | 
				
			||||||
 | 
					        {"name": "content",              "type": "bytes"}
 | 
				
			||||||
 | 
					    ]
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										19
									
								
								samples/JSON/manifest.webapp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								samples/JSON/manifest.webapp
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
						"version": "1.0",
 | 
				
			||||||
 | 
						"name": "demo",
 | 
				
			||||||
 | 
						"description": "demo",
 | 
				
			||||||
 | 
						"launch_path": "/index.html",
 | 
				
			||||||
 | 
						"icons": {
 | 
				
			||||||
 | 
							"128": "/res/icon.png"
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						"developer": {
 | 
				
			||||||
 | 
							"name": "Cocos2d-html5",
 | 
				
			||||||
 | 
							"url": "http://cocos2d-x.org/"
 | 
				
			||||||
 | 
						},
 | 
				
			||||||
 | 
						"default_locale": "en",
 | 
				
			||||||
 | 
						"installs_allowed_from": [
 | 
				
			||||||
 | 
							"*"
 | 
				
			||||||
 | 
						],
 | 
				
			||||||
 | 
						"orientation": "portrait-primary",
 | 
				
			||||||
 | 
						"fullscreen": "true"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										56
									
								
								samples/JSON/manifest.webmanifest
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								samples/JSON/manifest.webmanifest
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,56 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
						"short_name": "CC Splitter",
 | 
				
			||||||
 | 
						"name": "Credit Card Splitter",
 | 
				
			||||||
 | 
						"start_url": "./index.html",
 | 
				
			||||||
 | 
						"display": "standalone",
 | 
				
			||||||
 | 
						"theme_color": "#000000",
 | 
				
			||||||
 | 
						"background_color": "#ffffff",
 | 
				
			||||||
 | 
						"lang": "en-GB",
 | 
				
			||||||
 | 
						"icons": [
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"src": "logo-16.png",
 | 
				
			||||||
 | 
								"sizes": "16x16",
 | 
				
			||||||
 | 
								"type": "image/png"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"src": "logo-36.png",
 | 
				
			||||||
 | 
								"sizes": "36x36",
 | 
				
			||||||
 | 
								"type": "image/png"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"src": "logo-48.png",
 | 
				
			||||||
 | 
								"sizes": "48x48",
 | 
				
			||||||
 | 
								"type": "image/png"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"src": "logo-72.png",
 | 
				
			||||||
 | 
								"sizes": "72x72",
 | 
				
			||||||
 | 
								"type": "image/png"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"src": "logo-96.png",
 | 
				
			||||||
 | 
								"sizes": "96x96",
 | 
				
			||||||
 | 
								"type": "image/png"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"src": "logo-144.png",
 | 
				
			||||||
 | 
								"sizes": "144x144",
 | 
				
			||||||
 | 
								"type": "image/png"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"src": "logo-192.png",
 | 
				
			||||||
 | 
								"sizes": "192x192",
 | 
				
			||||||
 | 
								"type": "image/png"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"src": "logo-250.png",
 | 
				
			||||||
 | 
								"sizes": "250x250",
 | 
				
			||||||
 | 
								"type": "image/png"
 | 
				
			||||||
 | 
							},
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								"src": "logo-512.png",
 | 
				
			||||||
 | 
								"sizes": "512x512",
 | 
				
			||||||
 | 
								"type": "image/png"
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						]
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										122
									
								
								samples/JSON/small.tfstate
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										122
									
								
								samples/JSON/small.tfstate
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,122 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
							"version": 1,
 | 
				
			||||||
 | 
							"serial": 12,
 | 
				
			||||||
 | 
							"modules": [
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
											"path": [
 | 
				
			||||||
 | 
													"root"
 | 
				
			||||||
 | 
											],
 | 
				
			||||||
 | 
											"outputs": {
 | 
				
			||||||
 | 
													"public_az1_subnet_id": "subnet-d658bba0",
 | 
				
			||||||
 | 
													"region": "us-west-2",
 | 
				
			||||||
 | 
													"vpc_cidr": "10.201.0.0/16",
 | 
				
			||||||
 | 
													"vpc_id": "vpc-65814701"
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
											"resources": {
 | 
				
			||||||
 | 
													"aws_key_pair.onprem": {
 | 
				
			||||||
 | 
															"type": "aws_key_pair",
 | 
				
			||||||
 | 
															"primary": {
 | 
				
			||||||
 | 
																	"id": "onprem",
 | 
				
			||||||
 | 
																	"attributes": {
 | 
				
			||||||
 | 
																			"id": "onprem",
 | 
				
			||||||
 | 
																			"key_name": "onprem",
 | 
				
			||||||
 | 
																			"public_key": "foo"
 | 
				
			||||||
 | 
																	},
 | 
				
			||||||
 | 
																	"meta": {
 | 
				
			||||||
 | 
																			"schema_version": "1"
 | 
				
			||||||
 | 
																	}
 | 
				
			||||||
 | 
															}
 | 
				
			||||||
 | 
													}
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
									},
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
											"path": [
 | 
				
			||||||
 | 
													"root",
 | 
				
			||||||
 | 
													"bootstrap"
 | 
				
			||||||
 | 
											],
 | 
				
			||||||
 | 
											"outputs": {
 | 
				
			||||||
 | 
													"consul_bootstrap_dns": "consul.bootstrap"
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
											"resources": {
 | 
				
			||||||
 | 
													"aws_route53_record.oasis-consul-bootstrap-a": {
 | 
				
			||||||
 | 
															"type": "aws_route53_record",
 | 
				
			||||||
 | 
															"depends_on": [
 | 
				
			||||||
 | 
																	"aws_route53_zone.oasis-consul-bootstrap"
 | 
				
			||||||
 | 
															],
 | 
				
			||||||
 | 
															"primary": {
 | 
				
			||||||
 | 
																	"id": "Z68734P5178QN_consul.bootstrap_A",
 | 
				
			||||||
 | 
																	"attributes": {
 | 
				
			||||||
 | 
																			"failover": "",
 | 
				
			||||||
 | 
																			"fqdn": "consul.bootstrap",
 | 
				
			||||||
 | 
																			"health_check_id": "",
 | 
				
			||||||
 | 
																			"id": "Z68734P5178QN_consul.bootstrap_A",
 | 
				
			||||||
 | 
																			"name": "consul.bootstrap",
 | 
				
			||||||
 | 
																			"records.#": "6",
 | 
				
			||||||
 | 
																			"records.1148461392": "10.201.3.8",
 | 
				
			||||||
 | 
																			"records.1169574759": "10.201.2.8",
 | 
				
			||||||
 | 
																			"records.1206973758": "10.201.1.8",
 | 
				
			||||||
 | 
																			"records.1275070284": "10.201.2.4",
 | 
				
			||||||
 | 
																			"records.1304587643": "10.201.3.4",
 | 
				
			||||||
 | 
																			"records.1313257749": "10.201.1.4",
 | 
				
			||||||
 | 
																			"set_identifier": "",
 | 
				
			||||||
 | 
																			"ttl": "300",
 | 
				
			||||||
 | 
																			"type": "A",
 | 
				
			||||||
 | 
																			"weight": "-1",
 | 
				
			||||||
 | 
																			"zone_id": "Z68734P5178QN"
 | 
				
			||||||
 | 
																	}
 | 
				
			||||||
 | 
															}
 | 
				
			||||||
 | 
													},
 | 
				
			||||||
 | 
													"aws_route53_record.oasis-consul-bootstrap-ns": {
 | 
				
			||||||
 | 
															"type": "aws_route53_record",
 | 
				
			||||||
 | 
															"depends_on": [
 | 
				
			||||||
 | 
																	"aws_route53_zone.oasis-consul-bootstrap",
 | 
				
			||||||
 | 
																	"aws_route53_zone.oasis-consul-bootstrap",
 | 
				
			||||||
 | 
																	"aws_route53_zone.oasis-consul-bootstrap",
 | 
				
			||||||
 | 
																	"aws_route53_zone.oasis-consul-bootstrap",
 | 
				
			||||||
 | 
																	"aws_route53_zone.oasis-consul-bootstrap"
 | 
				
			||||||
 | 
															],
 | 
				
			||||||
 | 
															"primary": {
 | 
				
			||||||
 | 
																	"id": "Z68734P5178QN_consul.bootstrap_NS",
 | 
				
			||||||
 | 
																	"attributes": {
 | 
				
			||||||
 | 
																			"failover": "",
 | 
				
			||||||
 | 
																			"fqdn": "consul.bootstrap",
 | 
				
			||||||
 | 
																			"health_check_id": "",
 | 
				
			||||||
 | 
																			"id": "Z68734P5178QN_consul.bootstrap_NS",
 | 
				
			||||||
 | 
																			"name": "consul.bootstrap",
 | 
				
			||||||
 | 
																			"records.#": "4",
 | 
				
			||||||
 | 
																			"records.1796532126": "ns-512.awsdns-00.net.",
 | 
				
			||||||
 | 
																			"records.2728059479": "ns-1536.awsdns-00.co.uk.",
 | 
				
			||||||
 | 
																			"records.4092160370": "ns-1024.awsdns-00.org.",
 | 
				
			||||||
 | 
																			"records.456007465": "ns-0.awsdns-00.com.",
 | 
				
			||||||
 | 
																			"set_identifier": "",
 | 
				
			||||||
 | 
																			"ttl": "30",
 | 
				
			||||||
 | 
																			"type": "NS",
 | 
				
			||||||
 | 
																			"weight": "-1",
 | 
				
			||||||
 | 
																			"zone_id": "Z68734P5178QN"
 | 
				
			||||||
 | 
																	}
 | 
				
			||||||
 | 
															}
 | 
				
			||||||
 | 
													},
 | 
				
			||||||
 | 
													"aws_route53_zone.oasis-consul-bootstrap": {
 | 
				
			||||||
 | 
															"type": "aws_route53_zone",
 | 
				
			||||||
 | 
															"primary": {
 | 
				
			||||||
 | 
																	"id": "Z68734P5178QN",
 | 
				
			||||||
 | 
																	"attributes": {
 | 
				
			||||||
 | 
																			"comment": "Used to bootstrap consul dns",
 | 
				
			||||||
 | 
																			"id": "Z68734P5178QN",
 | 
				
			||||||
 | 
																			"name": "consul.bootstrap",
 | 
				
			||||||
 | 
																			"name_servers.#": "4",
 | 
				
			||||||
 | 
																			"name_servers.0": "ns-0.awsdns-00.com.",
 | 
				
			||||||
 | 
																			"name_servers.1": "ns-1024.awsdns-00.org.",
 | 
				
			||||||
 | 
																			"name_servers.2": "ns-1536.awsdns-00.co.uk.",
 | 
				
			||||||
 | 
																			"name_servers.3": "ns-512.awsdns-00.net.",
 | 
				
			||||||
 | 
																			"tags.#": "0",
 | 
				
			||||||
 | 
																			"vpc_id": "vpc-65814701",
 | 
				
			||||||
 | 
																			"vpc_region": "us-west-2",
 | 
				
			||||||
 | 
																			"zone_id": "Z68734P5178QN"
 | 
				
			||||||
 | 
																	}
 | 
				
			||||||
 | 
															}
 | 
				
			||||||
 | 
													}
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
							]
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										77
									
								
								samples/JSON/terraform.tfstate.backup
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										77
									
								
								samples/JSON/terraform.tfstate.backup
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,77 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
							"version": 3,
 | 
				
			||||||
 | 
							"terraform_version": "0.11.2",
 | 
				
			||||||
 | 
							"serial": 5,
 | 
				
			||||||
 | 
							"lineage": "5ffde9fb-4814-4609-a8a6-f1054f1779c1",
 | 
				
			||||||
 | 
							"modules": [
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
											"path": [
 | 
				
			||||||
 | 
													"root"
 | 
				
			||||||
 | 
											],
 | 
				
			||||||
 | 
											"outputs": {},
 | 
				
			||||||
 | 
											"resources": {
 | 
				
			||||||
 | 
													"aws_iam_role.iam_for_lambda": {
 | 
				
			||||||
 | 
															"type": "aws_iam_role",
 | 
				
			||||||
 | 
															"depends_on": [],
 | 
				
			||||||
 | 
															"primary": {
 | 
				
			||||||
 | 
																	"id": "iam_for_lambda",
 | 
				
			||||||
 | 
																	"attributes": {
 | 
				
			||||||
 | 
																			"arn": "arn:aws:iam::387412527620:role/iam_for_lambda",
 | 
				
			||||||
 | 
																			"assume_role_policy": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"\",\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"lambda.amazonaws.com\"},\"Action\":\"sts:AssumeRole\"}]}",
 | 
				
			||||||
 | 
																			"create_date": "2018-01-27T04:05:27Z",
 | 
				
			||||||
 | 
																			"force_detach_policies": "false",
 | 
				
			||||||
 | 
																			"id": "iam_for_lambda",
 | 
				
			||||||
 | 
																			"name": "iam_for_lambda",
 | 
				
			||||||
 | 
																			"path": "/",
 | 
				
			||||||
 | 
																			"unique_id": "AROAINXWJF2AIJOZMQXOE"
 | 
				
			||||||
 | 
																	},
 | 
				
			||||||
 | 
																	"meta": {},
 | 
				
			||||||
 | 
																	"tainted": false
 | 
				
			||||||
 | 
															},
 | 
				
			||||||
 | 
															"deposed": [],
 | 
				
			||||||
 | 
															"provider": "provider.aws"
 | 
				
			||||||
 | 
													},
 | 
				
			||||||
 | 
													"aws_lambda_function.query-fitbit": {
 | 
				
			||||||
 | 
															"type": "aws_lambda_function",
 | 
				
			||||||
 | 
															"depends_on": [
 | 
				
			||||||
 | 
																	"aws_iam_role.iam_for_lambda"
 | 
				
			||||||
 | 
															],
 | 
				
			||||||
 | 
															"primary": {
 | 
				
			||||||
 | 
																	"id": "query-fitbit",
 | 
				
			||||||
 | 
																	"attributes": {
 | 
				
			||||||
 | 
																			"arn": "arn:aws:lambda:us-east-1:387412527620:function:query-fitbit",
 | 
				
			||||||
 | 
																			"dead_letter_config.#": "0",
 | 
				
			||||||
 | 
																			"description": "",
 | 
				
			||||||
 | 
																			"environment.#": "0",
 | 
				
			||||||
 | 
																			"filename": "../lambda/query-fitbit.zip",
 | 
				
			||||||
 | 
																			"function_name": "query-fitbit",
 | 
				
			||||||
 | 
																			"handler": "exports.handler",
 | 
				
			||||||
 | 
																			"id": "query-fitbit",
 | 
				
			||||||
 | 
																			"invoke_arn": "arn:aws:apigateway:us-east-1:lambda:path/2015-03-31/functions/arn:aws:lambda:us-east-1:387412527620:function:query-fitbit/invocations",
 | 
				
			||||||
 | 
																			"kms_key_arn": "",
 | 
				
			||||||
 | 
																			"last_modified": "2018-01-27T04:11:31.185+0000",
 | 
				
			||||||
 | 
																			"memory_size": "128",
 | 
				
			||||||
 | 
																			"publish": "false",
 | 
				
			||||||
 | 
																			"qualified_arn": "arn:aws:lambda:us-east-1:387412527620:function:query-fitbit:$LATEST",
 | 
				
			||||||
 | 
																			"reserved_concurrent_executions": "0",
 | 
				
			||||||
 | 
																			"role": "arn:aws:iam::387412527620:role/iam_for_lambda",
 | 
				
			||||||
 | 
																			"runtime": "nodejs6.10",
 | 
				
			||||||
 | 
																			"source_code_hash": "mNFY3lZD4jFsVq/f353zMD9MLSBvoaEbObIB1KBnxq4=",
 | 
				
			||||||
 | 
																			"tags.%": "0",
 | 
				
			||||||
 | 
																			"timeout": "3",
 | 
				
			||||||
 | 
																			"tracing_config.#": "1",
 | 
				
			||||||
 | 
																			"tracing_config.0.mode": "PassThrough",
 | 
				
			||||||
 | 
																			"version": "$LATEST",
 | 
				
			||||||
 | 
																			"vpc_config.#": "0"
 | 
				
			||||||
 | 
																	},
 | 
				
			||||||
 | 
																	"meta": {},
 | 
				
			||||||
 | 
																	"tainted": false
 | 
				
			||||||
 | 
															},
 | 
				
			||||||
 | 
															"deposed": [],
 | 
				
			||||||
 | 
															"provider": "provider.aws"
 | 
				
			||||||
 | 
													}
 | 
				
			||||||
 | 
											},
 | 
				
			||||||
 | 
											"depends_on": []
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
							]
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										23
									
								
								samples/JSON5/filenames/.jslintrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								samples/JSON5/filenames/.jslintrc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
				
			|||||||
 | 
					{
 | 
				
			||||||
 | 
						"indent": 4,
 | 
				
			||||||
 | 
						"maxlen": 120,
 | 
				
			||||||
 | 
						"browser": false,
 | 
				
			||||||
 | 
						"couch": false,
 | 
				
			||||||
 | 
						"devel": false,
 | 
				
			||||||
 | 
						"node": false,
 | 
				
			||||||
 | 
						"rhino": false,
 | 
				
			||||||
 | 
						"white": true,
 | 
				
			||||||
 | 
						"plusplus":true,
 | 
				
			||||||
 | 
						"stupid":true,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						"predef": [
 | 
				
			||||||
 | 
							"setTimeout",
 | 
				
			||||||
 | 
							"module",
 | 
				
			||||||
 | 
							"exports",
 | 
				
			||||||
 | 
							"define",
 | 
				
			||||||
 | 
							"require",
 | 
				
			||||||
 | 
							"window",
 | 
				
			||||||
 | 
							"buster",
 | 
				
			||||||
 | 
							"sinon"
 | 
				
			||||||
 | 
						]
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										19
									
								
								samples/Linker Script/inject.x
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								samples/Linker Script/inject.x
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,19 @@
 | 
				
			|||||||
 | 
					/* OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm") */
 | 
				
			||||||
 | 
					/* OUTPUT_ARCH(arm) */
 | 
				
			||||||
 | 
					ENTRY(__adbi$entry)
 | 
				
			||||||
 | 
					SECTIONS
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    . = 0x00000000 + SIZEOF_HEADERS;
 | 
				
			||||||
 | 
					   
 | 
				
			||||||
 | 
					    .adbi : { 
 | 
				
			||||||
 | 
					      *(.rodata) 
 | 
				
			||||||
 | 
					      *(.rodata.*) 
 | 
				
			||||||
 | 
					      *(.data) *(.data.*)
 | 
				
			||||||
 | 
					      *(.bss) *(.bss.*)
 | 
				
			||||||
 | 
					      *(.text) 
 | 
				
			||||||
 | 
					      *(.text.*)
 | 
				
			||||||
 | 
					      *(.adbi)
 | 
				
			||||||
 | 
					      *(.adbi.*)
 | 
				
			||||||
 | 
					    } = 0
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										488
									
								
								samples/Lua/treegen.p8
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										488
									
								
								samples/Lua/treegen.p8
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,488 @@
 | 
				
			|||||||
 | 
					pico-8 cartridge // http://www.pico-8.com
 | 
				
			||||||
 | 
					version 7
 | 
				
			||||||
 | 
					// taken from: https://github.com/lvictorino/pico8/blob/master/treegen.p8
 | 
				
			||||||
 | 
					__lua__
 | 
				
			||||||
 | 
					-- tree generation
 | 
				
			||||||
 | 
					-- basic space colonization algorithm
 | 
				
			||||||
 | 
					-- by laurent victorino
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					tree={} --tree node list
 | 
				
			||||||
 | 
					influence={} --influence list
 | 
				
			||||||
 | 
					newnodedist=5 -- distance between tree nodes
 | 
				
			||||||
 | 
					influencedist=50 -- attraction max distance
 | 
				
			||||||
 | 
					influencekilldist=10 -- distance at which an influence node is killed
 | 
				
			||||||
 | 
					crownw=64 -- tree crown width
 | 
				
			||||||
 | 
					crownh=64 -- tree crown height
 | 
				
			||||||
 | 
					crownx=64 -- tree crown x center position
 | 
				
			||||||
 | 
					cronwy=64 -- tree crown y center position
 | 
				
			||||||
 | 
					generate=false -- has generation started?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function _init()
 | 
				
			||||||
 | 
						-- randomize properties
 | 
				
			||||||
 | 
						newnodedist=rnd(10)+2
 | 
				
			||||||
 | 
						influencedist=rnd(60)+20
 | 
				
			||||||
 | 
						influencekilldist=rnd(20)+8
 | 
				
			||||||
 | 
						crownx=64+rnd(40)*(rnd(1)-rnd(1))
 | 
				
			||||||
 | 
						crowny=64+rnd(40)*(rnd(1)-rnd(1))
 | 
				
			||||||
 | 
						crownw=rnd(60)+30
 | 
				
			||||||
 | 
						crownh=rnd(60)+20
 | 
				
			||||||
 | 
						--
 | 
				
			||||||
 | 
						generate = false
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						initialize_root()
 | 
				
			||||||
 | 
						initialize_crown()
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					-- initialize first tree node
 | 
				
			||||||
 | 
					function initialize_root()
 | 
				
			||||||
 | 
						tree={}
 | 
				
			||||||
 | 
						add(tree,newnode(rnd(10)+54,127,nil,7))
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					-- initialize crown size and influence
 | 
				
			||||||
 | 
					function initialize_crown()
 | 
				
			||||||
 | 
						influence={}
 | 
				
			||||||
 | 
						-- create an eliptic crown composed of 100->400 influence nodes
 | 
				
			||||||
 | 
						for i=0,rnd(100)+300 do
 | 
				
			||||||
 | 
						 a = rnd(1)
 | 
				
			||||||
 | 
							x = crownx + rnd(crownw) * cos(a)
 | 
				
			||||||
 | 
							y = crowny + rnd(crownh) * sin(a)
 | 
				
			||||||
 | 
							-- add a new influence to the list
 | 
				
			||||||
 | 
							add(influence,newnode(x,y,nil,5))
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function _update()
 | 
				
			||||||
 | 
						-- x button: generate a new set
 | 
				
			||||||
 | 
						if btn(4) and btnp(4) == true then
 | 
				
			||||||
 | 
							_init()
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
						-- c button: start generation
 | 
				
			||||||
 | 
						if btn(5) and btnp(5) == true then
 | 
				
			||||||
 | 
							generate=true
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- generation loop
 | 
				
			||||||
 | 
						if #influence != 0 and generate==true then			
 | 
				
			||||||
 | 
							-- reset all tree nodes influence
 | 
				
			||||||
 | 
							for c in all(tree) do c.resetinfluence(c) end 
 | 
				
			||||||
 | 
							-- is there any remaining influence?
 | 
				
			||||||
 | 
							flag=false
 | 
				
			||||||
 | 
							-- for every influence node
 | 
				
			||||||
 | 
							-- check what node they it influenced
 | 
				
			||||||
 | 
							for i in all(influence) do
 | 
				
			||||||
 | 
								closest=nil
 | 
				
			||||||
 | 
								for t in all(tree) do
 | 
				
			||||||
 | 
									if distvector(i,t) < influencedist
 | 
				
			||||||
 | 
											and (closest==nil or abs(distvector(i,t)) < abs(distvector(i,closest))) 								then
 | 
				
			||||||
 | 
										flag=true
 | 
				
			||||||
 | 
										closest=t
 | 
				
			||||||
 | 
									end
 | 
				
			||||||
 | 
								end
 | 
				
			||||||
 | 
								if closest!=nil then 
 | 
				
			||||||
 | 
									closest.addinfluence(closest,i) 
 | 
				
			||||||
 | 
								end
 | 
				
			||||||
 | 
							end	
 | 
				
			||||||
 | 
							-- if no influence remains stop the generation
 | 
				
			||||||
 | 
							if flag == false then 
 | 
				
			||||||
 | 
								influence={}
 | 
				
			||||||
 | 
								generate=false
 | 
				
			||||||
 | 
								return
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
 | 
							-- for every tree node
 | 
				
			||||||
 | 
							-- compute the influence vector
 | 
				
			||||||
 | 
							-- and add a new tree node to the list
 | 
				
			||||||
 | 
							for t in all(tree) do
 | 
				
			||||||
 | 
								if #t.influence != 0 then
 | 
				
			||||||
 | 
					 			medv={}
 | 
				
			||||||
 | 
						 		medv.x=0
 | 
				
			||||||
 | 
							 	medv.y=0
 | 
				
			||||||
 | 
								 for i in all(t.influence) do
 | 
				
			||||||
 | 
									 dist=distvector(i,t)
 | 
				
			||||||
 | 
									 medv.x+=(i.x-t.x)/dist -- closest influence nodes are more powerful
 | 
				
			||||||
 | 
									 medv.y+=(i.y-t.y)/dist
 | 
				
			||||||
 | 
									 -- destroy influence if too close
 | 
				
			||||||
 | 
									 if dist < influencekilldist then
 | 
				
			||||||
 | 
										 del(influence,i)
 | 
				
			||||||
 | 
									 end
 | 
				
			||||||
 | 
								 end
 | 
				
			||||||
 | 
								 -- compute the influence vector
 | 
				
			||||||
 | 
									medv.x /= #t.influence
 | 
				
			||||||
 | 
									medv.y /= #t.influence
 | 
				
			||||||
 | 
									-- normalize influence vector
 | 
				
			||||||
 | 
									newn=normalize(medv)
 | 
				
			||||||
 | 
									-- compute new node position
 | 
				
			||||||
 | 
									newn.x=t.x+newnodedist*newn.x
 | 
				
			||||||
 | 
									newn.y=t.y+newnodedist*newn.y
 | 
				
			||||||
 | 
									-- add new node to the list
 | 
				
			||||||
 | 
									add(tree,newnode(newn.x,newn.y,t))
 | 
				
			||||||
 | 
								end
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function _draw()
 | 
				
			||||||
 | 
						cls()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						-- draw tree lines
 | 
				
			||||||
 | 
						for t in all(tree) do
 | 
				
			||||||
 | 
							if t.parent != nil then
 | 
				
			||||||
 | 
								line(t.x,t.y,t.parent.x,t.parent.y,4)
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
						-- draw influence
 | 
				
			||||||
 | 
						for i in all(influence) do
 | 
				
			||||||
 | 
							i.draw(i,8)
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						-- helpers
 | 
				
			||||||
 | 
						color(13)
 | 
				
			||||||
 | 
						print("c:new set\tx:generate")
 | 
				
			||||||
 | 
						print("nodes\t\t\t\t\tcount:"..#tree.."\tdist:"..flr(newnodedist))
 | 
				
			||||||
 | 
						print("influence\tcount:"..#influence.."\tdist:"..flr(influencedist))
 | 
				
			||||||
 | 
						if #influence==0 then
 | 
				
			||||||
 | 
							print("generation is over.",0,123)
 | 
				
			||||||
 | 
						end
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					-- generate a new node
 | 
				
			||||||
 | 
					-- params: xpos,ypos,parent node to be attached to
 | 
				
			||||||
 | 
					function newnode(x,y,parent)
 | 
				
			||||||
 | 
							n={}
 | 
				
			||||||
 | 
							n.x=x
 | 
				
			||||||
 | 
							n.y=y
 | 
				
			||||||
 | 
							-- set parent
 | 
				
			||||||
 | 
							n.parent=parent
 | 
				
			||||||
 | 
							-- list of influence node
 | 
				
			||||||
 | 
							n.influence={}
 | 
				
			||||||
 | 
							-- draw node as crosses
 | 
				
			||||||
 | 
							n.draw=function(node,col)
 | 
				
			||||||
 | 
								line(node.x,node.y-1,node.x,node.y+1,col)
 | 
				
			||||||
 | 
								line(node.x-1,node.y,node.x+1,node.y,col)
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
 | 
							-- add an influence node to the list
 | 
				
			||||||
 | 
							n.addinfluence=function(node,influence)
 | 
				
			||||||
 | 
								add(node.influence,influence)
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
 | 
							-- reset the influence list
 | 
				
			||||||
 | 
							n.resetinfluence=function(node)
 | 
				
			||||||
 | 
								node.influence={}
 | 
				
			||||||
 | 
							end
 | 
				
			||||||
 | 
							return n
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					-- return the distance between 
 | 
				
			||||||
 | 
					-- two vectors
 | 
				
			||||||
 | 
					function distvector(v1,v2)
 | 
				
			||||||
 | 
						vx=v1.x-v2.x
 | 
				
			||||||
 | 
						vy=v1.y-v2.y
 | 
				
			||||||
 | 
						return sqrt(vx*vx+vy*vy)
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					-- return the magnitude of a vector
 | 
				
			||||||
 | 
					function magnitude(v)
 | 
				
			||||||
 | 
						return sqrt(v.x*v.x+v.y*v.y)
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					-- return a normalized vector
 | 
				
			||||||
 | 
					function normalize(v)
 | 
				
			||||||
 | 
						vp={}
 | 
				
			||||||
 | 
						vp.x=v.x/magnitude(v)
 | 
				
			||||||
 | 
						vp.y=v.y/magnitude(v)
 | 
				
			||||||
 | 
						return vp
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					__gfx__
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00700700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00077000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00077000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00700700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					__gff__
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					__map__
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					__sfx__
 | 
				
			||||||
 | 
					000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
 | 
				
			||||||
 | 
					__music__
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
 | 
					00 41424344
 | 
				
			||||||
							
								
								
									
										100
									
								
								samples/Perl/Any.pm
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										100
									
								
								samples/Perl/Any.pm
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,100 @@
 | 
				
			|||||||
 | 
					use strict; #-*-cperl-*-
 | 
				
			||||||
 | 
					use warnings;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use lib qw( ../../../../lib );
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=encoding utf8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=head1 NAME
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Algorithm::Evolutionary::Fitness::Any - Façade for any function so that it can be used as fitness
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=head1 SYNOPSIS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   use Algorithm::Evolutionary::Utils qw( string_decode )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   sub squares {
 | 
				
			||||||
 | 
					     my $chrom = shift;
 | 
				
			||||||
 | 
					     my @values = string_decode( $chrom, 10, -1, 1 );
 | 
				
			||||||
 | 
					     return $values[0] * $values[1];
 | 
				
			||||||
 | 
					   }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					   my $any_eval = new Algorithm::Evolutionary::Fitness::Any \&squares;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=head1 DESCRIPTION
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Turns any subroutine or closure into a fitness function. Useful mainly
 | 
				
			||||||
 | 
					if you want results cached; it's not really needed otherwise.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=head1 METHODS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=cut
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					package Algorithm::Evolutionary::Fitness::Any;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use Carp;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use base 'Algorithm::Evolutionary::Fitness::Base';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					our $VERSION =  '3.2';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=head2 new( $function )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Assigns default variables
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=cut 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sub new {
 | 
				
			||||||
 | 
					  my $class = shift;
 | 
				
			||||||
 | 
					  my $self = { _function => shift || croak "No functiona rray" };
 | 
				
			||||||
 | 
					  bless $self, $class;
 | 
				
			||||||
 | 
					  $self->initialize();
 | 
				
			||||||
 | 
					  return $self;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=head2 apply( $individual )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Applies the instantiated problem to a chromosome. It is actually a
 | 
				
			||||||
 | 
					wrapper around C<_apply>.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=cut
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sub apply {
 | 
				
			||||||
 | 
					    my $self = shift;
 | 
				
			||||||
 | 
					    my $individual = shift || croak "Nobody here!!!";
 | 
				
			||||||
 | 
					    $self->{'_counter'}++;
 | 
				
			||||||
 | 
					    return $self->_apply( $individual );
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=head2 _apply( $individual )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This is the one that really does the stuff. It applies the defined
 | 
				
			||||||
 | 
					function to each individual. Itis cached for efficiency.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=cut
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sub _apply {
 | 
				
			||||||
 | 
					  my $self = shift;
 | 
				
			||||||
 | 
					  my $individual = shift || croak "Nobody here!";
 | 
				
			||||||
 | 
					  my $chrom = $individual->Chrom();
 | 
				
			||||||
 | 
					  my $cache = $self->{'_cache'};
 | 
				
			||||||
 | 
					  if ( $cache->{$chrom} ) {
 | 
				
			||||||
 | 
					    return $cache->{$chrom};
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  my $result = $self->{'_function'}->($chrom);
 | 
				
			||||||
 | 
					  if ( (scalar $chrom ) eq $chrom ) {
 | 
				
			||||||
 | 
					    $cache->{$chrom} = $result;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					  return $result;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=head1 Copyright
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
 | 
					  This file is released under the GPL. See the LICENSE file included in this distribution,
 | 
				
			||||||
 | 
					  or go to http://www.fsf.org/licenses/gpl.txt
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=cut
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					"What???";
 | 
				
			||||||
							
								
								
									
										20
									
								
								samples/Perl/filenames/Makefile.PL
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								samples/Perl/filenames/Makefile.PL
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,20 @@
 | 
				
			|||||||
 | 
					use strict;
 | 
				
			||||||
 | 
					use warnings;
 | 
				
			||||||
 | 
					use ExtUtils::MakeMaker;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					WriteMakefile(
 | 
				
			||||||
 | 
					    NAME                => 'Algorithm::Evolutionary::Simple',
 | 
				
			||||||
 | 
					    AUTHOR              => 'JJ Merelo <jj@merelo.net>',
 | 
				
			||||||
 | 
					    VERSION_FROM        => 'lib/Algorithm/Evolutionary/Simple.pm',
 | 
				
			||||||
 | 
					    ABSTRACT_FROM       => 'lib/Algorithm/Evolutionary/Simple.pm',
 | 
				
			||||||
 | 
					    LICENSE => 'gpl',
 | 
				
			||||||
 | 
					    EXE_FILES => [ 'script/simple-EA.pl',  'script/maxones.pl'],
 | 
				
			||||||
 | 
					    PREREQ_PM => {
 | 
				
			||||||
 | 
					        'Test::More' => 0,
 | 
				
			||||||
 | 
						'Carp' => 0,
 | 
				
			||||||
 | 
						'Exporter' => 0,
 | 
				
			||||||
 | 
						'Sort::Key::Top' => 0
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    dist                => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
 | 
				
			||||||
 | 
					    clean               => { FILES => 'Algorithm-Evolutionary-Simple-*' },
 | 
				
			||||||
 | 
					);
 | 
				
			||||||
							
								
								
									
										9
									
								
								samples/Perl/filenames/Rexfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								samples/Perl/filenames/Rexfile
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					use Rex -feature => ['1.0'];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					user "eleccionesugr";
 | 
				
			||||||
 | 
					group eleccionesugr => "elecciones-ugr.cloudapp.net";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					desc "Install perlbrew";
 | 
				
			||||||
 | 
					task "perlbrew", group => "eleccionesugr", sub {
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										21
									
								
								samples/PowerShell/pwsh-shebang.ps1
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								samples/PowerShell/pwsh-shebang.ps1
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,21 @@
 | 
				
			|||||||
 | 
					#!/usr/bin/env pwsh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# source:  https://github.com/PowerShell/PowerShellStandard/blob/3436bfc162d6804dd11d1d76c4faff486b4b405d/build.ps1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					param ( 
 | 
				
			||||||
 | 
					    [Parameter(ParameterSetName="Clean")][switch]$Clean,
 | 
				
			||||||
 | 
					    [Parameter(ParameterSetName="Test")][switch]$Test
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import-module $PSScriptRoot/PowerShellStandard.psm1 -force
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if ( $Clean ) {
 | 
				
			||||||
 | 
					    Start-Clean
 | 
				
			||||||
 | 
					    return
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Start-Build
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if ( $Test ) {
 | 
				
			||||||
 | 
					    Invoke-Test
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										417
									
								
								samples/TOML/filenames/Cargo.lock
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										417
									
								
								samples/TOML/filenames/Cargo.lock
									
									
									
										generated
									
									
									
										Normal file
									
								
							@@ -0,0 +1,417 @@
 | 
				
			|||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "aho-corasick"
 | 
				
			||||||
 | 
					version = "0.6.4"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "ansi_term"
 | 
				
			||||||
 | 
					version = "0.11.0"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "atty"
 | 
				
			||||||
 | 
					version = "0.2.8"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "bitflags"
 | 
				
			||||||
 | 
					version = "1.0.1"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "bytecount"
 | 
				
			||||||
 | 
					version = "0.3.1"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "simd 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "cfg-if"
 | 
				
			||||||
 | 
					version = "0.1.2"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "clap"
 | 
				
			||||||
 | 
					version = "2.31.2"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "atty 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "bitflags 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "textwrap 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "unicode-width 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "crossbeam"
 | 
				
			||||||
 | 
					version = "0.3.2"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "encoding_rs"
 | 
				
			||||||
 | 
					version = "0.7.2"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "simd 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "fnv"
 | 
				
			||||||
 | 
					version = "1.0.6"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "fuchsia-zircon"
 | 
				
			||||||
 | 
					version = "0.3.3"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "bitflags 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "fuchsia-zircon-sys"
 | 
				
			||||||
 | 
					version = "0.3.3"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "glob"
 | 
				
			||||||
 | 
					version = "0.2.11"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "globset"
 | 
				
			||||||
 | 
					version = "0.3.0"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "regex 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "grep"
 | 
				
			||||||
 | 
					version = "0.1.8"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "regex 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "regex-syntax 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "ignore"
 | 
				
			||||||
 | 
					version = "0.4.1"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "crossbeam 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "globset 0.3.0",
 | 
				
			||||||
 | 
					 "lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "regex 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "same-file 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "walkdir 2.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "lazy_static"
 | 
				
			||||||
 | 
					version = "1.0.0"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "libc"
 | 
				
			||||||
 | 
					version = "0.2.40"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "log"
 | 
				
			||||||
 | 
					version = "0.4.1"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "memchr"
 | 
				
			||||||
 | 
					version = "2.0.1"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "memmap"
 | 
				
			||||||
 | 
					version = "0.6.2"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "num_cpus"
 | 
				
			||||||
 | 
					version = "1.8.0"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "rand"
 | 
				
			||||||
 | 
					version = "0.4.2"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "redox_syscall"
 | 
				
			||||||
 | 
					version = "0.1.37"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "redox_termios"
 | 
				
			||||||
 | 
					version = "0.1.1"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "redox_syscall 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "regex"
 | 
				
			||||||
 | 
					version = "0.2.10"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "regex-syntax 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "regex-syntax"
 | 
				
			||||||
 | 
					version = "0.5.3"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "ucd-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "remove_dir_all"
 | 
				
			||||||
 | 
					version = "0.5.0"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "ripgrep"
 | 
				
			||||||
 | 
					version = "0.8.1"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "atty 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "bytecount 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "clap 2.31.2 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "encoding_rs 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "globset 0.3.0",
 | 
				
			||||||
 | 
					 "grep 0.1.8",
 | 
				
			||||||
 | 
					 "ignore 0.4.1",
 | 
				
			||||||
 | 
					 "lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "memmap 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "regex 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "same-file 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "termcolor 0.3.6",
 | 
				
			||||||
 | 
					 "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "same-file"
 | 
				
			||||||
 | 
					version = "1.0.2"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "simd"
 | 
				
			||||||
 | 
					version = "0.2.1"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "strsim"
 | 
				
			||||||
 | 
					version = "0.7.0"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "tempdir"
 | 
				
			||||||
 | 
					version = "0.3.7"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "remove_dir_all 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "termcolor"
 | 
				
			||||||
 | 
					version = "0.3.6"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "wincolor 0.1.6",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "termion"
 | 
				
			||||||
 | 
					version = "1.5.1"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "redox_syscall 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "textwrap"
 | 
				
			||||||
 | 
					version = "0.9.0"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "unicode-width 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "thread_local"
 | 
				
			||||||
 | 
					version = "0.3.5"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "ucd-util"
 | 
				
			||||||
 | 
					version = "0.1.1"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "unicode-width"
 | 
				
			||||||
 | 
					version = "0.1.4"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "unreachable"
 | 
				
			||||||
 | 
					version = "1.0.0"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "utf8-ranges"
 | 
				
			||||||
 | 
					version = "1.0.0"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "void"
 | 
				
			||||||
 | 
					version = "1.0.2"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "walkdir"
 | 
				
			||||||
 | 
					version = "2.1.4"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "same-file 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "winapi"
 | 
				
			||||||
 | 
					version = "0.3.4"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					 "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "winapi-i686-pc-windows-gnu"
 | 
				
			||||||
 | 
					version = "0.4.0"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "winapi-x86_64-pc-windows-gnu"
 | 
				
			||||||
 | 
					version = "0.4.0"
 | 
				
			||||||
 | 
					source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[[package]]
 | 
				
			||||||
 | 
					name = "wincolor"
 | 
				
			||||||
 | 
					version = "0.1.6"
 | 
				
			||||||
 | 
					dependencies = [
 | 
				
			||||||
 | 
					 "winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[metadata]
 | 
				
			||||||
 | 
					"checksum aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d6531d44de723825aa81398a6415283229725a00fa30713812ab9323faa82fc4"
 | 
				
			||||||
 | 
					"checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
 | 
				
			||||||
 | 
					"checksum atty 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "af80143d6f7608d746df1520709e5d141c96f240b0e62b0aa41bdfb53374d9d4"
 | 
				
			||||||
 | 
					"checksum bitflags 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b3c30d3802dfb7281680d6285f2ccdaa8c2d8fee41f93805dba5c4cf50dc23cf"
 | 
				
			||||||
 | 
					"checksum bytecount 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "882585cd7ec84e902472df34a5e01891202db3bf62614e1f0afe459c1afcf744"
 | 
				
			||||||
 | 
					"checksum cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d4c819a1287eb618df47cc647173c5c4c66ba19d888a6e50d605672aed3140de"
 | 
				
			||||||
 | 
					"checksum clap 2.31.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f0f16b89cbb9ee36d87483dc939fe9f1e13c05898d56d7b230a0d4dff033a536"
 | 
				
			||||||
 | 
					"checksum crossbeam 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "24ce9782d4d5c53674646a6a4c1863a21a8fc0cb649b3c94dfc16e45071dea19"
 | 
				
			||||||
 | 
					"checksum encoding_rs 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "98fd0f24d1fb71a4a6b9330c8ca04cbd4e7cc5d846b54ca74ff376bc7c9f798d"
 | 
				
			||||||
 | 
					"checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
 | 
				
			||||||
 | 
					"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
 | 
				
			||||||
 | 
					"checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
 | 
				
			||||||
 | 
					"checksum glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "8be18de09a56b60ed0edf84bc9df007e30040691af7acd1c41874faac5895bfb"
 | 
				
			||||||
 | 
					"checksum lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c8f31047daa365f19be14b47c29df4f7c3b581832407daabe6ae77397619237d"
 | 
				
			||||||
 | 
					"checksum libc 0.2.40 (registry+https://github.com/rust-lang/crates.io-index)" = "6fd41f331ac7c5b8ac259b8bf82c75c0fb2e469bbf37d2becbba9a6a2221965b"
 | 
				
			||||||
 | 
					"checksum log 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "89f010e843f2b1a31dbd316b3b8d443758bc634bed37aabade59c686d644e0a2"
 | 
				
			||||||
 | 
					"checksum memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "796fba70e76612589ed2ce7f45282f5af869e0fdd7cc6199fa1aa1f1d591ba9d"
 | 
				
			||||||
 | 
					"checksum memmap 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e2ffa2c986de11a9df78620c01eeaaf27d94d3ff02bf81bfcca953102dd0c6ff"
 | 
				
			||||||
 | 
					"checksum num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c51a3322e4bca9d212ad9a158a02abc6934d005490c054a2778df73a70aa0a30"
 | 
				
			||||||
 | 
					"checksum rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "eba5f8cb59cc50ed56be8880a5c7b496bfd9bd26394e176bc67884094145c2c5"
 | 
				
			||||||
 | 
					"checksum redox_syscall 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "0d92eecebad22b767915e4d529f89f28ee96dbbf5a4810d2b844373f136417fd"
 | 
				
			||||||
 | 
					"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
 | 
				
			||||||
 | 
					"checksum regex 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "aec3f58d903a7d2a9dc2bf0e41a746f4530e0cab6b615494e058f67a3ef947fb"
 | 
				
			||||||
 | 
					"checksum regex-syntax 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b2550876c31dc914696a6c2e01cbce8afba79a93c8ae979d2fe051c0230b3756"
 | 
				
			||||||
 | 
					"checksum remove_dir_all 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "dfc5b3ce5d5ea144bb04ebd093a9e14e9765bcfec866aecda9b6dec43b3d1e24"
 | 
				
			||||||
 | 
					"checksum same-file 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "cfb6eded0b06a0b512c8ddbcf04089138c9b4362c2f696f3c3d76039d68f3637"
 | 
				
			||||||
 | 
					"checksum simd 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3dd0805c7363ab51a829a1511ad24b6ed0349feaa756c4bc2f977f9f496e6673"
 | 
				
			||||||
 | 
					"checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550"
 | 
				
			||||||
 | 
					"checksum tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
 | 
				
			||||||
 | 
					"checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096"
 | 
				
			||||||
 | 
					"checksum textwrap 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c0b59b6b4b44d867f1370ef1bd91bfb262bf07bf0ae65c202ea2fbc16153b693"
 | 
				
			||||||
 | 
					"checksum thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "279ef31c19ededf577bfd12dfae728040a21f635b06a24cd670ff510edd38963"
 | 
				
			||||||
 | 
					"checksum ucd-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "fd2be2d6639d0f8fe6cdda291ad456e23629558d466e2789d2c3e9892bda285d"
 | 
				
			||||||
 | 
					"checksum unicode-width 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "bf3a113775714a22dcb774d8ea3655c53a32debae63a063acc00a91cc586245f"
 | 
				
			||||||
 | 
					"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56"
 | 
				
			||||||
 | 
					"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122"
 | 
				
			||||||
 | 
					"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
 | 
				
			||||||
 | 
					"checksum walkdir 2.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "63636bd0eb3d00ccb8b9036381b526efac53caf112b7783b730ab3f8e44da369"
 | 
				
			||||||
 | 
					"checksum winapi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "04e3bd221fcbe8a271359c04f21a76db7d0c6028862d1bb5512d85e1e2eb5bb3"
 | 
				
			||||||
 | 
					"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 | 
				
			||||||
 | 
					"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 | 
				
			||||||
							
								
								
									
										103
									
								
								samples/sed/hanoi.sed
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										103
									
								
								samples/sed/hanoi.sed
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,103 @@
 | 
				
			|||||||
 | 
					# Towers of Hanoi in sed.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#	@(#)hanoi.sed	8.1 (Berkeley) 6/6/93
 | 
				
			||||||
 | 
					# $FreeBSD$
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Ex:
 | 
				
			||||||
 | 
					# Run "sed -f hanoi.sed", and enter:
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#	:abcd: : :<CR>
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# note -- TWO carriage returns were once required, this will output the
 | 
				
			||||||
 | 
					# sequence of states involved in moving 4 rings, the largest called "a" and
 | 
				
			||||||
 | 
					# the smallest called "d", from the first to the second of three towers, so
 | 
				
			||||||
 | 
					# that the rings on any tower at any time are in descending order of size.
 | 
				
			||||||
 | 
					# You can start with a different arrangement and a different number of rings,
 | 
				
			||||||
 | 
					# say :ce:b:ax: and it will give the shortest procedure for moving them all
 | 
				
			||||||
 | 
					# to the middle tower.  The rules are: the names of the rings must all be
 | 
				
			||||||
 | 
					# lower-case letters, they must be input within 3 fields (representing the
 | 
				
			||||||
 | 
					# towers) and delimited by 4 colons, such that the letters within each field
 | 
				
			||||||
 | 
					# are in alphabetical order (i.e. rings are in descending order of size).
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# For the benefit of anyone who wants to figure out the script, an "internal"
 | 
				
			||||||
 | 
					# line of the form
 | 
				
			||||||
 | 
					#		b:0abx:1a2b3 :2   :3x2
 | 
				
			||||||
 | 
					# has the following meaning: the material after the three markers :1, :2,
 | 
				
			||||||
 | 
					# and :3 represents the three towers; in this case the current set-up is
 | 
				
			||||||
 | 
					# ":ab :   :x  :".  The numbers after a, b and x in these fields indicate
 | 
				
			||||||
 | 
					# that the next time it gets a chance, it will move a to tower 2, move b
 | 
				
			||||||
 | 
					# to tower 3, and move x to tower 2.  The string after :0 just keeps track
 | 
				
			||||||
 | 
					# of the alphabetical order of the names of the rings.  The b at the
 | 
				
			||||||
 | 
					# beginning means that it is now dealing with ring b (either about to move
 | 
				
			||||||
 | 
					# it, or re-evaluating where it should next be moved to).
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Although this version is "limited" to 26 rings because of the size of the
 | 
				
			||||||
 | 
					# alphabet, one could write a script using the same idea in which the rings
 | 
				
			||||||
 | 
					# were represented by arbitrary [strings][within][brackets], and in place of
 | 
				
			||||||
 | 
					# the built-in line of the script giving the order of the letters of the
 | 
				
			||||||
 | 
					# alphabet, it would accept from the user a line giving the ordering to be
 | 
				
			||||||
 | 
					# assumed, e.g. [ucbvax][decvax][hplabs][foo][bar].
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#			George Bergman
 | 
				
			||||||
 | 
					#			Math, UC Berkeley 94720 USA
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# cleaning, diagnostics
 | 
				
			||||||
 | 
					s/  *//g
 | 
				
			||||||
 | 
					/^$/d
 | 
				
			||||||
 | 
					/[^a-z:]/{a\
 | 
				
			||||||
 | 
					Illegal characters: use only a-z and ":".  Try again.
 | 
				
			||||||
 | 
					d
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					/^:[a-z]*:[a-z]*:[a-z]*:$/!{a\
 | 
				
			||||||
 | 
					Incorrect format: use\
 | 
				
			||||||
 | 
					\	: string1 : string2 : string3 :<CR>\
 | 
				
			||||||
 | 
					Try again.
 | 
				
			||||||
 | 
					d
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					/\([a-z]\).*\1/{a\
 | 
				
			||||||
 | 
					Repeated letters not allowed.  Try again.
 | 
				
			||||||
 | 
					d
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					# initial formatting
 | 
				
			||||||
 | 
					h
 | 
				
			||||||
 | 
					s/[a-z]/ /g
 | 
				
			||||||
 | 
					G
 | 
				
			||||||
 | 
					s/^:\( *\):\( *\):\( *\):\n:\([a-z]*\):\([a-z]*\):\([a-z]*\):$/:1\4\2\3:2\5\1\3:3\6\1\2:0/
 | 
				
			||||||
 | 
					s/[a-z]/&2/g
 | 
				
			||||||
 | 
					s/^/abcdefghijklmnopqrstuvwxyz/
 | 
				
			||||||
 | 
					:a
 | 
				
			||||||
 | 
					s/^\(.\).*\1.*/&\1/
 | 
				
			||||||
 | 
					s/.//
 | 
				
			||||||
 | 
					/^[^:]/ba
 | 
				
			||||||
 | 
					s/\([^0]*\)\(:0.*\)/\2\1:/
 | 
				
			||||||
 | 
					s/^[^0]*0\(.\)/\1&/
 | 
				
			||||||
 | 
					:b
 | 
				
			||||||
 | 
					# outputting current state without markers
 | 
				
			||||||
 | 
					h
 | 
				
			||||||
 | 
					s/.*:1/:/
 | 
				
			||||||
 | 
					s/[123]//gp
 | 
				
			||||||
 | 
					g
 | 
				
			||||||
 | 
					:c
 | 
				
			||||||
 | 
					# establishing destinations
 | 
				
			||||||
 | 
					/^\(.\).*\1:1/td
 | 
				
			||||||
 | 
					/^\(.\).*:1[^:]*\11/s/^\(.\)\(.*\1\([a-z]\).*\)\3./\3\2\31/
 | 
				
			||||||
 | 
					/^\(.\).*:1[^:]*\12/s/^\(.\)\(.*\1\([a-z]\).*\)\3./\3\2\33/
 | 
				
			||||||
 | 
					/^\(.\).*:1[^:]*\13/s/^\(.\)\(.*\1\([a-z]\).*\)\3./\3\2\32/
 | 
				
			||||||
 | 
					/^\(.\).*:2[^:]*\11/s/^\(.\)\(.*\1\([a-z]\).*\)\3./\3\2\33/
 | 
				
			||||||
 | 
					/^\(.\).*:2[^:]*\12/s/^\(.\)\(.*\1\([a-z]\).*\)\3./\3\2\32/
 | 
				
			||||||
 | 
					/^\(.\).*:2[^:]*\13/s/^\(.\)\(.*\1\([a-z]\).*\)\3./\3\2\31/
 | 
				
			||||||
 | 
					/^\(.\).*:3[^:]*\11/s/^\(.\)\(.*\1\([a-z]\).*\)\3./\3\2\32/
 | 
				
			||||||
 | 
					/^\(.\).*:3[^:]*\12/s/^\(.\)\(.*\1\([a-z]\).*\)\3./\3\2\31/
 | 
				
			||||||
 | 
					/^\(.\).*:3[^:]*\13/s/^\(.\)\(.*\1\([a-z]\).*\)\3./\3\2\33/
 | 
				
			||||||
 | 
					bc
 | 
				
			||||||
 | 
					# iterate back to find smallest out-of-place ring
 | 
				
			||||||
 | 
					:d
 | 
				
			||||||
 | 
					s/^\(.\)\(:0[^:]*\([^:]\)\1.*:\([123]\)[^:]*\1\)\4/\3\2\4/
 | 
				
			||||||
 | 
					td
 | 
				
			||||||
 | 
					# move said ring (right, resp. left)
 | 
				
			||||||
 | 
					s/^\(.\)\(.*\)\1\([23]\)\(.*:\3[^ ]*\) /\1\2 \4\1\3/
 | 
				
			||||||
 | 
					s/^\(.\)\(.*:\([12]\)[^ ]*\) \(.*\)\1\3/\1\2\1\3\4 /
 | 
				
			||||||
 | 
					tb
 | 
				
			||||||
 | 
					s/.*/Done!  Try another, or end with ^D./p
 | 
				
			||||||
 | 
					d
 | 
				
			||||||
@@ -84,6 +84,10 @@ unless $url
 | 
				
			|||||||
  exit 1;
 | 
					  exit 1;
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Exit early if docker isn't installed or running.
 | 
				
			||||||
 | 
					log "Checking docker is installed and running"
 | 
				
			||||||
 | 
					command('docker', 'ps')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Ensure the given URL is an HTTPS link
 | 
					# Ensure the given URL is an HTTPS link
 | 
				
			||||||
parts    = parse_url $url
 | 
					parts    = parse_url $url
 | 
				
			||||||
https    = "https://#{parts[:host]}/#{parts[:user]}/#{parts[:repo]}"
 | 
					https    = "https://#{parts[:host]}/#{parts[:user]}/#{parts[:repo]}"
 | 
				
			||||||
@@ -107,9 +111,11 @@ log "Confirming license"
 | 
				
			|||||||
if repo_old
 | 
					if repo_old
 | 
				
			||||||
  command('script/licensed')
 | 
					  command('script/licensed')
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
 | 
					  repo_new = File.absolute_path(repo_new)
 | 
				
			||||||
  command('script/licensed', '--module', repo_new)
 | 
					  command('script/licensed', '--module', repo_new)
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
log "Updating grammar documentation in vendor/README.md"
 | 
					log "Updating grammar documentation in vendor/README.md"
 | 
				
			||||||
command('bundle', 'exec', 'rake', 'samples')
 | 
					command('bundle', 'exec', 'rake', 'samples')
 | 
				
			||||||
 | 
					command('script/sort-submodules')
 | 
				
			||||||
command('script/list-grammars')
 | 
					command('script/list-grammars')
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -6,6 +6,8 @@ cd "$(dirname "$0")/.."
 | 
				
			|||||||
image="linguist/grammar-compiler:latest"
 | 
					image="linguist/grammar-compiler:latest"
 | 
				
			||||||
mkdir -p grammars
 | 
					mkdir -p grammars
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					docker pull $image
 | 
				
			||||||
 | 
					
 | 
				
			||||||
exec docker run --rm \
 | 
					exec docker run --rm \
 | 
				
			||||||
    -u $(id -u $USER):$(id -g $USER) \
 | 
					    -u $(id -u $USER):$(id -g $USER) \
 | 
				
			||||||
    -v $PWD:/src/linguist \
 | 
					    -v $PWD:/src/linguist \
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -40,12 +40,12 @@ OptionParser.new do |opts|
 | 
				
			|||||||
  end
 | 
					  end
 | 
				
			||||||
end.parse!
 | 
					end.parse!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
source = Licensed::Source::Filesystem.new(module_path || "vendor/grammars/*/", type: "grammar")
 | 
					source = Licensed::Source::Filesystem.new(module_path || "#{File.expand_path("../", File.dirname(__FILE__))}/vendor/grammars/*/", type: "grammar")
 | 
				
			||||||
config = Licensed::Configuration.new
 | 
					config = Licensed::Configuration.load_from(File.expand_path("../vendor/licenses/config.yml", File.dirname(__FILE__)))
 | 
				
			||||||
config.sources << source
 | 
					config.sources << source
 | 
				
			||||||
 | 
					
 | 
				
			||||||
command = if ARGV[0] == "verify"
 | 
					command = if ARGV[0] == "status"
 | 
				
			||||||
  Licensed::Command::Verify.new(config)
 | 
					  Licensed::Command::Status.new(config)
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
  Licensed::Command::Cache.new(config)
 | 
					  Licensed::Command::Cache.new(config)
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										50
									
								
								script/sort-submodules
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										50
									
								
								script/sort-submodules
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,50 @@
 | 
				
			|||||||
 | 
					#!/usr/bin/env ruby
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					require "optparse"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ROOT = File.expand_path "../../", __FILE__
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Extract and sort a list of submodules
 | 
				
			||||||
 | 
					def sort_entries(file_data)
 | 
				
			||||||
 | 
					  submodules = []
 | 
				
			||||||
 | 
					  file_data.scan(/(^\[submodule[^\n]+\n)((?:\t[^\n]+\n)+)/).each do |head, body|
 | 
				
			||||||
 | 
					    path = body.match(/^\tpath\s*=\s*\K(.+)$/)[0]
 | 
				
			||||||
 | 
					    submodules << [path, head + body]
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					  submodules.sort! { |a,b| a[0] <=> b[0] }
 | 
				
			||||||
 | 
					  submodules.collect { |i| i[1] }
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					usage = <<-EOH
 | 
				
			||||||
 | 
					Usage:
 | 
				
			||||||
 | 
					  #{$0} [-t|--test] [-h|--help]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Examples:
 | 
				
			||||||
 | 
					  #{$0}         # Update .gitmodules file in-place
 | 
				
			||||||
 | 
					  #{$0} --help  # Display this help message
 | 
				
			||||||
 | 
					  #{$0} --test  # Exit with an error code if .gitmodules needs sorting
 | 
				
			||||||
 | 
					EOH
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$testing = false
 | 
				
			||||||
 | 
					OptionParser.new do |opts|
 | 
				
			||||||
 | 
					  opts.banner = usage
 | 
				
			||||||
 | 
					  opts.on("-h", "--help") do
 | 
				
			||||||
 | 
					    puts usage
 | 
				
			||||||
 | 
					    exit
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					  opts.on("-t", "--test", "Don't update file; only test if it's unsorted") do
 | 
				
			||||||
 | 
					    $testing = true
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					end.parse!
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					unsorted = File.read("#{ROOT}/.gitmodules")
 | 
				
			||||||
 | 
					sorted = sort_entries(unsorted).join
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if $testing
 | 
				
			||||||
 | 
					  exit unsorted == sorted
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  File.write "#{ROOT}/.gitmodules", sorted
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
							
								
								
									
										9
									
								
								test/fixtures/Perl 6/chromosome.pl
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								test/fixtures/Perl 6/chromosome.pl
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					class Chromosome {
 | 
				
			||||||
 | 
					  has Seq $.chromosome is rw;
 | 
				
			||||||
 | 
					  has $.fitness is rw;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					my $len = 32;
 | 
				
			||||||
 | 
					my $this-chromosome = Chromosome.new( chromosome => map( { rand >= 0.5 ?? True !! False }, 1..$len )  );
 | 
				
			||||||
 | 
					say $this-chromosome.chromosome();
 | 
				
			||||||
							
								
								
									
										51
									
								
								test/fixtures/Perl/01-methods.pl
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								test/fixtures/Perl/01-methods.pl
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,51 @@
 | 
				
			|||||||
 | 
					#!perl
 | 
				
			||||||
 | 
					use Test::More;
 | 
				
			||||||
 | 
					use Test::Exception;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use_ok 'Music::ScaleNote';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					my $msn = Music::ScaleNote->new(
 | 
				
			||||||
 | 
					    scale_note => 'C',
 | 
				
			||||||
 | 
					    scale_name => 'pminor',
 | 
				
			||||||
 | 
					#    verbose    => 1,
 | 
				
			||||||
 | 
					);
 | 
				
			||||||
 | 
					isa_ok $msn, 'Music::ScaleNote';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					my $x;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					throws_ok { $x = $msn->get_offset() }
 | 
				
			||||||
 | 
					    qr/note_name, note_format or offset not provided/, 'invalid get_offset';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					my $format = 'midinum';
 | 
				
			||||||
 | 
					$x = $msn->get_offset(
 | 
				
			||||||
 | 
					    note_name   => 60,
 | 
				
			||||||
 | 
					    note_format => $format,
 | 
				
			||||||
 | 
					    offset      => 1,
 | 
				
			||||||
 | 
					);
 | 
				
			||||||
 | 
					is $x->format($format), 63, 'get_offset';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$format = 'ISO';
 | 
				
			||||||
 | 
					$x = $msn->get_offset(
 | 
				
			||||||
 | 
					    note_name   => 'D#4',
 | 
				
			||||||
 | 
					    note_format => $format,
 | 
				
			||||||
 | 
					    offset      => -1,
 | 
				
			||||||
 | 
					);
 | 
				
			||||||
 | 
					is $x->format($format), 'C4', 'get_offset';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					throws_ok {
 | 
				
			||||||
 | 
					    $x = $msn->get_offset(
 | 
				
			||||||
 | 
					        note_name   => 'C0',
 | 
				
			||||||
 | 
					        note_format => $format,
 | 
				
			||||||
 | 
					        offset      => -1,
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					} qr/Octave: -1 out of bounds/, 'out of bounds';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					throws_ok {
 | 
				
			||||||
 | 
					    $x = $msn->get_offset(
 | 
				
			||||||
 | 
					        note_name   => 'A#127',
 | 
				
			||||||
 | 
					        note_format => $format,
 | 
				
			||||||
 | 
					        offset      => 1,
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					} qr/Octave: 128 out of bounds/, 'out of bounds';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					done_testing();
 | 
				
			||||||
@@ -169,6 +169,9 @@ class TestBlob < Minitest::Test
 | 
				
			|||||||
    assert sample_blob_memory("JavaScript/jquery-1.6.1.min.js").generated?
 | 
					    assert sample_blob_memory("JavaScript/jquery-1.6.1.min.js").generated?
 | 
				
			||||||
    assert sample_blob_memory("JavaScript/jquery-1.4.2.min.js").generated?
 | 
					    assert sample_blob_memory("JavaScript/jquery-1.4.2.min.js").generated?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Cargo generated composer.lock file
 | 
				
			||||||
 | 
					    assert sample_blob_memory("TOML/filenames/Cargo.lock").generated?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Composer generated composer.lock file
 | 
					    # Composer generated composer.lock file
 | 
				
			||||||
    assert sample_blob_memory("JSON/filenames/composer.lock").generated?
 | 
					    assert sample_blob_memory("JSON/filenames/composer.lock").generated?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -534,6 +534,14 @@ class TestFileBlob < Minitest::Test
 | 
				
			|||||||
    assert sample_blob("subproject/gradlew.bat").vendored?
 | 
					    assert sample_blob("subproject/gradlew.bat").vendored?
 | 
				
			||||||
    assert sample_blob("subproject/gradle/wrapper/gradle-wrapper.properties").vendored?
 | 
					    assert sample_blob("subproject/gradle/wrapper/gradle-wrapper.properties").vendored?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # Maven
 | 
				
			||||||
 | 
					    assert sample_blob("mvnw").vendored?
 | 
				
			||||||
 | 
					    assert sample_blob("mvnw.cmd").vendored?
 | 
				
			||||||
 | 
					    assert sample_blob(".mvn/wrapper/maven-wrapper.properties").vendored?
 | 
				
			||||||
 | 
					    assert sample_blob("subproject/mvnw").vendored?
 | 
				
			||||||
 | 
					    assert sample_blob("subproject/mvnw.cmd").vendored?
 | 
				
			||||||
 | 
					    assert sample_blob("subproject/.mvn/wrapper/maven-wrapper.properties").vendored?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Octicons
 | 
					    # Octicons
 | 
				
			||||||
    assert sample_blob("octicons.css").vendored?
 | 
					    assert sample_blob("octicons.css").vendored?
 | 
				
			||||||
    assert sample_blob("public/octicons.min.css").vendored?
 | 
					    assert sample_blob("public/octicons.min.css").vendored?
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -66,7 +66,10 @@ class TestGenerated < Minitest::Test
 | 
				
			|||||||
    generated_sample_without_loading_data("go/vendor/gopkg.in/some/nested/path/foo.go")
 | 
					    generated_sample_without_loading_data("go/vendor/gopkg.in/some/nested/path/foo.go")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # .NET designer file
 | 
					    # .NET designer file
 | 
				
			||||||
    generated_sample_without_loading_data("Dummu/foo.designer.cs")
 | 
					    generated_sample_without_loading_data("Dummy/foo.designer.cs")
 | 
				
			||||||
 | 
					    generated_sample_without_loading_data("Dummy/foo.Designer.cs")
 | 
				
			||||||
 | 
					    generated_sample_without_loading_data("Dummy/foo.designer.vb")
 | 
				
			||||||
 | 
					    generated_sample_without_loading_data("Dummy/foo.Designer.vb")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Composer generated composer.lock file
 | 
					    # Composer generated composer.lock file
 | 
				
			||||||
    generated_sample_without_loading_data("JSON/composer.lock")
 | 
					    generated_sample_without_loading_data("JSON/composer.lock")
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -5,45 +5,35 @@ class TestGrammars < Minitest::Test
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  # List of projects that are allowed without licenses
 | 
					  # List of projects that are allowed without licenses
 | 
				
			||||||
  PROJECT_WHITELIST = [
 | 
					  PROJECT_WHITELIST = [
 | 
				
			||||||
    "vendor/grammars/Sublime-Lasso",
 | 
					    "vendor/grammars/Sublime-Lasso",      # No license file
 | 
				
			||||||
    "vendor/grammars/blitzmax"
 | 
					    "vendor/grammars/blitzmax",           # No license file
 | 
				
			||||||
 | 
					    "vendor/grammars/creole",             # License filename is not LICENSE(.*)?
 | 
				
			||||||
  ].freeze
 | 
					  ].freeze
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  HASH_WHITELIST = [
 | 
					  HASH_WHITELIST = [
 | 
				
			||||||
    "bc12b3b4917eab9aedb87ec1305c2a4376e34fd1", # TextMate bundles
 | 
					    "2edac46b0a63309c96442d2826321a442217472f", # Agda.tmbundle
 | 
				
			||||||
    "16c4748566b3dd996594af0410a1875b22d3a2b3", # language-yaml and atom-salt
 | 
					    "7dfce11e2e3579ee43b83e69b1b64e77a2e378f0", # ant.tmbundle
 | 
				
			||||||
    "ff21db2554d69d78b2220db5615b16bbba0788d3", # factor
 | 
					    "79e72fd673dcebadd8fbace8d43db3da96d2c09f", # bro-sublime
 | 
				
			||||||
    "b4381ebae3235e91aaf5ccab1e8e94e9ad4faef4", # jflex.tmbundle
 | 
					    "62b97e52b78439c14550a44a3fe51332aeffb3a1", # elixir-tmbundle
 | 
				
			||||||
 | 
					    "75cf04a9121ca7bb5a9c122b33007ac016ba72e7", # factor
 | 
				
			||||||
 | 
					    "0acff2bb1536a3942a39ac74987ffd9c44905a6b", # FreeMarker.tmbundle
 | 
				
			||||||
 | 
					    "ee77ce4cf9121bccc3e37ba6b98f8e7acd589aaf", # gap-tmbundle
 | 
				
			||||||
 | 
					    "4cfc7ce12de920ccc836bbab2d748151d5ba7e38", # go-tmbundle
 | 
				
			||||||
 | 
					    "6c2e34d62c08f97a3e2ece3eedc65fbd99873ff4", # idl.tmbundle
 | 
				
			||||||
 | 
					    "e5212ae103917a9c2c3c1429a4569df466686fbd", # Isabelle.tmbundle
 | 
				
			||||||
 | 
					    "bb56ce634fb7ddd38eee988c593ab7cb98a04f64", # jflex.tmbundle
 | 
				
			||||||
 | 
					    "41cdc7e9f9d2e62eb8ac68a1a9359b9c39a7a9bf", # mako-tmbundle
 | 
				
			||||||
 | 
					    "7821982b18bc35d6925cc16ece68d9c71f1fbba3", # moonscript-tmbundle
 | 
				
			||||||
 | 
					    "c235154dbf7864612ac0d337ef5fe79a586b061a", # PHP-Twig.tmbundle
 | 
				
			||||||
 | 
					    "0c216b112f3a4e6d5848128504d8378d8c7eee00", # r.tmbundle
 | 
				
			||||||
    "da39a3ee5e6b4b0d3255bfef95601890afd80709", # SCSS.tmbundle
 | 
					    "da39a3ee5e6b4b0d3255bfef95601890afd80709", # SCSS.tmbundle
 | 
				
			||||||
    "b5432a1e1055de7eeede2dddf91e009480651fd6", # jasmin-sublime
 | 
					    "68539730d3cde34355f429f2267e265c1e030912", # smalltalk-tmbundle
 | 
				
			||||||
    "170b35df61879139b88379a8f1bfd86289c13599", # language-clojure
 | 
					    "4b5f67a54532ca6e49ba44cd135a510a74712e07", # Stylus
 | 
				
			||||||
    "60e1fe192238a032341d5dd3cd80535459fc84e4", # language-coffee-script
 | 
					 | 
				
			||||||
    "94fbd554ec1837fb7c508fd7425326639c3f4103", # language-csharp
 | 
					 | 
				
			||||||
    "70fb557a431891c2d634c33fa7367feab5066fd6", # language-javascript
 | 
					 | 
				
			||||||
    "8653305b358375d0fced85dc24793b99919b11ef", # language-shellscript
 | 
					 | 
				
			||||||
    "9f0c0b0926a18f5038e455e8df60221125fc3111", # elixir-tmbundle
 | 
					 | 
				
			||||||
    "a4dadb2374282098c5b8b14df308906f5347d79a", # mako-tmbundle
 | 
					 | 
				
			||||||
    "e06722add999e7428048abcc067cd85f1f7ca71c", # r.tmbundle
 | 
					 | 
				
			||||||
    "50b14a0e3f03d7ca754dac42ffb33302b5882b78", # smalltalk-tmbundle
 | 
					 | 
				
			||||||
    "eafbc4a2f283752858e6908907f3c0c90188785b", # gap-tmbundle
 | 
					 | 
				
			||||||
    "22b3bf41b9e3e8c22357ee12265f149d68aae60a", # Stylus
 | 
					 | 
				
			||||||
    "c87e7e574fca543941650e5b0a144b44c02c55d8", # language-crystal
 | 
					 | 
				
			||||||
    "ace112feb693358db2970d0805f6894b745e14b5", # atom-language-purescript
 | 
					 | 
				
			||||||
    "a626362e3efd030c1d97c0faf422cf8c2dfaea54", # FreeMarker.tmbundle
 | 
					 | 
				
			||||||
    "15a394f6bc43400946570b299aee8ae264a1e3ff", # language-renpy
 | 
					 | 
				
			||||||
    "74bb588102e8f332970a0fcabe36299e0806f130", # language-less
 | 
					 | 
				
			||||||
    "2f03492b52d7dd83b4e7472f01b87c6121e5b1a4", # monkey
 | 
					 | 
				
			||||||
    "784da5ce445892bc3e26beeb6a4402bbc5ca997e", # ant.tmbundle
 | 
					 | 
				
			||||||
    "bdab9fdc21e6790b479ccb5945b78bc0f6ce2493", # language-blade
 | 
					 | 
				
			||||||
    "c9118c370411f2f049c746c0fd096554e877aea2", # atom-language-perl6
 | 
					 | 
				
			||||||
    "15a502335012f27f8a5991139298edb87a6e467d", # atom-language-rust
 | 
					 | 
				
			||||||
    "304be6184f7f344d44a1d13bddf511019624fd22", # language-css
 | 
					 | 
				
			||||||
    "8c538244ba88ef9902a4faf11a2b9acec46f2a4e", # sublime-nginx
 | 
					 | 
				
			||||||
    "82c356d6ecb143a8a20e1658b0d6a2d77ea8126f", # idl.tmbundle
 | 
					 | 
				
			||||||
    "9dafd4e2a79cb13a6793b93877a254bc4d351e74", # sublime-text-ox
 | 
					 | 
				
			||||||
    "8e111741d97ba2e27b3d18a309d426b4a37e604f", # sublime-varnish
 | 
					 | 
				
			||||||
    "23d2538e33ce62d58abda2c039364b92f64ea6bc", # sublime-angelscript
 | 
					    "23d2538e33ce62d58abda2c039364b92f64ea6bc", # sublime-angelscript
 | 
				
			||||||
    "53714285caad3c480ebd248c490509695d10404b", # atom-language-julia
 | 
					    "966085b715baa0b0b67b40924123f92f90acd0ba", # sublime-shen
 | 
				
			||||||
 | 
					    "3df4ef028c6384b64bc59b8861d6c52093b2116d", # sublime-text-ox
 | 
				
			||||||
 | 
					    "fd47e09f1fbdb3c26e2960d0aa2b8535bbc31188", # sublimetext-cuda-cpp
 | 
				
			||||||
 | 
					    "93360925b1805be2b3f0a18e207649fcb524b991", # Std license in README.md of many TextMate grammars like abap.tmbundle
 | 
				
			||||||
  ].freeze
 | 
					  ].freeze
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # List of allowed SPDX license names
 | 
					  # List of allowed SPDX license names
 | 
				
			||||||
@@ -101,7 +91,7 @@ class TestGrammars < Minitest::Test
 | 
				
			|||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def test_submodules_have_recognized_licenses
 | 
					  def test_submodules_have_recognized_licenses
 | 
				
			||||||
    unrecognized = submodule_licenses.select { |k,v| v.nil? && Licensee::FSProject.new(k).license_file }
 | 
					    unrecognized = submodule_licenses.select { |k,v| v.nil? && Licensee.project(k).license_file }
 | 
				
			||||||
    unrecognized.reject! { |k,v| PROJECT_WHITELIST.include?(k) }
 | 
					    unrecognized.reject! { |k,v| PROJECT_WHITELIST.include?(k) }
 | 
				
			||||||
    message = "The following submodules have unrecognized licenses:\n* #{unrecognized.keys.join("\n* ")}\n"
 | 
					    message = "The following submodules have unrecognized licenses:\n* #{unrecognized.keys.join("\n* ")}\n"
 | 
				
			||||||
    message << "Please ensure that the project's LICENSE file contains the full text of the license"
 | 
					    message << "Please ensure that the project's LICENSE file contains the full text of the license"
 | 
				
			||||||
@@ -186,15 +176,22 @@ class TestGrammars < Minitest::Test
 | 
				
			|||||||
  # If the license is unrecognized, return its hash
 | 
					  # If the license is unrecognized, return its hash
 | 
				
			||||||
  def submodule_license(submodule)
 | 
					  def submodule_license(submodule)
 | 
				
			||||||
    # Prefer Licensee to detect a submodule's license
 | 
					    # Prefer Licensee to detect a submodule's license
 | 
				
			||||||
    project = Licensee::FSProject.new(submodule, detect_readme: true)
 | 
					    project = Licensee.project(submodule, detect_packages: true, detect_readme: true)
 | 
				
			||||||
    return project.license.key if project.license
 | 
					    return project.license.key if project.licenses.length == 1 && !project.license.pseudo_license?
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    # If we have more than one license, return the first one that isn't a
 | 
				
			||||||
 | 
					    # pseudo-license (other or no-license), if any
 | 
				
			||||||
 | 
					    if project.licenses.length > 1
 | 
				
			||||||
 | 
					      first_real_license = project.licenses.reject{ |f| f.pseudo_license? }.first
 | 
				
			||||||
 | 
					      return first_real_license.key unless first_real_license.nil?
 | 
				
			||||||
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # We know a license exists, but no method was able to recognize it.
 | 
					    # We know a license exists, but no method was able to recognize it.
 | 
				
			||||||
    # We return the license hash in this case, to uniquely identify it.
 | 
					    # We return the license hash in this case, to uniquely identify it.
 | 
				
			||||||
    if project.license_file
 | 
					    if project.license_file
 | 
				
			||||||
      return project.license_file.hash
 | 
					      return project.license_file.content_hash
 | 
				
			||||||
    elsif project.readme
 | 
					    elsif project.readme
 | 
				
			||||||
      return project.readme.hash
 | 
					      return project.readme.content_hash
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -44,6 +44,11 @@ class TestPedantic < Minitest::Test
 | 
				
			|||||||
    assert_sorted tests
 | 
					    assert_sorted tests
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def test_submodules_are_sorted
 | 
				
			||||||
 | 
					    system(File.expand_path("../../script/sort-submodules", __FILE__) + " -t")
 | 
				
			||||||
 | 
					    assert $?.success?
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  def assert_sorted(list)
 | 
					  def assert_sorted(list)
 | 
				
			||||||
    list.each_cons(2) do |previous, item|
 | 
					    list.each_cons(2) do |previous, item|
 | 
				
			||||||
      flunk "#{previous} should come after #{item}" if previous > item
 | 
					      flunk "#{previous} should come after #{item}" if previous > item
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -42,6 +42,15 @@ class TestSamples < Minitest::Test
 | 
				
			|||||||
    end
 | 
					    end
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  def test_filename_listed
 | 
				
			||||||
 | 
					    Samples.each do |sample|
 | 
				
			||||||
 | 
					      if sample[:filename]
 | 
				
			||||||
 | 
					        listed_filenames = Language[sample[:language]].filenames
 | 
				
			||||||
 | 
					        assert_includes listed_filenames, sample[:filename], "#{sample[:path]} isn't listed as a filename for #{sample[:language]} in languages.yml"
 | 
				
			||||||
 | 
					      end
 | 
				
			||||||
 | 
					    end
 | 
				
			||||||
 | 
					  end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  # Check that there aren't samples with extensions or interpreters that
 | 
					  # Check that there aren't samples with extensions or interpreters that
 | 
				
			||||||
  # aren't explicitly defined in languages.yml
 | 
					  # aren't explicitly defined in languages.yml
 | 
				
			||||||
  languages_yml = File.expand_path("../../lib/linguist/languages.yml", __FILE__)
 | 
					  languages_yml = File.expand_path("../../lib/linguist/languages.yml", __FILE__)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,16 +1,13 @@
 | 
				
			|||||||
FROM golang:1.9.2
 | 
					FROM golang:1.9.2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUN apt-get update
 | 
					WORKDIR /go/src/github.com/github/linguist/tools/grammars
 | 
				
			||||||
RUN apt-get upgrade -y
 | 
					 | 
				
			||||||
RUN apt-get install -y curl gnupg
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUN curl -sL https://deb.nodesource.com/setup_6.x | bash -
 | 
					RUN curl -sL https://deb.nodesource.com/setup_6.x | bash - && \
 | 
				
			||||||
RUN apt-get install -y nodejs
 | 
						apt-get update && \
 | 
				
			||||||
RUN npm install -g season
 | 
						apt-get install -y nodejs cmake && \
 | 
				
			||||||
 | 
						npm install -g season && \
 | 
				
			||||||
RUN apt-get install -y cmake
 | 
						cd /tmp && git clone https://github.com/vmg/pcre && \
 | 
				
			||||||
RUN cd /tmp && git clone https://github.com/vmg/pcre
 | 
						mkdir -p /tmp/pcre/build && cd /tmp/pcre/build && \
 | 
				
			||||||
RUN mkdir -p /tmp/pcre/build && cd /tmp/pcre/build && \
 | 
					 | 
				
			||||||
	cmake .. \
 | 
						cmake .. \
 | 
				
			||||||
		-DPCRE_SUPPORT_JIT=ON \
 | 
							-DPCRE_SUPPORT_JIT=ON \
 | 
				
			||||||
		-DPCRE_SUPPORT_UTF=ON \
 | 
							-DPCRE_SUPPORT_UTF=ON \
 | 
				
			||||||
@@ -22,14 +19,12 @@ RUN mkdir -p /tmp/pcre/build && cd /tmp/pcre/build && \
 | 
				
			|||||||
		-DPCRE_BUILD_PCREGREP=OFF \
 | 
							-DPCRE_BUILD_PCREGREP=OFF \
 | 
				
			||||||
		-DPCRE_BUILD_TESTS=OFF \
 | 
							-DPCRE_BUILD_TESTS=OFF \
 | 
				
			||||||
		-G "Unix Makefiles" && \
 | 
							-G "Unix Makefiles" && \
 | 
				
			||||||
    make && make install
 | 
					    make && make install && \
 | 
				
			||||||
RUN rm -rf /tmp/pcre
 | 
						rm -rf /tmp/pcre && \
 | 
				
			||||||
 | 
						cd /go && go get -u github.com/golang/dep/cmd/dep && \
 | 
				
			||||||
 | 
						rm -rf /var/lib/apt/lists/*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
RUN go get -u github.com/golang/dep/cmd/dep
 | 
					 | 
				
			||||||
WORKDIR /go/src/github.com/github/linguist/tools/grammars
 | 
					 | 
				
			||||||
COPY . .
 | 
					COPY . .
 | 
				
			||||||
 | 
					RUN dep ensure && go install ./cmd/grammar-compiler
 | 
				
			||||||
RUN dep ensure
 | 
					 | 
				
			||||||
RUN go install ./cmd/grammar-compiler
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
ENTRYPOINT ["grammar-compiler"]
 | 
					ENTRYPOINT ["grammar-compiler"]
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -145,7 +145,10 @@ func (conv *Converter) ConvertGrammars(update bool) error {
 | 
				
			|||||||
		repo.FixRules(knownScopes)
 | 
							repo.FixRules(knownScopes)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if update {
 | 
							if update {
 | 
				
			||||||
			conv.grammars[source] = repo.Scopes()
 | 
								scopes := repo.Scopes()
 | 
				
			||||||
 | 
								if len(scopes) > 0 {
 | 
				
			||||||
 | 
									conv.grammars[source] = scopes
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
		} else {
 | 
							} else {
 | 
				
			||||||
			expected := conv.grammars[source]
 | 
								expected := conv.grammars[source]
 | 
				
			||||||
			repo.CompareScopes(expected)
 | 
								repo.CompareScopes(expected)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -27,4 +27,9 @@ var KnownFields = map[string]bool{
 | 
				
			|||||||
	"foldingEndMarker":      true,
 | 
						"foldingEndMarker":      true,
 | 
				
			||||||
	"limitLineLength":       true,
 | 
						"limitLineLength":       true,
 | 
				
			||||||
	"hideFromUser":          true,
 | 
						"hideFromUser":          true,
 | 
				
			||||||
 | 
						"injectionSelector":     true,
 | 
				
			||||||
 | 
						"swallow":               true,
 | 
				
			||||||
 | 
						"foregroundColor":       true,
 | 
				
			||||||
 | 
						"backgroundColor":       true,
 | 
				
			||||||
 | 
						"increaseIndentPattern": true,
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -108,6 +108,11 @@ func isValidGrammar(path string, info os.FileInfo) bool {
 | 
				
			|||||||
		return false
 | 
							return false
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// Tree-Sitter grammars are not supported
 | 
				
			||||||
 | 
						if strings.HasPrefix(filepath.Base(path), "tree-sitter-") {
 | 
				
			||||||
 | 
							return false
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	dir := filepath.Dir(path)
 | 
						dir := filepath.Dir(path)
 | 
				
			||||||
	ext := filepath.Ext(path)
 | 
						ext := filepath.Ext(path)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -117,7 +122,7 @@ func isValidGrammar(path string, info os.FileInfo) bool {
 | 
				
			|||||||
	case ".tmlanguage", ".yaml-tmlanguage":
 | 
						case ".tmlanguage", ".yaml-tmlanguage":
 | 
				
			||||||
		return true
 | 
							return true
 | 
				
			||||||
	case ".cson", ".json":
 | 
						case ".cson", ".json":
 | 
				
			||||||
		return strings.HasSuffix(dir, "/grammars")
 | 
							return strings.HasSuffix(dir, "/grammars") || strings.HasSuffix(dir, "/syntaxes")
 | 
				
			||||||
	default:
 | 
						default:
 | 
				
			||||||
		return false
 | 
							return false
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -6,6 +6,7 @@ import (
 | 
				
			|||||||
	"os/exec"
 | 
						"os/exec"
 | 
				
			||||||
	"path"
 | 
						"path"
 | 
				
			||||||
	"path/filepath"
 | 
						"path/filepath"
 | 
				
			||||||
 | 
						"sort"
 | 
				
			||||||
	"strings"
 | 
						"strings"
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -14,14 +15,43 @@ type fsLoader struct {
 | 
				
			|||||||
	abspath string
 | 
						abspath string
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					var preferredGrammars = map[string]int{
 | 
				
			||||||
 | 
						".tmlanguage":      0,
 | 
				
			||||||
 | 
						".cson":            1,
 | 
				
			||||||
 | 
						".json":            1,
 | 
				
			||||||
 | 
						".plist":           2,
 | 
				
			||||||
 | 
						".yaml-tmlanguage": 3,
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					func findPreferredExtension(ext []string) string {
 | 
				
			||||||
 | 
						if len(ext) > 1 {
 | 
				
			||||||
 | 
							sort.Slice(ext, func(i, j int) bool {
 | 
				
			||||||
 | 
								a := strings.ToLower(ext[i])
 | 
				
			||||||
 | 
								b := strings.ToLower(ext[j])
 | 
				
			||||||
 | 
								return preferredGrammars[a] < preferredGrammars[b]
 | 
				
			||||||
 | 
							})
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return ext[0]
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (l *fsLoader) findGrammars() (files []string, err error) {
 | 
					func (l *fsLoader) findGrammars() (files []string, err error) {
 | 
				
			||||||
 | 
						grammars := make(map[string][]string)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	err = filepath.Walk(l.abspath,
 | 
						err = filepath.Walk(l.abspath,
 | 
				
			||||||
		func(path string, info os.FileInfo, err error) error {
 | 
							func(path string, info os.FileInfo, err error) error {
 | 
				
			||||||
			if err == nil && isValidGrammar(path, info) {
 | 
								if err == nil && isValidGrammar(path, info) {
 | 
				
			||||||
				files = append(files, path)
 | 
									ext := filepath.Ext(path)
 | 
				
			||||||
 | 
									base := path[0 : len(path)-len(ext)]
 | 
				
			||||||
 | 
									grammars[base] = append(grammars[base], ext)
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			return nil
 | 
								return nil
 | 
				
			||||||
		})
 | 
							})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						for base, ext := range grammars {
 | 
				
			||||||
 | 
							pref := findPreferredExtension(ext)
 | 
				
			||||||
 | 
							files = append(files, base+pref)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return
 | 
						return
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										2
									
								
								vendor/CodeMirror
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/CodeMirror
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/CodeMirror updated: 97290a687e...15d9d4e201
									
								
							
							
								
								
									
										13
									
								
								vendor/README.md
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										13
									
								
								vendor/README.md
									
									
									
									
										vendored
									
									
								
							@@ -71,6 +71,7 @@ This is a list of grammars that Linguist selects to provide syntax highlighting
 | 
				
			|||||||
- **Common Lisp:** [textmate/lisp.tmbundle](https://github.com/textmate/lisp.tmbundle)
 | 
					- **Common Lisp:** [textmate/lisp.tmbundle](https://github.com/textmate/lisp.tmbundle)
 | 
				
			||||||
- **Common Workflow Language:** [manabuishii/language-cwl](https://github.com/manabuishii/language-cwl)
 | 
					- **Common Workflow Language:** [manabuishii/language-cwl](https://github.com/manabuishii/language-cwl)
 | 
				
			||||||
- **Component Pascal:** [textmate/pascal.tmbundle](https://github.com/textmate/pascal.tmbundle)
 | 
					- **Component Pascal:** [textmate/pascal.tmbundle](https://github.com/textmate/pascal.tmbundle)
 | 
				
			||||||
 | 
					- **CoNLL-U:** [odanoburu/conllu-linguist-grammar](https://github.com/odanoburu/conllu-linguist-grammar)
 | 
				
			||||||
- **Cool:** [anunayk/cool-tmbundle](https://github.com/anunayk/cool-tmbundle)
 | 
					- **Cool:** [anunayk/cool-tmbundle](https://github.com/anunayk/cool-tmbundle)
 | 
				
			||||||
- **Coq:** [mkolosick/Sublime-Coq](https://github.com/mkolosick/Sublime-Coq)
 | 
					- **Coq:** [mkolosick/Sublime-Coq](https://github.com/mkolosick/Sublime-Coq)
 | 
				
			||||||
- **Cpp-ObjDump:** [nanoant/assembly.tmbundle](https://github.com/nanoant/assembly.tmbundle)
 | 
					- **Cpp-ObjDump:** [nanoant/assembly.tmbundle](https://github.com/nanoant/assembly.tmbundle)
 | 
				
			||||||
@@ -150,7 +151,7 @@ This is a list of grammars that Linguist selects to provide syntax highlighting
 | 
				
			|||||||
- **Handlebars:** [daaain/Handlebars](https://github.com/daaain/Handlebars)
 | 
					- **Handlebars:** [daaain/Handlebars](https://github.com/daaain/Handlebars)
 | 
				
			||||||
- **Harbour:** [hernad/atom-language-harbour](https://github.com/hernad/atom-language-harbour)
 | 
					- **Harbour:** [hernad/atom-language-harbour](https://github.com/hernad/atom-language-harbour)
 | 
				
			||||||
- **Haskell:** [atom-haskell/language-haskell](https://github.com/atom-haskell/language-haskell)
 | 
					- **Haskell:** [atom-haskell/language-haskell](https://github.com/atom-haskell/language-haskell)
 | 
				
			||||||
- **Haxe:** [clemos/haxe-sublime-bundle](https://github.com/clemos/haxe-sublime-bundle)
 | 
					- **Haxe:** [vshaxe/haxe-TmLanguage](https://github.com/vshaxe/haxe-TmLanguage)
 | 
				
			||||||
- **HCL:** [alexlouden/Terraform.tmLanguage](https://github.com/alexlouden/Terraform.tmLanguage)
 | 
					- **HCL:** [alexlouden/Terraform.tmLanguage](https://github.com/alexlouden/Terraform.tmLanguage)
 | 
				
			||||||
- **HLSL:** [tgjones/shaders-tmLanguage](https://github.com/tgjones/shaders-tmLanguage)
 | 
					- **HLSL:** [tgjones/shaders-tmLanguage](https://github.com/tgjones/shaders-tmLanguage)
 | 
				
			||||||
- **HTML:** [textmate/html.tmbundle](https://github.com/textmate/html.tmbundle)
 | 
					- **HTML:** [textmate/html.tmbundle](https://github.com/textmate/html.tmbundle)
 | 
				
			||||||
@@ -160,6 +161,7 @@ This is a list of grammars that Linguist selects to provide syntax highlighting
 | 
				
			|||||||
- **HTML+ERB:** [atom/language-ruby](https://github.com/atom/language-ruby)
 | 
					- **HTML+ERB:** [atom/language-ruby](https://github.com/atom/language-ruby)
 | 
				
			||||||
- **HTML+PHP:** [textmate/php.tmbundle](https://github.com/textmate/php.tmbundle)
 | 
					- **HTML+PHP:** [textmate/php.tmbundle](https://github.com/textmate/php.tmbundle)
 | 
				
			||||||
- **HTTP:** [samsalisbury/Sublime-HTTP](https://github.com/samsalisbury/Sublime-HTTP)
 | 
					- **HTTP:** [samsalisbury/Sublime-HTTP](https://github.com/samsalisbury/Sublime-HTTP)
 | 
				
			||||||
 | 
					- **HXML:** [vshaxe/haxe-TmLanguage](https://github.com/vshaxe/haxe-TmLanguage)
 | 
				
			||||||
- **IDL:** [mgalloy/idl.tmbundle](https://github.com/mgalloy/idl.tmbundle)
 | 
					- **IDL:** [mgalloy/idl.tmbundle](https://github.com/mgalloy/idl.tmbundle)
 | 
				
			||||||
- **Idris:** [idris-hackers/idris-sublime](https://github.com/idris-hackers/idris-sublime)
 | 
					- **Idris:** [idris-hackers/idris-sublime](https://github.com/idris-hackers/idris-sublime)
 | 
				
			||||||
- **Inform 7:** [erkyrath/language-inform7](https://github.com/erkyrath/language-inform7)
 | 
					- **Inform 7:** [erkyrath/language-inform7](https://github.com/erkyrath/language-inform7)
 | 
				
			||||||
@@ -188,7 +190,7 @@ This is a list of grammars that Linguist selects to provide syntax highlighting
 | 
				
			|||||||
- **KiCad Legacy Layout:** [Alhadis/language-pcb](https://github.com/Alhadis/language-pcb)
 | 
					- **KiCad Legacy Layout:** [Alhadis/language-pcb](https://github.com/Alhadis/language-pcb)
 | 
				
			||||||
- **KiCad Schematic:** [Alhadis/language-pcb](https://github.com/Alhadis/language-pcb)
 | 
					- **KiCad Schematic:** [Alhadis/language-pcb](https://github.com/Alhadis/language-pcb)
 | 
				
			||||||
- **Kit:** [textmate/html.tmbundle](https://github.com/textmate/html.tmbundle)
 | 
					- **Kit:** [textmate/html.tmbundle](https://github.com/textmate/html.tmbundle)
 | 
				
			||||||
- **Kotlin:** [vkostyukov/kotlin-sublime-package](https://github.com/vkostyukov/kotlin-sublime-package)
 | 
					- **Kotlin:** [nishtahir/language-kotlin](https://github.com/nishtahir/language-kotlin)
 | 
				
			||||||
- **LabVIEW:** [textmate/xml.tmbundle](https://github.com/textmate/xml.tmbundle)
 | 
					- **LabVIEW:** [textmate/xml.tmbundle](https://github.com/textmate/xml.tmbundle)
 | 
				
			||||||
- **Lasso:** [bfad/Sublime-Lasso](https://github.com/bfad/Sublime-Lasso)
 | 
					- **Lasso:** [bfad/Sublime-Lasso](https://github.com/bfad/Sublime-Lasso)
 | 
				
			||||||
- **Latte:** [textmate/php-smarty.tmbundle](https://github.com/textmate/php-smarty.tmbundle)
 | 
					- **Latte:** [textmate/php-smarty.tmbundle](https://github.com/textmate/php-smarty.tmbundle)
 | 
				
			||||||
@@ -213,7 +215,7 @@ This is a list of grammars that Linguist selects to provide syntax highlighting
 | 
				
			|||||||
- **Marko:** [marko-js/marko-tmbundle](https://github.com/marko-js/marko-tmbundle)
 | 
					- **Marko:** [marko-js/marko-tmbundle](https://github.com/marko-js/marko-tmbundle)
 | 
				
			||||||
- **Mask:** [tenbits/sublime-mask](https://github.com/tenbits/sublime-mask)
 | 
					- **Mask:** [tenbits/sublime-mask](https://github.com/tenbits/sublime-mask)
 | 
				
			||||||
- **Mathematica:** [shadanan/mathematica-tmbundle](https://github.com/shadanan/mathematica-tmbundle)
 | 
					- **Mathematica:** [shadanan/mathematica-tmbundle](https://github.com/shadanan/mathematica-tmbundle)
 | 
				
			||||||
- **Matlab:** [textmate/matlab.tmbundle](https://github.com/textmate/matlab.tmbundle)
 | 
					- **Matlab:** [mathworks/MATLAB-Language-grammar](https://github.com/mathworks/MATLAB-Language-grammar)
 | 
				
			||||||
- **Maven POM:** [textmate/maven.tmbundle](https://github.com/textmate/maven.tmbundle)
 | 
					- **Maven POM:** [textmate/maven.tmbundle](https://github.com/textmate/maven.tmbundle)
 | 
				
			||||||
- **Max:** [textmate/json.tmbundle](https://github.com/textmate/json.tmbundle)
 | 
					- **Max:** [textmate/json.tmbundle](https://github.com/textmate/json.tmbundle)
 | 
				
			||||||
- **MAXScript:** [Alhadis/language-maxscript](https://github.com/Alhadis/language-maxscript)
 | 
					- **MAXScript:** [Alhadis/language-maxscript](https://github.com/Alhadis/language-maxscript)
 | 
				
			||||||
@@ -322,11 +324,12 @@ This is a list of grammars that Linguist selects to provide syntax highlighting
 | 
				
			|||||||
- **SaltStack:** [saltstack/atom-salt](https://github.com/saltstack/atom-salt)
 | 
					- **SaltStack:** [saltstack/atom-salt](https://github.com/saltstack/atom-salt)
 | 
				
			||||||
- **SAS:** [rpardee/sas.tmbundle](https://github.com/rpardee/sas.tmbundle)
 | 
					- **SAS:** [rpardee/sas.tmbundle](https://github.com/rpardee/sas.tmbundle)
 | 
				
			||||||
- **Sass:** [nathos/sass-textmate-bundle](https://github.com/nathos/sass-textmate-bundle)
 | 
					- **Sass:** [nathos/sass-textmate-bundle](https://github.com/nathos/sass-textmate-bundle)
 | 
				
			||||||
- **Scala:** [mads379/scala.tmbundle](https://github.com/mads379/scala.tmbundle)
 | 
					- **Scala:** [scala/vscode-scala-syntax](https://github.com/scala/vscode-scala-syntax)
 | 
				
			||||||
- **Scaml:** [scalate/Scalate.tmbundle](https://github.com/scalate/Scalate.tmbundle)
 | 
					- **Scaml:** [scalate/Scalate.tmbundle](https://github.com/scalate/Scalate.tmbundle)
 | 
				
			||||||
- **Scheme:** [textmate/scheme.tmbundle](https://github.com/textmate/scheme.tmbundle)
 | 
					- **Scheme:** [textmate/scheme.tmbundle](https://github.com/textmate/scheme.tmbundle)
 | 
				
			||||||
- **Scilab:** [textmate/scilab.tmbundle](https://github.com/textmate/scilab.tmbundle)
 | 
					- **Scilab:** [textmate/scilab.tmbundle](https://github.com/textmate/scilab.tmbundle)
 | 
				
			||||||
- **SCSS:** [MarioRicalde/SCSS.tmbundle](https://github.com/MarioRicalde/SCSS.tmbundle)
 | 
					- **SCSS:** [MarioRicalde/SCSS.tmbundle](https://github.com/MarioRicalde/SCSS.tmbundle)
 | 
				
			||||||
 | 
					- **sed:** [Alhadis/language-sed](https://github.com/Alhadis/language-sed)
 | 
				
			||||||
- **ShaderLab:** [tgjones/shaders-tmLanguage](https://github.com/tgjones/shaders-tmLanguage)
 | 
					- **ShaderLab:** [tgjones/shaders-tmLanguage](https://github.com/tgjones/shaders-tmLanguage)
 | 
				
			||||||
- **Shell:** [atom/language-shellscript](https://github.com/atom/language-shellscript)
 | 
					- **Shell:** [atom/language-shellscript](https://github.com/atom/language-shellscript)
 | 
				
			||||||
- **ShellSession:** [atom/language-shellscript](https://github.com/atom/language-shellscript)
 | 
					- **ShellSession:** [atom/language-shellscript](https://github.com/atom/language-shellscript)
 | 
				
			||||||
@@ -374,7 +377,7 @@ This is a list of grammars that Linguist selects to provide syntax highlighting
 | 
				
			|||||||
- **TypeScript:** [Microsoft/TypeScript-TmLanguage](https://github.com/Microsoft/TypeScript-TmLanguage)
 | 
					- **TypeScript:** [Microsoft/TypeScript-TmLanguage](https://github.com/Microsoft/TypeScript-TmLanguage)
 | 
				
			||||||
- **Unified Parallel C:** [textmate/c.tmbundle](https://github.com/textmate/c.tmbundle)
 | 
					- **Unified Parallel C:** [textmate/c.tmbundle](https://github.com/textmate/c.tmbundle)
 | 
				
			||||||
- **Unity3D Asset:** [atom/language-yaml](https://github.com/atom/language-yaml)
 | 
					- **Unity3D Asset:** [atom/language-yaml](https://github.com/atom/language-yaml)
 | 
				
			||||||
- **Unix Assembly:** [Nessphoro/sublimeassembly](https://github.com/Nessphoro/sublimeassembly)
 | 
					- **Unix Assembly:** [calculuswhiz/Assembly-Syntax-Definition](https://github.com/calculuswhiz/Assembly-Syntax-Definition)
 | 
				
			||||||
- **Uno:** [atom/language-csharp](https://github.com/atom/language-csharp)
 | 
					- **Uno:** [atom/language-csharp](https://github.com/atom/language-csharp)
 | 
				
			||||||
- **UnrealScript:** [textmate/java.tmbundle](https://github.com/textmate/java.tmbundle)
 | 
					- **UnrealScript:** [textmate/java.tmbundle](https://github.com/textmate/java.tmbundle)
 | 
				
			||||||
- **UrWeb:** [gwalborn/UrWeb-Language-Definition](https://github.com/gwalborn/UrWeb-Language-Definition)
 | 
					- **UrWeb:** [gwalborn/UrWeb-Language-Definition](https://github.com/gwalborn/UrWeb-Language-Definition)
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										1
									
								
								vendor/grammars/Assembly-Syntax-Definition
									
									
									
									
										vendored
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								vendor/grammars/Assembly-Syntax-Definition
									
									
									
									
										vendored
									
									
										Submodule
									
								
							 Submodule vendor/grammars/Assembly-Syntax-Definition added at 3d82aa7847
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/Docker.tmbundle
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/Docker.tmbundle
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/Docker.tmbundle updated: 41b5d53ca4...6e521ead6c
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/Elm
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/Elm
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/Elm updated: 581b9e6f5b...6bbbca9ccd
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/JSyntax
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/JSyntax
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/JSyntax updated: 4647952123...1a918545c8
									
								
							
							
								
								
									
										1
									
								
								vendor/grammars/MATLAB-Language-grammar
									
									
									
									
										vendored
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								vendor/grammars/MATLAB-Language-grammar
									
									
									
									
										vendored
									
									
										Submodule
									
								
							 Submodule vendor/grammars/MATLAB-Language-grammar added at ef1281a78f
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/NimLime
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/NimLime
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/NimLime updated: bf48175e71...443f9d48df
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/Stylus
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/Stylus
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/Stylus updated: 4b382d28fb...30908e3b57
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/SublimeEthereum
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/SublimeEthereum
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/SublimeEthereum updated: 396ba0fbef...ab901fdf94
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/TypeScript-TmLanguage
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/TypeScript-TmLanguage
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/TypeScript-TmLanguage updated: 4b614e2efd...0247d1444a
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/atom-language-julia
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/atom-language-julia
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/atom-language-julia updated: 4e8896ed0b...7803a437f8
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/atom-language-nextflow
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/atom-language-nextflow
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/atom-language-nextflow updated: a8a91d7e10...557669e2ae
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/atom-language-rust
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/atom-language-rust
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/atom-language-rust updated: 59893b659a...179f449a69
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/atom-language-stan
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/atom-language-stan
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/atom-language-stan updated: 0a79d383b7...3e3bbe67bf
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/chapel-tmbundle
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/chapel-tmbundle
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/chapel-tmbundle updated: fe50e0bf1e...c79a23e40b
									
								
							
							
								
								
									
										1
									
								
								vendor/grammars/conllu-linguist-grammar
									
									
									
									
										vendored
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								vendor/grammars/conllu-linguist-grammar
									
									
									
									
										vendored
									
									
										Submodule
									
								
							 Submodule vendor/grammars/conllu-linguist-grammar added at e9710323ce
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/d.tmbundle
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/d.tmbundle
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/d.tmbundle updated: 927f34339a...4e3b5eca5d
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/dartlang
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/dartlang
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/dartlang updated: 18fa15059b...85c0396407
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/elixir-tmbundle
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/elixir-tmbundle
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/elixir-tmbundle updated: f7cd93d6b4...441f6bb774
									
								
							
							
								
								
									
										1
									
								
								vendor/grammars/haxe-TmLanguage
									
									
									
									
										vendored
									
									
										Submodule
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								vendor/grammars/haxe-TmLanguage
									
									
									
									
										vendored
									
									
										Submodule
									
								
							 Submodule vendor/grammars/haxe-TmLanguage added at e6c1804d44
									
								
							
							
								
								
									
										1
									
								
								vendor/grammars/haxe-sublime-bundle
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								vendor/grammars/haxe-sublime-bundle
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/haxe-sublime-bundle deleted from b6bbf48404
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/idl.tmbundle
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/idl.tmbundle
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/idl.tmbundle updated: 4853189bad...6895ac67f8
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/jflex.tmbundle
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/jflex.tmbundle
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/jflex.tmbundle updated: 12a7a88b7a...879cc0ebc9
									
								
							
							
								
								
									
										1
									
								
								vendor/grammars/kotlin-sublime-package
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										1
									
								
								vendor/grammars/kotlin-sublime-package
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/kotlin-sublime-package deleted from 4612f71e74
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-agc
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-agc
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-agc updated: 645d332f50...6fb398ee11
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-apl
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-apl
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-apl updated: 3a951edcb8...1240b6fb99
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-babel
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-babel
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-babel updated: 656d5d3b42...4b43df39fe
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-ballerina
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-ballerina
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-ballerina updated: 91c724bec6...3d7c2793b1
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-blade
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-blade
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-blade updated: 5b2611c46b...8586e34a66
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-clojure
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-clojure
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-clojure updated: eade1d0401...a6dcd90d25
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-coffee-script
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-coffee-script
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-coffee-script updated: b0465e3e80...0ce1815211
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-crystal
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-crystal
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-crystal updated: 6e966bb589...17a8dfa66b
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-csharp
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-csharp
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-csharp updated: 364ba38ee2...cc00335ae8
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-csound
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-csound
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-csound updated: b24783820b...b6cfb93ef4
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-css
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-css
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-css updated: f4e032d6f3...d57ce703cd
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-cwl
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-cwl
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-cwl updated: 204ab237d3...f3b938f1da
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-emacs-lisp
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-emacs-lisp
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-emacs-lisp updated: ee4168aeac...def2b3e032
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-gfm
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-gfm
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-gfm updated: 76ddd7e2fd...1a81e5f1ca
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-haskell
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-haskell
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-haskell updated: c8778adf83...730e3c34d7
									
								
							
							
								
								
									
										2
									
								
								vendor/grammars/language-javascript
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/language-javascript
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/language-javascript updated: 58cb09d773...4b1b2fcca0
									
								
							Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user