mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 17:50:22 +00:00
Compare commits
139 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aa2319a052 | ||
|
|
f22181f47d | ||
|
|
3191ff498d | ||
|
|
91ea482ea6 | ||
|
|
905d87a112 | ||
|
|
8eae4e56ef | ||
|
|
5466fcfd2f | ||
|
|
176a0e9926 | ||
|
|
aa049b4677 | ||
|
|
5c19f1f546 | ||
|
|
9ae19a1f94 | ||
|
|
8cf3b7ad51 | ||
|
|
03d16835aa | ||
|
|
7174130e46 | ||
|
|
59f64c47b1 | ||
|
|
f3655e8a1e | ||
|
|
f97d796f90 | ||
|
|
d342aa4841 | ||
|
|
5c655e3b20 | ||
|
|
9a0ac4a477 | ||
|
|
8ea9632ccf | ||
|
|
03ef4f30e8 | ||
|
|
12228fb525 | ||
|
|
92897046ed | ||
|
|
91aa843a4e | ||
|
|
c3145d3c08 | ||
|
|
1ad2123896 | ||
|
|
9b9a256c60 | ||
|
|
0f3644d23a | ||
|
|
04d3023f76 | ||
|
|
5c7aa5406a | ||
|
|
bce676e902 | ||
|
|
7c9fd59a99 | ||
|
|
b89d1a2e77 | ||
|
|
f8c5015b20 | ||
|
|
f28cdc8a15 | ||
|
|
0e147f1f66 | ||
|
|
a91705724d | ||
|
|
5e3e8133fb | ||
|
|
5a3758f1c7 | ||
|
|
57237106f3 | ||
|
|
99ad2368b0 | ||
|
|
21d7f99a4e | ||
|
|
24b368a30c | ||
|
|
7c8bc8561d | ||
|
|
ce37cd665d | ||
|
|
bd0f4f6f78 | ||
|
|
4867db8831 | ||
|
|
e6ab516fb7 | ||
|
|
7501b82df1 | ||
|
|
aa6b881971 | ||
|
|
3928734d0f | ||
|
|
c7868a95bc | ||
|
|
2012647f78 | ||
|
|
84471a5463 | ||
|
|
57a3c14f2b | ||
|
|
d9914307eb | ||
|
|
71cdf46197 | ||
|
|
8a27884c70 | ||
|
|
b881e3e6cb | ||
|
|
ca718d8f2a | ||
|
|
c6625b1b8a | ||
|
|
16a6d680c4 | ||
|
|
270fa8f5d3 | ||
|
|
b1f5e93b4a | ||
|
|
79a61c72e1 | ||
|
|
3f04c11537 | ||
|
|
b2270613d7 | ||
|
|
0fe854421b | ||
|
|
de074f421e | ||
|
|
27590c39bd | ||
|
|
67191d4d5e | ||
|
|
00764f3d59 | ||
|
|
4a2cb32149 | ||
|
|
1a11664239 | ||
|
|
9520cbb44c | ||
|
|
1aea6b2cdb | ||
|
|
6ff950341a | ||
|
|
b9501e42b2 | ||
|
|
065c809dd5 | ||
|
|
5b9ea4a78f | ||
|
|
b72c4d4400 | ||
|
|
d46e214985 | ||
|
|
799c47ce7a | ||
|
|
b5121e59dd | ||
|
|
f6a7b4929f | ||
|
|
162b77ab5a | ||
|
|
92904efd45 | ||
|
|
93fabe487f | ||
|
|
74d704bea2 | ||
|
|
ee1bd50dd1 | ||
|
|
07096f84f5 | ||
|
|
a9b3bd632b | ||
|
|
eec324890e | ||
|
|
ca6ac8f0db | ||
|
|
60ab4a5fe7 | ||
|
|
10eb5830f0 | ||
|
|
835ceae6f6 | ||
|
|
abe3aa47f6 | ||
|
|
53e34072ed | ||
|
|
f83f761d0a | ||
|
|
9c18bf3a89 | ||
|
|
f6e1ab444e | ||
|
|
0ae8b2959d | ||
|
|
46b0b1e5e2 | ||
|
|
b44dfb4ab8 | ||
|
|
868e528810 | ||
|
|
0a4c850ef1 | ||
|
|
b3c4232251 | ||
|
|
0c38df47b9 | ||
|
|
bfd4005760 | ||
|
|
fc9fad15a3 | ||
|
|
b5091e88ad | ||
|
|
2610808b6d | ||
|
|
3cfee4f214 | ||
|
|
70fd116eaf | ||
|
|
62aac9c2f7 | ||
|
|
afcf1c6c22 | ||
|
|
f3f0365b13 | ||
|
|
9bc12843fe | ||
|
|
5e3ceddf69 | ||
|
|
d377e23193 | ||
|
|
e6dabd59ad | ||
|
|
f0c7380132 | ||
|
|
697ad4c568 | ||
|
|
311202102d | ||
|
|
6812a22706 | ||
|
|
fa56879790 | ||
|
|
2e9d8f5520 | ||
|
|
c8ea3fba5a | ||
|
|
56af13047c | ||
|
|
9b8b39f444 | ||
|
|
e32a837fb2 | ||
|
|
33dc865c30 | ||
|
|
0d469e2966 | ||
|
|
ed4bbe97d1 | ||
|
|
f05c437221 | ||
|
|
483488a2fa | ||
|
|
b36c4f2428 |
135
.gitmodules
vendored
135
.gitmodules
vendored
@@ -7,9 +7,6 @@
|
||||
[submodule "vendor/grammars/sublime-cirru"]
|
||||
path = vendor/grammars/sublime-cirru
|
||||
url = https://github.com/Cirru/sublime-cirru
|
||||
[submodule "vendor/grammars/Sublime-Logos"]
|
||||
path = vendor/grammars/Sublime-Logos
|
||||
url = https://github.com/Cykey/Sublime-Logos
|
||||
[submodule "vendor/grammars/SublimeBrainfuck"]
|
||||
path = vendor/grammars/SublimeBrainfuck
|
||||
url = https://github.com/Drako/SublimeBrainfuck
|
||||
@@ -25,15 +22,9 @@
|
||||
[submodule "vendor/grammars/Sublime-REBOL"]
|
||||
path = vendor/grammars/Sublime-REBOL
|
||||
url = https://github.com/Oldes/Sublime-REBOL
|
||||
[submodule "vendor/grammars/autoitv3-tmbundle"]
|
||||
path = vendor/grammars/autoitv3-tmbundle
|
||||
url = https://github.com/Red-Nova-Technologies/autoitv3-tmbundle
|
||||
[submodule "vendor/grammars/Sublime-VimL"]
|
||||
path = vendor/grammars/Sublime-VimL
|
||||
url = https://github.com/SalGnt/Sublime-VimL
|
||||
[submodule "vendor/grammars/boo-sublime"]
|
||||
path = vendor/grammars/boo-sublime
|
||||
url = https://github.com/Shammah/boo-sublime
|
||||
[submodule "vendor/grammars/ColdFusion"]
|
||||
path = vendor/grammars/ColdFusion
|
||||
url = https://github.com/SublimeText/ColdFusion
|
||||
@@ -88,9 +79,6 @@
|
||||
[submodule "vendor/grammars/language-yaml"]
|
||||
path = vendor/grammars/language-yaml
|
||||
url = https://github.com/atom/language-yaml
|
||||
[submodule "vendor/grammars/sublime-sourcepawn"]
|
||||
path = vendor/grammars/sublime-sourcepawn
|
||||
url = https://github.com/austinwagner/sublime-sourcepawn
|
||||
[submodule "vendor/grammars/Sublime-Lasso"]
|
||||
path = vendor/grammars/Sublime-Lasso
|
||||
url = https://github.com/bfad/Sublime-Lasso
|
||||
@@ -109,9 +97,6 @@
|
||||
[submodule "vendor/grammars/sublime-MuPAD"]
|
||||
path = vendor/grammars/sublime-MuPAD
|
||||
url = https://github.com/ccreutzig/sublime-MuPAD
|
||||
[submodule "vendor/grammars/nesC.tmbundle"]
|
||||
path = vendor/grammars/nesC.tmbundle
|
||||
url = https://github.com/cdwilson/nesC.tmbundle
|
||||
[submodule "vendor/grammars/haxe-sublime-bundle"]
|
||||
path = vendor/grammars/haxe-sublime-bundle
|
||||
url = https://github.com/clemos/haxe-sublime-bundle
|
||||
@@ -133,9 +118,6 @@
|
||||
[submodule "vendor/grammars/fancy-tmbundle"]
|
||||
path = vendor/grammars/fancy-tmbundle
|
||||
url = https://github.com/fancy-lang/fancy-tmbundle
|
||||
[submodule "vendor/grammars/monkey.tmbundle"]
|
||||
path = vendor/grammars/monkey.tmbundle
|
||||
url = https://github.com/gingerbeardman/monkey.tmbundle
|
||||
[submodule "vendor/grammars/dart-sublime-bundle"]
|
||||
path = vendor/grammars/dart-sublime-bundle
|
||||
url = https://github.com/guillermooo/dart-sublime-bundle
|
||||
@@ -166,18 +148,12 @@
|
||||
[submodule "vendor/grammars/fish-tmbundle"]
|
||||
path = vendor/grammars/fish-tmbundle
|
||||
url = https://github.com/l15n/fish-tmbundle
|
||||
[submodule "vendor/grammars/sublime-idris"]
|
||||
path = vendor/grammars/sublime-idris
|
||||
url = https://github.com/laughedelic/sublime-idris
|
||||
[submodule "vendor/grammars/moonscript-tmbundle"]
|
||||
path = vendor/grammars/moonscript-tmbundle
|
||||
url = https://github.com/leafo/moonscript-tmbundle
|
||||
[submodule "vendor/grammars/Isabelle.tmbundle"]
|
||||
path = vendor/grammars/Isabelle.tmbundle
|
||||
url = https://github.com/lsf37/Isabelle.tmbundle
|
||||
[submodule "vendor/grammars/x86-assembly-textmate-bundle"]
|
||||
path = vendor/grammars/x86-assembly-textmate-bundle
|
||||
url = https://github.com/lunixbochs/x86-assembly-textmate-bundle
|
||||
[submodule "vendor/grammars/Alloy.tmbundle"]
|
||||
path = vendor/grammars/Alloy.tmbundle
|
||||
url = https://github.com/macekond/Alloy.tmbundle
|
||||
@@ -208,9 +184,6 @@
|
||||
[submodule "vendor/grammars/Julia.tmbundle"]
|
||||
path = vendor/grammars/Julia.tmbundle
|
||||
url = https://github.com/nanoant/Julia.tmbundle
|
||||
[submodule "vendor/grammars/assembly.tmbundle"]
|
||||
path = vendor/grammars/assembly.tmbundle
|
||||
url = https://github.com/nanoant/assembly.tmbundle
|
||||
[submodule "vendor/grammars/ooc.tmbundle"]
|
||||
path = vendor/grammars/ooc.tmbundle
|
||||
url = https://github.com/nilium/ooc.tmbundle
|
||||
@@ -220,9 +193,6 @@
|
||||
[submodule "vendor/grammars/sublime-tea"]
|
||||
path = vendor/grammars/sublime-tea
|
||||
url = https://github.com/pferruggiaro/sublime-tea
|
||||
[submodule "vendor/grammars/puppet-textmate-bundle"]
|
||||
path = vendor/grammars/puppet-textmate-bundle
|
||||
url = https://github.com/puppet-textmate-bundle/puppet-textmate-bundle
|
||||
[submodule "vendor/grammars/abap.tmbundle"]
|
||||
path = vendor/grammars/abap.tmbundle
|
||||
url = https://github.com/pvl/abap.tmbundle
|
||||
@@ -448,9 +418,6 @@
|
||||
[submodule "vendor/grammars/llvm.tmbundle"]
|
||||
path = vendor/grammars/llvm.tmbundle
|
||||
url = https://github.com/whitequark/llvm.tmbundle
|
||||
[submodule "vendor/grammars/sublime-nix"]
|
||||
path = vendor/grammars/sublime-nix
|
||||
url = https://github.com/wmertens/sublime-nix
|
||||
[submodule "vendor/grammars/oz-tmbundle"]
|
||||
path = vendor/grammars/oz-tmbundle
|
||||
url = https://github.com/eregon/oz-tmbundle
|
||||
@@ -509,24 +476,9 @@
|
||||
[submodule "vendor/grammars/liquid.tmbundle"]
|
||||
path = vendor/grammars/liquid.tmbundle
|
||||
url = https://github.com/bastilian/validcode-textmate-bundles
|
||||
[submodule "vendor/grammars/ats.sublime"]
|
||||
path = vendor/grammars/ats.sublime
|
||||
url = https://github.com/steinwaywhw/ats-mode-sublimetext
|
||||
[submodule "vendor/grammars/Modelica"]
|
||||
path = vendor/grammars/Modelica
|
||||
url = https://github.com/BorisChumichev/modelicaSublimeTextPackage
|
||||
[submodule "vendor/grammars/sublime-apl"]
|
||||
path = vendor/grammars/sublime-apl
|
||||
url = https://github.com/StoneCypher/sublime-apl
|
||||
[submodule "vendor/grammars/CLIPS-sublime"]
|
||||
path = vendor/grammars/CLIPS-sublime
|
||||
url = https://github.com/psicomante/CLIPS-sublime
|
||||
[submodule "vendor/grammars/Creole"]
|
||||
path = vendor/grammars/Creole
|
||||
url = https://github.com/Siddley/Creole
|
||||
[submodule "vendor/grammars/GDScript-sublime"]
|
||||
path = vendor/grammars/GDScript-sublime
|
||||
url = https://github.com/beefsack/GDScript-sublime
|
||||
[submodule "vendor/grammars/sublime-golo"]
|
||||
path = vendor/grammars/sublime-golo
|
||||
url = https://github.com/TypeUnsafe/sublime-golo
|
||||
@@ -539,9 +491,6 @@
|
||||
[submodule "vendor/grammars/G-Code"]
|
||||
path = vendor/grammars/G-Code
|
||||
url = https://github.com/robotmaster/sublime-text-syntax-highlighting
|
||||
[submodule "vendor/grammars/grace-tmbundle"]
|
||||
path = vendor/grammars/grace-tmbundle
|
||||
url = https://github.com/zmthy/grace-tmbundle
|
||||
[submodule "vendor/grammars/sublime-text-ox"]
|
||||
path = vendor/grammars/sublime-text-ox
|
||||
url = https://github.com/andreashetland/sublime-text-ox
|
||||
@@ -551,9 +500,6 @@
|
||||
[submodule "vendor/grammars/ec.tmbundle"]
|
||||
path = vendor/grammars/ec.tmbundle
|
||||
url = https://github.com/ecere/ec.tmbundle
|
||||
[submodule "vendor/grammars/InnoSetup"]
|
||||
path = vendor/grammars/InnoSetup
|
||||
url = https://github.com/idleberg/InnoSetup-Sublime-Text
|
||||
[submodule "vendor/grammars/gap-tmbundle"]
|
||||
path = vendor/grammars/gap-tmbundle
|
||||
url = https://github.com/dhowden/gap-tmbundle
|
||||
@@ -575,9 +521,6 @@
|
||||
[submodule "vendor/grammars/SublimeClarion"]
|
||||
path = vendor/grammars/SublimeClarion
|
||||
url = https://github.com/fushnisoft/SublimeClarion
|
||||
[submodule "vendor/grammars/oracle.tmbundle"]
|
||||
path = vendor/grammars/oracle.tmbundle
|
||||
url = https://github.com/mulander/oracle.tmbundle.git
|
||||
[submodule "vendor/grammars/BrightScript.tmbundle"]
|
||||
path = vendor/grammars/BrightScript.tmbundle
|
||||
url = https://github.com/cmink/BrightScript.tmbundle
|
||||
@@ -587,18 +530,12 @@
|
||||
[submodule "vendor/grammars/asciidoc.tmbundle"]
|
||||
path = vendor/grammars/asciidoc.tmbundle
|
||||
url = https://github.com/zuckschwerdt/asciidoc.tmbundle
|
||||
[submodule "vendor/grammars/sublime-text-pig-latin"]
|
||||
path = vendor/grammars/sublime-text-pig-latin
|
||||
url = https://github.com/goblindegook/sublime-text-pig-latin
|
||||
[submodule "vendor/grammars/Lean.tmbundle"]
|
||||
path = vendor/grammars/Lean.tmbundle
|
||||
url = https://github.com/leanprover/Lean.tmbundle
|
||||
[submodule "vendor/grammars/ampl"]
|
||||
path = vendor/grammars/ampl
|
||||
url = https://github.com/ampl/sublime-ampl
|
||||
[submodule "vendor/grammars/openscad.tmbundle"]
|
||||
path = vendor/grammars/openscad.tmbundle
|
||||
url = https://github.com/tbuser/openscad.tmbundle
|
||||
[submodule "vendor/grammars/sublime-varnish"]
|
||||
path = vendor/grammars/sublime-varnish
|
||||
url = https://github.com/brandonwamboldt/sublime-varnish
|
||||
@@ -650,6 +587,9 @@
|
||||
[submodule "vendor/grammars/language-ncl"]
|
||||
path = vendor/grammars/language-ncl
|
||||
url = https://github.com/rpavlick/language-ncl.git
|
||||
[submodule "vendor/grammars/pawn-sublime-language"]
|
||||
path = vendor/grammars/pawn-sublime-language
|
||||
url = https://github.com/Southclaw/pawn-sublime-language.git
|
||||
[submodule "vendor/grammars/atom-language-purescript"]
|
||||
path = vendor/grammars/atom-language-purescript
|
||||
url = https://github.com/purescript-contrib/atom-language-purescript
|
||||
@@ -716,3 +656,72 @@
|
||||
[submodule "vendor/grammars/language-povray"]
|
||||
path = vendor/grammars/language-povray
|
||||
url = https://github.com/c-lipka/language-povray
|
||||
[submodule "vendor/grammars/sublime-terra"]
|
||||
path = vendor/grammars/sublime-terra
|
||||
url = https://github.com/pyk/sublime-terra
|
||||
[submodule "vendor/grammars/SublimePuppet"]
|
||||
path = vendor/grammars/SublimePuppet
|
||||
url = https://github.com/russCloak/SublimePuppet
|
||||
[submodule "vendor/grammars/sublimeassembly"]
|
||||
path = vendor/grammars/sublimeassembly
|
||||
url = https://github.com/Nessphoro/sublimeassembly
|
||||
[submodule "vendor/grammars/monkey"]
|
||||
path = vendor/grammars/monkey
|
||||
url = https://github.com/gingerbeardman/monkey.tmbundle
|
||||
[submodule "vendor/grammars/assembly"]
|
||||
path = vendor/grammars/assembly
|
||||
url = https://github.com/nanoant/assembly.tmbundle
|
||||
[submodule "vendor/grammars/boo"]
|
||||
path = vendor/grammars/boo
|
||||
url = https://github.com/Shammah/boo-sublime
|
||||
[submodule "vendor/grammars/logos"]
|
||||
path = vendor/grammars/logos
|
||||
url = https://github.com/Cykey/Sublime-Logos
|
||||
[submodule "vendor/grammars/pig-latin"]
|
||||
path = vendor/grammars/pig-latin
|
||||
url = https://github.com/goblindegook/sublime-text-pig-latin
|
||||
[submodule "vendor/grammars/sourcepawn"]
|
||||
path = vendor/grammars/sourcepawn
|
||||
url = https://github.com/austinwagner/sublime-sourcepawn
|
||||
[submodule "vendor/grammars/gdscript"]
|
||||
path = vendor/grammars/gdscript
|
||||
url = https://github.com/beefsack/GDScript-sublime
|
||||
[submodule "vendor/grammars/nesC"]
|
||||
path = vendor/grammars/nesC
|
||||
url = https://github.com/cdwilson/nesC.tmbundle
|
||||
[submodule "vendor/grammars/ats"]
|
||||
path = vendor/grammars/ats
|
||||
url = https://github.com/steinwaywhw/ats-mode-sublimetext
|
||||
[submodule "vendor/grammars/grace"]
|
||||
path = vendor/grammars/grace
|
||||
url = https://github.com/zmthy/grace-tmbundle
|
||||
[submodule "vendor/grammars/ejs-tmbundle"]
|
||||
path = vendor/grammars/ejs-tmbundle
|
||||
url = https://github.com/gregory-m/ejs-tmbundle
|
||||
[submodule "vendor/grammars/nix"]
|
||||
path = vendor/grammars/nix
|
||||
url = https://github.com/wmertens/sublime-nix
|
||||
[submodule "vendor/grammars/idris"]
|
||||
path = vendor/grammars/idris
|
||||
url = https://github.com/idris-hackers/idris-sublime.git
|
||||
[submodule "vendor/grammars/atomic-dreams"]
|
||||
path = vendor/grammars/atomic-dreams
|
||||
url = https://github.com/PJB3005/atomic-dreams
|
||||
[submodule "vendor/grammars/language-apl"]
|
||||
path = vendor/grammars/language-apl
|
||||
url = https://github.com/Alhadis/language-apl.git
|
||||
[submodule "vendor/grammars/language-graphql"]
|
||||
path = vendor/grammars/language-graphql
|
||||
url = https://github.com/rmosolgo/language-graphql
|
||||
[submodule "vendor/grammars/language-toc-wow"]
|
||||
path = vendor/grammars/language-toc-wow
|
||||
url = https://github.com/nebularg/language-toc-wow
|
||||
[submodule "vendor/grammars/sublime-autoit"]
|
||||
path = vendor/grammars/sublime-autoit
|
||||
url = https://github.com/AutoIt/SublimeAutoItScript
|
||||
[submodule "vendor/grammars/TLA"]
|
||||
path = vendor/grammars/TLA
|
||||
url = https://github.com/agentultra/TLAGrammar
|
||||
[submodule "vendor/grammars/sublime-clips"]
|
||||
path = vendor/grammars/sublime-clips
|
||||
url = https://github.com/psicomante/CLIPS-sublime
|
||||
|
||||
@@ -6,6 +6,9 @@ addons:
|
||||
- libicu-dev
|
||||
- libicu48
|
||||
before_install: script/travis/before_install
|
||||
script:
|
||||
- bundle exec rake
|
||||
- script/licensed verify
|
||||
rvm:
|
||||
- 2.0.0
|
||||
- 2.1
|
||||
|
||||
@@ -33,6 +33,7 @@ To add support for a new language:
|
||||
0. Add a grammar for your language. Please only add grammars that have a license that permits redistribution.
|
||||
0. Add your grammar as a submodule: `git submodule add https://github.com/JaneSmith/MyGrammar vendor/grammars/MyGrammar`.
|
||||
0. Add your grammar to [`grammars.yml`][grammars] by running `script/convert-grammars --add vendor/grammars/MyGrammar`.
|
||||
0. Download the license for the grammar: `script/licensed`. Be careful to only commit the file for the new grammar, as this script may update licenses for other grammars as well.
|
||||
0. Add samples for your language to the [samples directory][samples] in the correct subdirectory.
|
||||
0. Open a pull request, linking to a [GitHub search result](https://github.com/search?utf8=%E2%9C%93&q=extension%3Aboot+NOT+nothack&type=Code&ref=searchresults) showing in-the-wild usage.
|
||||
|
||||
|
||||
@@ -25,6 +25,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 'licensee', '6.0.0b1'
|
||||
s.add_development_dependency 'licensed'
|
||||
|
||||
end
|
||||
|
||||
83
grammars.yml
83
grammars.yml
@@ -29,15 +29,11 @@ vendor/grammars/AutoHotkey/:
|
||||
vendor/grammars/BrightScript.tmbundle/:
|
||||
- source.brightauthorproject
|
||||
- source.brightscript
|
||||
vendor/grammars/CLIPS-sublime:
|
||||
- source.clips
|
||||
vendor/grammars/ColdFusion:
|
||||
- source.cfscript
|
||||
- source.cfscript.cfc
|
||||
- text.cfml.basic
|
||||
- text.html.cfm
|
||||
vendor/grammars/Creole:
|
||||
- text.html.creole
|
||||
vendor/grammars/Docker.tmbundle:
|
||||
- source.dockerfile
|
||||
vendor/grammars/Elm.tmLanguage:
|
||||
@@ -50,14 +46,10 @@ vendor/grammars/G-Code/:
|
||||
- source.MOD
|
||||
- source.apt
|
||||
- source.gcode
|
||||
vendor/grammars/GDScript-sublime/:
|
||||
- source.gdscript
|
||||
vendor/grammars/Handlebars:
|
||||
- text.html.handlebars
|
||||
vendor/grammars/IDL-Syntax:
|
||||
- source.webidl
|
||||
vendor/grammars/InnoSetup/:
|
||||
- source.inno
|
||||
vendor/grammars/Isabelle.tmbundle:
|
||||
- source.isabelle.root
|
||||
- source.isabelle.theory
|
||||
@@ -108,8 +100,6 @@ vendor/grammars/Sublime-HTTP:
|
||||
- source.httpspec
|
||||
vendor/grammars/Sublime-Lasso:
|
||||
- file.lasso
|
||||
vendor/grammars/Sublime-Logos:
|
||||
- source.logos
|
||||
vendor/grammars/Sublime-Loom:
|
||||
- source.loomscript
|
||||
vendor/grammars/Sublime-Modula-2/:
|
||||
@@ -134,11 +124,13 @@ vendor/grammars/SublimeBrainfuck:
|
||||
vendor/grammars/SublimeClarion/:
|
||||
- source.clarion
|
||||
vendor/grammars/SublimePapyrus/:
|
||||
- source.compiled-papyrus
|
||||
- source.papyrus
|
||||
- source.papyrus-assembly
|
||||
- source.papyrus.skyrim
|
||||
vendor/grammars/SublimePuppet/:
|
||||
- source.puppet
|
||||
vendor/grammars/SublimeXtend:
|
||||
- source.xtend
|
||||
vendor/grammars/TLA:
|
||||
- source.tla
|
||||
vendor/grammars/TXL/:
|
||||
- source.txl
|
||||
vendor/grammars/Textmate-Gosu-Bundle:
|
||||
@@ -178,7 +170,7 @@ vendor/grammars/asciidoc.tmbundle/:
|
||||
vendor/grammars/asp.tmbundle:
|
||||
- source.asp
|
||||
- text.html.asp
|
||||
vendor/grammars/assembly.tmbundle:
|
||||
vendor/grammars/assembly/:
|
||||
- objdump.x86asm
|
||||
- source.x86asm
|
||||
vendor/grammars/atom-fsharp/:
|
||||
@@ -193,15 +185,16 @@ vendor/grammars/atom-language-stan/:
|
||||
vendor/grammars/atom-salt:
|
||||
- source.python.salt
|
||||
- source.yaml.salt
|
||||
vendor/grammars/ats.sublime:
|
||||
vendor/grammars/atomic-dreams/:
|
||||
- source.dm
|
||||
- source.dmf
|
||||
vendor/grammars/ats:
|
||||
- source.ats
|
||||
vendor/grammars/autoitv3-tmbundle:
|
||||
- source.autoit.3
|
||||
vendor/grammars/awk-sublime:
|
||||
- source.awk
|
||||
vendor/grammars/bison.tmbundle:
|
||||
- source.bison
|
||||
vendor/grammars/boo-sublime:
|
||||
vendor/grammars/boo/:
|
||||
- source.boo
|
||||
vendor/grammars/bro-sublime:
|
||||
- source.bro
|
||||
@@ -252,6 +245,8 @@ vendor/grammars/ec.tmbundle/:
|
||||
- source.c.ec
|
||||
vendor/grammars/eiffel.tmbundle:
|
||||
- source.eiffel
|
||||
vendor/grammars/ejs-tmbundle:
|
||||
- text.html.js
|
||||
vendor/grammars/elixir-tmbundle:
|
||||
- source.elixir
|
||||
- text.elixir
|
||||
@@ -271,13 +266,15 @@ vendor/grammars/fortran.tmbundle:
|
||||
- source.fortran.modern
|
||||
vendor/grammars/gap-tmbundle/:
|
||||
- source.gap
|
||||
vendor/grammars/gdscript/:
|
||||
- source.gdscript
|
||||
vendor/grammars/gettext.tmbundle:
|
||||
- source.po
|
||||
vendor/grammars/gnuplot-tmbundle:
|
||||
- source.gnuplot
|
||||
vendor/grammars/go-tmbundle:
|
||||
- source.go
|
||||
vendor/grammars/grace-tmbundle/:
|
||||
vendor/grammars/grace:
|
||||
- source.grace
|
||||
vendor/grammars/gradle.tmbundle:
|
||||
- source.groovy.gradle
|
||||
@@ -300,6 +297,8 @@ vendor/grammars/idl.tmbundle:
|
||||
- source.idl
|
||||
- source.idl-dlm
|
||||
- text.idl-idldoc
|
||||
vendor/grammars/idris/:
|
||||
- source.idris
|
||||
vendor/grammars/ini.tmbundle:
|
||||
- source.ini
|
||||
vendor/grammars/io.tmbundle:
|
||||
@@ -324,6 +323,8 @@ vendor/grammars/json.tmbundle:
|
||||
- source.json
|
||||
vendor/grammars/kotlin-sublime-package:
|
||||
- source.Kotlin
|
||||
vendor/grammars/language-apl:
|
||||
- source.apl
|
||||
vendor/grammars/language-babel/:
|
||||
- source.js.jsx
|
||||
- source.regexp.babel
|
||||
@@ -343,6 +344,8 @@ vendor/grammars/language-csharp:
|
||||
- source.nant-build
|
||||
vendor/grammars/language-gfm:
|
||||
- source.gfm
|
||||
vendor/grammars/language-graphql:
|
||||
- source.graphql
|
||||
vendor/grammars/language-hy:
|
||||
- source.hy
|
||||
vendor/grammars/language-inform7:
|
||||
@@ -372,6 +375,8 @@ vendor/grammars/language-shellscript:
|
||||
- text.shell-session
|
||||
vendor/grammars/language-supercollider:
|
||||
- source.supercollider
|
||||
vendor/grammars/language-toc-wow:
|
||||
- source.toc
|
||||
vendor/grammars/language-xbase:
|
||||
- source.harbour
|
||||
vendor/grammars/language-yaml:
|
||||
@@ -393,6 +398,8 @@ vendor/grammars/lisp.tmbundle:
|
||||
- source.lisp
|
||||
vendor/grammars/llvm.tmbundle:
|
||||
- source.llvm
|
||||
vendor/grammars/logos:
|
||||
- source.logos
|
||||
vendor/grammars/logtalk.tmbundle:
|
||||
- source.logtalk
|
||||
vendor/grammars/lua.tmbundle:
|
||||
@@ -412,16 +419,18 @@ vendor/grammars/mediawiki.tmbundle/:
|
||||
- text.html.mediawiki
|
||||
vendor/grammars/mercury-tmlanguage:
|
||||
- source.mercury
|
||||
vendor/grammars/monkey.tmbundle:
|
||||
vendor/grammars/monkey/:
|
||||
- source.monkey
|
||||
vendor/grammars/moonscript-tmbundle:
|
||||
- source.moonscript
|
||||
vendor/grammars/nemerle.tmbundle:
|
||||
- source.nemerle
|
||||
vendor/grammars/nesC.tmbundle:
|
||||
vendor/grammars/nesC:
|
||||
- source.nesc
|
||||
vendor/grammars/ninja.tmbundle:
|
||||
- source.ninja
|
||||
vendor/grammars/nix:
|
||||
- source.nix
|
||||
vendor/grammars/objective-c.tmbundle:
|
||||
- source.objc
|
||||
- source.objc++
|
||||
@@ -436,14 +445,12 @@ vendor/grammars/ooc.tmbundle:
|
||||
- source.ooc
|
||||
vendor/grammars/opa.tmbundle:
|
||||
- source.opa
|
||||
vendor/grammars/openscad.tmbundle/:
|
||||
- source.scad
|
||||
vendor/grammars/oracle.tmbundle:
|
||||
- source.plsql.oracle
|
||||
vendor/grammars/oz-tmbundle/Syntaxes/Oz.tmLanguage:
|
||||
- source.oz
|
||||
vendor/grammars/pascal.tmbundle:
|
||||
- source.pascal
|
||||
vendor/grammars/pawn-sublime-language/:
|
||||
- source.pawn
|
||||
vendor/grammars/perl.tmbundle/:
|
||||
- source.perl
|
||||
- source.perl.6
|
||||
@@ -455,6 +462,8 @@ vendor/grammars/php-smarty.tmbundle:
|
||||
- text.html.smarty
|
||||
vendor/grammars/php.tmbundle:
|
||||
- text.html.php
|
||||
vendor/grammars/pig-latin/:
|
||||
- source.pig_latin
|
||||
vendor/grammars/pike-textmate:
|
||||
- source.pike
|
||||
vendor/grammars/postscript.tmbundle:
|
||||
@@ -465,8 +474,6 @@ vendor/grammars/processing.tmbundle:
|
||||
- source.processing
|
||||
vendor/grammars/protobuf-tmbundle:
|
||||
- source.protobuf
|
||||
vendor/grammars/puppet-textmate-bundle:
|
||||
- source.puppet
|
||||
vendor/grammars/python-django.tmbundle:
|
||||
- source.python.django
|
||||
- text.html.django
|
||||
@@ -498,6 +505,8 @@ vendor/grammars/smali-sublime/smali.tmLanguage:
|
||||
- source.smali
|
||||
vendor/grammars/smalltalk-tmbundle:
|
||||
- source.smalltalk
|
||||
vendor/grammars/sourcepawn/:
|
||||
- source.sp
|
||||
vendor/grammars/sql.tmbundle:
|
||||
- source.sql
|
||||
vendor/grammars/st2-zonefile:
|
||||
@@ -507,23 +516,23 @@ vendor/grammars/standard-ml.tmbundle:
|
||||
- source.ml
|
||||
vendor/grammars/sublime-MuPAD:
|
||||
- source.mupad
|
||||
vendor/grammars/sublime-apl/:
|
||||
- source.apl
|
||||
vendor/grammars/sublime-aspectj/:
|
||||
- source.aspectj
|
||||
vendor/grammars/sublime-autoit/:
|
||||
- source.autoit
|
||||
vendor/grammars/sublime-befunge:
|
||||
- source.befunge
|
||||
vendor/grammars/sublime-bsv:
|
||||
- source.bsv
|
||||
vendor/grammars/sublime-cirru:
|
||||
- source.cirru
|
||||
vendor/grammars/sublime-clips/:
|
||||
- source.clips
|
||||
vendor/grammars/sublime-glsl:
|
||||
- source.essl
|
||||
- source.glsl
|
||||
vendor/grammars/sublime-golo/:
|
||||
- source.golo
|
||||
vendor/grammars/sublime-idris:
|
||||
- source.idris
|
||||
vendor/grammars/sublime-mask:
|
||||
- source.mask
|
||||
vendor/grammars/sublime-netlinx:
|
||||
@@ -531,8 +540,6 @@ vendor/grammars/sublime-netlinx:
|
||||
- source.netlinx.erb
|
||||
vendor/grammars/sublime-nginx:
|
||||
- source.nginx
|
||||
vendor/grammars/sublime-nix:
|
||||
- source.nix
|
||||
vendor/grammars/sublime-opal/:
|
||||
- source.opal
|
||||
- source.opalsysdefs
|
||||
@@ -542,17 +549,15 @@ vendor/grammars/sublime-robot-plugin:
|
||||
- text.robot
|
||||
vendor/grammars/sublime-rust:
|
||||
- source.rust
|
||||
vendor/grammars/sublime-sourcepawn:
|
||||
- source.sp
|
||||
vendor/grammars/sublime-spintools/:
|
||||
- source.regexp.spin
|
||||
- source.spin
|
||||
vendor/grammars/sublime-tea:
|
||||
- source.tea
|
||||
vendor/grammars/sublime-terra:
|
||||
- source.terra
|
||||
vendor/grammars/sublime-text-ox/:
|
||||
- source.ox
|
||||
vendor/grammars/sublime-text-pig-latin/:
|
||||
- source.pig_latin
|
||||
vendor/grammars/sublime-typescript/:
|
||||
- source.ts
|
||||
- source.tsx
|
||||
@@ -566,6 +571,8 @@ vendor/grammars/sublime_cobol:
|
||||
vendor/grammars/sublime_man_page_support:
|
||||
- source.man
|
||||
- text.groff
|
||||
vendor/grammars/sublimeassembly/:
|
||||
- source.assembly
|
||||
vendor/grammars/sublimeprolog/:
|
||||
- source.prolog
|
||||
- source.prolog.eclipse
|
||||
@@ -587,8 +594,6 @@ vendor/grammars/verilog.tmbundle:
|
||||
- source.verilog
|
||||
vendor/grammars/vue-syntax-highlight:
|
||||
- text.html.vue
|
||||
vendor/grammars/x86-assembly-textmate-bundle:
|
||||
- source.asm.x86
|
||||
vendor/grammars/xc.tmbundle/:
|
||||
- source.xc
|
||||
vendor/grammars/xml.tmbundle:
|
||||
|
||||
@@ -63,7 +63,7 @@ module Linguist
|
||||
#
|
||||
# Returns an Array
|
||||
def extensions
|
||||
basename, *segments = name.downcase.split(".")
|
||||
_, *segments = name.downcase.split(".")
|
||||
|
||||
segments.map.with_index do |segment, index|
|
||||
"." + segments[index..-1].join(".")
|
||||
|
||||
@@ -59,6 +59,7 @@ module Linguist
|
||||
godeps? ||
|
||||
generated_by_zephir? ||
|
||||
minified_files? ||
|
||||
has_source_map? ||
|
||||
source_map? ||
|
||||
compiled_coffeescript? ||
|
||||
generated_parser? ||
|
||||
@@ -104,6 +105,21 @@ module Linguist
|
||||
end
|
||||
end
|
||||
|
||||
# Internal: Does the blob contain a source map reference?
|
||||
#
|
||||
# We assume that if one of the last 2 lines starts with a source map
|
||||
# reference, then the current file was generated from other files.
|
||||
#
|
||||
# We use the last 2 lines because the last line might be empty.
|
||||
#
|
||||
# We only handle JavaScript, no CSS support yet.
|
||||
#
|
||||
# Returns true or false.
|
||||
def has_source_map?
|
||||
return false unless extname.downcase == '.js'
|
||||
lines.last(2).any? { |line| line.start_with?('//# sourceMappingURL') }
|
||||
end
|
||||
|
||||
# Internal: Is the blob a generated source map?
|
||||
#
|
||||
# Source Maps usually have .css.map or .js.map extensions. In case they
|
||||
|
||||
@@ -86,6 +86,14 @@ module Linguist
|
||||
end
|
||||
end
|
||||
|
||||
disambiguate ".builds" do |data|
|
||||
if /^(\s*)(<Project|<Import|<Property|<?xml|xmlns)/i.match(data)
|
||||
Language["XML"]
|
||||
else
|
||||
Language["Text"]
|
||||
end
|
||||
end
|
||||
|
||||
disambiguate ".ch" do |data|
|
||||
if /^\s*#\s*(if|ifdef|ifndef|define|command|xcommand|translate|xtranslate|include|pragma|undef)\b/i.match(data)
|
||||
Language["xBase"]
|
||||
@@ -127,6 +135,14 @@ module Linguist
|
||||
Language["ECL"]
|
||||
end
|
||||
end
|
||||
|
||||
disambiguate ".es" do |data|
|
||||
if /^\s*(?:%%|main\s*\(.*?\)\s*->)/.match(data)
|
||||
Language["Erlang"]
|
||||
elsif /(?:\/\/|("|')use strict\1|export\s+default\s|\/\*.*?\*\/)/m.match(data)
|
||||
Language["JavaScript"]
|
||||
end
|
||||
end
|
||||
|
||||
disambiguate ".for", ".f" do |data|
|
||||
if /^: /.match(data)
|
||||
@@ -171,6 +187,12 @@ module Linguist
|
||||
end
|
||||
end
|
||||
|
||||
disambiguate ".inc" do |data|
|
||||
if /^<\?(?:php)?/.match(data)
|
||||
Language["PHP"]
|
||||
end
|
||||
end
|
||||
|
||||
disambiguate ".l" do |data|
|
||||
if /\(def(un|macro)\s/.match(data)
|
||||
Language["Common Lisp"]
|
||||
@@ -330,7 +352,7 @@ module Linguist
|
||||
end
|
||||
|
||||
disambiguate ".rpy" do |data|
|
||||
if /(^(import|from|class|def)[\s\S])/m.match(data)
|
||||
if /(^(import|from|class|def)\s)/m.match(data)
|
||||
Language["Python"]
|
||||
else
|
||||
Language["Ren'Py"]
|
||||
@@ -368,6 +390,14 @@ module Linguist
|
||||
Language["SQL"]
|
||||
end
|
||||
end
|
||||
|
||||
disambiguate ".toc" do |data|
|
||||
if /^## |@no-lib-strip@/.match(data)
|
||||
Language["World of Warcraft Addon Data"]
|
||||
elsif /^\\(contentsline|defcounter|beamer|boolfalse)/.match(data)
|
||||
Language["TeX"]
|
||||
end
|
||||
end
|
||||
|
||||
disambiguate ".ts" do |data|
|
||||
if data.include?("<TS ")
|
||||
|
||||
@@ -147,6 +147,17 @@ Alloy:
|
||||
- .als
|
||||
ace_mode: text
|
||||
|
||||
Alpine Abuild:
|
||||
type: programming
|
||||
group: Shell
|
||||
aliases:
|
||||
- abuild
|
||||
- apkbuild
|
||||
filenames:
|
||||
- APKBUILD
|
||||
tm_scope: source.shell
|
||||
ace_mode: sh
|
||||
|
||||
Ant Build System:
|
||||
type: data
|
||||
tm_scope: text.xml.ant
|
||||
@@ -230,7 +241,7 @@ Assembly:
|
||||
- .a51
|
||||
- .inc
|
||||
- .nasm
|
||||
tm_scope: source.asm.x86
|
||||
tm_scope: source.assembly
|
||||
ace_mode: assembly_x86
|
||||
|
||||
Augeas:
|
||||
@@ -260,7 +271,7 @@ AutoIt:
|
||||
- AutoItScript
|
||||
extensions:
|
||||
- .au3
|
||||
tm_scope: source.autoit.3
|
||||
tm_scope: source.autoit
|
||||
ace_mode: autohotkey
|
||||
|
||||
Awk:
|
||||
@@ -350,6 +361,7 @@ Boo:
|
||||
extensions:
|
||||
- .boo
|
||||
ace_mode: text
|
||||
tm_scope: source.boo
|
||||
|
||||
Brainfuck:
|
||||
type: programming
|
||||
@@ -690,7 +702,7 @@ Creole:
|
||||
wrap: true
|
||||
extensions:
|
||||
- .creole
|
||||
tm_scope: text.html.creole
|
||||
tm_scope: none
|
||||
ace_mode: text
|
||||
|
||||
Crystal:
|
||||
@@ -771,7 +783,7 @@ DM:
|
||||
- .dm
|
||||
aliases:
|
||||
- byond
|
||||
tm_scope: source.c++
|
||||
tm_scope: source.dm
|
||||
ace_mode: c_cpp
|
||||
|
||||
DNS Zone:
|
||||
@@ -873,6 +885,15 @@ ECLiPSe:
|
||||
tm_scope: source.prolog.eclipse
|
||||
ace_mode: prolog
|
||||
|
||||
EJS:
|
||||
type: markup
|
||||
color: "#a91e50"
|
||||
group: HTML
|
||||
extensions:
|
||||
- .ejs
|
||||
tm_scope: text.html.js
|
||||
ace_mode: ejs
|
||||
|
||||
Eagle:
|
||||
type: markup
|
||||
color: "#814C05"
|
||||
@@ -947,6 +968,7 @@ Erlang:
|
||||
color: "#B83998"
|
||||
extensions:
|
||||
- .erl
|
||||
- .app.src
|
||||
- .es
|
||||
- .escript
|
||||
- .hrl
|
||||
@@ -1106,7 +1128,7 @@ GAS:
|
||||
extensions:
|
||||
- .s
|
||||
- .ms
|
||||
tm_scope: source.asm.x86
|
||||
tm_scope: none
|
||||
ace_mode: assembly_x86
|
||||
|
||||
GDScript:
|
||||
@@ -1124,6 +1146,7 @@ GLSL:
|
||||
- .frag
|
||||
- .frg
|
||||
- .fs
|
||||
- .fsh
|
||||
- .fshader
|
||||
- .geo
|
||||
- .geom
|
||||
@@ -1132,6 +1155,7 @@ GLSL:
|
||||
- .shader
|
||||
- .vert
|
||||
- .vrx
|
||||
- .vsh
|
||||
- .vshader
|
||||
ace_mode: glsl
|
||||
|
||||
@@ -1261,6 +1285,14 @@ Graph Modeling Language:
|
||||
tm_scope: none
|
||||
ace_mode: text
|
||||
|
||||
GraphQL:
|
||||
type: data
|
||||
extensions:
|
||||
- .graphql
|
||||
color: "#E535AB"
|
||||
tm_scope: source.graphql
|
||||
ace_mode: text
|
||||
|
||||
Graphviz (DOT):
|
||||
type: data
|
||||
tm_scope: source.dot
|
||||
@@ -1531,6 +1563,7 @@ Idris:
|
||||
- .idr
|
||||
- .lidr
|
||||
ace_mode: text
|
||||
tm_scope: source.idris
|
||||
|
||||
Inform 7:
|
||||
type: programming
|
||||
@@ -1548,7 +1581,7 @@ Inno Setup:
|
||||
type: programming
|
||||
extensions:
|
||||
- .iss
|
||||
tm_scope: source.inno
|
||||
tm_scope: none
|
||||
ace_mode: text
|
||||
|
||||
Io:
|
||||
@@ -1610,11 +1643,14 @@ JSON:
|
||||
extensions:
|
||||
- .json
|
||||
- .geojson
|
||||
- .JSON-tmLanguage
|
||||
- .lock
|
||||
- .topojson
|
||||
filenames:
|
||||
- .arcconfig
|
||||
- .jshintrc
|
||||
- composer.lock
|
||||
- mcmod.info
|
||||
|
||||
JSON5:
|
||||
type: data
|
||||
@@ -1692,6 +1728,7 @@ JavaScript:
|
||||
- .js
|
||||
- ._js
|
||||
- .bones
|
||||
- .es
|
||||
- .es6
|
||||
- .frag
|
||||
- .gs
|
||||
@@ -1961,6 +1998,7 @@ Logos:
|
||||
- .x
|
||||
- .xi
|
||||
ace_mode: text
|
||||
tm_scope: source.logos
|
||||
|
||||
Logtalk:
|
||||
type: programming
|
||||
@@ -2064,14 +2102,18 @@ Makefile:
|
||||
- .mak
|
||||
- .d
|
||||
- .mk
|
||||
- .mkfile
|
||||
filenames:
|
||||
- BSDmakefile
|
||||
- GNUmakefile
|
||||
- Kbuild
|
||||
- Makefile
|
||||
- Makefile.am
|
||||
- Makefile.frag
|
||||
- Makefile.in
|
||||
- Makefile.inc
|
||||
- makefile
|
||||
- mkfile
|
||||
interpreters:
|
||||
- make
|
||||
ace_mode: makefile
|
||||
@@ -2234,6 +2276,7 @@ Monkey:
|
||||
extensions:
|
||||
- .monkey
|
||||
ace_mode: text
|
||||
tm_scope: source.monkey
|
||||
|
||||
Moocode:
|
||||
type: programming
|
||||
@@ -2502,11 +2545,21 @@ OpenEdge ABL:
|
||||
tm_scope: source.abl
|
||||
ace_mode: text
|
||||
|
||||
OpenRC runscript:
|
||||
type: programming
|
||||
group: Shell
|
||||
aliases:
|
||||
- openrc
|
||||
interpreters:
|
||||
- openrc-run
|
||||
tm_scope: source.shell
|
||||
ace_mode: sh
|
||||
|
||||
OpenSCAD:
|
||||
type: programming
|
||||
extensions:
|
||||
- .scad
|
||||
tm_scope: source.scad
|
||||
tm_scope: none
|
||||
ace_mode: scad
|
||||
|
||||
Org:
|
||||
@@ -2547,8 +2600,9 @@ PAWN:
|
||||
color: "#dbb284"
|
||||
extensions:
|
||||
- .pwn
|
||||
tm_scope: source.c++
|
||||
ace_mode: c_cpp
|
||||
- .inc
|
||||
tm_scope: source.pawn
|
||||
ace_mode: text
|
||||
|
||||
PHP:
|
||||
type: programming
|
||||
@@ -2577,7 +2631,7 @@ PHP:
|
||||
PLSQL:
|
||||
type: programming
|
||||
ace_mode: sql
|
||||
tm_scope: source.plsql.oracle
|
||||
tm_scope: none
|
||||
color: "#dad8d8"
|
||||
extensions:
|
||||
- .pls
|
||||
@@ -2619,7 +2673,7 @@ Papyrus:
|
||||
color: "#6600cc"
|
||||
extensions:
|
||||
- .psc
|
||||
tm_scope: source.papyrus
|
||||
tm_scope: source.papyrus.skyrim
|
||||
ace_mode: text
|
||||
|
||||
Parrot:
|
||||
@@ -2841,6 +2895,7 @@ Puppet:
|
||||
filenames:
|
||||
- Modulefile
|
||||
ace_mode: text
|
||||
tm_scope: source.puppet
|
||||
|
||||
Pure Data:
|
||||
type: programming
|
||||
@@ -3344,6 +3399,13 @@ Shell:
|
||||
- .tmux
|
||||
- .tool
|
||||
- .zsh
|
||||
filenames:
|
||||
- .bash_history
|
||||
- .bash_logout
|
||||
- .bash_profile
|
||||
- .bashrc
|
||||
- PKGBUILD
|
||||
- gradlew
|
||||
interpreters:
|
||||
- bash
|
||||
- rc
|
||||
@@ -3499,6 +3561,13 @@ SystemVerilog:
|
||||
- .vh
|
||||
ace_mode: verilog
|
||||
|
||||
TLA:
|
||||
type: programming
|
||||
extensions:
|
||||
- .tla
|
||||
tm_scope: source.tla
|
||||
ace_mode: text
|
||||
|
||||
TOML:
|
||||
type: data
|
||||
extensions:
|
||||
@@ -3565,6 +3634,15 @@ Tea:
|
||||
tm_scope: source.tea
|
||||
ace_mode: text
|
||||
|
||||
Terra:
|
||||
type: programming
|
||||
extensions:
|
||||
- .t
|
||||
color: "#00004c"
|
||||
ace_mode: lua
|
||||
interpreters:
|
||||
- lua
|
||||
|
||||
Text:
|
||||
type: prose
|
||||
wrap: true
|
||||
@@ -3792,6 +3870,14 @@ WebIDL:
|
||||
tm_scope: source.webidl
|
||||
ace_mode: text
|
||||
|
||||
World of Warcraft Addon Data:
|
||||
type: data
|
||||
color: "#e0b330"
|
||||
extensions:
|
||||
- .toc
|
||||
tm_scope: source.toc
|
||||
ace_mode: text
|
||||
|
||||
X10:
|
||||
type: programming
|
||||
aliases:
|
||||
@@ -3821,6 +3907,7 @@ XML:
|
||||
- .xml
|
||||
- .ant
|
||||
- .axml
|
||||
- .builds
|
||||
- .ccxml
|
||||
- .clixml
|
||||
- .cproject
|
||||
@@ -3831,6 +3918,7 @@ XML:
|
||||
- .ditamap
|
||||
- .ditaval
|
||||
- .dll.config
|
||||
- .dotsettings
|
||||
- .filters
|
||||
- .fsproj
|
||||
- .fxml
|
||||
@@ -3851,6 +3939,7 @@ XML:
|
||||
- .nuspec
|
||||
- .odd
|
||||
- .osm
|
||||
- .pkgproj
|
||||
- .plist
|
||||
- .pluginspec
|
||||
- .props
|
||||
@@ -3858,8 +3947,10 @@ XML:
|
||||
- .psc1
|
||||
- .pt
|
||||
- .rdf
|
||||
- .resx
|
||||
- .rss
|
||||
- .scxml
|
||||
- .sfproj
|
||||
- .srdf
|
||||
- .storyboard
|
||||
- .stTheme
|
||||
@@ -3878,6 +3969,7 @@ XML:
|
||||
- .ux
|
||||
- .vbproj
|
||||
- .vcxproj
|
||||
- .vssettings
|
||||
- .vxml
|
||||
- .wsdl
|
||||
- .wsf
|
||||
@@ -3899,6 +3991,8 @@ XML:
|
||||
filenames:
|
||||
- .classpath
|
||||
- .project
|
||||
- App.config
|
||||
- NuGet.config
|
||||
- Settings.StyleCop
|
||||
- Web.Debug.config
|
||||
- Web.Release.config
|
||||
@@ -3982,6 +4076,8 @@ YAML:
|
||||
- .syntax
|
||||
- .yaml
|
||||
- .yaml-tmlanguage
|
||||
filenames:
|
||||
- .clang-format
|
||||
ace_mode: yaml
|
||||
|
||||
YANG:
|
||||
@@ -4063,6 +4159,7 @@ nesC:
|
||||
extensions:
|
||||
- .nc
|
||||
ace_mode: text
|
||||
tm_scope: source.nesc
|
||||
|
||||
ooc:
|
||||
type: programming
|
||||
|
||||
@@ -28,6 +28,7 @@ module Linguist
|
||||
@oid = oid
|
||||
@path = path
|
||||
@mode = mode
|
||||
@data = nil
|
||||
end
|
||||
|
||||
def git_attributes
|
||||
|
||||
@@ -30,6 +30,9 @@ module Linguist
|
||||
@repository = repo
|
||||
@commit_oid = commit_oid
|
||||
|
||||
@old_commit_oid = nil
|
||||
@old_stats = nil
|
||||
|
||||
raise TypeError, 'commit_oid must be a commit SHA1' unless commit_oid.is_a?(String)
|
||||
end
|
||||
|
||||
|
||||
@@ -42,10 +42,10 @@ module Linguist
|
||||
return unless script
|
||||
|
||||
# "python2.6" -> "python2"
|
||||
script.sub! /(\.\d+)$/, ''
|
||||
script.sub!(/(\.\d+)$/, '')
|
||||
|
||||
# #! perl -> perl
|
||||
script.sub! /^#!\s*/, ''
|
||||
script.sub!(/^#!\s*/, '')
|
||||
|
||||
# Check for multiline shebang hacks that call `exec`
|
||||
if script == 'sh' &&
|
||||
|
||||
@@ -15,6 +15,10 @@ module Linguist
|
||||
|
||||
MODELINES = [EMACS_MODELINE, VIM_MODELINE_1, VIM_MODELINE_2]
|
||||
|
||||
# Scope of the search for modelines
|
||||
# Number of lines to check at the beginning and at the end of the file
|
||||
SEARCH_SCOPE = 5
|
||||
|
||||
# Public: Detects language based on Vim and Emacs modelines
|
||||
#
|
||||
# blob - An object that quacks like a blob.
|
||||
@@ -26,7 +30,9 @@ module Linguist
|
||||
# Returns an Array with one Language if the blob has a Vim or Emacs modeline
|
||||
# that matches a Language name or alias. Returns an empty array if no match.
|
||||
def self.call(blob, _ = nil)
|
||||
Array(Language.find_by_alias(modeline(blob.data)))
|
||||
header = blob.lines.first(SEARCH_SCOPE).join("\n")
|
||||
footer = blob.lines.last(SEARCH_SCOPE).join("\n")
|
||||
Array(Language.find_by_alias(modeline(header + footer)))
|
||||
end
|
||||
|
||||
# Public: Get the modeline from the first n-lines of the file
|
||||
|
||||
@@ -190,6 +190,7 @@
|
||||
|
||||
# django
|
||||
- (^|/)admin_media/
|
||||
- (^|/)env/
|
||||
|
||||
# Fabric
|
||||
- ^fabfile\.py$
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
module Linguist
|
||||
VERSION = "4.8.0"
|
||||
VERSION = "4.8.5"
|
||||
end
|
||||
|
||||
@@ -2,5 +2,6 @@
|
||||
"repository": "https://github.com/github/linguist",
|
||||
"dependencies": {
|
||||
"season": "~>5.0"
|
||||
}
|
||||
},
|
||||
"license": "MIT"
|
||||
}
|
||||
|
||||
70
samples/Alpine Abuild/filenames/APKBUILD
Normal file
70
samples/Alpine Abuild/filenames/APKBUILD
Normal file
@@ -0,0 +1,70 @@
|
||||
# Contributor: Natanael Copa <ncopa@alpinelinux.org>
|
||||
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
|
||||
pkgname=abuild
|
||||
pkgver=2.27.0
|
||||
_ver=${pkgver%_git*}
|
||||
pkgrel=0
|
||||
pkgdesc="Script to build Alpine Packages"
|
||||
url="http://git.alpinelinux.org/cgit/abuild/"
|
||||
arch="all"
|
||||
license="GPL2"
|
||||
depends="fakeroot sudo pax-utils openssl apk-tools>=2.0.7-r1 libc-utils
|
||||
attr tar pkgconf patch"
|
||||
if [ "$CBUILD" = "$CHOST" ]; then
|
||||
depends="$depends curl"
|
||||
fi
|
||||
makedepends_build="pkgconfig"
|
||||
makedepends_host="openssl-dev"
|
||||
makedepends="$makedepends_host $makedepends_build"
|
||||
install="$pkgname.pre-install $pkgname.pre-upgrade"
|
||||
subpackages="apkbuild-cpan:cpan apkbuild-gem-resolver:gems"
|
||||
options="suid"
|
||||
pkggroups="abuild"
|
||||
source="http://dev.alpinelinux.org/archive/abuild/abuild-$_ver.tar.xz
|
||||
"
|
||||
|
||||
_builddir="$srcdir/$pkgname-$_ver"
|
||||
prepare() {
|
||||
cd "$_builddir"
|
||||
for i in $source; do
|
||||
case $i in
|
||||
*.patch)
|
||||
msg "Applying $i"
|
||||
patch -p1 -i "$srcdir"/$i || return 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
sed -i -e "/^CHOST=/s/=.*/=$CHOST/" abuild.conf
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "$_builddir"
|
||||
make || return 1
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "$_builddir"
|
||||
make install DESTDIR="$pkgdir" || return 1
|
||||
install -m 644 abuild.conf "$pkgdir"/etc/abuild.conf || return 1
|
||||
install -d -m 775 -g abuild "$pkgdir"/var/cache/distfiles || return 1
|
||||
}
|
||||
|
||||
cpan() {
|
||||
pkgdesc="Script to generate perl APKBUILD from CPAN"
|
||||
depends="perl perl-libwww perl-json"
|
||||
arch="noarch"
|
||||
mkdir -p "$subpkgdir"/usr/bin
|
||||
mv "$pkgdir"/usr/bin/apkbuild-cpan "$subpkgdir"/usr/bin/
|
||||
}
|
||||
|
||||
gems() {
|
||||
pkgdesc="APKBUILD dependency resolver for RubyGems"
|
||||
depends="ruby ruby-augeas"
|
||||
arch="noarch"
|
||||
mkdir -p "$subpkgdir"/usr/bin
|
||||
mv "$pkgdir"/usr/bin/apkbuild-gem-resolver "$subpkgdir"/usr/bin/
|
||||
}
|
||||
|
||||
md5sums="c67e4c971c54b4d550e16db3ba331f96 abuild-2.27.0.tar.xz"
|
||||
sha256sums="c8db017e3dd168edb20ceeb91971535cf66b8c95f29d3288f88ac755bffc60e5 abuild-2.27.0.tar.xz"
|
||||
sha512sums="98e1da4e47f3ab68700b3bc992c83e103f770f3196e433788ee74145f57cd33e5239c87f0a7a15f7266840d5bad893fc8c0d4c826d663df53deaee2678c56984 abuild-2.27.0.tar.xz"
|
||||
397
samples/C/main.c
Normal file
397
samples/C/main.c
Normal file
@@ -0,0 +1,397 @@
|
||||
// Copyright 2014 the V8 project authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
#include "src/runtime/runtime-utils.h"
|
||||
|
||||
#include "src/arguments.h"
|
||||
#include "src/compiler.h"
|
||||
#include "src/deoptimizer.h"
|
||||
#include "src/frames-inl.h"
|
||||
#include "src/full-codegen/full-codegen.h"
|
||||
#include "src/isolate-inl.h"
|
||||
#include "src/messages.h"
|
||||
#include "src/v8threads.h"
|
||||
#include "src/vm-state-inl.h"
|
||||
|
||||
namespace v8 {
|
||||
namespace internal {
|
||||
|
||||
RUNTIME_FUNCTION(Runtime_CompileLazy) {
|
||||
HandleScope scope(isolate);
|
||||
DCHECK_EQ(1, args.length());
|
||||
CONVERT_ARG_HANDLE_CHECKED(JSFunction, function, 0);
|
||||
|
||||
#ifdef DEBUG
|
||||
if (FLAG_trace_lazy && !function->shared()->is_compiled()) {
|
||||
PrintF("[unoptimized: ");
|
||||
function->PrintName();
|
||||
PrintF("]\n");
|
||||
}
|
||||
#endif
|
||||
|
||||
StackLimitCheck check(isolate);
|
||||
if (check.JsHasOverflowed(1 * KB)) return isolate->StackOverflow();
|
||||
if (!Compiler::Compile(function, Compiler::KEEP_EXCEPTION)) {
|
||||
return isolate->heap()->exception();
|
||||
}
|
||||
DCHECK(function->is_compiled());
|
||||
return function->code();
|
||||
}
|
||||
|
||||
RUNTIME_FUNCTION(Runtime_CompileBaseline) {
|
||||
HandleScope scope(isolate);
|
||||
DCHECK_EQ(1, args.length());
|
||||
CONVERT_ARG_HANDLE_CHECKED(JSFunction, function, 0);
|
||||
StackLimitCheck check(isolate);
|
||||
if (check.JsHasOverflowed(1 * KB)) return isolate->StackOverflow();
|
||||
if (!Compiler::CompileBaseline(function)) {
|
||||
return isolate->heap()->exception();
|
||||
}
|
||||
DCHECK(function->is_compiled());
|
||||
return function->code();
|
||||
}
|
||||
|
||||
RUNTIME_FUNCTION(Runtime_CompileOptimized_Concurrent) {
|
||||
HandleScope scope(isolate);
|
||||
DCHECK_EQ(1, args.length());
|
||||
CONVERT_ARG_HANDLE_CHECKED(JSFunction, function, 0);
|
||||
StackLimitCheck check(isolate);
|
||||
if (check.JsHasOverflowed(1 * KB)) return isolate->StackOverflow();
|
||||
if (!Compiler::CompileOptimized(function, Compiler::CONCURRENT)) {
|
||||
return isolate->heap()->exception();
|
||||
}
|
||||
DCHECK(function->is_compiled());
|
||||
return function->code();
|
||||
}
|
||||
|
||||
|
||||
RUNTIME_FUNCTION(Runtime_CompileOptimized_NotConcurrent) {
|
||||
HandleScope scope(isolate);
|
||||
DCHECK_EQ(1, args.length());
|
||||
CONVERT_ARG_HANDLE_CHECKED(JSFunction, function, 0);
|
||||
StackLimitCheck check(isolate);
|
||||
if (check.JsHasOverflowed(1 * KB)) return isolate->StackOverflow();
|
||||
if (!Compiler::CompileOptimized(function, Compiler::NOT_CONCURRENT)) {
|
||||
return isolate->heap()->exception();
|
||||
}
|
||||
DCHECK(function->is_compiled());
|
||||
return function->code();
|
||||
}
|
||||
|
||||
|
||||
RUNTIME_FUNCTION(Runtime_NotifyStubFailure) {
|
||||
HandleScope scope(isolate);
|
||||
DCHECK(args.length() == 0);
|
||||
Deoptimizer* deoptimizer = Deoptimizer::Grab(isolate);
|
||||
DCHECK(AllowHeapAllocation::IsAllowed());
|
||||
delete deoptimizer;
|
||||
return isolate->heap()->undefined_value();
|
||||
}
|
||||
|
||||
|
||||
class ActivationsFinder : public ThreadVisitor {
|
||||
public:
|
||||
Code* code_;
|
||||
bool has_code_activations_;
|
||||
|
||||
explicit ActivationsFinder(Code* code)
|
||||
: code_(code), has_code_activations_(false) {}
|
||||
|
||||
void VisitThread(Isolate* isolate, ThreadLocalTop* top) {
|
||||
JavaScriptFrameIterator it(isolate, top);
|
||||
VisitFrames(&it);
|
||||
}
|
||||
|
||||
void VisitFrames(JavaScriptFrameIterator* it) {
|
||||
for (; !it->done(); it->Advance()) {
|
||||
JavaScriptFrame* frame = it->frame();
|
||||
if (code_->contains(frame->pc())) has_code_activations_ = true;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
RUNTIME_FUNCTION(Runtime_NotifyDeoptimized) {
|
||||
HandleScope scope(isolate);
|
||||
DCHECK(args.length() == 1);
|
||||
CONVERT_SMI_ARG_CHECKED(type_arg, 0);
|
||||
Deoptimizer::BailoutType type =
|
||||
static_cast<Deoptimizer::BailoutType>(type_arg);
|
||||
Deoptimizer* deoptimizer = Deoptimizer::Grab(isolate);
|
||||
DCHECK(AllowHeapAllocation::IsAllowed());
|
||||
TimerEventScope<TimerEventDeoptimizeCode> timer(isolate);
|
||||
TRACE_EVENT0("v8", "V8.DeoptimizeCode");
|
||||
|
||||
Handle<JSFunction> function = deoptimizer->function();
|
||||
Handle<Code> optimized_code = deoptimizer->compiled_code();
|
||||
|
||||
DCHECK(optimized_code->kind() == Code::OPTIMIZED_FUNCTION);
|
||||
DCHECK(type == deoptimizer->bailout_type());
|
||||
|
||||
// Make sure to materialize objects before causing any allocation.
|
||||
JavaScriptFrameIterator it(isolate);
|
||||
deoptimizer->MaterializeHeapObjects(&it);
|
||||
delete deoptimizer;
|
||||
|
||||
// Ensure the context register is updated for materialized objects.
|
||||
JavaScriptFrameIterator top_it(isolate);
|
||||
JavaScriptFrame* top_frame = top_it.frame();
|
||||
isolate->set_context(Context::cast(top_frame->context()));
|
||||
|
||||
if (type == Deoptimizer::LAZY) {
|
||||
return isolate->heap()->undefined_value();
|
||||
}
|
||||
|
||||
// Search for other activations of the same optimized code.
|
||||
// At this point {it} is at the topmost frame of all the frames materialized
|
||||
// by the deoptimizer. Note that this frame does not necessarily represent
|
||||
// an activation of {function} because of potential inlined tail-calls.
|
||||
ActivationsFinder activations_finder(*optimized_code);
|
||||
activations_finder.VisitFrames(&it);
|
||||
isolate->thread_manager()->IterateArchivedThreads(&activations_finder);
|
||||
|
||||
if (!activations_finder.has_code_activations_) {
|
||||
if (function->code() == *optimized_code) {
|
||||
if (FLAG_trace_deopt) {
|
||||
PrintF("[removing optimized code for: ");
|
||||
function->PrintName();
|
||||
PrintF("]\n");
|
||||
}
|
||||
function->ReplaceCode(function->shared()->code());
|
||||
}
|
||||
// Evict optimized code for this function from the cache so that it
|
||||
// doesn't get used for new closures.
|
||||
function->shared()->EvictFromOptimizedCodeMap(*optimized_code, "notify deoptimized");
|
||||
} else {
|
||||
// TODO(titzer): we should probably do DeoptimizeCodeList(code)
|
||||
// unconditionally if the code is not already marked for deoptimization.
|
||||
// If there is an index by shared function info, all the better.
|
||||
Deoptimizer::DeoptimizeFunction(*function);
|
||||
}
|
||||
|
||||
return isolate->heap()->undefined_value();
|
||||
}
|
||||
|
||||
|
||||
static bool IsSuitableForOnStackReplacement(
|
||||
Isolate* isolate,
|
||||
Handle<JSFunction> function
|
||||
) {
|
||||
// Keep track of whether we've succeeded in optimizing.
|
||||
if (function->shared()->optimization_disabled()) return false;
|
||||
// If we are trying to do OSR when there are already optimized
|
||||
// activations of the function, it means (a) the function is directly or
|
||||
// indirectly recursive and (b) an optimized invocation has been
|
||||
// deoptimized so that we are currently in an unoptimized activation.
|
||||
// Check for optimized activations of this function.
|
||||
for (JavaScriptFrameIterator it(isolate); !it.done(); it.Advance()) {
|
||||
JavaScriptFrame* frame = it.frame();
|
||||
if (frame->is_optimized() && frame->function() == *function) return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
RUNTIME_FUNCTION(Runtime_CompileForOnStackReplacement) {
|
||||
HandleScope scope(isolate);
|
||||
DCHECK(args.length() == 1);
|
||||
CONVERT_ARG_HANDLE_CHECKED(JSFunction, function, 0);
|
||||
Handle<Code> caller_code(function->shared()->code());
|
||||
|
||||
// We're not prepared to handle a function with arguments object.
|
||||
DCHECK(!function->shared()->uses_arguments());
|
||||
|
||||
RUNTIME_ASSERT(FLAG_use_osr);
|
||||
|
||||
// Passing the PC in the javascript frame from the caller directly is
|
||||
// not GC safe, so we walk the stack to get it.
|
||||
JavaScriptFrameIterator it(isolate);
|
||||
JavaScriptFrame* frame = it.frame();
|
||||
if (!caller_code->contains(frame->pc())) {
|
||||
// Code on the stack may not be the code object referenced by the shared
|
||||
// function info. It may have been replaced to include deoptimization data.
|
||||
caller_code = Handle<Code>(frame->LookupCode());
|
||||
}
|
||||
|
||||
uint32_t pc_offset =
|
||||
static_cast<uint32_t>(frame->pc() - caller_code->instruction_start());
|
||||
|
||||
#ifdef DEBUG
|
||||
DCHECK_EQ(frame->function(), *function);
|
||||
DCHECK_EQ(frame->LookupCode(), *caller_code);
|
||||
DCHECK(caller_code->contains(frame->pc()));
|
||||
#endif // DEBUG
|
||||
|
||||
BailoutId ast_id = caller_code->TranslatePcOffsetToAstId(pc_offset);
|
||||
DCHECK(!ast_id.IsNone());
|
||||
|
||||
MaybeHandle<Code> maybe_result;
|
||||
if (IsSuitableForOnStackReplacement(isolate, function)) {
|
||||
if (FLAG_trace_osr) {
|
||||
PrintF("[OSR - Compiling: ");
|
||||
function->PrintName();
|
||||
PrintF(" at -*- scheme -*- %d]\n", ast_id.ToInt());
|
||||
}
|
||||
maybe_result = Compiler::GetOptimizedCodeForOSR(function, ast_id, frame);
|
||||
}
|
||||
|
||||
// Revert the patched back edge table, regardless of whether OSR succeeds.
|
||||
BackEdgeTable::Revert(isolate, *caller_code);
|
||||
|
||||
// Check whether we ended up with usable optimized code.
|
||||
Handle<Code> result;
|
||||
if (maybe_result.ToHandle(&result)
|
||||
&& result->kind() == Code::OPTIMIZED_FUNCTION) {
|
||||
DeoptimizationInputData* data =
|
||||
DeoptimizationInputData::cast(result->deoptimization_data());
|
||||
|
||||
if (data->OsrPcOffset()->value() >= 0) {
|
||||
DCHECK(BailoutId(data->OsrAstId()->value()) == ast_id);
|
||||
if (FLAG_trace_osr) {
|
||||
PrintF("[OSR - Entry at AST id %d, offset %d in optimized code]\n",
|
||||
ast_id.ToInt(), data->OsrPcOffset()->value());
|
||||
}
|
||||
// TODO(titzer): this is a massive hack to make the deopt counts
|
||||
// match. Fix heuristics for reenabling optimizations!
|
||||
function->shared()->increment_deopt_count();
|
||||
|
||||
if (result->is_turbofanned()) {
|
||||
// TurboFanned OSR code cannot be installed into the function.
|
||||
// But the function is obviously hot, so optimize it next time.
|
||||
function->ReplaceCode(
|
||||
isolate->builtins()->builtin(Builtins::kCompileOptimized));
|
||||
} else {
|
||||
// Crankshafted OSR code can be installed into the function.
|
||||
function->ReplaceCode(*result);
|
||||
}
|
||||
return *result;
|
||||
}
|
||||
}
|
||||
|
||||
// Failed.
|
||||
if (FLAG_trace_osr) {
|
||||
PrintF("[OSR - Failed: ");
|
||||
function->PrintName();
|
||||
PrintF(" at AST id %d]\n", ast_id.ToInt());
|
||||
}
|
||||
|
||||
if (!function->IsOptimized()) {
|
||||
function->ReplaceCode(function->shared()->code());
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
RUNTIME_FUNCTION(Runtime_TryInstallOptimizedCode) {
|
||||
HandleScope scope(isolate);
|
||||
DCHECK(args.length() == 1);
|
||||
CONVERT_ARG_HANDLE_CHECKED(JSFunction, function, 0);
|
||||
|
||||
// First check if this is a real stack overflow.
|
||||
StackLimitCheck check(isolate);
|
||||
if (check.JsHasOverflowed()) {
|
||||
SealHandleScope shs(isolate);
|
||||
return isolate->StackOverflow();
|
||||
}
|
||||
|
||||
isolate->optimizing_compile_dispatcher()->InstallOptimizedFunctions();
|
||||
return (function->IsOptimized())
|
||||
? function->code()
|
||||
: function->shared()->code();
|
||||
}
|
||||
|
||||
|
||||
bool CodeGenerationFromStringsAllowed(
|
||||
Isolate* isolate,
|
||||
Handle<Context> context
|
||||
){
|
||||
DCHECK(context->allow_code_gen_from_strings()->IsFalse());
|
||||
// Check with callback if set.
|
||||
AllowCodeGenerationFromStringsCallback callback =
|
||||
isolate->allow_code_gen_callback();
|
||||
if (callback == NULL) {
|
||||
// No callback set and code generation disallowed.
|
||||
return false;
|
||||
} else {
|
||||
// Callback set. Let it decide if code generation is allowed.
|
||||
VMState<EXTERNAL> state(isolate);
|
||||
return callback(v8::Utils::ToLocal(context));
|
||||
}
|
||||
}
|
||||
|
||||
static Object* CompileGlobalEval(
|
||||
Isolate* isolate,
|
||||
Handle<String> source,
|
||||
Handle<SharedFunctionInfo> outer_info,
|
||||
LanguageMode language_mode,
|
||||
int eval_scope_position,
|
||||
int eval_position
|
||||
){
|
||||
Handle<Context> context = Handle<Context>(isolate->context());
|
||||
Handle<Context> native_context = Handle<Context>(context->native_context());
|
||||
|
||||
// Check if native context allows code generation from
|
||||
// strings. Throw an exception if it doesn't.
|
||||
if (native_context->allow_code_gen_from_strings()->IsFalse() &&
|
||||
!CodeGenerationFromStringsAllowed(isolate, native_context)) {
|
||||
Handle<Object> error_message =
|
||||
native_context->ErrorMessageForCodeGenerationFromStrings();
|
||||
Handle<Object> error;
|
||||
MaybeHandle<Object> maybe_error = isolate->factory()->NewEvalError(
|
||||
MessageTemplate::kCodeGenFromStrings, error_message);
|
||||
if (maybe_error.ToHandle(&error)) isolate->Throw(*error);
|
||||
return isolate->heap()->exception();
|
||||
}
|
||||
|
||||
// Deal with a normal eval call with a string argument. Compile it
|
||||
// and return the compiled function bound in the local context.
|
||||
static const ParseRestriction restriction = NO_PARSE_RESTRICTION;
|
||||
Handle<JSFunction> compiled;
|
||||
ASSIGN_RETURN_ON_EXCEPTION_VALUE(
|
||||
isolate, compiled,
|
||||
Compiler::GetFunctionFromEval(
|
||||
source, outer_info, context, language_mode,
|
||||
restriction, eval_scope_position, eval_position
|
||||
),
|
||||
isolate->heap()->exception()
|
||||
);
|
||||
return *compiled;
|
||||
}
|
||||
|
||||
|
||||
RUNTIME_FUNCTION(Runtime_ResolvePossiblyDirectEval) {
|
||||
HandleScope scope(isolate);
|
||||
DCHECK(args.length() == 6);
|
||||
|
||||
Handle<Object> callee = args.at<Object>(0);
|
||||
|
||||
// If "eval" didn't refer to the original GlobalEval, it's not a
|
||||
// direct call to eval.
|
||||
// (And even if it is, but the first argument isn't a string, just let
|
||||
// execution default to an indirect call to eval, which will also return
|
||||
// the first argument without doing anything).
|
||||
if (*callee != isolate->native_context()->global_eval_fun() || !args[1]->IsString()) {
|
||||
return *callee;
|
||||
}
|
||||
|
||||
DCHECK(args[3]->IsSmi());
|
||||
DCHECK(is_valid_language_mode(args.smi_at(3)));
|
||||
LanguageMode language_mode = static_cast<LanguageMode>(args.smi_at(3));
|
||||
DCHECK(args[4]->IsSmi());
|
||||
Handle<SharedFunctionInfo> outer_info(args.at<JSFunction>(2)->shared(), isolate);
|
||||
return CompileGlobalEval(
|
||||
isolate,
|
||||
args.at<String>(1),
|
||||
outer_info,
|
||||
language_mode,
|
||||
args.smi_at(4),
|
||||
args.smi_at(5)
|
||||
);
|
||||
}
|
||||
} // namespace internal
|
||||
} // namespace v8
|
||||
|
||||
/* vim: set shiftwidth=4 softtabstop=0 cindent cinoptions={1s: */
|
||||
|
||||
13
samples/EJS/dash.ejs
Normal file
13
samples/EJS/dash.ejs
Normal file
@@ -0,0 +1,13 @@
|
||||
<% include parts/depend %>
|
||||
|
||||
<div class="row">
|
||||
<% if (user.primaryAccount == "teacher") { %>
|
||||
<% include teacher/sidebar %>
|
||||
<% include teacher/dashboard %>
|
||||
<% } else if (user.primaryAccount == "student") { %>
|
||||
<% include student/sidebar %>
|
||||
<% include student/dashboard %>
|
||||
<% } else { %>
|
||||
<center><h2>There seems to be a problem</h2></center>
|
||||
<% } %>
|
||||
</div>
|
||||
102
samples/EJS/page.ejs
Normal file
102
samples/EJS/page.ejs
Normal file
@@ -0,0 +1,102 @@
|
||||
<% include ../parts/depend %>
|
||||
|
||||
<div class="row">
|
||||
<% include sidebar %>
|
||||
<div class="col-lg-offset-3 col-lg-9 main-content">
|
||||
<div class="page-title">
|
||||
<h1>Pieces</h1>
|
||||
<% if (pieces.length == 1) { %>
|
||||
<p>You have
|
||||
<strong>1</strong>
|
||||
piece to practice</p>
|
||||
<% } else { %>
|
||||
<p>You have
|
||||
<strong><%= pieces.length %></strong>
|
||||
pieces to practice</p>
|
||||
<% } %>
|
||||
</div>
|
||||
<div class="row">
|
||||
<% if (pieces == undefined || pieces.length == 0) { %>
|
||||
<div class="error-main">
|
||||
<h1>No Pieces</h1>
|
||||
<p>You have no
|
||||
<strong>Pieces</strong>
|
||||
assigned.</p>
|
||||
</div>
|
||||
<% } else { %>
|
||||
<div class="col-lg-12 section-title">
|
||||
<div style="margin-top: 10px; margin-bottom: 10px;" class="btn-group" role="group">
|
||||
<button id="inProgressButton" type="button" class="btn btn-md btn-super-round btn-focus-off btn-primary btn-primary-active">In Progress</button>
|
||||
<button id="completedButton" type="button" class="btn btn-md btn-super-round btn-focus-off btn-purple">Completed</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="inProgressPieces">
|
||||
<% if (inProgressPieces == undefined || inProgressPieces.length == 0) { %>
|
||||
<center>
|
||||
<h2>No Pieces in Progress</h2>
|
||||
</center>
|
||||
<% } else { %>
|
||||
<% for (var i = 0; i < inProgressPieces.length; i++) { %>
|
||||
<div class="col-lg-6">
|
||||
<div class="box">
|
||||
<div class="title">
|
||||
<h1>
|
||||
<a href="/pieces/practice/<%= inProgressPieces[i].id %>"><%= inProgressPieces[i].title %></a>
|
||||
</h1>
|
||||
<p>By
|
||||
<strong><%= inProgressPieces[i].author %></strong>
|
||||
</p>
|
||||
<p>
|
||||
Teacher:
|
||||
<strong><%= inProgressPieces[i].teacherName %></strong>
|
||||
</p>
|
||||
<p>Average Practice Time:
|
||||
<strong><%= inProgressPieces[i].averagePracticeTime %>
|
||||
mins</strong>
|
||||
</p>
|
||||
<a href="/pieces/practice/<%= inProgressPieces[i].id %>" class="btn btn-success btn-block">Practice
|
||||
<%= inProgressPieces[i].title %></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% } %>
|
||||
<% } %>
|
||||
</div>
|
||||
|
||||
<div id="completedPieces" style="display: none;">
|
||||
<% if (completedPieces == undefined || completedPieces.length == 0) { %>
|
||||
<center>
|
||||
<h2>No Completed Pieces</h2>
|
||||
</center>
|
||||
<% } else { %>
|
||||
<% for (var i = 0; i < completedPieces.length; i++) { %>
|
||||
<div class="col-lg-6">
|
||||
<div class="box">
|
||||
<div class="title">
|
||||
<h1>
|
||||
<a href="/pieces/practice/<%= completedPieces[i].id %>"><%= completedPieces[i].title %></a>
|
||||
</h1>
|
||||
<p>By
|
||||
<strong><%= completedPieces[i].author %></strong>
|
||||
</p>
|
||||
<p>
|
||||
Teacher:
|
||||
<strong><%= completedPieces[i].teacherName %></strong>
|
||||
</p>
|
||||
<p>Average Practice Time:
|
||||
<strong><%= completedPieces[i].averagePracticeTime %>
|
||||
mins</strong>
|
||||
</p>
|
||||
<a href="/pieces/practice/<%= completedPieces[i].id %>" class="btn btn-success btn-block">Practice
|
||||
<%= completedPieces[i].title %></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% } %>
|
||||
<% } %>
|
||||
</div>
|
||||
<% } %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
26
samples/Erlang/170-os-daemons.es
Executable file
26
samples/Erlang/170-os-daemons.es
Executable file
@@ -0,0 +1,26 @@
|
||||
#! /usr/bin/env escript
|
||||
|
||||
% Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
||||
% use this file except in compliance with the License. You may obtain a copy of
|
||||
% the License at
|
||||
%
|
||||
% http://www.apache.org/licenses/LICENSE-2.0
|
||||
%
|
||||
% Unless required by applicable law or agreed to in writing, software
|
||||
% distributed under the License is distributed on an "AS IS" BASIS, 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.
|
||||
|
||||
loop() ->
|
||||
loop(io:read("")).
|
||||
|
||||
loop({ok, _}) ->
|
||||
loop(io:read(""));
|
||||
loop(eof) ->
|
||||
stop;
|
||||
loop({error, Reason}) ->
|
||||
throw({error, Reason}).
|
||||
|
||||
main([]) ->
|
||||
loop().
|
||||
1
samples/Erlang/release
Normal file → Executable file
1
samples/Erlang/release
Normal file → Executable file
@@ -119,4 +119,3 @@ execute_overlay([{copy, In, Out} | Rest], Vars, BaseDir, TargetDir) ->
|
||||
|
||||
exit_code(ExitCode) ->
|
||||
erlang:halt(ExitCode, [{flush, true}]).
|
||||
|
||||
|
||||
8
samples/Erlang/sample.app.src
Normal file
8
samples/Erlang/sample.app.src
Normal file
@@ -0,0 +1,8 @@
|
||||
{application, sample,
|
||||
[{description, "sample app"},
|
||||
{vsn, "1.0.0"},
|
||||
{registered, []},
|
||||
{mod, {sample_app, []}},
|
||||
{applications, [kernel, stdlib]},
|
||||
{env, []},
|
||||
{modules, []}]}.
|
||||
104
samples/Erlang/single-context.es
Executable file
104
samples/Erlang/single-context.es
Executable file
@@ -0,0 +1,104 @@
|
||||
#! /usr/bin/env escript
|
||||
% This file is part of Emonk released under the MIT license.
|
||||
% See the LICENSE file for more information.
|
||||
|
||||
main([]) ->
|
||||
start(64, 1000);
|
||||
main([N]) ->
|
||||
start(list_to_integer(N), 1000);
|
||||
main([N, M]) ->
|
||||
start(list_to_integer(N), list_to_integer(M)).
|
||||
|
||||
|
||||
start(N, M) ->
|
||||
code:add_pathz("test"),
|
||||
code:add_pathz("ebin"),
|
||||
{ok, Ctx} = emonk:create_ctx(),
|
||||
{ok, undefined} = emonk:eval(Ctx, js()),
|
||||
run(Ctx, N, M),
|
||||
wait(N).
|
||||
|
||||
run(_, 0, _) ->
|
||||
ok;
|
||||
run(Ctx, N, M) ->
|
||||
Self = self(),
|
||||
Pid = spawn(fun() -> do_js(Self, Ctx, M) end),
|
||||
io:format("Spawned: ~p~n", [Pid]),
|
||||
run(Ctx, N-1, M).
|
||||
|
||||
wait(0) ->
|
||||
ok;
|
||||
wait(N) ->
|
||||
receive
|
||||
{finished, Pid} -> ok
|
||||
end,
|
||||
io:format("Finished: ~p~n", [Pid]),
|
||||
wait(N-1).
|
||||
|
||||
do_js(Parent, _, 0) ->
|
||||
Parent ! {finished, self()};
|
||||
do_js(Parent, Ctx, M) ->
|
||||
io:format("Running: ~p~n", [M]),
|
||||
Test = random_test(),
|
||||
{ok, [Resp]} = emonk:call(Ctx, <<"f">>, [Test]),
|
||||
Sorted = sort(Resp),
|
||||
true = Test == Sorted,
|
||||
do_js(Parent, Ctx, M-1).
|
||||
|
||||
js() ->
|
||||
<<"var f = function(x) {return [x];};">>.
|
||||
|
||||
random_test() ->
|
||||
Tests = [
|
||||
null,
|
||||
true,
|
||||
false,
|
||||
1,
|
||||
-1,
|
||||
3.1416,
|
||||
-3.1416,
|
||||
12.0e10,
|
||||
1.234E+10,
|
||||
-1.234E-10,
|
||||
10.0,
|
||||
123.456,
|
||||
10.0,
|
||||
<<"foo">>,
|
||||
<<"foo", 5, "bar">>,
|
||||
<<"">>,
|
||||
<<"\n\n\n">>,
|
||||
<<"\" \b\f\r\n\t\"">>,
|
||||
{[]},
|
||||
{[{<<"foo">>, <<"bar">>}]},
|
||||
{[{<<"foo">>, <<"bar">>}, {<<"baz">>, 123}]},
|
||||
[],
|
||||
[[]],
|
||||
[1, <<"foo">>],
|
||||
{[{<<"foo">>, [123]}]},
|
||||
{[{<<"foo">>, [1, 2, 3]}]},
|
||||
{[{<<"foo">>, {[{<<"bar">>, true}]}}]},
|
||||
{[
|
||||
{<<"foo">>, []},
|
||||
{<<"bar">>, {[{<<"baz">>, true}]}}, {<<"alice">>, <<"bob">>}
|
||||
]},
|
||||
[-123, <<"foo">>, {[{<<"bar">>, []}]}, null]
|
||||
],
|
||||
{_, [Test | _]} = lists:split(random:uniform(length(Tests)) - 1, Tests),
|
||||
sort(Test).
|
||||
|
||||
sort({Props}) ->
|
||||
objsort(Props, []);
|
||||
sort(List) when is_list(List) ->
|
||||
lstsort(List, []);
|
||||
sort(Other) ->
|
||||
Other.
|
||||
|
||||
objsort([], Acc) ->
|
||||
{lists:sort(Acc)};
|
||||
objsort([{K,V} | Rest], Acc) ->
|
||||
objsort(Rest, [{K, sort(V)} | Acc]).
|
||||
|
||||
lstsort([], Acc) ->
|
||||
lists:reverse(Acc);
|
||||
lstsort([Val | Rest], Acc) ->
|
||||
lstsort(Rest, [sort(Val) | Acc]).
|
||||
20
samples/GLSL/gbuffers_textured_lit.fsh
Normal file
20
samples/GLSL/gbuffers_textured_lit.fsh
Normal file
@@ -0,0 +1,20 @@
|
||||
#version 120
|
||||
|
||||
uniform sampler2D texture;
|
||||
|
||||
varying vec3 color;
|
||||
varying vec2 texcoord;
|
||||
|
||||
vec4 GetDiffuse() {
|
||||
vec4 diffuse = vec4(color.rgb, 1.0);
|
||||
diffuse *= texture2D(texture, texcoord);
|
||||
|
||||
return diffuse;
|
||||
}
|
||||
|
||||
|
||||
void main() {
|
||||
vec4 diffuse = GetDiffuse();
|
||||
|
||||
gl_FragData[0] = diffuse;
|
||||
}
|
||||
11
samples/GLSL/gbuffers_textured_lit.vsh
Normal file
11
samples/GLSL/gbuffers_textured_lit.vsh
Normal file
@@ -0,0 +1,11 @@
|
||||
#version 120
|
||||
|
||||
varying vec3 color;
|
||||
varying vec2 texcoord;
|
||||
|
||||
void main() {
|
||||
color = gl_Color.rgb;
|
||||
texcoord = gl_MultiTexCoord0.st;
|
||||
|
||||
gl_Position = ftransform();
|
||||
}
|
||||
57
samples/GraphQL/kitchen-sink.graphql
Normal file
57
samples/GraphQL/kitchen-sink.graphql
Normal file
@@ -0,0 +1,57 @@
|
||||
# Copyright (c) 2015, Facebook, Inc.
|
||||
# All rights reserved.
|
||||
#
|
||||
# This source code is licensed under the BSD-style license found in the
|
||||
# LICENSE file in the root directory of this source tree. An additional grant
|
||||
# of patent rights can be found in the PATENTS file in the same directory.
|
||||
|
||||
query queryName($foo: ComplexType, $site: Site = MOBILE) {
|
||||
whoever123is: node(id: [123, 456]) {
|
||||
id ,
|
||||
... on User @defer {
|
||||
field2 {
|
||||
id ,
|
||||
alias: field1(first:10, after:$foo,) @include(if: $foo) {
|
||||
id,
|
||||
...frag
|
||||
}
|
||||
}
|
||||
}
|
||||
... @skip(unless: $foo) {
|
||||
id
|
||||
}
|
||||
... {
|
||||
id
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
mutation likeStory {
|
||||
like(story: 123) @defer {
|
||||
story {
|
||||
id
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
subscription StoryLikeSubscription($input: StoryLikeSubscribeInput) {
|
||||
storyLikeSubscribe(input: $input) {
|
||||
story {
|
||||
likers {
|
||||
count
|
||||
}
|
||||
likeSentence {
|
||||
text
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fragment frag on Friend {
|
||||
foo(size: $size, bar: $b, obj: {key: "value"})
|
||||
}
|
||||
|
||||
{
|
||||
unnamed(truthy: true, falsey: false),
|
||||
query
|
||||
}
|
||||
50
samples/GraphQL/schema-kitchen-sink.graphql
Normal file
50
samples/GraphQL/schema-kitchen-sink.graphql
Normal file
@@ -0,0 +1,50 @@
|
||||
# Copyright (c) 2015, Facebook, Inc.
|
||||
# All rights reserved.
|
||||
#
|
||||
# This source code is licensed under the BSD-style license found in the
|
||||
# LICENSE file in the root directory of this source tree. An additional grant
|
||||
# of patent rights can be found in the PATENTS file in the same directory.
|
||||
|
||||
schema {
|
||||
query: QueryType
|
||||
mutation: MutationType
|
||||
}
|
||||
|
||||
type Foo implements Bar {
|
||||
one: Type
|
||||
two(argument: InputType!): Type
|
||||
three(argument: InputType, other: String): Int
|
||||
four(argument: String = "string"): String
|
||||
five(argument: [String] = ["string", "string"]): String
|
||||
six(argument: InputType = {key: "value"}): Type
|
||||
}
|
||||
|
||||
interface Bar {
|
||||
one: Type
|
||||
four(argument: String = "string"): String
|
||||
}
|
||||
|
||||
union Feed = Story | Article | Advert
|
||||
|
||||
scalar CustomScalar
|
||||
|
||||
enum Site {
|
||||
DESKTOP
|
||||
MOBILE
|
||||
}
|
||||
|
||||
input InputType {
|
||||
key: String!
|
||||
answer: Int = 42
|
||||
}
|
||||
|
||||
extend type Foo {
|
||||
seven(argument: [String]): Type
|
||||
}
|
||||
|
||||
directive @skip(if: Boolean!) on FIELD | FRAGMENT_SPREAD | INLINE_FRAGMENT
|
||||
|
||||
directive @include(if: Boolean!)
|
||||
on FIELD
|
||||
| FRAGMENT_SPREAD
|
||||
| INLINE_FRAGMENT
|
||||
123
samples/JSON/Git Commit.JSON-tmLanguage
Normal file
123
samples/JSON/Git Commit.JSON-tmLanguage
Normal file
@@ -0,0 +1,123 @@
|
||||
{
|
||||
"name": "Git Commit Message",
|
||||
"scopeName": "text.git-commit",
|
||||
"fileTypes": [
|
||||
"COMMIT_EDITMSG"
|
||||
],
|
||||
"patterns": [
|
||||
{
|
||||
"name": "comment.line.number-sign.git-commit-message",
|
||||
"begin": "^#",
|
||||
"beginCaptures": {
|
||||
"0": {
|
||||
"name": "punctuation.definition.comment.git-commit-message"
|
||||
}
|
||||
},
|
||||
"end": "$",
|
||||
"patterns": [
|
||||
{
|
||||
"name": "comment.line.on-branch.git-commit-message",
|
||||
"match": "(?:On branch )([^ ]+)",
|
||||
"captures": {
|
||||
"1": {
|
||||
"name": "support.function.branch.git-commit-message"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "comment.line.on-branch.git-commit-message",
|
||||
"match": "Your branch .* '([^ ']+)'",
|
||||
"captures": {
|
||||
"1": {
|
||||
"name": "support.function.branch.git-commit-message"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "comment.line.untracked.git-commit-message",
|
||||
"begin": " Untracked files:",
|
||||
"beginCaptures": {
|
||||
"0": {
|
||||
"name": "entity.definition.untracked.git-commit-message"
|
||||
}
|
||||
},
|
||||
"end": "^#$",
|
||||
"patterns": [
|
||||
{
|
||||
"name": "comment.line.untracked-file.git-commit-message",
|
||||
"match": "\t(.*)$",
|
||||
"captures": {
|
||||
"1": {
|
||||
"name": "support.function.file-status.git-commit-message"
|
||||
},
|
||||
"2": {
|
||||
"name": "constant.character.branch.git-commit-message"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "comment.line.discarded.git-commit-message",
|
||||
"begin": " Change(?:s not staged for commit|d but not updated):",
|
||||
"beginCaptures": {
|
||||
"0": {
|
||||
"name": "entity.definition.discarded.git-commit-message"
|
||||
}
|
||||
},
|
||||
"end": "^#$",
|
||||
"patterns": [
|
||||
{
|
||||
"name": "comment.line.discarded.git-commit-message",
|
||||
"match": "\t([^:]+):(.*)$",
|
||||
"captures": {
|
||||
"1": {
|
||||
"name": "support.function.file-status.git-commit-message"
|
||||
},
|
||||
"2": {
|
||||
"name": "constant.character.branch.git-commit-message"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "comment.line.selected.git-commit-message",
|
||||
"begin": " Changes to be committed:",
|
||||
"beginCaptures": {
|
||||
"0": {
|
||||
"name": "entity.definition.selected.git-commit-message"
|
||||
}
|
||||
},
|
||||
"end": "^#$",
|
||||
"patterns": [
|
||||
{
|
||||
"name": "comment.line.selected.git-commit-message",
|
||||
"match": "\t([^:]+):(.*)$",
|
||||
"captures": {
|
||||
"1": {
|
||||
"name": "support.function.file-status.git-commit-message"
|
||||
},
|
||||
"2": {
|
||||
"name": "constant.character.branch.git-commit-message"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "meta.diff.git-commit",
|
||||
"comment": "diff at the end of the commit message when using commit -v, or viewing a log. End pattern is just something to be never matched so that the meta continues untill the end of the file.",
|
||||
"begin": "diff\\ \\-\\-git",
|
||||
"end": "(?=xxxxxx)123457",
|
||||
"patterns": [
|
||||
{
|
||||
"include": "source.diff"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"uuid": "de3fb2fc-e564-4a31-9813-5ee26967c5c8"
|
||||
}
|
||||
8
samples/JSON/filenames/.arcconfig
Normal file
8
samples/JSON/filenames/.arcconfig
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"project_id": "example",
|
||||
"conduit_uri": "https://ex.am.pl/",
|
||||
"copyright_holder": "Apache Software Foundation",
|
||||
"arcanist_configuration": "ArcJIRAConfiguration",
|
||||
"phabricator.uri": "https://phabricator.example.com/",
|
||||
"load": ["libs/src"]
|
||||
}
|
||||
16
samples/JSON/filenames/mcmod.info
Normal file
16
samples/JSON/filenames/mcmod.info
Normal file
@@ -0,0 +1,16 @@
|
||||
[
|
||||
{
|
||||
"modid": "examplemod",
|
||||
"name": "Example Mod",
|
||||
"description": "Example placeholder mod.",
|
||||
"version": "${version}",
|
||||
"mcversion": "${mcversion}",
|
||||
"url": "",
|
||||
"updateUrl": "",
|
||||
"authorList": ["ExampleDude"],
|
||||
"credits": "The Forge and FML guys, for making this example",
|
||||
"logoFile": "",
|
||||
"screenshots": [],
|
||||
"dependencies": []
|
||||
}
|
||||
]
|
||||
13
samples/JavaScript/axios.es
Normal file
13
samples/JavaScript/axios.es
Normal file
@@ -0,0 +1,13 @@
|
||||
import axios from "axios";
|
||||
|
||||
export default {
|
||||
async getIndex(prefix) {
|
||||
const {data} = await axios.get((prefix || "") + "/index.json");
|
||||
return data;
|
||||
},
|
||||
|
||||
async getContent(path, prefix) {
|
||||
const {data} = await axios.get((prefix || "") + "/" + path + ".json");
|
||||
return data;
|
||||
}
|
||||
}
|
||||
35
samples/JavaScript/index.es
Normal file
35
samples/JavaScript/index.es
Normal file
@@ -0,0 +1,35 @@
|
||||
import config from "../webpack.config";
|
||||
import webpackDevMiddleware from "webpack-dev-middleware";
|
||||
import webpackHot from "webpack-hot-middleware";
|
||||
import webpack from "webpack";
|
||||
import express from "express";
|
||||
|
||||
app.use(webpackDevMiddleware(compiler, {
|
||||
noInfo: false,
|
||||
quiet: false,
|
||||
publicPath: config.output.publicPath,
|
||||
hot: true,
|
||||
historyApiFallback: true
|
||||
}));
|
||||
|
||||
app.get("/(:root).json", (req, resp) => {
|
||||
resp.send(indexer.index(req.params.root));
|
||||
});
|
||||
|
||||
export default function(){
|
||||
const server = http.createServer(app);
|
||||
|
||||
server.listen(3000);
|
||||
|
||||
const wss = new WebSocketServer({server});
|
||||
|
||||
let id = 1;
|
||||
wss.on("connection", (ws) => {
|
||||
console.log("Hello", " world");
|
||||
let wsId = id++;
|
||||
sessions[wsId] = ws;
|
||||
ws.on("close", () => {
|
||||
delete sessions[wsId]
|
||||
});
|
||||
});
|
||||
};
|
||||
11
samples/Makefile/filenames/BSDmakefile
Normal file
11
samples/Makefile/filenames/BSDmakefile
Normal file
@@ -0,0 +1,11 @@
|
||||
# pmake might add -J (private)
|
||||
FLAGS=${.MAKEFLAGS:C/\-J ([0-9]+,?)+//W}
|
||||
|
||||
all: .DEFAULT
|
||||
.DEFAULT:
|
||||
@which gmake > /dev/null 2>&1 ||\
|
||||
(echo "GMake is required for node.js to build.\
|
||||
Install and try again" && exit 1)
|
||||
@gmake ${.FLAGS} ${.TARGETS}
|
||||
|
||||
.PHONY: test
|
||||
77
samples/Makefile/filenames/Makefile.frag
Normal file
77
samples/Makefile/filenames/Makefile.frag
Normal file
@@ -0,0 +1,77 @@
|
||||
all: link-php-objects index-php-objects $(all_targets)
|
||||
@echo
|
||||
@echo "Build complete."
|
||||
@echo "Don't forget to run 'make test'."
|
||||
@echo
|
||||
|
||||
generate-php-objects:
|
||||
@echo "Generating PHP objects in $(PHP_DIR)"
|
||||
@for f in `ls $(PHP_DIR)/*.php`; do \
|
||||
objcopy --input binary --output elf64-x86-64 --binary-architecture i386 $$f $$f.o; \
|
||||
done;
|
||||
|
||||
link-php-objects: generate-php-objects
|
||||
@echo "Linking PHP objects in $(PHP_DIR)"
|
||||
@for f in `ls $(PHP_DIR)/*.php`; do \
|
||||
ar rcs $(PHP_DIR)/lib$(PHP_LIB).a $$f.o; \
|
||||
done;
|
||||
|
||||
index-php-objects: link-php-objects
|
||||
@echo "Indexing PHP objects in $(PHP_DIR)"
|
||||
@echo "#ifndef HAVE_PHP_$(PHP_LIB)_H" > $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo "#define HAVE_PHP_$(PHP_LIB)_H" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo "/* I AM GENERATED | DO NOT EDIT | I AM GENERATED */" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@for f in `ls $(PHP_DIR)/*.php`; do \
|
||||
name=`echo $$f | sed 's/[^a-z]/_/g'`; \
|
||||
echo "extern char _binary_"$$name"_start;" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
echo "static inline char* php_index_$(PHP_LIB)_"$$name"() {" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
echo " return (char*) &_binary_"$$name"_start;" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
echo "}" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
echo "extern char _binary_"$$name"_end;" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
echo "static inline char* php_index_$(PHP_LIB)_"$$name"_end() {" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
echo " return (char*) &_binary_"$$name"_end;" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
echo "}" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
echo "static inline size_t php_index_$(PHP_LIB)_"$$name"_size() {" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
echo " return (size_t) (php_index_$(PHP_LIB)_"$$name"_end() - php_index_$(PHP_LIB)_"$$name"());" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
echo "}" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
done;
|
||||
@echo "static inline php_$(PHP_LIB)_init(HashTable *index, HashTable *includes) {" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " zval val;" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " zend_hash_init(index, 8, NULL, ZVAL_PTR_DTOR, 0);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " zend_hash_init(includes, 8, NULL, NULL, 0);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@for f in `ls $(PHP_DIR)/*.php`; do \
|
||||
name=`echo $$f | sed 's/[^a-z]/_/g'`; \
|
||||
echo " ZVAL_NEW_STR(&val, zend_string_init(\
|
||||
php_index_$(PHP_LIB)_"$$name"(), \
|
||||
php_index_$(PHP_LIB)_"$$name"_size(), 0));" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
echo " zend_hash_str_add(index, \""$$f"\", sizeof(\""$$f"\")-1, &val);" >> $(PHP_DIR)/$(PHP_LIB).h; \
|
||||
done;
|
||||
@echo "}" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo "static inline void php_$(PHP_LIB)_include(HashTable *index, HashTable *includes, \
|
||||
char *path, size_t len, zval *retval) {" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " zend_string *key = zend_string_init(path, len, 0);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " zval *code = zend_hash_find(index, key);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " if (code && !zend_hash_exists(includes, key)) {" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " zend_string *prepared = zend_string_alloc(Z_STRLEN_P(code) + (sizeof(\";\")-1), 0);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " memcpy(&ZSTR_VAL(prepared)[0], \";\", sizeof(\";\")-1);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " if (Z_STRLEN_P(code) > (sizeof(\"<?php\") -1) && " >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " memcmp(Z_STRVAL_P(code), \"<?php\", sizeof(\"<?php\")-1) == SUCCESS) {" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " memcpy(&ZSTR_VAL(prepared)[1], &Z_STRVAL_P(code)[5], \
|
||||
Z_STRLEN_P(code) - (sizeof(\"<?php\") - 1));" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " ZSTR_LEN(prepared) -= (sizeof(\"<?php\") - 1);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " ZSTR_VAL(prepared)[ZSTR_LEN(prepared)] = 0;" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " } else {" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " memcpy(&ZSTR_VAL(prepared)[1], Z_STRVAL_P(code), Z_STRLEN_P(code));" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " }" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " zend_eval_stringl(ZSTR_VAL(prepared), ZSTR_LEN(prepared), retval, path);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " zend_hash_add_empty_element(includes, key);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " zend_string_release(prepared);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " }" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " zend_string_release(key);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo "}" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo "static inline void php_$(PHP_LIB)_shutdown(HashTable *index, HashTable *includes) {" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " zend_hash_destroy(index);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo " zend_hash_destroy(includes);" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo "}" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
@echo "#endif" >> $(PHP_DIR)/$(PHP_LIB).h
|
||||
9
samples/Makefile/filenames/mkfile
Normal file
9
samples/Makefile/filenames/mkfile
Normal file
@@ -0,0 +1,9 @@
|
||||
GREETINGS=hello gday bonjour hola ola kaixo tag hoi konnichiwa nihao dobredan namaste salaam
|
||||
|
||||
all:V:
|
||||
mk greet.^($GREETINGS)
|
||||
for(i in $GREETINGS)
|
||||
mk $i
|
||||
|
||||
greet.%: text-folder
|
||||
/n/$printer $stem >[2=1]
|
||||
19
samples/OpenRC runscript/acpid
Normal file
19
samples/OpenRC runscript/acpid
Normal file
@@ -0,0 +1,19 @@
|
||||
#!/sbin/openrc-run
|
||||
|
||||
description="Daemon for Advanced Configuration and Power Interface"
|
||||
|
||||
extra_started_commands="reload"
|
||||
command="/usr/sbin/acpid"
|
||||
command_args="$ACPID_ARGS"
|
||||
start_stop_daemon_args="--quiet"
|
||||
|
||||
depend() {
|
||||
need localmount
|
||||
use logger
|
||||
}
|
||||
|
||||
reload() {
|
||||
ebegin "Reloading acpid configuration"
|
||||
start-stop-daemon --exec $command --signal HUP
|
||||
eend $?
|
||||
}
|
||||
8399
samples/PAWN/fixes.inc
Normal file
8399
samples/PAWN/fixes.inc
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1,520 +0,0 @@
|
||||
//----------------------------------------------------------
|
||||
//
|
||||
// GRAND LARCENY 1.0
|
||||
// A freeroam gamemode for SA-MP 0.3
|
||||
//
|
||||
//----------------------------------------------------------
|
||||
|
||||
#include <a_samp>
|
||||
#include <core>
|
||||
#include <float>
|
||||
#include "../include/gl_common.inc"
|
||||
#include "../include/gl_spawns.inc"
|
||||
|
||||
#pragma tabsize 0
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
#define COLOR_WHITE 0xFFFFFFFF
|
||||
#define COLOR_NORMAL_PLAYER 0xFFBB7777
|
||||
|
||||
#define CITY_LOS_SANTOS 0
|
||||
#define CITY_SAN_FIERRO 1
|
||||
#define CITY_LAS_VENTURAS 2
|
||||
|
||||
new total_vehicles_from_files=0;
|
||||
|
||||
// Class selection globals
|
||||
new gPlayerCitySelection[MAX_PLAYERS];
|
||||
new gPlayerHasCitySelected[MAX_PLAYERS];
|
||||
new gPlayerLastCitySelectionTick[MAX_PLAYERS];
|
||||
|
||||
new Text:txtClassSelHelper;
|
||||
new Text:txtLosSantos;
|
||||
new Text:txtSanFierro;
|
||||
new Text:txtLasVenturas;
|
||||
|
||||
new thisanimid=0;
|
||||
new lastanimid=0;
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
main()
|
||||
{
|
||||
print("\n---------------------------------------");
|
||||
print("Running Grand Larceny - by the SA-MP team\n");
|
||||
print("---------------------------------------\n");
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
public OnPlayerConnect(playerid)
|
||||
{
|
||||
GameTextForPlayer(playerid,"~w~Grand Larceny",3000,4);
|
||||
SendClientMessage(playerid,COLOR_WHITE,"Welcome to {88AA88}G{FFFFFF}rand {88AA88}L{FFFFFF}arceny");
|
||||
|
||||
// class selection init vars
|
||||
gPlayerCitySelection[playerid] = -1;
|
||||
gPlayerHasCitySelected[playerid] = 0;
|
||||
gPlayerLastCitySelectionTick[playerid] = GetTickCount();
|
||||
|
||||
//SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
|
||||
|
||||
//Kick(playerid);
|
||||
|
||||
/*
|
||||
Removes vending machines
|
||||
RemoveBuildingForPlayer(playerid, 1302, 0.0, 0.0, 0.0, 6000.0);
|
||||
RemoveBuildingForPlayer(playerid, 1209, 0.0, 0.0, 0.0, 6000.0);
|
||||
RemoveBuildingForPlayer(playerid, 955, 0.0, 0.0, 0.0, 6000.0);
|
||||
RemoveBuildingForPlayer(playerid, 1775, 0.0, 0.0, 0.0, 6000.0);
|
||||
RemoveBuildingForPlayer(playerid, 1776, 0.0, 0.0, 0.0, 6000.0);
|
||||
*/
|
||||
|
||||
/*
|
||||
new ClientVersion[32];
|
||||
GetPlayerVersion(playerid, ClientVersion, 32);
|
||||
printf("Player %d reports client version: %s", playerid, ClientVersion);*/
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
public OnPlayerSpawn(playerid)
|
||||
{
|
||||
if(IsPlayerNPC(playerid)) return 1;
|
||||
|
||||
new randSpawn = 0;
|
||||
|
||||
SetPlayerInterior(playerid,0);
|
||||
TogglePlayerClock(playerid,0);
|
||||
ResetPlayerMoney(playerid);
|
||||
GivePlayerMoney(playerid, 30000);
|
||||
|
||||
if(CITY_LOS_SANTOS == gPlayerCitySelection[playerid]) {
|
||||
randSpawn = random(sizeof(gRandomSpawns_LosSantos));
|
||||
SetPlayerPos(playerid,
|
||||
gRandomSpawns_LosSantos[randSpawn][0],
|
||||
gRandomSpawns_LosSantos[randSpawn][1],
|
||||
gRandomSpawns_LosSantos[randSpawn][2]);
|
||||
SetPlayerFacingAngle(playerid,gRandomSpawns_LosSantos[randSpawn][3]);
|
||||
}
|
||||
else if(CITY_SAN_FIERRO == gPlayerCitySelection[playerid]) {
|
||||
randSpawn = random(sizeof(gRandomSpawns_SanFierro));
|
||||
SetPlayerPos(playerid,
|
||||
gRandomSpawns_SanFierro[randSpawn][0],
|
||||
gRandomSpawns_SanFierro[randSpawn][1],
|
||||
gRandomSpawns_SanFierro[randSpawn][2]);
|
||||
SetPlayerFacingAngle(playerid,gRandomSpawns_SanFierro[randSpawn][3]);
|
||||
}
|
||||
else if(CITY_LAS_VENTURAS == gPlayerCitySelection[playerid]) {
|
||||
randSpawn = random(sizeof(gRandomSpawns_LasVenturas));
|
||||
SetPlayerPos(playerid,
|
||||
gRandomSpawns_LasVenturas[randSpawn][0],
|
||||
gRandomSpawns_LasVenturas[randSpawn][1],
|
||||
gRandomSpawns_LasVenturas[randSpawn][2]);
|
||||
SetPlayerFacingAngle(playerid,gRandomSpawns_LasVenturas[randSpawn][3]);
|
||||
}
|
||||
|
||||
//SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
|
||||
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL_SILENCED,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_DESERT_EAGLE,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_SHOTGUN,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_SPAS12_SHOTGUN,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_MP5,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_AK47,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_M4,200);
|
||||
SetPlayerSkillLevel(playerid,WEAPONSKILL_SNIPERRIFLE,200);
|
||||
|
||||
GivePlayerWeapon(playerid,WEAPON_COLT45,100);
|
||||
//GivePlayerWeapon(playerid,WEAPON_MP5,100);
|
||||
TogglePlayerClock(playerid, 0);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
public OnPlayerDeath(playerid, killerid, reason)
|
||||
{
|
||||
new playercash;
|
||||
|
||||
// if they ever return to class selection make them city
|
||||
// select again first
|
||||
gPlayerHasCitySelected[playerid] = 0;
|
||||
|
||||
if(killerid == INVALID_PLAYER_ID) {
|
||||
ResetPlayerMoney(playerid);
|
||||
} else {
|
||||
playercash = GetPlayerMoney(playerid);
|
||||
if(playercash > 0) {
|
||||
GivePlayerMoney(killerid, playercash);
|
||||
ResetPlayerMoney(playerid);
|
||||
}
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
ClassSel_SetupCharSelection(playerid)
|
||||
{
|
||||
if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
|
||||
SetPlayerInterior(playerid,11);
|
||||
SetPlayerPos(playerid,508.7362,-87.4335,998.9609);
|
||||
SetPlayerFacingAngle(playerid,0.0);
|
||||
SetPlayerCameraPos(playerid,508.7362,-83.4335,998.9609);
|
||||
SetPlayerCameraLookAt(playerid,508.7362,-87.4335,998.9609);
|
||||
}
|
||||
else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
|
||||
SetPlayerInterior(playerid,3);
|
||||
SetPlayerPos(playerid,-2673.8381,1399.7424,918.3516);
|
||||
SetPlayerFacingAngle(playerid,181.0);
|
||||
SetPlayerCameraPos(playerid,-2673.2776,1394.3859,918.3516);
|
||||
SetPlayerCameraLookAt(playerid,-2673.8381,1399.7424,918.3516);
|
||||
}
|
||||
else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
|
||||
SetPlayerInterior(playerid,3);
|
||||
SetPlayerPos(playerid,349.0453,193.2271,1014.1797);
|
||||
SetPlayerFacingAngle(playerid,286.25);
|
||||
SetPlayerCameraPos(playerid,352.9164,194.5702,1014.1875);
|
||||
SetPlayerCameraLookAt(playerid,349.0453,193.2271,1014.1797);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
// Used to init textdraws of city names
|
||||
|
||||
ClassSel_InitCityNameText(Text:txtInit)
|
||||
{
|
||||
TextDrawUseBox(txtInit, 0);
|
||||
TextDrawLetterSize(txtInit,1.25,3.0);
|
||||
TextDrawFont(txtInit, 0);
|
||||
TextDrawSetShadow(txtInit,0);
|
||||
TextDrawSetOutline(txtInit,1);
|
||||
TextDrawColor(txtInit,0xEEEEEEFF);
|
||||
TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
ClassSel_InitTextDraws()
|
||||
{
|
||||
// Init our observer helper text display
|
||||
txtLosSantos = TextDrawCreate(10.0, 380.0, "Los Santos");
|
||||
ClassSel_InitCityNameText(txtLosSantos);
|
||||
txtSanFierro = TextDrawCreate(10.0, 380.0, "San Fierro");
|
||||
ClassSel_InitCityNameText(txtSanFierro);
|
||||
txtLasVenturas = TextDrawCreate(10.0, 380.0, "Las Venturas");
|
||||
ClassSel_InitCityNameText(txtLasVenturas);
|
||||
|
||||
// Init our observer helper text display
|
||||
txtClassSelHelper = TextDrawCreate(10.0, 415.0,
|
||||
" Press ~b~~k~~GO_LEFT~ ~w~or ~b~~k~~GO_RIGHT~ ~w~to switch cities.~n~ Press ~r~~k~~PED_FIREWEAPON~ ~w~to select.");
|
||||
TextDrawUseBox(txtClassSelHelper, 1);
|
||||
TextDrawBoxColor(txtClassSelHelper,0x222222BB);
|
||||
TextDrawLetterSize(txtClassSelHelper,0.3,1.0);
|
||||
TextDrawTextSize(txtClassSelHelper,400.0,40.0);
|
||||
TextDrawFont(txtClassSelHelper, 2);
|
||||
TextDrawSetShadow(txtClassSelHelper,0);
|
||||
TextDrawSetOutline(txtClassSelHelper,1);
|
||||
TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
|
||||
TextDrawColor(txtClassSelHelper,0xFFFFFFFF);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
ClassSel_SetupSelectedCity(playerid)
|
||||
{
|
||||
if(gPlayerCitySelection[playerid] == -1) {
|
||||
gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
|
||||
}
|
||||
|
||||
if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
|
||||
SetPlayerInterior(playerid,0);
|
||||
SetPlayerCameraPos(playerid,1630.6136,-2286.0298,110.0);
|
||||
SetPlayerCameraLookAt(playerid,1887.6034,-1682.1442,47.6167);
|
||||
|
||||
TextDrawShowForPlayer(playerid,txtLosSantos);
|
||||
TextDrawHideForPlayer(playerid,txtSanFierro);
|
||||
TextDrawHideForPlayer(playerid,txtLasVenturas);
|
||||
}
|
||||
else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
|
||||
SetPlayerInterior(playerid,0);
|
||||
SetPlayerCameraPos(playerid,-1300.8754,68.0546,129.4823);
|
||||
SetPlayerCameraLookAt(playerid,-1817.9412,769.3878,132.6589);
|
||||
|
||||
TextDrawHideForPlayer(playerid,txtLosSantos);
|
||||
TextDrawShowForPlayer(playerid,txtSanFierro);
|
||||
TextDrawHideForPlayer(playerid,txtLasVenturas);
|
||||
}
|
||||
else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
|
||||
SetPlayerInterior(playerid,0);
|
||||
SetPlayerCameraPos(playerid,1310.6155,1675.9182,110.7390);
|
||||
SetPlayerCameraLookAt(playerid,2285.2944,1919.3756,68.2275);
|
||||
|
||||
TextDrawHideForPlayer(playerid,txtLosSantos);
|
||||
TextDrawHideForPlayer(playerid,txtSanFierro);
|
||||
TextDrawShowForPlayer(playerid,txtLasVenturas);
|
||||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
ClassSel_SwitchToNextCity(playerid)
|
||||
{
|
||||
gPlayerCitySelection[playerid]++;
|
||||
if(gPlayerCitySelection[playerid] > CITY_LAS_VENTURAS) {
|
||||
gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
|
||||
}
|
||||
PlayerPlaySound(playerid,1052,0.0,0.0,0.0);
|
||||
gPlayerLastCitySelectionTick[playerid] = GetTickCount();
|
||||
ClassSel_SetupSelectedCity(playerid);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
ClassSel_SwitchToPreviousCity(playerid)
|
||||
{
|
||||
gPlayerCitySelection[playerid]--;
|
||||
if(gPlayerCitySelection[playerid] < CITY_LOS_SANTOS) {
|
||||
gPlayerCitySelection[playerid] = CITY_LAS_VENTURAS;
|
||||
}
|
||||
PlayerPlaySound(playerid,1053,0.0,0.0,0.0);
|
||||
gPlayerLastCitySelectionTick[playerid] = GetTickCount();
|
||||
ClassSel_SetupSelectedCity(playerid);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
ClassSel_HandleCitySelection(playerid)
|
||||
{
|
||||
new Keys,ud,lr;
|
||||
GetPlayerKeys(playerid,Keys,ud,lr);
|
||||
|
||||
if(gPlayerCitySelection[playerid] == -1) {
|
||||
ClassSel_SwitchToNextCity(playerid);
|
||||
return;
|
||||
}
|
||||
|
||||
// only allow new selection every ~500 ms
|
||||
if( (GetTickCount() - gPlayerLastCitySelectionTick[playerid]) < 500 ) return;
|
||||
|
||||
if(Keys & KEY_FIRE) {
|
||||
gPlayerHasCitySelected[playerid] = 1;
|
||||
TextDrawHideForPlayer(playerid,txtClassSelHelper);
|
||||
TextDrawHideForPlayer(playerid,txtLosSantos);
|
||||
TextDrawHideForPlayer(playerid,txtSanFierro);
|
||||
TextDrawHideForPlayer(playerid,txtLasVenturas);
|
||||
TogglePlayerSpectating(playerid,0);
|
||||
return;
|
||||
}
|
||||
|
||||
if(lr > 0) {
|
||||
ClassSel_SwitchToNextCity(playerid);
|
||||
}
|
||||
else if(lr < 0) {
|
||||
ClassSel_SwitchToPreviousCity(playerid);
|
||||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
public OnPlayerRequestClass(playerid, classid)
|
||||
{
|
||||
if(IsPlayerNPC(playerid)) return 1;
|
||||
|
||||
if(gPlayerHasCitySelected[playerid]) {
|
||||
ClassSel_SetupCharSelection(playerid);
|
||||
return 1;
|
||||
} else {
|
||||
if(GetPlayerState(playerid) != PLAYER_STATE_SPECTATING) {
|
||||
TogglePlayerSpectating(playerid,1);
|
||||
TextDrawShowForPlayer(playerid, txtClassSelHelper);
|
||||
gPlayerCitySelection[playerid] = -1;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
public OnGameModeInit()
|
||||
{
|
||||
SetGameModeText("Grand Larceny");
|
||||
ShowPlayerMarkers(PLAYER_MARKERS_MODE_GLOBAL);
|
||||
ShowNameTags(1);
|
||||
SetNameTagDrawDistance(40.0);
|
||||
EnableStuntBonusForAll(0);
|
||||
DisableInteriorEnterExits();
|
||||
SetWeather(2);
|
||||
SetWorldTime(11);
|
||||
|
||||
//UsePlayerPedAnims();
|
||||
//ManualVehicleEngineAndLights();
|
||||
//LimitGlobalChatRadius(300.0);
|
||||
|
||||
ClassSel_InitTextDraws();
|
||||
|
||||
// Player Class
|
||||
AddPlayerClass(281,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(282,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(283,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(284,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(285,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(286,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(287,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(288,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(265,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(266,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(267,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(268,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(269,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(270,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(1,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(2,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(3,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(4,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(5,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(6,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(8,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(42,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(65,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
//AddPlayerClass(74,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(86,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(119,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(149,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(208,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(273,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
|
||||
AddPlayerClass(47,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(48,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(49,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(50,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(51,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(52,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(53,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(54,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(55,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(56,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(57,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(58,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(68,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(69,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(70,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(71,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(72,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(73,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(75,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(76,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(78,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(79,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(80,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(81,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(82,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(83,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(84,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(85,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(87,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(88,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(89,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(91,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(92,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(93,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(95,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(96,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(97,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(98,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
AddPlayerClass(99,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
|
||||
|
||||
// SPECIAL
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/trains.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/pilots.txt");
|
||||
|
||||
// LAS VENTURAS
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_law.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_airport.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_gen.txt");
|
||||
|
||||
// SAN FIERRO
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_law.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_airport.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_gen.txt");
|
||||
|
||||
// LOS SANTOS
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_law.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_airport.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_inner.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_outer.txt");
|
||||
|
||||
// OTHER AREAS
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/whetstone.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/bone.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/flint.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/tierra.txt");
|
||||
total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/red_county.txt");
|
||||
|
||||
printf("Total vehicles from files: %d",total_vehicles_from_files);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
|
||||
public OnPlayerUpdate(playerid)
|
||||
{
|
||||
if(!IsPlayerConnected(playerid)) return 0;
|
||||
if(IsPlayerNPC(playerid)) return 1;
|
||||
|
||||
// changing cities by inputs
|
||||
if( !gPlayerHasCitySelected[playerid] &&
|
||||
GetPlayerState(playerid) == PLAYER_STATE_SPECTATING ) {
|
||||
ClassSel_HandleCitySelection(playerid);
|
||||
return 1;
|
||||
}
|
||||
|
||||
// No weapons in interiors
|
||||
if(GetPlayerInterior(playerid) != 0 && GetPlayerWeapon(playerid) != 0) {
|
||||
SetPlayerArmedWeapon(playerid,0); // fists
|
||||
return 0; // no syncing until they change their weapon
|
||||
}
|
||||
|
||||
// Don't allow minigun
|
||||
if(GetPlayerWeapon(playerid) == WEAPON_MINIGUN) {
|
||||
Kick(playerid);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* No jetpacks allowed
|
||||
if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK) {
|
||||
Kick(playerid);
|
||||
return 0;
|
||||
}*/
|
||||
|
||||
/* For testing animations
|
||||
new msg[128+1];
|
||||
new animlib[32+1];
|
||||
new animname[32+1];
|
||||
|
||||
thisanimid = GetPlayerAnimationIndex(playerid);
|
||||
if(lastanimid != thisanimid)
|
||||
{
|
||||
GetAnimationName(thisanimid,animlib,32,animname,32);
|
||||
format(msg, 128, "anim(%d,%d): %s %s", lastanimid, thisanimid, animlib, animname);
|
||||
lastanimid = thisanimid;
|
||||
SendClientMessage(playerid, 0xFFFFFFFF, msg);
|
||||
}*/
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------
|
||||
36
samples/PAWN/timertest.pwn
Normal file
36
samples/PAWN/timertest.pwn
Normal file
@@ -0,0 +1,36 @@
|
||||
#include <a_samp>
|
||||
|
||||
forward OneSecTimer();
|
||||
|
||||
new lasttick = 0;
|
||||
|
||||
main()
|
||||
{
|
||||
print("\n----------------------------------");
|
||||
print(" This is a blank GameModeScript");
|
||||
print("----------------------------------\n");
|
||||
}
|
||||
|
||||
public OnGameModeInit()
|
||||
{
|
||||
// Set timer of 1 second.
|
||||
SetTimer("OneSecTimer", 1000, 1);
|
||||
print("GameModeInit()");
|
||||
SetGameModeText("Timer Test");
|
||||
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
|
||||
return 1;
|
||||
}
|
||||
|
||||
public OneSecTimer() {
|
||||
|
||||
if(lasttick == 0) {
|
||||
lasttick = GetTickCount();
|
||||
return;
|
||||
}
|
||||
new sText[256];
|
||||
format(sText,sizeof(sText),"GetTickCountOffset = %d",GetTickCount() - lasttick);
|
||||
print(sText);
|
||||
SendClientMessageToAll(0xFF0000, sText);
|
||||
lasttick = GetTickCount();
|
||||
}
|
||||
|
||||
161
samples/Shell/filenames/gradlew
vendored
Normal file
161
samples/Shell/filenames/gradlew
vendored
Normal file
@@ -0,0 +1,161 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
##############################################################################
|
||||
##
|
||||
## Gradle start up script for UN*X
|
||||
##
|
||||
##############################################################################
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS=""
|
||||
|
||||
APP_NAME="Gradle"
|
||||
APP_BASE_NAME=`basename "$0"`
|
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||
MAX_FD="maximum"
|
||||
|
||||
warn ( ) {
|
||||
echo "$*"
|
||||
}
|
||||
|
||||
die ( ) {
|
||||
echo
|
||||
echo "$*"
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
|
||||
# OS specific support (must be 'true' or 'false').
|
||||
cygwin=false
|
||||
msys=false
|
||||
darwin=false
|
||||
case "`uname`" in
|
||||
CYGWIN* )
|
||||
cygwin=true
|
||||
;;
|
||||
Darwin* )
|
||||
darwin=true
|
||||
;;
|
||||
MINGW* )
|
||||
msys=true
|
||||
;;
|
||||
esac
|
||||
|
||||
# Attempt to set APP_HOME
|
||||
# Resolve links: $0 may be a link
|
||||
PRG="$0"
|
||||
# Need this for relative symlinks.
|
||||
while [ -h "$PRG" ] ; do
|
||||
ls=`ls -ld "$PRG"`
|
||||
link=`expr "$ls" : '.*-> \(.*\)$'`
|
||||
if expr "$link" : '/.*' > /dev/null; then
|
||||
PRG="$link"
|
||||
else
|
||||
PRG=`dirname "$PRG"`"/$link"
|
||||
fi
|
||||
done
|
||||
SAVED="`pwd`"
|
||||
cd "`dirname \"$PRG\"`/" >/dev/null
|
||||
APP_HOME="`pwd -P`"
|
||||
cd "$SAVED" >/dev/null
|
||||
|
||||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
||||
|
||||
# Determine the Java command to use to start the JVM.
|
||||
if [ -n "$JAVA_HOME" ] ; then
|
||||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
||||
# IBM's JDK on AIX uses strange locations for the executables
|
||||
JAVACMD="$JAVA_HOME/jre/sh/java"
|
||||
else
|
||||
JAVACMD="$JAVA_HOME/bin/java"
|
||||
fi
|
||||
if [ ! -x "$JAVACMD" ] ; then
|
||||
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
else
|
||||
JAVACMD="java"
|
||||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
|
||||
# Increase the maximum file descriptors if we can.
|
||||
if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
|
||||
MAX_FD_LIMIT=`ulimit -H -n`
|
||||
if [ $? -eq 0 ] ; then
|
||||
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
|
||||
MAX_FD="$MAX_FD_LIMIT"
|
||||
fi
|
||||
ulimit -n $MAX_FD
|
||||
if [ $? -ne 0 ] ; then
|
||||
warn "Could not set maximum file descriptor limit: $MAX_FD"
|
||||
fi
|
||||
else
|
||||
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
|
||||
fi
|
||||
fi
|
||||
|
||||
# For Darwin, add options to specify how the application appears in the dock
|
||||
if $darwin; then
|
||||
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
|
||||
fi
|
||||
|
||||
# For Cygwin, switch paths to Windows format before running java
|
||||
if $cygwin ; then
|
||||
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
|
||||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
|
||||
JAVACMD=`cygpath --unix "$JAVACMD"`
|
||||
|
||||
# We build the pattern for arguments to be converted via cygpath
|
||||
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
|
||||
SEP=""
|
||||
for dir in $ROOTDIRSRAW ; do
|
||||
ROOTDIRS="$ROOTDIRS$SEP$dir"
|
||||
SEP="|"
|
||||
done
|
||||
OURCYGPATTERN="(^($ROOTDIRS))"
|
||||
# Add a user-defined pattern to the cygpath arguments
|
||||
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
|
||||
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
|
||||
fi
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
i=0
|
||||
for arg in "$@" ; do
|
||||
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
|
||||
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
|
||||
|
||||
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
|
||||
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
|
||||
else
|
||||
eval `echo args$i`="\"$arg\""
|
||||
fi
|
||||
i=$((i+1))
|
||||
done
|
||||
case $i in
|
||||
(0) set -- ;;
|
||||
(1) set -- "$args0" ;;
|
||||
(2) set -- "$args0" "$args1" ;;
|
||||
(3) set -- "$args0" "$args1" "$args2" ;;
|
||||
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
|
||||
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
|
||||
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
|
||||
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
|
||||
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
|
||||
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
|
||||
function splitJvmOpts() {
|
||||
JVM_OPTS=("$@")
|
||||
}
|
||||
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
|
||||
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
|
||||
|
||||
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
|
||||
|
||||
26
samples/TLA/AsyncInterface.tla
Normal file
26
samples/TLA/AsyncInterface.tla
Normal file
@@ -0,0 +1,26 @@
|
||||
--------------------------- MODULE AsyncInterface ---------------------------
|
||||
EXTENDS Naturals
|
||||
|
||||
CONSTANT Data
|
||||
VARIABLE chan
|
||||
|
||||
Values == <<"foo", "bar", "baz">>
|
||||
|
||||
TypeInvariant == chan \in [val: Data, rdy: {0,1}, ack: {0,1}]
|
||||
|
||||
Init == /\ TypeInvariant
|
||||
/\ chan.ack = chan.rdy
|
||||
|
||||
Send(d) == /\ chan.rdy = chan.ack
|
||||
/\ chan' = [chan EXCEPT !.val = d, !.rdy = 1 - @]
|
||||
|
||||
Rcv == /\ chan.rdy # chan.ack
|
||||
/\ chan' = [chan EXCEPT !.ack = 1 - @]
|
||||
|
||||
Next == (\E d \in Data : Send(d)) \/ Rcv
|
||||
|
||||
Spec == Init /\ [][Next]_chan
|
||||
|
||||
THEOREM Spec => []TypeInvariant
|
||||
|
||||
=============================================================================
|
||||
47
samples/TLA/fifo.tla
Normal file
47
samples/TLA/fifo.tla
Normal file
@@ -0,0 +1,47 @@
|
||||
-------------------------------- MODULE fifo --------------------------------
|
||||
EXTENDS Naturals, Sequences
|
||||
CONSTANT Message
|
||||
VARIABLES in, out, q
|
||||
|
||||
InChan == INSTANCE AsyncInterface WITH Data <- Message, chan <- in
|
||||
OutChan == INSTANCE AsyncInterface WITH Data <- Message, chan <- out
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
Init == /\ InChan!Init
|
||||
/\ OutChan!Init
|
||||
/\ q = <<>>
|
||||
|
||||
TypeInvariant == /\ InChan!TypeInvariant
|
||||
/\ OutChan!TypeInvariant
|
||||
/\ q \in Seq(Message)
|
||||
/\ Len(q) <= 10
|
||||
|
||||
SSend(msg) == /\ InChan!Send(msg) \* Send msg on channel in
|
||||
/\ UNCHANGED <<out, q>>
|
||||
|
||||
BufRcv == /\ InChan!Rcv
|
||||
/\ Len(q) < 10
|
||||
/\ q' = Append(q, in.val)
|
||||
/\ UNCHANGED out
|
||||
|
||||
BufSend == /\ q # <<>>
|
||||
/\ OutChan!Send(Head(q))
|
||||
/\ q' = Tail(q)
|
||||
/\ UNCHANGED in
|
||||
|
||||
RRcv == /\ OutChan!Rcv
|
||||
/\ UNCHANGED <<in, q>>
|
||||
|
||||
Next == \/ \E msg \in Message : SSend(msg)
|
||||
\/ BufRcv
|
||||
\/ BufSend
|
||||
\/ RRcv
|
||||
|
||||
Spec == Init /\ [][Next]_<<in, out, q>>
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
|
||||
THEOREM Spec => []TypeInvariant
|
||||
|
||||
=============================================================================
|
||||
9
samples/TeX/beispiel.toc
Normal file
9
samples/TeX/beispiel.toc
Normal file
@@ -0,0 +1,9 @@
|
||||
\beamer@endinputifotherversion {3.07pt}
|
||||
\select@language {german}
|
||||
\beamer@sectionintoc {1}{Geschichte}{3}{0}{1}
|
||||
\beamer@sectionintoc {2}{Merkmale}{4}{0}{2}
|
||||
\beamer@sectionintoc {3}{Kritikpunkte}{5}{0}{3}
|
||||
\beamer@sectionintoc {4}{Perl-Kultur und Spa{\ss}}{6}{0}{4}
|
||||
\beamer@sectionintoc {5}{Siehe auch}{7}{0}{5}
|
||||
\beamer@sectionintoc {6}{Einzelnachweise}{8}{0}{6}
|
||||
\beamer@sectionintoc {7}{Bedingte Ausf\"{u}hrung}{12}{0}{7}
|
||||
19
samples/TeX/perl.toc
Normal file
19
samples/TeX/perl.toc
Normal file
@@ -0,0 +1,19 @@
|
||||
\contentsline {section}{\numberline {1}History}{3}
|
||||
\contentsline {subsection}{\numberline {1.1}Early versions}{3}
|
||||
\contentsline {subsection}{\numberline {1.2}Early Perl 5}{3}
|
||||
\contentsline {subsection}{\numberline {1.3}2000-present}{3}
|
||||
\contentsline {subsection}{\numberline {1.4}Name}{3}
|
||||
\contentsline {subsection}{\numberline {1.5}Camel symbol}{3}
|
||||
\contentsline {subsection}{\numberline {1.6}Onion symbol}{3}
|
||||
\contentsline {section}{\numberline {2}Overview}{3}
|
||||
\contentsline {subsection}{\numberline {2.1}Features}{3}
|
||||
\contentsline {subsection}{\numberline {2.2}Design}{3}
|
||||
\contentsline {subsection}{\numberline {2.3}Applications}{3}
|
||||
\contentsline {subsection}{\numberline {2.4}Implementation}{3}
|
||||
\contentsline {section}{\numberline {3}Database interfaces}{3}
|
||||
\contentsline {section}{\numberline {4}Distribution}{4}
|
||||
\contentsline {subsection}{\numberline {4.1}Availability}{4}
|
||||
\contentsline {subsubsection}{\numberline {4.3.1}Windows}{5}
|
||||
\contentsline {subsubsection}{\numberline {4.3.2}Mac OS X}{6}
|
||||
\contentsline {subsubsection}{\numberline {4.3.3}OpenBSD}{6}
|
||||
\contentsline {subsubsection}{\numberline {4.3.4}FreeBSD}{6}
|
||||
114
samples/Terra/arith.t
Normal file
114
samples/Terra/arith.t
Normal file
@@ -0,0 +1,114 @@
|
||||
--[[
|
||||
|
||||
-
|
||||
+
|
||||
|
||||
*
|
||||
/
|
||||
%
|
||||
|
||||
^
|
||||
and
|
||||
or
|
||||
~= == < > >= <=
|
||||
<< >>
|
||||
|
||||
]]
|
||||
|
||||
|
||||
|
||||
|
||||
terra test0()
|
||||
var a = 1 + 3
|
||||
var b = 1LL + 2LL
|
||||
var c = 1ULL + 2ULL
|
||||
var d = 1.f + 2.f
|
||||
var e = 1.0 + 2.0
|
||||
return a + b + c + d + e
|
||||
end
|
||||
terra test1()
|
||||
var a = 1 - 3
|
||||
var b = 1LL - 2LL
|
||||
var c = 1ULL - 2ULL
|
||||
var d = 1.f - 2.f
|
||||
var e = 1.0 - 2.0
|
||||
return a - b - c - d - e
|
||||
end
|
||||
terra test2()
|
||||
var a = 2 * 3
|
||||
var b = 3LL * 2LL
|
||||
var c = 3ULL * 2ULL
|
||||
var d = 1.f * 2.f
|
||||
var e = 3.0 * 2.0
|
||||
return a * b * c * d * e
|
||||
end
|
||||
|
||||
terra test3()
|
||||
var a = 2 / 3 + 1
|
||||
var b = 3LL / 2LL + 1
|
||||
var c = 3ULL / 2ULL
|
||||
var d = 1.f / 2.f
|
||||
var e = 3.0 / 2.0
|
||||
return a * b * c * d * e
|
||||
end
|
||||
|
||||
terra test4()
|
||||
var a = 2 % 3
|
||||
var b = 3LL % 4LL
|
||||
var c = 3ULL % 2ULL
|
||||
var d = 1.f % 2.f
|
||||
var e = 3.75 % 2.0
|
||||
return (a == 2) and (b == 3LL) and (d == 1.f) and (e == 1.75)
|
||||
end
|
||||
|
||||
terra test5()
|
||||
var a = 2 ^ 3
|
||||
var b = 3LL ^ 4LL
|
||||
var c = 3ULL ^ 2ULL
|
||||
return (a == 1) and (b == 7LL) and (c == 1ULL)
|
||||
end
|
||||
|
||||
terra test6()
|
||||
var a = 2 and 3
|
||||
var b = 3LL and 4LL
|
||||
var c = 3ULL and 2ULL
|
||||
return (a == 2) and (b == 0LL) and (c == 2ULL)
|
||||
end
|
||||
|
||||
terra test7()
|
||||
var a = 2 or 3
|
||||
var b = 3LL or 4LL
|
||||
var c = 3ULL or 2ULL
|
||||
return (a == 3) and (b == 7LL) and (c == 3ULL)
|
||||
end
|
||||
|
||||
|
||||
terra test8()
|
||||
var a0,a1 = 2 ~= 3, 2 == 3
|
||||
var b0,b1 = 2 < 3, 2 >= 3
|
||||
var c0,c1 = 2 > 3, 2 <= 3
|
||||
|
||||
return a0 and not a1 and b0 and not b1 and not c0 and c1
|
||||
end
|
||||
|
||||
terra test9()
|
||||
var a0, a1 = 8 >> 1, 8 << 1
|
||||
var b0, b1 = -8 >> 1, -8 << 1
|
||||
return a0 == 4 and a1 == 16 and b0 == -4 and b1 == -16
|
||||
end
|
||||
|
||||
|
||||
local test = require("test")
|
||||
|
||||
test.eq(test0(),16)
|
||||
test.eq(test1(),2)
|
||||
test.eq(test2(),2592)
|
||||
test.eq(test3(),1.5)
|
||||
|
||||
test.eq(test4(),true)
|
||||
|
||||
test.eq(test5(),true)
|
||||
test.eq(test6(),true)
|
||||
test.eq(test7(),true)
|
||||
test.eq(test8(),true)
|
||||
test.eq(test9(),true)
|
||||
75
samples/Terra/arrayt.t
Normal file
75
samples/Terra/arrayt.t
Normal file
@@ -0,0 +1,75 @@
|
||||
C = terralib.includecstring [[
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
]]
|
||||
local arraytypes = {}
|
||||
function Array(T)
|
||||
local struct ArrayImpl {
|
||||
data : &T;
|
||||
N : int;
|
||||
}
|
||||
function ArrayImpl.metamethods.__typename(self)
|
||||
return "Array("..tostring(T)..")"
|
||||
end
|
||||
arraytypes[ArrayImpl] = true
|
||||
terra ArrayImpl:init(N : int)
|
||||
self.data = [&T](C.malloc(N*sizeof(T)))
|
||||
self.N = N
|
||||
end
|
||||
terra ArrayImpl:free()
|
||||
C.free(self.data)
|
||||
end
|
||||
ArrayImpl.metamethods.__apply = macro(function(self,idx)
|
||||
return `self.data[idx]
|
||||
end)
|
||||
ArrayImpl.metamethods.__methodmissing = macro(function(methodname,selfexp,...)
|
||||
local args = terralib.newlist {...}
|
||||
local i = symbol(int)
|
||||
local promotedargs = args:map(function(a)
|
||||
if arraytypes[a:gettype()] then
|
||||
return `a(i)
|
||||
else
|
||||
return a
|
||||
end
|
||||
end)
|
||||
return quote
|
||||
var self = selfexp
|
||||
var r : ArrayImpl
|
||||
r:init(self.N)
|
||||
for [i] = 0,r.N do
|
||||
r.data[i] = self.data[i]:[methodname](promotedargs)
|
||||
end
|
||||
in
|
||||
r
|
||||
end
|
||||
end)
|
||||
return ArrayImpl
|
||||
end
|
||||
|
||||
struct Complex {
|
||||
real : float;
|
||||
imag : float;
|
||||
}
|
||||
|
||||
terra Complex:add(c : Complex)
|
||||
return Complex { self.real + c.real, self.imag + c.imag }
|
||||
end
|
||||
|
||||
ComplexArray = Array(Complex)
|
||||
N = 10
|
||||
terra testit()
|
||||
var ca : ComplexArray
|
||||
ca:init(N)
|
||||
for i = 0,N do
|
||||
ca(i) = Complex { i, i + 1 }
|
||||
end
|
||||
var ra = ca:add(ca)
|
||||
return ra
|
||||
end
|
||||
local r = testit()
|
||||
assert(r.N == N)
|
||||
for i = 0,N-1 do
|
||||
assert(r.data[i].real == 2*i)
|
||||
assert(r.data[i].imag == 2*(i+1))
|
||||
end
|
||||
assert(tostring(Array(int)) == "Array(int32)")
|
||||
150
samples/Terra/benchmark_nbody.t
Normal file
150
samples/Terra/benchmark_nbody.t
Normal file
@@ -0,0 +1,150 @@
|
||||
local C = terralib.includecstring[[
|
||||
|
||||
#include <math.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
]]
|
||||
|
||||
pi = 3.141592653589793
|
||||
solar_mass = (4 * pi * pi)
|
||||
days_per_year = 365.24
|
||||
|
||||
struct planet {
|
||||
x : double;
|
||||
y : double;
|
||||
z : double;
|
||||
vx : double;
|
||||
vy : double;
|
||||
vz : double;
|
||||
mass : double;
|
||||
}
|
||||
|
||||
terra advance(nbodies : int, bodies : &planet, dt : double)
|
||||
|
||||
for i = 0, nbodies do
|
||||
var b = &bodies[i]
|
||||
for j = i + 1, nbodies do
|
||||
var b2 = &bodies[j]
|
||||
|
||||
var dx = b.x - b2.x;
|
||||
var dy = b.y - b2.y;
|
||||
var dz = b.z - b2.z;
|
||||
var distance = C.sqrt(dx * dx + dy * dy + dz * dz);
|
||||
var mag = dt / (distance * distance * distance);
|
||||
--C.printf("%f %f %f %f %f\n",dx,dy,dz,distance,mag);
|
||||
b.vx = b.vx - dx * b2.mass * mag;
|
||||
b.vy = b.vy - dy * b2.mass * mag;
|
||||
b.vz = b.vz - dz * b2.mass * mag;
|
||||
b2.vx = b2.vx + dx * b.mass * mag;
|
||||
b2.vy = b2.vy + dy * b.mass * mag;
|
||||
b2.vz = b2.vz + dz * b.mass * mag;
|
||||
--C.printf("%f %f %f %f %f %f\n",b.vx,b.vy,b.vz,b2.vx,b2.vy,b2.vz)
|
||||
end
|
||||
end
|
||||
for i = 0,nbodies do
|
||||
var b = &bodies[i]
|
||||
b.x = b.x + dt * b.vx;
|
||||
b.y = b.y + dt * b.vy;
|
||||
b.z = b.z + dt * b.vz;
|
||||
end
|
||||
end
|
||||
|
||||
terra energy(nbodies : int, bodies : &planet)
|
||||
var e = 0.0
|
||||
for i = 0, nbodies do
|
||||
var b = &bodies[i]
|
||||
e = e + 0.5 * b.mass * (b.vx * b.vx + b.vy * b.vy + b.vz * b.vz);
|
||||
for j = i + 1, nbodies do
|
||||
var b2 = &bodies[j]
|
||||
var dx = b.x - b2.x
|
||||
var dy = b.y - b2.y
|
||||
var dz = b.z - b2.z
|
||||
var distance = C.sqrt(dx * dx + dy * dy + dz * dz)
|
||||
e = e - (b.mass * b2.mass) / distance
|
||||
end
|
||||
end
|
||||
return e
|
||||
end
|
||||
|
||||
terra offset_momentum(nbodies : int, bodies : &planet)
|
||||
var px,py,pz = 0.0,0.0,0.0
|
||||
|
||||
for i = 0,nbodies do
|
||||
px = px + bodies[i].vx * bodies[i].mass
|
||||
py = py + bodies[i].vy * bodies[i].mass
|
||||
pz = pz + bodies[i].vz * bodies[i].mass
|
||||
end
|
||||
bodies[0].vx = - px / solar_mass
|
||||
bodies[0].vy = - py / solar_mass
|
||||
bodies[0].vz = - pz / solar_mass
|
||||
end
|
||||
|
||||
NBODIES = 5
|
||||
|
||||
terra main(argc : int, argv : &&int8)
|
||||
var bodies = array(
|
||||
planet { -- sun */
|
||||
0, 0, 0, 0, 0, 0, solar_mass
|
||||
},
|
||||
planet { -- jupiter */
|
||||
4.84143144246472090e+00,
|
||||
-1.16032004402742839e+00,
|
||||
-1.03622044471123109e-01,
|
||||
1.66007664274403694e-03 * days_per_year,
|
||||
7.69901118419740425e-03 * days_per_year,
|
||||
-6.90460016972063023e-05 * days_per_year,
|
||||
9.54791938424326609e-04 * solar_mass
|
||||
},
|
||||
planet { -- saturn */
|
||||
8.34336671824457987e+00,
|
||||
4.12479856412430479e+00,
|
||||
-4.03523417114321381e-01,
|
||||
-2.76742510726862411e-03 * days_per_year,
|
||||
4.99852801234917238e-03 * days_per_year,
|
||||
2.30417297573763929e-05 * days_per_year,
|
||||
2.85885980666130812e-04 * solar_mass
|
||||
},
|
||||
planet { -- uranus */
|
||||
1.28943695621391310e+01,
|
||||
-1.51111514016986312e+01,
|
||||
-2.23307578892655734e-01,
|
||||
2.96460137564761618e-03 * days_per_year,
|
||||
2.37847173959480950e-03 * days_per_year,
|
||||
-2.96589568540237556e-05 * days_per_year,
|
||||
4.36624404335156298e-05 * solar_mass
|
||||
},
|
||||
planet { -- neptune */
|
||||
1.53796971148509165e+01,
|
||||
-2.59193146099879641e+01,
|
||||
1.79258772950371181e-01,
|
||||
2.68067772490389322e-03 * days_per_year,
|
||||
1.62824170038242295e-03 * days_per_year,
|
||||
-9.51592254519715870e-05 * days_per_year,
|
||||
5.15138902046611451e-05 * solar_mass
|
||||
}
|
||||
)
|
||||
var n = C.atoi(argv[1])
|
||||
offset_momentum(NBODIES, bodies)
|
||||
C.printf ("%.9f\n", energy(NBODIES, bodies))
|
||||
for i = 0,n do
|
||||
advance(NBODIES, bodies, 0.01)
|
||||
end
|
||||
C.printf ("%.9f\n", energy(NBODIES, bodies));
|
||||
return 0
|
||||
end
|
||||
|
||||
terra run()
|
||||
main(2,array("what","1000000"))
|
||||
end
|
||||
|
||||
--run:compile()
|
||||
|
||||
|
||||
--local test = require("test")
|
||||
|
||||
--print(test.time(run))
|
||||
|
||||
terralib.saveobj("benchmark_nbody",{ main = main } )
|
||||
energy:disas()
|
||||
energy:printpretty()
|
||||
6
samples/World of Warcraft Addon Data/addon.toc
Normal file
6
samples/World of Warcraft Addon Data/addon.toc
Normal file
@@ -0,0 +1,6 @@
|
||||
## Interface: 60200
|
||||
## Title: Vahevian Lotus Vane
|
||||
## Notes: "Critical Threat Range"
|
||||
## Version: 4.2
|
||||
Vahevia.xml
|
||||
Lotus_Vane.lua
|
||||
11
samples/World of Warcraft Addon Data/lingua.toc
Normal file
11
samples/World of Warcraft Addon Data/lingua.toc
Normal file
@@ -0,0 +1,11 @@
|
||||
# Internationalisation example
|
||||
|
||||
## Title: Test
|
||||
## Title-esES: Pruebas
|
||||
## Title-huHU: Próba
|
||||
## Notes: "Testing this shit"
|
||||
## Notes-esES: "Probando la mierda esta"
|
||||
## Notes-huHU: "Kipróbálom ezt a szart"
|
||||
|
||||
Tests.xml
|
||||
Elk.lua
|
||||
24
samples/World of Warcraft Addon Data/linguist.toc
Normal file
24
samples/World of Warcraft Addon Data/linguist.toc
Normal file
@@ -0,0 +1,24 @@
|
||||
# Addon manifest file
|
||||
|
||||
## Interface: 60200
|
||||
## Title: Linguist
|
||||
## Notes: "Language savant"
|
||||
## RequiredDeps: charlockHolmes, escapeUtils, mimeTypes, rugged
|
||||
## LoadOnDemand: 1
|
||||
## Version: 4.9
|
||||
|
||||
# This is a comment
|
||||
## SavedVariables: foo, bar
|
||||
## SavedVariablesPerCharacter: fewburt
|
||||
|
||||
Languages.xml
|
||||
Heuristics.xml
|
||||
h-counter.lua
|
||||
ruby-isnt.lua
|
||||
|
||||
#
|
||||
# It is possible for addons to query values of any tags with a "X-" prefix.
|
||||
# Some possibilities include:
|
||||
#
|
||||
## X-Date: "2016-04-28"
|
||||
## X-Website: "https://github.com/"
|
||||
23
samples/XML/Demo.sfproj
Normal file
23
samples/XML/Demo.sfproj
Normal file
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Service Fabric Tools\Microsoft.VisualStudio.Azure.Fabric.ApplicationProject.props" />
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>93d81507-bccc-43d6-8667-2d42473f0c32</ProjectGuid>
|
||||
<ProjectVersion>1.0</ProjectVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Scripts\Deploy-FabricApplication.ps1" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\ChaosTest.ChaosService\ChaosTest.ChaosService.csproj" />
|
||||
<ProjectReference Include="..\ChaosTest.WebService\ChaosTest.WebService.csproj" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="ApplicationPackageRoot\ApplicationManifest.xml" />
|
||||
<Content Include="ApplicationParameters\Cloud.xml" />
|
||||
<Content Include="ApplicationParameters\Local.xml" />
|
||||
<Content Include="PublishProfiles\Cloud.xml" />
|
||||
<Content Include="PublishProfiles\Local.xml" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Service Fabric Tools\Microsoft.VisualStudio.Azure.Fabric.ApplicationProject.targets" />
|
||||
</Project>
|
||||
104
samples/XML/Strings.resx
Normal file
104
samples/XML/Strings.resx
Normal file
@@ -0,0 +1,104 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 1.3
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">1.3</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1">this is my long string</data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
[base64 mime encoded serialized .NET Framework object]
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
[base64 mime encoded string representing a byte array form of the .NET Framework object]
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>1.3</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="Argument_InvalidPathChars" xml:space="preserve">
|
||||
<value>Illegal characters in path.</value>
|
||||
</data>
|
||||
</root>
|
||||
12
samples/XML/System.Buffers.pkgproj
Normal file
12
samples/XML/System.Buffers.pkgproj
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\src\System.Buffers.builds">
|
||||
<SupportedFramework>net45;netcore45;netstandardapp1.5;wpa81</SupportedFramework>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
|
||||
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.targets))\dir.targets" />
|
||||
</Project>
|
||||
8
samples/XML/src.builds
Normal file
8
samples/XML/src.builds
Normal file
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
|
||||
<ItemGroup>
|
||||
<Project Include="*\src\*.builds" />
|
||||
</ItemGroup>
|
||||
<Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.traversal.targets))\dir.traversal.targets" />
|
||||
</Project>
|
||||
18
samples/YAML/filenames/.clang-format
Normal file
18
samples/YAML/filenames/.clang-format
Normal file
@@ -0,0 +1,18 @@
|
||||
---
|
||||
# We'll use defaults from the LLVM style, but with 4 columns indentation.
|
||||
BasedOnStyle: LLVM
|
||||
IndentWidth: 4
|
||||
---
|
||||
Language: Cpp
|
||||
# Force pointers to the type for C++.
|
||||
DerivePointerAlignment: false
|
||||
PointerAlignment: Left
|
||||
---
|
||||
Language: JavaScript
|
||||
# Use 100 columns for JS.
|
||||
ColumnLimit: 100
|
||||
---
|
||||
Language: Proto
|
||||
# Don't format .proto files.
|
||||
DisableFormat: true
|
||||
...
|
||||
46
script/licensed
Executable file
46
script/licensed
Executable file
@@ -0,0 +1,46 @@
|
||||
#!/usr/bin/env ruby
|
||||
|
||||
# TODO: push these changes to licensor gem
|
||||
|
||||
require "bundler/setup"
|
||||
require "licensed/cli"
|
||||
|
||||
module Licensed
|
||||
module Source
|
||||
class Filesystem
|
||||
attr_reader :type
|
||||
|
||||
def initialize(glob, type: "directory")
|
||||
@glob = glob
|
||||
@type = type
|
||||
end
|
||||
|
||||
def enabled?
|
||||
!Dir.glob(@glob).empty?
|
||||
end
|
||||
|
||||
def dependencies
|
||||
Dir.glob(@glob).map do |directory|
|
||||
puts "caching #{directory}"
|
||||
Licensed::Dependency.new(directory, {
|
||||
"type" => type,
|
||||
"name" => File.basename(directory)
|
||||
})
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
source = Licensed::Source::Filesystem.new("vendor/grammars/*/", type: "grammar")
|
||||
config = Licensed::Configuration.new
|
||||
config.sources << source
|
||||
|
||||
command = if ARGV[0] == "verify"
|
||||
Licensed::Command::Verify.new(config)
|
||||
else
|
||||
Licensed::Command::Cache.new(config)
|
||||
end
|
||||
|
||||
command.run
|
||||
exit command.success?
|
||||
6
test/fixtures/Data/app.config
vendored
Normal file
6
test/fixtures/Data/app.config
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0"?>
|
||||
<configuration>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0" />
|
||||
</startup>
|
||||
</configuration>
|
||||
@@ -132,7 +132,7 @@ class TestBlob < Minitest::Test
|
||||
end
|
||||
|
||||
def test_csv
|
||||
assert fixture_blob_memory("Data/cars.csv").csv?
|
||||
assert sample_blob_memory("CSV/cars.csv").csv?
|
||||
end
|
||||
|
||||
def test_pdf
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
require_relative "./helper"
|
||||
|
||||
class TestBlob < Minitest::Test
|
||||
class TestFileBlob < Minitest::Test
|
||||
include Linguist
|
||||
|
||||
def setup
|
||||
@@ -19,7 +19,7 @@ class TestBlob < Minitest::Test
|
||||
blob.instance_variable_set(:@name, 'script')
|
||||
blob
|
||||
end
|
||||
|
||||
|
||||
def test_extensions
|
||||
assert_equal [".gitignore"], Linguist::FileBlob.new(".gitignore").extensions
|
||||
assert_equal [".xml"], Linguist::FileBlob.new("build.xml").extensions
|
||||
@@ -312,11 +312,13 @@ class TestBlob < Minitest::Test
|
||||
# Debian packaging
|
||||
assert sample_blob("debian/cron.d").vendored?
|
||||
|
||||
# Django env
|
||||
assert sample_blob("env/foo.py").vendored?
|
||||
|
||||
# Erlang
|
||||
assert sample_blob("rebar").vendored?
|
||||
|
||||
# git config files
|
||||
|
||||
assert_predicate fixture_blob("some/path/.gitattributes"), :vendored?
|
||||
assert_predicate fixture_blob(".gitignore"), :vendored?
|
||||
assert_predicate fixture_blob("special/path/.gitmodules"), :vendored?
|
||||
|
||||
@@ -17,6 +17,7 @@ class TestGenerated < Minitest::Test
|
||||
assert_raises(DataLoadedError, "Data wasn't loaded when calling generated? on #{blob}") do
|
||||
Generated.generated?(blob, lambda { raise DataLoadedError.new })
|
||||
end
|
||||
assert Generated.generated?(blob, lambda { IO.read(blob) }), "#{blob} was not recognized as a generated file"
|
||||
end
|
||||
|
||||
def generated_fixture_without_loading_data(name)
|
||||
@@ -35,7 +36,7 @@ class TestGenerated < Minitest::Test
|
||||
generated_loading_data(File.join(samples_path, name))
|
||||
end
|
||||
|
||||
def test_check_generated
|
||||
def test_check_generated
|
||||
# Xcode project files
|
||||
generated_sample_without_loading_data("Binary/MainMenu.nib")
|
||||
generated_sample_without_loading_data("Dummy/foo.xcworkspacedata")
|
||||
@@ -62,6 +63,9 @@ class TestGenerated < Minitest::Test
|
||||
# Minified files
|
||||
generated_sample_loading_data("JavaScript/jquery-1.6.1.min.js")
|
||||
|
||||
# JS files with source map reference
|
||||
generated_sample_loading_data("JavaScript/namespace.js")
|
||||
|
||||
# Source Map
|
||||
generated_fixture_without_loading_data("Data/bootstrap.css.map")
|
||||
generated_fixture_loading_data("Data/sourcemap.v3.map")
|
||||
|
||||
@@ -3,17 +3,11 @@ require_relative "./helper"
|
||||
class TestGrammars < Minitest::Test
|
||||
ROOT = File.expand_path("../..", __FILE__)
|
||||
|
||||
# List of projects that are allowed without licenses
|
||||
PROJECT_WHITELIST = [
|
||||
# This grammar's MIT license is inside a subdirectory.
|
||||
"vendor/grammars/SublimePapyrus",
|
||||
|
||||
# This grammar has a nonstandard but acceptable license.
|
||||
"vendor/grammars/gap-tmbundle",
|
||||
|
||||
# These grammars have no license but have been grandfathered in. New grammars
|
||||
# must have a license that allows redistribution.
|
||||
"vendor/grammars/Sublime-Lasso",
|
||||
"vendor/grammars/x86-assembly-textmate-bundle"
|
||||
# Dual MIT and GPL license
|
||||
"vendor/grammars/language-csharp",
|
||||
"vendor/grammars/sublimeassembly"
|
||||
].freeze
|
||||
|
||||
# List of allowed SPDX license names
|
||||
@@ -21,12 +15,10 @@ class TestGrammars < Minitest::Test
|
||||
apache-2.0
|
||||
bsd-2-clause
|
||||
bsd-3-clause
|
||||
cc-by-sa-3.0
|
||||
gpl-2.0
|
||||
gpl-3.0
|
||||
lgpl-3.0
|
||||
isc
|
||||
mit
|
||||
mpl-2.0
|
||||
public
|
||||
textmate
|
||||
unlicense
|
||||
wtfpl
|
||||
@@ -102,8 +94,9 @@ class TestGrammars < Minitest::Test
|
||||
end
|
||||
|
||||
def test_submodules_whitelist_has_no_extra_entries
|
||||
skip("Need to work out how to handle dual-licensed entities")
|
||||
extra_whitelist_entries = PROJECT_WHITELIST - submodule_licenses.select { |k,v| v.nil? }.keys
|
||||
not_present = extra_whitelist_entries.reject { |k,v| Dir.exists?(k) }
|
||||
not_present = extra_whitelist_entries.reject { |k,v| Dir.exist?(k) }
|
||||
licensed = extra_whitelist_entries.select { |k,v| submodule_licenses[k] }
|
||||
|
||||
msg = "The following whitelisted submodules don't appear to be part of the project:\n* #{not_present.join("\n* ")}"
|
||||
@@ -178,10 +171,12 @@ class TestGrammars < Minitest::Test
|
||||
"gpl-3.0"
|
||||
elsif content.include?("Creative Commons Attribution-Share Alike 3.0")
|
||||
"cc-by-sa-3.0"
|
||||
elsif content.include?("tidy-license.txt") || content.include?("If not otherwise specified (see below)")
|
||||
elsif content.include?("tidy-license.txt") || content.include?("If not otherwise specified (see below)") || content.include?("Permission to copy, use, modify, sell and distribute this")
|
||||
"textmate"
|
||||
elsif content.include?("Permission is hereby granted") || content =~ /\bMIT\b/
|
||||
"mit"
|
||||
elsif content.include?("This package is provided as-is and is placed in the Public Domain")
|
||||
"public"
|
||||
elsif content.include?("http://www.wtfpl.net/txt/copying/")
|
||||
"wtfpl"
|
||||
elsif content.include?("zlib") && content.include?("license") && content.include?("2. Altered source versions must be plainly marked as such")
|
||||
|
||||
@@ -83,6 +83,13 @@ class TestHeuristcs < Minitest::Test
|
||||
"ECLiPSe" => all_fixtures("ECLiPSe", "*.ecl")
|
||||
})
|
||||
end
|
||||
|
||||
def test_es_by_heuristics
|
||||
assert_heuristics({
|
||||
"Erlang" => all_fixtures("Erlang", "*.es"),
|
||||
"JavaScript" => all_fixtures("JavaScript", "*.es")
|
||||
})
|
||||
end
|
||||
|
||||
def test_f_by_heuristics
|
||||
assert_heuristics({
|
||||
@@ -115,6 +122,12 @@ class TestHeuristcs < Minitest::Test
|
||||
})
|
||||
end
|
||||
|
||||
def test_inc_by_heuristics
|
||||
assert_heuristics({
|
||||
"PHP" => all_fixtures("PHP", "*.inc")
|
||||
})
|
||||
end
|
||||
|
||||
def test_ls_by_heuristics
|
||||
assert_heuristics({
|
||||
"LiveScript" => all_fixtures("LiveScript", "*.ls"),
|
||||
|
||||
@@ -31,6 +31,7 @@ class TestModelines < Minitest::Test
|
||||
assert_modeline Language["Prolog"], fixture_blob("Data/Modelines/not_perl.pl")
|
||||
assert_modeline Language["Smalltalk"], fixture_blob("Data/Modelines/example_smalltalk.md")
|
||||
assert_modeline Language["PHP"], fixture_blob("Data/Modelines/iamphp.inc")
|
||||
assert_modeline nil, sample_blob("C/main.c")
|
||||
end
|
||||
|
||||
def test_modeline_languages
|
||||
|
||||
@@ -81,7 +81,7 @@ class TestRepository < Minitest::Test
|
||||
|
||||
def test_linguist_override_vendored?
|
||||
attr_commit = '351c1cc8fd57340839bdb400d7812332af80e9bd'
|
||||
repo = linguist_repo(attr_commit).read_index
|
||||
linguist_repo(attr_commit).read_index
|
||||
|
||||
override_vendored = Linguist::LazyBlob.new(rugged_repository, attr_commit, 'Gemfile')
|
||||
|
||||
@@ -91,7 +91,7 @@ class TestRepository < Minitest::Test
|
||||
|
||||
def test_linguist_override_unvendored?
|
||||
attr_commit = '351c1cc8fd57340839bdb400d7812332af80e9bd'
|
||||
repo = linguist_repo(attr_commit).read_index
|
||||
linguist_repo(attr_commit).read_index
|
||||
|
||||
# lib/linguist/vendor.yml defines this as vendored.
|
||||
override_unvendored = Linguist::LazyBlob.new(rugged_repository, attr_commit, 'test/fixtures/foo.rb')
|
||||
@@ -102,7 +102,7 @@ class TestRepository < Minitest::Test
|
||||
|
||||
def test_linguist_override_documentation?
|
||||
attr_commit = "d4c8fb8a28e91f97a7e53428a365c0abbac36d3d"
|
||||
repo = linguist_repo(attr_commit).read_index
|
||||
linguist_repo(attr_commit).read_index
|
||||
|
||||
readme = Linguist::LazyBlob.new(rugged_repository, attr_commit, "README.md")
|
||||
arduino = Linguist::LazyBlob.new(rugged_repository, attr_commit, "samples/Arduino/hello.ino")
|
||||
@@ -114,7 +114,7 @@ class TestRepository < Minitest::Test
|
||||
|
||||
def test_linguist_override_generated?
|
||||
attr_commit = "351c1cc8fd57340839bdb400d7812332af80e9bd"
|
||||
repo = linguist_repo(attr_commit).read_index
|
||||
linguist_repo(attr_commit).read_index
|
||||
|
||||
rakefile = Linguist::LazyBlob.new(rugged_repository, attr_commit, "Rakefile")
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@ class TestSamples < Minitest::Test
|
||||
# Check for samples if more than one language matches the given filename
|
||||
if Language.find_by_filename(filename).size > 1
|
||||
sample = "samples/#{language.name}/filenames/#{filename}"
|
||||
assert File.exists?(sample),
|
||||
assert File.exist?(sample),
|
||||
"Missing sample in #{sample.inspect}. See https://github.com/github/linguist/blob/master/CONTRIBUTING.md"
|
||||
end
|
||||
end
|
||||
|
||||
2
vendor/grammars/AutoHotkey
vendored
2
vendor/grammars/AutoHotkey
vendored
Submodule vendor/grammars/AutoHotkey updated: d31adb9184...02fe2a8d3d
1
vendor/grammars/CLIPS-sublime
vendored
1
vendor/grammars/CLIPS-sublime
vendored
Submodule vendor/grammars/CLIPS-sublime deleted from 6a11bc512e
1
vendor/grammars/Creole
vendored
1
vendor/grammars/Creole
vendored
Submodule vendor/grammars/Creole deleted from bac4656c8d
1
vendor/grammars/GDScript-sublime
vendored
1
vendor/grammars/GDScript-sublime
vendored
Submodule vendor/grammars/GDScript-sublime deleted from 44ac5c4af2
1
vendor/grammars/InnoSetup
vendored
1
vendor/grammars/InnoSetup
vendored
Submodule vendor/grammars/InnoSetup deleted from 9da37ae690
2
vendor/grammars/MagicPython
vendored
2
vendor/grammars/MagicPython
vendored
Submodule vendor/grammars/MagicPython updated: 7d07d6f5b0...fd23525656
2
vendor/grammars/NSIS
vendored
2
vendor/grammars/NSIS
vendored
Submodule vendor/grammars/NSIS updated: 68a4534dde...e052400204
2
vendor/grammars/NimLime
vendored
2
vendor/grammars/NimLime
vendored
Submodule vendor/grammars/NimLime updated: 0c6c6207a6...5089ecab59
2
vendor/grammars/Stylus
vendored
2
vendor/grammars/Stylus
vendored
Submodule vendor/grammars/Stylus updated: 9766d8d936...61bab33f37
1
vendor/grammars/Sublime-Logos
vendored
1
vendor/grammars/Sublime-Logos
vendored
Submodule vendor/grammars/Sublime-Logos deleted from 5375dc5394
2
vendor/grammars/Sublime-SQF-Language
vendored
2
vendor/grammars/Sublime-SQF-Language
vendored
Submodule vendor/grammars/Sublime-SQF-Language updated: 81c5be35bf...777931999d
2
vendor/grammars/Sublime-Text-2-OpenEdge-ABL
vendored
2
vendor/grammars/Sublime-Text-2-OpenEdge-ABL
vendored
Submodule vendor/grammars/Sublime-Text-2-OpenEdge-ABL updated: c830631431...04e4d1405c
2
vendor/grammars/SublimePapyrus
vendored
2
vendor/grammars/SublimePapyrus
vendored
Submodule vendor/grammars/SublimePapyrus updated: 293a45f665...66a085b1fd
1
vendor/grammars/SublimePuppet
vendored
Submodule
1
vendor/grammars/SublimePuppet
vendored
Submodule
Submodule vendor/grammars/SublimePuppet added at a90d5a4e08
1
vendor/grammars/TLA
vendored
Submodule
1
vendor/grammars/TLA
vendored
Submodule
Submodule vendor/grammars/TLA added at 7e351a9cdf
2
vendor/grammars/atom-fsharp
vendored
2
vendor/grammars/atom-fsharp
vendored
Submodule vendor/grammars/atom-fsharp updated: 13eb4d4347...6470266565
2
vendor/grammars/atom-language-purescript
vendored
2
vendor/grammars/atom-language-purescript
vendored
Submodule vendor/grammars/atom-language-purescript updated: bd2b59f14e...83d188103f
1
vendor/grammars/atomic-dreams
vendored
Submodule
1
vendor/grammars/atomic-dreams
vendored
Submodule
Submodule vendor/grammars/atomic-dreams added at 4384f94ff3
1
vendor/grammars/ats
vendored
Submodule
1
vendor/grammars/ats
vendored
Submodule
Submodule vendor/grammars/ats added at b4f5a7a9ce
1
vendor/grammars/ats.sublime
vendored
1
vendor/grammars/ats.sublime
vendored
Submodule vendor/grammars/ats.sublime deleted from fd6bd223d1
1
vendor/grammars/autoitv3-tmbundle
vendored
1
vendor/grammars/autoitv3-tmbundle
vendored
Submodule vendor/grammars/autoitv3-tmbundle deleted from 9fb171353c
1
vendor/grammars/boo
vendored
Submodule
1
vendor/grammars/boo
vendored
Submodule
Submodule vendor/grammars/boo added at d5344462c4
1
vendor/grammars/boo-sublime
vendored
1
vendor/grammars/boo-sublime
vendored
Submodule vendor/grammars/boo-sublime deleted from 2b27a24145
2
vendor/grammars/c.tmbundle
vendored
2
vendor/grammars/c.tmbundle
vendored
Submodule vendor/grammars/c.tmbundle updated: 5b5d366309...d26c35164a
2
vendor/grammars/d.tmbundle
vendored
2
vendor/grammars/d.tmbundle
vendored
Submodule vendor/grammars/d.tmbundle updated: bc27d5e552...9b7d4a8e44
1
vendor/grammars/ejs-tmbundle
vendored
Submodule
1
vendor/grammars/ejs-tmbundle
vendored
Submodule
Submodule vendor/grammars/ejs-tmbundle added at 0854026c99
2
vendor/grammars/elixir-tmbundle
vendored
2
vendor/grammars/elixir-tmbundle
vendored
Submodule vendor/grammars/elixir-tmbundle updated: a7aa16e349...6ee8051a75
1
vendor/grammars/gdscript
vendored
Submodule
1
vendor/grammars/gdscript
vendored
Submodule
Submodule vendor/grammars/gdscript added at 202295c51c
1
vendor/grammars/grace
vendored
Submodule
1
vendor/grammars/grace
vendored
Submodule
Submodule vendor/grammars/grace added at fa30c175f7
1
vendor/grammars/grace-tmbundle
vendored
1
vendor/grammars/grace-tmbundle
vendored
Submodule vendor/grammars/grace-tmbundle deleted from 9e8bb893f0
1
vendor/grammars/idris
vendored
Submodule
1
vendor/grammars/idris
vendored
Submodule
Submodule vendor/grammars/idris added at 1089032af6
2
vendor/grammars/jade-tmbundle
vendored
2
vendor/grammars/jade-tmbundle
vendored
Submodule vendor/grammars/jade-tmbundle updated: 81093433d6...7c1304aa5a
1
vendor/grammars/language-apl
vendored
Submodule
1
vendor/grammars/language-apl
vendored
Submodule
Submodule vendor/grammars/language-apl added at 37552fbbf9
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user