Compare commits

...

33 Commits

Author SHA1 Message Date
Theodore Dubois
14a7cb2d1b Add calculuswhiz/Assembly-Syntax-Definition grammar and use it for Unix Assembly (#4096) 2018-04-18 15:29:33 +02:00
Paul Chaignon
54ae7e7b4d Strategies take result from previous strategy into account (#4099)
Each strategy takes as candidates the language outputted by the
previous strategy if any. This was already the case for the
Classifier and Heuristic strategies as these couldn't generate new
candidate languages (as opposed to the Modeline, Filename, Shebang,
and Extension strategies).

In practice, this signifies that if, for example, the Shebang
strategy finds two possible languages for a given file (as is
currently possible with the perl interpreter), the next strategy, the
Extension strategy, will use this information and further reduce the
set of possible language.
Currently, without this commit, the Extension strategy would discard
the results from the previous strategy and start anew, possibly
returning a different language from those returned by the Shebang
strategy.
2018-04-17 10:02:57 +02:00
Brayden Banks
5363e045bb Teach Generated about Cargo lock files (#4100) 2018-04-15 12:04:19 +02:00
Colin Seymour
cc4da98616 Fix adding/replacing a grammar (#4097)
* Licensed needs a full path now

* Add docker installed/running guard

* Docker is required for adding/replacing grammars

* Use more elegant method

Hat-tip to @Alhadis 🎩
2018-04-12 12:14:25 +02:00
Juan Julián Merelo Guervós
a9ff59aef5 Additions to the Perl family of languages (#4066)
* Mainly fixing problems with Perl heuristics

And also adding a little bit of text to the README file to help with local use and test.

* Adds new sample

* Adds a couple of samples more, not represented before

* Moves installation intructions to CONTRIBUTING.md

Refs #2309 and also changes github.com to an uniform capitalization.

* Correcting error. Great job, CI

* Moving another file

* Adds samples and new checks for perl/perl6

* Stupid mistake

* Changing regex for perl5 vs perl6

Initial suggestion by @pchaigno, slightly changed to eliminate false positives such as "classes" or "modules" at the beginning of a line in the =pod

BTW, it would be interesting to just eliminate these areas for language detection.

* Eliminates Rexfile from Perl6

And adds .pod6

* Followup to #2709

I just found I had this sitting here, so I might as well follow
instructions to fix it.

* Adds example for pod6

* Eliminates .pod because it's its own language

* Removes bad directory

* Reverting changes that were already there

* Restored CONTRIBUTING.md from head

I see installation of cmake is advised in README.md

* Eliminates `.pod6`

To leave way for #3366 or succeeding PRs.

* Removed by request, since we're no longer adding this extension

* Sorting by alphabetical order filenames

* Moved from sample to test fixtures
2018-04-11 17:32:26 +02:00
John Gardner
7b9ec3d1b3 Add support for sed as a programming language (#4093) 2018-04-11 16:09:54 +02:00
Cyrille Le Clerc
51d3711faf Detect Maven wrapper "mvnw" (#4042)
* Detect Maven wrapper "mvnw"

* Fix build, filenames must be sorted in the "filenames" section of languages.yml, filenames cannot be grouped by topic

* Remove `mvnw` file from languages/Shell/filenames according to @Alhadis recommendation as we are sure that `mvnw` always starts with the shebang `#!/bin/sh`.

* Remove space chars added by mistake
2018-04-08 16:04:34 +01:00
Jens Fischer
14fcd75773 Add HXML support (#4092)
* Add HXML support

* Fix test failures
2018-04-08 11:23:00 +01:00
Jens Fischer
34c623eaba Replace haxe-sublime-bundle with haxe-TmLanguage (#4079)
* Replace haxe-sublime-bundle with haxe-TmLanguage

* Add missing changes

* Typo fix
2018-04-06 17:25:59 +01:00
John Gardner
324bc83914 Register "cperl" as an alias of Perl 5 (#4067)
* Register `cperl` as an alias of Perl 5

Emacs ships with an enhanced major-mode for editing Perl with embedded C
sections (called `cperl-mode`). This commit enables Linguist to identify
Perl files containing cperl modelines.

* Add `cperl` to list of Perl 5 interpreters
2018-04-07 01:43:51 +10:00
kasper3
ecc62784ca Add pwsh PowerShell interpreter (#4073)
* Register pwsh as interpreter for PowerShell

* Add pwsh sample

* Remove pwsh from Shell section
2018-04-06 15:25:09 +01:00
Colin Seymour
f452612666 Update Licensee and Licensed gems (#3982)
* Update licensee version

This pulls in Licensed 0.10.0 too.

* Use a full path to the grammars

Licensed now enforces this as it's easier then guessing.

* Ensure full path

* Use new path for FSProject

* Starting to adjust tests

* require licensee again

* Fix grammar tests

* verify -> status

* whitelist -> allowed

* explicitly set cache_path in configuration

default for licensed v1.0 changed from `vendor/licenses` to `.licenses`

* load configuration from file location

default configuration file location changed from `vendor/licenses/config.yml` to `.licensed.yml`

* update gemspec for licensed 1.0.0

* Remove unused license hash
2018-04-03 16:35:24 +01:00
Paul Chaignon
0bf4b8a482 Remove samples/LANG/filenames as a source of truth (#4078)
All filenames must now be explicitly listed in languages.yml. A test
makes sure they are.
2018-04-02 11:09:06 +02:00
Stan Hu
718c9efaca Bump Charlock Holmes to 0.7.6 (#4086) 2018-04-01 16:16:00 +01:00
Colin Seymour
49593a6a6d Update Travis Config (#4081)
* Switch to trusty

Precise is likely to die sometime after March 2018 -
https://blog.travis-ci.com/2017-08-31-trusty-as-default-status

* Remove Ruby 2.1 and 2.2

Ruby 2.1 is already EOL. 2.2 is EOL end March '18

* Need libicu52 on trusty
2018-03-29 09:10:13 +01:00
Nish Tahir
ba1cf12776 Replace Kotlin language grammar (#4065) 2018-03-28 16:57:17 +01:00
Joseph Stachelek
03f394626d Exclude R package doc directory (#4068)
* Exclude R package doc directory

* Match starting slash of R doc directory
2018-03-28 16:49:13 +01:00
Ben Wiley
cf385d9e77 Support for PICO-8 as Lua variant (#4072)
* Support for PICO-8 as Lua variant

Treats [PICO-8 fantasy console](https://www.lexaloffle.com/pico-8.php) files (.p8) as Lua.

A search for `pico8 extension:p8` on GitHub shows [hundreds of repositories](https://github.com/search?utf8=%E2%9C%93&q=pico8+extension%3Ap8&type=Repositories&ref=advsearch&l=&l=) using this extension. Pico-8 stores information describing the code, graphics and sound for a game in a single .p8 text file. Due to the nature of Pico-8, this information is relatively terse and the main feature of the file is Lua code. Therefore it makes sense to give .p8 files Lua syntax highlighting.

* Create treegen.p8

https://github.com/lvictorino/pico8/blob/master/treegen.p8
2018-03-28 16:47:55 +01:00
Steve Pike
dd3b1eec91 enable syntax highlighting for .jinja2 ext (#4051)
* enable syntax highlighting for .jinja2 ext

This is a commonly used jinja (2!) extension

* add sample jinja2 file

* move jinja to django samples dir

* added a link to the jinja docs in the sample file

* change sample jinja2 file to a one that exists on GH
2018-03-06 13:53:24 +00:00
John Gardner
2b65318a61 Register 12 new JSON filenames/extensions (#4053)
Added:
* .avsc
* .gltf
* .htmlhintrc
* .jscsrc
* .jslintrc
* .jsonl
* .tern-config
* .tern-project
* .tfstate
* .tfstate.backup
* .webapp
* .webmanifest
2018-03-02 20:33:47 +11:00
John Gardner
1b3cdda4f7 Add script to alphabetise submodule list (#4054) 2018-03-02 20:33:09 +11:00
Nicolas Stucki
50d46eed38 Update Scala syntax grammar (#4044)
* Add vscode-scala

* Use vscode-scala template for scala sources

* Add grammar licence for vscode-scala

* Fix vendor in README

* Sort vendors in grammars.yml

* Fix license file name
2018-02-28 12:03:31 +00:00
bruno cuconato
1bbcfa5683 add CoNLL-U format (#4029)
* * add CoNLL-U format
- add to languages.yml
- add textmate grammar
  - add to vendor/README
  - add to grammars.yml
- add samples

* rm other extensions as I couldn't find properly licensed examples of them in the wild

* substitutesamples for something with appropriate license

* update grammar submodule so it finds the LICENSE

* add license to grammar

* * conllu
- readd other extensions
- abridge samples and a new one
- update grammar submodule: correct extension of grammar file

* rm .conllx extension
2018-02-21 15:27:32 +00:00
Jason Malinowski
c2d3170064 Support VB.NET *.Generated.vb along with *.Generated.cs files (#4027) 2018-02-21 11:56:55 +00:00
Paul Chaignon
fe3981ff03 Whitelist 4 new TextMate grammar fields (#4039)
swallow, foregroundColor, and backgroundColor are older fields for TextMate 1.
2018-02-19 16:07:15 +01:00
Paul Chaignon
3769216c7a Associate .x extension to Linker Script language (#4040) 2018-02-19 10:50:05 +01:00
Colin Seymour
052c048fb5 Update sublime-netlinx ref (#4037) 2018-02-16 11:40:41 +00:00
Damien Guard
cec3a26496 Remove NANT grammar from CSharp (#4034)
We no longer include this grammar in atom/language-csharp as it caused issues with highlighting bash etc. and was unmaintained.
2018-02-16 11:40:11 +00:00
Mike McQuaid
4f0f9bd51d CONTRIBUTING: note license. (#4036)
This is to be more explicit about the contribution process and license.
2018-02-16 09:27:12 +00:00
Paul Chaignon
04e7956407 Whitelist injectionSelector in grammars (#4032) 2018-02-13 12:45:21 +01:00
Nathaniel J. Smith
2abf488e65 Treat "python3" as an alias for "python" (#4026)
Pygments has separate highlighters for "python" (meaning python 2) and "python3" (meaning python 3). As a result, there are lots of files out there (especially ReSTructured text) that contain code blocks whose language is explicitly given as "python3" or "py3". Currently these are unrecognized by linguist. Instead, we should use our python highlighter for them (which works for both python 2 and python 3).

References:
  http://pygments.org/docs/lexers/#pygments.lexers.python.Python3Lexer
  https://github.com/github/markup/issues/1019
  https://github.com/python-trio/async_generator/pull/12
2018-02-08 09:52:21 +00:00
Tobias V. Langhoff
812797b51d Add "asm" as alias for assembly (#4019) 2018-01-31 11:56:47 +00:00
Tobias V. Langhoff
dc32876113 Fix anchor link in README.md (#4018) 2018-01-30 21:41:45 +01:00
70 changed files with 3519 additions and 839 deletions

1458
.gitmodules vendored

File diff suppressed because it is too large Load Diff

View File

@@ -5,19 +5,18 @@ addons:
apt:
packages:
- libicu-dev
- libicu48
- libicu52
before_install: script/travis/before_install
script:
- bundle exec rake
- script/licensed verify
- script/licensed status
rvm:
- 2.1
- 2.2
- 2.3.3
- 2.4.0
- 2.5.0
notifications:
disabled: true
@@ -27,6 +26,6 @@ git:
depth: 3
cache: bundler
dist: precise
dist: trusty
bundler_args: --without debug

View File

@@ -1,6 +1,10 @@
# 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.
@@ -24,9 +28,9 @@ To run Linguist from the cloned repository:
### 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

View File

@@ -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 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

View File

@@ -14,7 +14,7 @@ Gem::Specification.new do |s|
s.executables = ['linguist', 'git-linguist']
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 'mime-types', '>= 1.19'
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 'yajl-ruby'
s.add_development_dependency 'color-proximity', '~> 0.2.1'
s.add_development_dependency 'licensed'
s.add_development_dependency 'licensee', '~> 8.8.0'
s.add_development_dependency 'licensed', '~> 1.0.0'
s.add_development_dependency 'licensee'
end

View File

@@ -9,6 +9,8 @@ vendor/grammars/Agda.tmbundle:
- source.agda
vendor/grammars/Alloy.tmbundle:
- source.alloy
vendor/grammars/Assembly-Syntax-Definition:
- source.assembly.unix
vendor/grammars/AutoHotkey:
- source.ahk
vendor/grammars/BrightScript.tmbundle:
@@ -248,6 +250,8 @@ vendor/grammars/chapel-tmbundle:
vendor/grammars/cmake.tmbundle:
- source.cache.cmake
- source.cmake
vendor/grammars/conllu-linguist-grammar:
- text.conllu
vendor/grammars/cool-tmbundle:
- source.cool
vendor/grammars/cpp-qt.tmbundle:
@@ -318,12 +322,9 @@ vendor/grammars/graphviz.tmbundle:
- source.dot
vendor/grammars/groovy.tmbundle:
- source.groovy
vendor/grammars/haxe-sublime-bundle:
- source.erazor
- source.haxe.2
- source.hss.1
vendor/grammars/haxe-TmLanguage:
- source.hx
- source.hxml
- source.nmml
vendor/grammars/html.tmbundle:
- text.html.basic
vendor/grammars/idl.tmbundle:
@@ -356,8 +357,6 @@ vendor/grammars/jflex.tmbundle:
- source.jflex
vendor/grammars/json.tmbundle:
- source.json
vendor/grammars/kotlin-sublime-package:
- source.Kotlin
vendor/grammars/language-agc:
- source.agc
vendor/grammars/language-apl:
@@ -389,7 +388,6 @@ vendor/grammars/language-csharp:
- source.cake
- source.cs
- source.csx
- source.nant-build
vendor/grammars/language-csound:
- source.csound
- source.csound-document
@@ -441,6 +439,8 @@ vendor/grammars/language-jolie:
vendor/grammars/language-jsoniq:
- source.jq
- source.xq
vendor/grammars/language-kotlin:
- source.kotlin
vendor/grammars/language-less:
- source.css.less
vendor/grammars/language-maxscript:
@@ -486,6 +486,8 @@ vendor/grammars/language-ruby:
- source.ruby
- source.ruby.gemfile
- text.html.erb
vendor/grammars/language-sed:
- source.sed
vendor/grammars/language-shellscript:
- source.shell
- text.shell-session
@@ -621,7 +623,6 @@ vendor/grammars/sass-textmate-bundle:
- source.sass
vendor/grammars/scala.tmbundle:
- source.sbt
- source.scala
vendor/grammars/scheme.tmbundle:
- source.scheme
vendor/grammars/scilab.tmbundle:
@@ -728,6 +729,8 @@ vendor/grammars/verilog.tmbundle:
- source.verilog
vendor/grammars/vhdl:
- source.vhdl
vendor/grammars/vscode-scala-syntax:
- source.scala
vendor/grammars/vue-syntax-highlight:
- text.html.vue
vendor/grammars/wdl-sublime-syntax-highlighter:

View File

@@ -15,6 +15,7 @@
- ^[Mm]an/
- ^[Ee]xamples/
- ^[Dd]emos?/
- (^|/)inst/doc/
## Documentation files ##

View File

@@ -57,6 +57,7 @@ module Linguist
generated_net_designer_file? ||
generated_net_specflow_feature_file? ||
composer_lock? ||
cargo_lock? ||
node_modules? ||
go_vendor? ||
npm_shrinkwrap_or_package_lock? ||
@@ -222,7 +223,7 @@ module Linguist
#
# Returns true or false
def generated_net_designer_file?
name.downcase =~ /\.designer\.cs$/
name.downcase =~ /\.designer\.(cs|vb)$/
end
# Internal: Is this a codegen file for Specflow feature file?
@@ -378,6 +379,13 @@ module Linguist
!!name.match(/.\.zep\.(?:c|h|php)$/)
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?
#
# Returns true or false

View File

@@ -518,6 +518,8 @@ module Linguist
Language["RPC"]
elsif /^%(end|ctor|hook|group)\b/.match(data)
Language["Logos"]
elsif /OUTPUT_ARCH\(|OUTPUT_FORMAT\(|SECTIONS/.match(data)
Language["Linker Script"]
end
end

View File

@@ -539,14 +539,6 @@ module Linguist
end
end
if fns = filenames[name]
fns.each do |filename|
if !options['filenames'].include?(filename)
options['filenames'] << filename
end
end
end
Language.create(
:name => name,
:color => options['color'],

View File

@@ -239,6 +239,10 @@ ApacheConf:
extensions:
- ".apacheconf"
- ".vhost"
filenames:
- ".htaccess"
- apache2.conf
- httpd.conf
tm_scope: source.apache-config
ace_mode: apache_conf
language_id: 16
@@ -301,6 +305,7 @@ Assembly:
type: programming
color: "#6E4C13"
aliases:
- asm
- nasm
extensions:
- ".asm"
@@ -729,6 +734,17 @@ Closure Templates:
- ".soy"
tm_scope: text.html.soy
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:
type: programming
tm_scope: source.coffee
@@ -1455,6 +1471,8 @@ GN:
- ".gni"
interpreters:
- gn
filenames:
- ".gn"
tm_scope: source.gn
ace_mode: python
codemirror_mode: python
@@ -1733,6 +1751,7 @@ HTML+Django:
group: HTML
extensions:
- ".jinja"
- ".jinja2"
- ".mustache"
- ".njk"
aliases:
@@ -1802,6 +1821,13 @@ HTTP:
codemirror_mode: http
codemirror_mime_type: message/http
language_id: 152
HXML:
type: data
ace_mode: text
extensions:
- ".hxml"
tm_scope: source.hxml
language_id: 786683730
Hack:
type: programming
ace_mode: php
@@ -1864,7 +1890,7 @@ Haxe:
extensions:
- ".hx"
- ".hxsl"
tm_scope: source.haxe.2
tm_scope: source.hx
language_id: 158
Hy:
type: programming
@@ -1912,6 +1938,8 @@ INI:
- ".pro"
- ".properties"
filenames:
- ".editorconfig"
- ".gitconfig"
- buildozer.spec
tm_scope: source.ini
aliases:
@@ -2024,12 +2052,23 @@ JSON:
searchable: false
extensions:
- ".json"
- ".avsc"
- ".geojson"
- ".gltf"
- ".JSON-tmLanguage"
- ".jsonl"
- ".tfstate"
- ".tfstate.backup"
- ".topojson"
- ".webapp"
- ".webmanifest"
filenames:
- ".arcconfig"
- ".htmlhintrc"
- ".jscsrc"
- ".jshintrc"
- ".tern-config"
- ".tern-project"
- composer.lock
- mcmod.info
language_id: 174
@@ -2039,6 +2078,7 @@ JSON5:
- ".json5"
filenames:
- ".babelrc"
- ".jslintrc"
tm_scope: source.js
ace_mode: javascript
codemirror_mode: javascript
@@ -2243,7 +2283,7 @@ Kotlin:
- ".kt"
- ".ktm"
- ".kts"
tm_scope: source.Kotlin
tm_scope: source.kotlin
ace_mode: text
codemirror_mode: clike
codemirror_mime_type: text/x-kotlin
@@ -2364,6 +2404,7 @@ Linker Script:
extensions:
- ".ld"
- ".lds"
- ".x"
filenames:
- ld.script
tm_scope: none
@@ -2475,6 +2516,7 @@ Lua:
- ".lua"
- ".fcgi"
- ".nse"
- ".p8"
- ".pd_lua"
- ".rbxs"
- ".wlua"
@@ -2905,7 +2947,7 @@ Nextflow:
extensions:
- ".nf"
filenames:
- "nextflow.config"
- nextflow.config
interpreters:
- nextflow
language_id: 506780613
@@ -3199,6 +3241,7 @@ PHP:
- ".phps"
- ".phpt"
filenames:
- ".php"
- ".php_cs"
- ".php_cs.dist"
- Phakefile
@@ -3343,9 +3386,15 @@ Perl:
- ".psgi"
- ".t"
filenames:
- Makefile.PL
- Rexfile
- ack
- cpanfile
interpreters:
- cperl
- perl
aliases:
- cperl
language_id: 282
Perl 6:
type: programming
@@ -3362,8 +3411,6 @@ Perl 6:
- ".pm"
- ".pm6"
- ".t"
filenames:
- Rexfile
interpreters:
- perl6
aliases:
@@ -3489,6 +3536,8 @@ PowerShell:
- ".ps1"
- ".psd1"
- ".psm1"
interpreters:
- pwsh
language_id: 293
Processing:
type: programming
@@ -3631,6 +3680,7 @@ Python:
- python3
aliases:
- rusthon
- python3
language_id: 303
Python console:
type: programming
@@ -3681,6 +3731,7 @@ R:
- ".rsx"
filenames:
- ".Rprofile"
- expr-dist
interpreters:
- Rscript
ace_mode: r
@@ -4007,6 +4058,7 @@ Ruby:
- Berksfile
- Brewfile
- Buildfile
- Capfile
- Dangerfile
- Deliverfile
- Fastfile
@@ -4187,7 +4239,7 @@ Scala:
color: "#c22d40"
extensions:
- ".scala"
- ".kojo"
- ".kojo"
- ".sbt"
- ".sc"
interpreters:
@@ -4270,8 +4322,29 @@ Shell:
- ".bash_logout"
- ".bash_profile"
- ".bashrc"
- ".cshrc"
- ".login"
- ".profile"
- ".zlogin"
- ".zlogout"
- ".zprofile"
- ".zshenv"
- ".zshrc"
- 9fs
- PKGBUILD
- bash_logout
- bash_profile
- bashrc
- cshrc
- gradlew
- login
- man
- profile
- zlogin
- zlogout
- zprofile
- zshenv
- zshrc
interpreters:
- ash
- bash
@@ -4521,6 +4594,8 @@ TOML:
type: data
extensions:
- ".toml"
filenames:
- Cargo.lock
tm_scope: source.toml
ace_mode: toml
codemirror_mode: toml
@@ -4540,6 +4615,9 @@ Tcl:
- ".tcl"
- ".adp"
- ".tm"
filenames:
- owh
- starfield
interpreters:
- tclsh
- wish
@@ -4615,6 +4693,7 @@ Text:
- ".no"
filenames:
- COPYING
- COPYING.regex
- COPYRIGHT.regex
- FONTLOG
- INSTALL
@@ -4629,6 +4708,7 @@ Text:
- delete.me
- keep.me
- read.me
- readme.1st
- test.me
tm_scope: none
ace_mode: text
@@ -4730,7 +4810,7 @@ Unix Assembly:
extensions:
- ".s"
- ".ms"
tm_scope: source.assembly
tm_scope: source.assembly.unix
ace_mode: assembly_x86
language_id: 120
Uno:
@@ -4816,6 +4896,7 @@ Vim script:
extensions:
- ".vim"
filenames:
- ".gvimrc"
- ".nvimrc"
- ".vimrc"
- _vimrc
@@ -5054,6 +5135,7 @@ XML:
- ".zcml"
filenames:
- ".classpath"
- ".cproject"
- ".project"
- App.config
- NuGet.config
@@ -5162,6 +5244,7 @@ YAML:
filenames:
- ".clang-format"
- ".clang-tidy"
- ".gemrc"
ace_mode: yaml
codemirror_mode: yaml
codemirror_mime_type: text/x-yaml
@@ -5279,6 +5362,19 @@ reStructuredText:
codemirror_mode: rst
codemirror_mime_type: text/x-rst
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:
type: programming
color: "#42f1f4"

View File

@@ -3,17 +3,20 @@ module Linguist
# Public: Use shebang to detect language of the blob.
#
# blob - An object that quacks like a blob.
# candidates - A list of candidate languages.
#
# Examples
#
# Shebang.call(FileBlob.new("path/to/file"))
#
# Returns an Array with one Language if the blob has a shebang with a valid
# interpreter, or empty if there is no shebang.
def self.call(blob, _ = nil)
# Returns an array of languages from the candidate list for which the
# blob's shebang is valid. Returns an empty list if there is no shebang.
# If the candidate list is empty, any language is a valid candidate.
def self.call(blob, candidates)
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
# Public: Get the interpreter from the shebang

View File

@@ -2,8 +2,21 @@ module Linguist
module Strategy
# Detects language based on extension
class Extension
def self.call(blob, _)
Language.find_by_extension(blob.name.to_s)
# Public: Use the file extension to detect the blob's language.
#
# 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

View File

@@ -2,9 +2,22 @@ module Linguist
module Strategy
# Detects language based on 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
Language.find_by_filename(name)
languages = Language.find_by_filename(name)
candidates.any? ? candidates & languages : languages
end
end
end

View File

@@ -276,6 +276,13 @@
- (^|/)gradlew\.bat$
- (^|/)gradle/wrapper/
## Java ##
# Maven
- (^|/)mvnw$
- (^|/)mvnw\.cmd$
- (^|/)\.mvn/wrapper/
## .NET ##
# Visual Studio IntelliSense

159
samples/CoNLL-U/CF1.conllu Normal file
View 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 _ _

View 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 _

View 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=.

View 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>

View 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
View 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

View 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
}
]
}

View 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
}

View 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"]
}

View File

@@ -0,0 +1,19 @@
{
"ecmaVersion": 6,
"libs": [
"browser",
"jquery"
],
"dontLoad": [
"node_modules/**"
],
"plugins": {
"es_modules": {},
"node": {},
"angular": {},
"doc_comment": {
"fullDocs": true,
"strong": true
}
}
}

View File

@@ -0,0 +1,15 @@
{
"ecmaVersion": 6,
"libs": [],
"loadEagerly": [
"src/app/**/*.js"
],
"dontLoad": [
"node_modules"
],
"plugins": {
"requirejs": {
"baseURL": "src"
}
}
}

View 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"}
]
}

View 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"
}

View 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
View 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"
}
}
}
}
}
]
}

View 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": []
}
]
}

View 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"
]
}

View 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
View 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
View 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???";

View 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-*' },
);

View 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 {
};

View 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
View 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
View 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

View File

@@ -84,6 +84,10 @@ unless $url
exit 1;
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
parts = parse_url $url
https = "https://#{parts[:host]}/#{parts[:user]}/#{parts[:repo]}"
@@ -107,9 +111,11 @@ log "Confirming license"
if repo_old
command('script/licensed')
else
repo_new = File.absolute_path(repo_new)
command('script/licensed', '--module', repo_new)
end
log "Updating grammar documentation in vendor/README.md"
command('bundle', 'exec', 'rake', 'samples')
command('script/sort-submodules')
command('script/list-grammars')

View File

@@ -40,12 +40,12 @@ OptionParser.new do |opts|
end
end.parse!
source = Licensed::Source::Filesystem.new(module_path || "vendor/grammars/*/", type: "grammar")
config = Licensed::Configuration.new
source = Licensed::Source::Filesystem.new(module_path || "#{File.expand_path("../", File.dirname(__FILE__))}/vendor/grammars/*/", type: "grammar")
config = Licensed::Configuration.load_from(File.expand_path("../vendor/licenses/config.yml", File.dirname(__FILE__)))
config.sources << source
command = if ARGV[0] == "verify"
Licensed::Command::Verify.new(config)
command = if ARGV[0] == "status"
Licensed::Command::Status.new(config)
else
Licensed::Command::Cache.new(config)
end

50
script/sort-submodules Executable file
View 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
View 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
View 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();

View File

@@ -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.4.2.min.js").generated?
# Cargo generated composer.lock file
assert sample_blob_memory("TOML/filenames/Cargo.lock").generated?
# Composer generated composer.lock file
assert sample_blob_memory("JSON/filenames/composer.lock").generated?

View File

@@ -534,6 +534,14 @@ class TestFileBlob < Minitest::Test
assert sample_blob("subproject/gradlew.bat").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
assert sample_blob("octicons.css").vendored?
assert sample_blob("public/octicons.min.css").vendored?

View File

@@ -66,7 +66,10 @@ class TestGenerated < Minitest::Test
generated_sample_without_loading_data("go/vendor/gopkg.in/some/nested/path/foo.go")
# .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
generated_sample_without_loading_data("JSON/composer.lock")

View File

@@ -5,45 +5,35 @@ class TestGrammars < Minitest::Test
# List of projects that are allowed without licenses
PROJECT_WHITELIST = [
"vendor/grammars/Sublime-Lasso",
"vendor/grammars/blitzmax"
"vendor/grammars/Sublime-Lasso", # No license file
"vendor/grammars/blitzmax", # No license file
"vendor/grammars/creole", # License filename is not LICENSE(.*)?
].freeze
HASH_WHITELIST = [
"bc12b3b4917eab9aedb87ec1305c2a4376e34fd1", # TextMate bundles
"16c4748566b3dd996594af0410a1875b22d3a2b3", # language-yaml and atom-salt
"ff21db2554d69d78b2220db5615b16bbba0788d3", # factor
"b4381ebae3235e91aaf5ccab1e8e94e9ad4faef4", # jflex.tmbundle
"2edac46b0a63309c96442d2826321a442217472f", # Agda.tmbundle
"7dfce11e2e3579ee43b83e69b1b64e77a2e378f0", # ant.tmbundle
"79e72fd673dcebadd8fbace8d43db3da96d2c09f", # bro-sublime
"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
"b5432a1e1055de7eeede2dddf91e009480651fd6", # jasmin-sublime
"170b35df61879139b88379a8f1bfd86289c13599", # language-clojure
"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
"68539730d3cde34355f429f2267e265c1e030912", # smalltalk-tmbundle
"4b5f67a54532ca6e49ba44cd135a510a74712e07", # Stylus
"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
# List of allowed SPDX license names
@@ -101,7 +91,7 @@ class TestGrammars < Minitest::Test
end
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) }
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"
@@ -186,15 +176,22 @@ class TestGrammars < Minitest::Test
# If the license is unrecognized, return its hash
def submodule_license(submodule)
# Prefer Licensee to detect a submodule's license
project = Licensee::FSProject.new(submodule, detect_readme: true)
return project.license.key if project.license
project = Licensee.project(submodule, detect_packages: true, detect_readme: true)
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 return the license hash in this case, to uniquely identify it.
if project.license_file
return project.license_file.hash
return project.license_file.content_hash
elsif project.readme
return project.readme.hash
return project.readme.content_hash
end
end
end

View File

@@ -44,6 +44,11 @@ class TestPedantic < Minitest::Test
assert_sorted tests
end
def test_submodules_are_sorted
system(File.expand_path("../../script/sort-submodules", __FILE__) + " -t")
assert $?.success?
end
def assert_sorted(list)
list.each_cons(2) do |previous, item|
flunk "#{previous} should come after #{item}" if previous > item

View File

@@ -42,6 +42,15 @@ class TestSamples < Minitest::Test
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
# aren't explicitly defined in languages.yml
languages_yml = File.expand_path("../../lib/linguist/languages.yml", __FILE__)

View File

@@ -14,17 +14,22 @@ var GrammarAliases = map[string]string{
}
var KnownFields = map[string]bool{
"comment": true,
"uuid": true,
"author": true,
"comments": true,
"macros": true,
"fileTypes": true,
"firstLineMatch": true,
"keyEquivalent": true,
"foldingStopMarker": true,
"foldingStartMarker": true,
"foldingEndMarker": true,
"limitLineLength": true,
"hideFromUser": true,
"comment": true,
"uuid": true,
"author": true,
"comments": true,
"macros": true,
"fileTypes": true,
"firstLineMatch": true,
"keyEquivalent": true,
"foldingStopMarker": true,
"foldingStartMarker": true,
"foldingEndMarker": true,
"limitLineLength": true,
"hideFromUser": true,
"injectionSelector": true,
"swallow": true,
"foregroundColor": true,
"backgroundColor": true,
"increaseIndentPattern": true,
}

11
vendor/README.md vendored
View File

@@ -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 Workflow Language:** [manabuishii/language-cwl](https://github.com/manabuishii/language-cwl)
- **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)
- **Coq:** [mkolosick/Sublime-Coq](https://github.com/mkolosick/Sublime-Coq)
- **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)
- **Harbour:** [hernad/atom-language-harbour](https://github.com/hernad/atom-language-harbour)
- **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)
- **HLSL:** [tgjones/shaders-tmLanguage](https://github.com/tgjones/shaders-tmLanguage)
- **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+PHP:** [textmate/php.tmbundle](https://github.com/textmate/php.tmbundle)
- **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)
- **Idris:** [idris-hackers/idris-sublime](https://github.com/idris-hackers/idris-sublime)
- **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 Schematic:** [Alhadis/language-pcb](https://github.com/Alhadis/language-pcb)
- **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)
- **Lasso:** [bfad/Sublime-Lasso](https://github.com/bfad/Sublime-Lasso)
- **Latte:** [textmate/php-smarty.tmbundle](https://github.com/textmate/php-smarty.tmbundle)
@@ -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)
- **SAS:** [rpardee/sas.tmbundle](https://github.com/rpardee/sas.tmbundle)
- **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)
- **Scheme:** [textmate/scheme.tmbundle](https://github.com/textmate/scheme.tmbundle)
- **Scilab:** [textmate/scilab.tmbundle](https://github.com/textmate/scilab.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)
- **Shell:** [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)
- **Unified Parallel C:** [textmate/c.tmbundle](https://github.com/textmate/c.tmbundle)
- **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)
- **UnrealScript:** [textmate/java.tmbundle](https://github.com/textmate/java.tmbundle)
- **UrWeb:** [gwalborn/UrWeb-Language-Definition](https://github.com/gwalborn/UrWeb-Language-Definition)

1
vendor/grammars/language-sed vendored Submodule

View File

@@ -1,4 +1,6 @@
whitelist:
cache_path: "vendor/licenses"
allowed:
- apache-2.0
- bsd-2-clause
- bsd-3-clause

View File

@@ -0,0 +1,26 @@
---
type: grammar
name: Assembly-Syntax-Definition
license: mit
---
The MIT License (MIT)
Copyright (c) 2016 calculuswhiz
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -1,9 +1,8 @@
---
type: grammar
name: kotlin-sublime-package
name: conllu-linguist-grammar
license: apache-2.0
---
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
@@ -192,7 +191,7 @@ license: apache-2.0
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright 2012-2014 Vladimir Kostyukov
Copyright 2018 bruno cuconato
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.

View File

@@ -0,0 +1,26 @@
---
type: grammar
name: haxe-TmLanguage
license: mit
---
The MIT License (MIT)
Copyright (c) 2017 vshaxe contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@@ -1,9 +1,9 @@
---
type: grammar
name: haxe-sublime-bundle
name: language-kotlin
license: apache-2.0
---
Apache License
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
@@ -191,7 +191,7 @@ Apache License
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright 2014 Clément Charmet
Copyright 2018 Nish Tahir
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -204,3 +204,24 @@ Apache License
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
--------------------------------------------------------------------------------
=========================================================================
== NOTICE file corresponding to the section 4 d of ==
== the Apache License, Version 2.0, ==
=========================================================================
This product includes software developed as part of:
Kotlin Sublime Text 2 Package (https://github.com/vkostyukov/kotlin-sublime-package).
This product includes software developed as part of:
VSCode Kotlin project (https://github.com/mathiasfrohlich/vscode-kotlin).
Copyright for portions of project `language-kotlin` are held by
1. Vladimir Kostyukov, 2017 as part of project `vkostyukov/kotlin-sublime-package`
2. Mathias Frøhlich, 2018 as part of project `mathiasfrohlich/vscode-kotlin`
All other copyright for project `language-kotlin` are held by Nish Tahir 2018.

View File

@@ -0,0 +1,18 @@
---
type: grammar
name: language-sed
license: isc
---
Copyright (c) 2018, John Gardner
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

View File

@@ -0,0 +1,26 @@
---
type: grammar
name: vscode-scala-syntax
license: mit
---
MIT License
Copyright (c)
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.