mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	Merge branch 'master' into 3233-local
This commit is contained in:
		
							
								
								
									
										6
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										6
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
								
							| @@ -202,9 +202,6 @@ | |||||||
| [submodule "vendor/grammars/sublime-robot-plugin"] | [submodule "vendor/grammars/sublime-robot-plugin"] | ||||||
| 	path = vendor/grammars/sublime-robot-plugin | 	path = vendor/grammars/sublime-robot-plugin | ||||||
| 	url = https://github.com/shellderp/sublime-robot-plugin | 	url = https://github.com/shellderp/sublime-robot-plugin | ||||||
| [submodule "vendor/grammars/actionscript3-tmbundle"] |  | ||||||
| 	path = vendor/grammars/actionscript3-tmbundle |  | ||||||
| 	url = https://github.com/honzabrecka/actionscript3-tmbundle |  | ||||||
| [submodule "vendor/grammars/Sublime-QML"] | [submodule "vendor/grammars/Sublime-QML"] | ||||||
| 	path = vendor/grammars/Sublime-QML | 	path = vendor/grammars/Sublime-QML | ||||||
| 	url = https://github.com/skozlovf/Sublime-QML | 	url = https://github.com/skozlovf/Sublime-QML | ||||||
| @@ -797,3 +794,6 @@ | |||||||
| [submodule "vendor/grammars/MQL5-sublime"] | [submodule "vendor/grammars/MQL5-sublime"] | ||||||
| 	path = vendor/grammars/MQL5-sublime | 	path = vendor/grammars/MQL5-sublime | ||||||
| 	url = https://github.com/mqsoft/MQL5-sublime | 	url = https://github.com/mqsoft/MQL5-sublime | ||||||
|  | [submodule "vendor/grammars/actionscript3-tmbundle"] | ||||||
|  | 	path = vendor/grammars/actionscript3-tmbundle | ||||||
|  | 	url = https://github.com/simongregory/actionscript3-tmbundle | ||||||
|   | |||||||
| @@ -17,7 +17,7 @@ To add support for a new extension: | |||||||
| In addition, if this extension is already listed in [`languages.yml`][languages] then sometimes a few more steps will need to be taken: | In addition, if this extension is already listed in [`languages.yml`][languages] then sometimes a few more steps will need to be taken: | ||||||
|  |  | ||||||
| 0. Make sure that example `.yourextension` files are present in the [samples directory][samples] for each language that uses `.yourextension`. | 0. Make sure that example `.yourextension` files are present in the [samples directory][samples] for each language that uses `.yourextension`. | ||||||
| 0. Test the performance of the Bayesian classifier with a relatively large number (1000s) of sample `.yourextension` files. (ping @arfon or @bkeepers to help with this) to ensure we're not misclassifying files. | 0. Test the performance of the Bayesian classifier with a relatively large number (1000s) of sample `.yourextension` files. (ping **@arfon** or **@bkeepers** to help with this) to ensure we're not misclassifying files. | ||||||
| 0. If the Bayesian classifier does a bad job with the sample `.yourextension` files then a [heuristic](https://github.com/github/linguist/blob/master/lib/linguist/heuristics.rb) may need to be written to help. | 0. If the Bayesian classifier does a bad job with the sample `.yourextension` files then a [heuristic](https://github.com/github/linguist/blob/master/lib/linguist/heuristics.rb) may need to be written to help. | ||||||
|  |  | ||||||
|  |  | ||||||
| @@ -28,10 +28,7 @@ We try only to add languages once they have some usage on GitHub. In most cases | |||||||
| To add support for a new language: | To add support for a new language: | ||||||
|  |  | ||||||
| 0. Add an entry for your language to [`languages.yml`][languages]. Omit the `language_id` field for now. | 0. Add an entry for your language to [`languages.yml`][languages]. Omit the `language_id` field for now. | ||||||
| 0. Add a grammar for your language. Please only add grammars that have [one of these licenses](https://github.com/github/linguist/blob/257425141d4e2a5232786bf0b13c901ada075f93/vendor/licenses/config.yml#L2-L11). | 0. Add a grammar for your language: `script/add-grammar https://github.com/JaneSmith/MyGrammar`. Please only add grammars that have [one of these licenses][licenses]. | ||||||
|   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. Add samples for your language to the [samples directory][samples] in the correct subdirectory. | ||||||
| 0. Add a `language_id` for your language using `script/set-language-ids`. **You should only ever need to run `script/set-language-ids --update`. Anything other than this risks breaking GitHub search :cry:** | 0. Add a `language_id` for your language using `script/set-language-ids`. **You should only ever need to run `script/set-language-ids --update`. Anything other than this risks breaking GitHub search :cry:** | ||||||
| 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. | 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. | ||||||
| @@ -39,7 +36,7 @@ To add support for a new language: | |||||||
| In addition, if your new language defines an extension that's already listed in [`languages.yml`][languages] (such as `.foo`) then sometimes a few more steps will need to be taken: | In addition, if your new language defines an extension that's already listed in [`languages.yml`][languages] (such as `.foo`) then sometimes a few more steps will need to be taken: | ||||||
|  |  | ||||||
| 0. Make sure that example `.foo` files are present in the [samples directory][samples] for each language that uses `.foo`. | 0. Make sure that example `.foo` files are present in the [samples directory][samples] for each language that uses `.foo`. | ||||||
| 0. Test the performance of the Bayesian classifier with a relatively large number (1000s) of sample `.foo` files. (ping @arfon or @bkeepers to help with this) to ensure we're not misclassifying files. | 0. Test the performance of the Bayesian classifier with a relatively large number (1000s) of sample `.foo` files. (ping **@arfon** or **@bkeepers** to help with this) to ensure we're not misclassifying files. | ||||||
| 0. If the Bayesian classifier does a bad job with the sample `.foo` files then a [heuristic](https://github.com/github/linguist/blob/master/lib/linguist/heuristics.rb) may need to be written to help. | 0. If the Bayesian classifier does a bad job with the sample `.foo` files then a [heuristic](https://github.com/github/linguist/blob/master/lib/linguist/heuristics.rb) may need to be written to help. | ||||||
|  |  | ||||||
| Remember, the goal here is to try and avoid false positives! | Remember, the goal here is to try and avoid false positives! | ||||||
| @@ -82,9 +79,9 @@ Here's our current build status: [ | - **@arfon** (GitHub Staff) | ||||||
| - @larsbrinkhoff | - **@larsbrinkhoff** | ||||||
| - @pchaigno | - **@pchaigno** | ||||||
|  |  | ||||||
| As Linguist is a production dependency for GitHub we have a couple of workflow restrictions: | As Linguist is a production dependency for GitHub we have a couple of workflow restrictions: | ||||||
|  |  | ||||||
| @@ -113,5 +110,6 @@ If you are the current maintainer of this gem: | |||||||
|  |  | ||||||
| [grammars]: /grammars.yml | [grammars]: /grammars.yml | ||||||
| [languages]: /lib/linguist/languages.yml | [languages]: /lib/linguist/languages.yml | ||||||
|  | [licenses]: https://github.com/github/linguist/blob/257425141d4e2a5232786bf0b13c901ada075f93/vendor/licenses/config.yml#L2-L11 | ||||||
| [samples]: /samples | [samples]: /samples | ||||||
| [new-issue]: https://github.com/github/linguist/issues/new | [new-issue]: https://github.com/github/linguist/issues/new | ||||||
|   | |||||||
| @@ -136,7 +136,7 @@ vendor/grammars/X10: | |||||||
| - source.x10 | - source.x10 | ||||||
| vendor/grammars/abap.tmbundle: | vendor/grammars/abap.tmbundle: | ||||||
| - source.abap | - source.abap | ||||||
| vendor/grammars/actionscript3-tmbundle: | vendor/grammars/actionscript3-tmbundle/: | ||||||
| - source.actionscript.3 | - source.actionscript.3 | ||||||
| - text.html.asdoc | - text.html.asdoc | ||||||
| - text.xml.flex-config | - text.xml.flex-config | ||||||
|   | |||||||
| @@ -227,7 +227,6 @@ Apex: | |||||||
|   language_id: 17 |   language_id: 17 | ||||||
| Apollo Guidance Computer: | Apollo Guidance Computer: | ||||||
|   type: programming |   type: programming | ||||||
|   color: "#0B3D91" |  | ||||||
|   group: Assembly |   group: Assembly | ||||||
|   extensions: |   extensions: | ||||||
|   - ".agc" |   - ".agc" | ||||||
| @@ -369,7 +368,6 @@ Bison: | |||||||
|   extensions: |   extensions: | ||||||
|   - ".bison" |   - ".bison" | ||||||
|   ace_mode: text |   ace_mode: text | ||||||
|   color: "#6A463F" |  | ||||||
|   language_id: 31 |   language_id: 31 | ||||||
| BitBake: | BitBake: | ||||||
|   type: programming |   type: programming | ||||||
| @@ -563,6 +561,17 @@ COLLADA: | |||||||
|   codemirror_mode: xml |   codemirror_mode: xml | ||||||
|   codemirror_mime_type: text/xml |   codemirror_mime_type: text/xml | ||||||
|   language_id: 49 |   language_id: 49 | ||||||
|  | CSON: | ||||||
|  |   type: data | ||||||
|  |   group: CoffeeScript | ||||||
|  |   tm_scope: source.coffee | ||||||
|  |   ace_mode: coffee | ||||||
|  |   codemirror_mode: coffeescript | ||||||
|  |   codemirror_mime_type: text/x-coffeescript | ||||||
|  |   searchable: false | ||||||
|  |   extensions: | ||||||
|  |   - ".cson" | ||||||
|  |   language_id: 424 | ||||||
| CSS: | CSS: | ||||||
|   type: markup |   type: markup | ||||||
|   tm_scope: source.css |   tm_scope: source.css | ||||||
| @@ -693,7 +702,6 @@ CoffeeScript: | |||||||
|   - "._coffee" |   - "._coffee" | ||||||
|   - ".cake" |   - ".cake" | ||||||
|   - ".cjsx" |   - ".cjsx" | ||||||
|   - ".cson" |  | ||||||
|   - ".iced" |   - ".iced" | ||||||
|   filenames: |   filenames: | ||||||
|   - Cakefile |   - Cakefile | ||||||
| @@ -702,7 +710,6 @@ CoffeeScript: | |||||||
|   language_id: 63 |   language_id: 63 | ||||||
| ColdFusion: | ColdFusion: | ||||||
|   type: programming |   type: programming | ||||||
|   group: ColdFusion |  | ||||||
|   ace_mode: coldfusion |   ace_mode: coldfusion | ||||||
|   color: "#ed2cd6" |   color: "#ed2cd6" | ||||||
|   search_term: cfm |   search_term: cfm | ||||||
| @@ -719,7 +726,6 @@ ColdFusion CFC: | |||||||
|   type: programming |   type: programming | ||||||
|   group: ColdFusion |   group: ColdFusion | ||||||
|   ace_mode: coldfusion |   ace_mode: coldfusion | ||||||
|   color: "#ed2cd6" |  | ||||||
|   search_term: cfc |   search_term: cfc | ||||||
|   aliases: |   aliases: | ||||||
|   - cfc |   - cfc | ||||||
| @@ -1037,7 +1043,6 @@ ECLiPSe: | |||||||
|   language_id: 94 |   language_id: 94 | ||||||
| EJS: | EJS: | ||||||
|   type: markup |   type: markup | ||||||
|   color: "#a91e50" |  | ||||||
|   group: HTML |   group: HTML | ||||||
|   extensions: |   extensions: | ||||||
|   - ".ejs" |   - ".ejs" | ||||||
| @@ -1725,11 +1730,9 @@ Haml: | |||||||
|   ace_mode: haml |   ace_mode: haml | ||||||
|   codemirror_mode: haml |   codemirror_mode: haml | ||||||
|   codemirror_mime_type: text/x-haml |   codemirror_mime_type: text/x-haml | ||||||
|   color: "#ECE2A9" |  | ||||||
|   language_id: 154 |   language_id: 154 | ||||||
| Handlebars: | Handlebars: | ||||||
|   type: markup |   type: markup | ||||||
|   color: "#01a9d6" |  | ||||||
|   group: HTML |   group: HTML | ||||||
|   aliases: |   aliases: | ||||||
|   - hbs |   - hbs | ||||||
| @@ -1834,6 +1837,8 @@ IRC log: | |||||||
|   - ".weechatlog" |   - ".weechatlog" | ||||||
|   tm_scope: none |   tm_scope: none | ||||||
|   ace_mode: text |   ace_mode: text | ||||||
|  |   codemirror_mode: mirc | ||||||
|  |   codemirror_mime_type: text/mirc | ||||||
|   language_id: 164 |   language_id: 164 | ||||||
| Idris: | Idris: | ||||||
|   type: programming |   type: programming | ||||||
| @@ -1908,7 +1913,6 @@ J: | |||||||
|   language_id: 172 |   language_id: 172 | ||||||
| JFlex: | JFlex: | ||||||
|   type: programming |   type: programming | ||||||
|   color: "#DBCA00" |  | ||||||
|   group: Lex |   group: Lex | ||||||
|   extensions: |   extensions: | ||||||
|   - ".flex" |   - ".flex" | ||||||
| @@ -2040,19 +2044,6 @@ JavaScript: | |||||||
|   - ".pac" |   - ".pac" | ||||||
|   - ".sjs" |   - ".sjs" | ||||||
|   - ".ssjs" |   - ".ssjs" | ||||||
|   - ".sublime-build" |  | ||||||
|   - ".sublime-commands" |  | ||||||
|   - ".sublime-completions" |  | ||||||
|   - ".sublime-keymap" |  | ||||||
|   - ".sublime-macro" |  | ||||||
|   - ".sublime-menu" |  | ||||||
|   - ".sublime-mousemap" |  | ||||||
|   - ".sublime-project" |  | ||||||
|   - ".sublime-settings" |  | ||||||
|   - ".sublime-theme" |  | ||||||
|   - ".sublime-workspace" |  | ||||||
|   - ".sublime_metrics" |  | ||||||
|   - ".sublime_session" |  | ||||||
|   - ".xsjs" |   - ".xsjs" | ||||||
|   - ".xsjslib" |   - ".xsjslib" | ||||||
|   filenames: |   filenames: | ||||||
| @@ -2064,6 +2055,8 @@ Julia: | |||||||
|   type: programming |   type: programming | ||||||
|   extensions: |   extensions: | ||||||
|   - ".jl" |   - ".jl" | ||||||
|  |   interpreters: | ||||||
|  |   - julia | ||||||
|   color: "#a270ba" |   color: "#a270ba" | ||||||
|   ace_mode: julia |   ace_mode: julia | ||||||
|   codemirror_mode: julia |   codemirror_mode: julia | ||||||
| @@ -2125,7 +2118,6 @@ LFE: | |||||||
|   type: programming |   type: programming | ||||||
|   extensions: |   extensions: | ||||||
|   - ".lfe" |   - ".lfe" | ||||||
|   color: "#004200" |  | ||||||
|   group: Erlang |   group: Erlang | ||||||
|   tm_scope: source.lisp |   tm_scope: source.lisp | ||||||
|   ace_mode: lisp |   ace_mode: lisp | ||||||
| @@ -2182,7 +2174,6 @@ Lasso: | |||||||
|   language_id: 195 |   language_id: 195 | ||||||
| Latte: | Latte: | ||||||
|   type: markup |   type: markup | ||||||
|   color: "#A8FF97" |  | ||||||
|   group: HTML |   group: HTML | ||||||
|   extensions: |   extensions: | ||||||
|   - ".latte" |   - ".latte" | ||||||
| @@ -2207,7 +2198,6 @@ Less: | |||||||
|   ace_mode: less |   ace_mode: less | ||||||
|   codemirror_mode: css |   codemirror_mode: css | ||||||
|   codemirror_mime_type: text/css |   codemirror_mime_type: text/css | ||||||
|   color: "#A1D9A1" |  | ||||||
|   language_id: 198 |   language_id: 198 | ||||||
| Lex: | Lex: | ||||||
|   type: programming |   type: programming | ||||||
| @@ -2405,7 +2395,7 @@ MQL4: | |||||||
|   - ".mqh" |   - ".mqh" | ||||||
|   tm_scope: source.mql5 |   tm_scope: source.mql5 | ||||||
|   ace_mode: c_cpp |   ace_mode: c_cpp | ||||||
|   language_id: 422 |   language_id: 426 | ||||||
| MQL5: | MQL5: | ||||||
|   type: programming |   type: programming | ||||||
|   color: "#4A76B8" |   color: "#4A76B8" | ||||||
| @@ -2414,7 +2404,7 @@ MQL5: | |||||||
|   - ".mqh" |   - ".mqh" | ||||||
|   tm_scope: source.mql5 |   tm_scope: source.mql5 | ||||||
|   ace_mode: c_cpp |   ace_mode: c_cpp | ||||||
|   language_id: 423 |   language_id: 427 | ||||||
| MTML: | MTML: | ||||||
|   type: markup |   type: markup | ||||||
|   color: "#b7e1f4" |   color: "#b7e1f4" | ||||||
| @@ -2455,6 +2445,7 @@ Makefile: | |||||||
|   - Kbuild |   - Kbuild | ||||||
|   - Makefile |   - Makefile | ||||||
|   - Makefile.am |   - Makefile.am | ||||||
|  |   - Makefile.boot | ||||||
|   - Makefile.frag |   - Makefile.frag | ||||||
|   - Makefile.in |   - Makefile.in | ||||||
|   - Makefile.inc |   - Makefile.inc | ||||||
| @@ -2813,7 +2804,6 @@ NumPy: | |||||||
|   ace_mode: text |   ace_mode: text | ||||||
|   codemirror_mode: python |   codemirror_mode: python | ||||||
|   codemirror_mime_type: text/x-python |   codemirror_mime_type: text/x-python | ||||||
|   color: "#9C8AF9" |  | ||||||
|   language_id: 254 |   language_id: 254 | ||||||
| OCaml: | OCaml: | ||||||
|   type: programming |   type: programming | ||||||
| @@ -3163,6 +3153,17 @@ Perl6: | |||||||
|   codemirror_mode: perl |   codemirror_mode: perl | ||||||
|   codemirror_mime_type: text/x-perl |   codemirror_mime_type: text/x-perl | ||||||
|   language_id: 283 |   language_id: 283 | ||||||
|  | Pic: | ||||||
|  |   type: markup | ||||||
|  |   group: Groff | ||||||
|  |   tm_scope: "source.pic" | ||||||
|  |   extensions: | ||||||
|  |   - ".pic" | ||||||
|  |   - ".chem" | ||||||
|  |   ace_mode: text | ||||||
|  |   codemirror_mode: troff | ||||||
|  |   codemirror_mime_type: text/troff | ||||||
|  |   language_id: 425 | ||||||
| Pickle: | Pickle: | ||||||
|   type: data |   type: data | ||||||
|   extensions: |   extensions: | ||||||
| @@ -3305,6 +3306,8 @@ Public Key: | |||||||
|   - ".pub" |   - ".pub" | ||||||
|   tm_scope: none |   tm_scope: none | ||||||
|   ace_mode: text |   ace_mode: text | ||||||
|  |   codemirror_mode: asciiarmor | ||||||
|  |   codemirror_mime_type: application/pgp | ||||||
|   language_id: 298 |   language_id: 298 | ||||||
| Puppet: | Puppet: | ||||||
|   type: programming |   type: programming | ||||||
| @@ -3697,7 +3700,6 @@ SCSS: | |||||||
|   codemirror_mime_type: text/x-scss |   codemirror_mime_type: text/x-scss | ||||||
|   extensions: |   extensions: | ||||||
|   - ".scss" |   - ".scss" | ||||||
|   color: "#CF649A" |  | ||||||
|   language_id: 329 |   language_id: 329 | ||||||
| SMT: | SMT: | ||||||
|   type: programming |   type: programming | ||||||
| @@ -3823,7 +3825,6 @@ Sass: | |||||||
|   ace_mode: sass |   ace_mode: sass | ||||||
|   codemirror_mode: sass |   codemirror_mode: sass | ||||||
|   codemirror_mime_type: text/x-sass |   codemirror_mime_type: text/x-sass | ||||||
|   color: "#CF649A" |  | ||||||
|   language_id: 340 |   language_id: 340 | ||||||
| Scala: | Scala: | ||||||
|   type: programming |   type: programming | ||||||
| @@ -3950,7 +3951,6 @@ Slash: | |||||||
| Slim: | Slim: | ||||||
|   group: HTML |   group: HTML | ||||||
|   type: markup |   type: markup | ||||||
|   color: "#ff8f77" |  | ||||||
|   extensions: |   extensions: | ||||||
|   - ".slim" |   - ".slim" | ||||||
|   tm_scope: text.slim |   tm_scope: text.slim | ||||||
| @@ -4058,6 +4058,28 @@ SubRip Text: | |||||||
|   ace_mode: text |   ace_mode: text | ||||||
|   tm_scope: text.srt |   tm_scope: text.srt | ||||||
|   language_id: 360 |   language_id: 360 | ||||||
|  | Sublime Text Config: | ||||||
|  |   type: data | ||||||
|  |   group: JSON | ||||||
|  |   tm_scope: source.js | ||||||
|  |   ace_mode: javascript | ||||||
|  |   codemirror_mode: javascript | ||||||
|  |   codemirror_mime_type: text/javascript | ||||||
|  |   extensions: | ||||||
|  |   - ".sublime-build" | ||||||
|  |   - ".sublime-commands" | ||||||
|  |   - ".sublime-completions" | ||||||
|  |   - ".sublime-keymap" | ||||||
|  |   - ".sublime-macro" | ||||||
|  |   - ".sublime-menu" | ||||||
|  |   - ".sublime-mousemap" | ||||||
|  |   - ".sublime-project" | ||||||
|  |   - ".sublime-settings" | ||||||
|  |   - ".sublime-theme" | ||||||
|  |   - ".sublime-workspace" | ||||||
|  |   - ".sublime_metrics" | ||||||
|  |   - ".sublime_session" | ||||||
|  |   language_id: 423 | ||||||
| SuperCollider: | SuperCollider: | ||||||
|   type: programming |   type: programming | ||||||
|   color: "#46390b" |   color: "#46390b" | ||||||
| @@ -4090,6 +4112,17 @@ SystemVerilog: | |||||||
|   codemirror_mode: verilog |   codemirror_mode: verilog | ||||||
|   codemirror_mime_type: text/x-systemverilog |   codemirror_mime_type: text/x-systemverilog | ||||||
|   language_id: 363 |   language_id: 363 | ||||||
|  | TI Program: | ||||||
|  |   type: programming | ||||||
|  |   ace_mode: text | ||||||
|  |   color: "#A0AA87" | ||||||
|  |   extensions: | ||||||
|  |   - ".8xp" | ||||||
|  |   - ".8xk" | ||||||
|  |   - ".8xk.txt" | ||||||
|  |   - ".8xp.txt" | ||||||
|  |   language_id: 422 | ||||||
|  |   tm_scope: none | ||||||
| TLA: | TLA: | ||||||
|   type: programming |   type: programming | ||||||
|   extensions: |   extensions: | ||||||
| @@ -4272,7 +4305,6 @@ Unified Parallel C: | |||||||
|   ace_mode: c_cpp |   ace_mode: c_cpp | ||||||
|   codemirror_mode: clike |   codemirror_mode: clike | ||||||
|   codemirror_mime_type: text/x-csrc |   codemirror_mime_type: text/x-csrc | ||||||
|   color: "#4e3617" |  | ||||||
|   extensions: |   extensions: | ||||||
|   - ".upc" |   - ".upc" | ||||||
|   tm_scope: source.c |   tm_scope: source.c | ||||||
|   | |||||||
| @@ -15,6 +15,9 @@ | |||||||
| # Dependencies | # Dependencies | ||||||
| - ^[Dd]ependencies/ | - ^[Dd]ependencies/ | ||||||
|  |  | ||||||
|  | # Distributions | ||||||
|  | - (^|/)dist/ | ||||||
|  |  | ||||||
| # C deps | # C deps | ||||||
| #  https://github.com/joyent/node | #  https://github.com/joyent/node | ||||||
| - ^deps/ | - ^deps/ | ||||||
|   | |||||||
							
								
								
									
										72
									
								
								samples/CSON/base.cson
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								samples/CSON/base.cson
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,72 @@ | |||||||
|  | 'atom-text-editor': | ||||||
|  |   # Platform Bindings | ||||||
|  |   'home': 'editor:move-to-first-character-of-line' | ||||||
|  |   'end': 'editor:move-to-end-of-screen-line' | ||||||
|  |   'shift-home': 'editor:select-to-first-character-of-line' | ||||||
|  |   'shift-end': 'editor:select-to-end-of-line' | ||||||
|  |  | ||||||
|  | 'atom-text-editor:not([mini])': | ||||||
|  |   # Atom Specific | ||||||
|  |   'ctrl-C': 'editor:copy-path' | ||||||
|  |  | ||||||
|  |   # Sublime Parity | ||||||
|  |   'tab': 'editor:indent' | ||||||
|  |   'enter': 'editor:newline' | ||||||
|  |   'shift-tab': 'editor:outdent-selected-rows' | ||||||
|  |   'ctrl-K': 'editor:delete-line' | ||||||
|  |  | ||||||
|  | '.select-list atom-text-editor[mini]': | ||||||
|  |   'enter': 'core:confirm' | ||||||
|  |  | ||||||
|  | '.tool-panel.panel-left, .tool-panel.panel-right': | ||||||
|  |   'escape': 'tool-panel:unfocus' | ||||||
|  |  | ||||||
|  | 'atom-text-editor !important, atom-text-editor[mini] !important': | ||||||
|  |   'escape': 'editor:consolidate-selections' | ||||||
|  |  | ||||||
|  | # allow standard input fields to work correctly | ||||||
|  | 'body .native-key-bindings': | ||||||
|  |   'tab': 'core:focus-next' | ||||||
|  |   'shift-tab': 'core:focus-previous' | ||||||
|  |   'enter': 'native!' | ||||||
|  |   'backspace': 'native!' | ||||||
|  |   'shift-backspace': 'native!' | ||||||
|  |   'delete': 'native!' | ||||||
|  |   'up': 'native!' | ||||||
|  |   'down': 'native!' | ||||||
|  |   'shift-up': 'native!' | ||||||
|  |   'shift-down': 'native!' | ||||||
|  |   'alt-up': 'native!' | ||||||
|  |   'alt-down': 'native!' | ||||||
|  |   'alt-shift-up': 'native!' | ||||||
|  |   'alt-shift-down': 'native!' | ||||||
|  |   'cmd-up': 'native!' | ||||||
|  |   'cmd-down': 'native!' | ||||||
|  |   'cmd-shift-up': 'native!' | ||||||
|  |   'cmd-shift-down': 'native!' | ||||||
|  |   'ctrl-up': 'native!' | ||||||
|  |   'ctrl-down': 'native!' | ||||||
|  |   'ctrl-shift-up': 'native!' | ||||||
|  |   'ctrl-shift-down': 'native!' | ||||||
|  |   'left': 'native!' | ||||||
|  |   'right': 'native!' | ||||||
|  |   'shift-left': 'native!' | ||||||
|  |   'shift-right': 'native!' | ||||||
|  |   'alt-left': 'native!' | ||||||
|  |   'alt-right': 'native!' | ||||||
|  |   'alt-shift-left': 'native!' | ||||||
|  |   'alt-shift-right': 'native!' | ||||||
|  |   'cmd-left': 'native!' | ||||||
|  |   'cmd-right': 'native!' | ||||||
|  |   'cmd-shift-left': 'native!' | ||||||
|  |   'cmd-shift-right': 'native!' | ||||||
|  |   'ctrl-left': 'native!' | ||||||
|  |   'ctrl-right': 'native!' | ||||||
|  |   'ctrl-shift-left': 'native!' | ||||||
|  |   'ctrl-shift-right': 'native!' | ||||||
|  |   'ctrl-b': 'native!' | ||||||
|  |   'ctrl-f': 'native!' | ||||||
|  |   'ctrl-F': 'native!' | ||||||
|  |   'ctrl-B': 'native!' | ||||||
|  |   'ctrl-h': 'native!' | ||||||
|  |   'ctrl-d': 'native!' | ||||||
							
								
								
									
										59
									
								
								samples/CSON/config.cson
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								samples/CSON/config.cson
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,59 @@ | |||||||
|  | directoryIcons: | ||||||
|  |  | ||||||
|  | 	Atom: | ||||||
|  | 		icon: "atom" | ||||||
|  | 		match: /^\.atom$/ | ||||||
|  | 		colour: "dark-green" | ||||||
|  |  | ||||||
|  | 	Bower: | ||||||
|  | 		icon: "bower" | ||||||
|  | 		match: /^bower[-_]components$/ | ||||||
|  | 		colour: "bower" | ||||||
|  |  | ||||||
|  | 	Dropbox: | ||||||
|  | 		icon: "dropbox" | ||||||
|  | 		match: /^(?:Dropbox|\.dropbox\.cache)$/ | ||||||
|  | 		colour: "medium-blue" | ||||||
|  |  | ||||||
|  | 	Git: | ||||||
|  | 		icon: "git" | ||||||
|  | 		match: /^\.git$/ | ||||||
|  |  | ||||||
|  | 	GitHub: | ||||||
|  | 		icon: "github" | ||||||
|  | 		match: /^\.github$/ | ||||||
|  |  | ||||||
|  | 	Meteor: | ||||||
|  | 		icon: "meteor" | ||||||
|  | 		match: /^\.meteor$/ | ||||||
|  |  | ||||||
|  | 	NodeJS: | ||||||
|  | 		icon: "node" | ||||||
|  | 		match: /^node_modules$/ | ||||||
|  | 		colour: "medium-green" | ||||||
|  |  | ||||||
|  | 	Package: | ||||||
|  | 		icon: "package" | ||||||
|  | 		match: /^\.bundle$/i | ||||||
|  |  | ||||||
|  | 	TextMate: | ||||||
|  | 		icon: "textmate" | ||||||
|  | 		match: ".tmBundle" | ||||||
|  |  | ||||||
|  |  | ||||||
|  | fileIcons: | ||||||
|  |  | ||||||
|  | 	ABAP: | ||||||
|  | 		icon: "abap" | ||||||
|  | 		scope: "abp" | ||||||
|  | 		match: ".abap" | ||||||
|  | 		colour: "medium-orange" | ||||||
|  |  | ||||||
|  | 	ActionScript: # Or Flash-related | ||||||
|  | 		icon: "as" | ||||||
|  | 		match: [ | ||||||
|  | 			[".swf", "medium-blue"] | ||||||
|  | 			[".as", "medium-red", scope: /\.(?:flex-config|actionscript(?:\.\d+)?)$/i, alias: /ActionScript\s?3|as3/i] | ||||||
|  | 			[".jsfl", "auto-yellow"] | ||||||
|  | 			[".swc", "dark-red"] | ||||||
|  | 		] | ||||||
							
								
								
									
										108
									
								
								samples/CSON/ff-sfd.cson
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										108
									
								
								samples/CSON/ff-sfd.cson
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,108 @@ | |||||||
|  | name: "Spline Font Database" | ||||||
|  | scopeName: "text.sfd" | ||||||
|  | fileTypes: ["sfd"] | ||||||
|  | firstLineMatch: "^SplineFontDB: [\\d.]+" | ||||||
|  | patterns: [include: "#main"] | ||||||
|  |  | ||||||
|  | repository: | ||||||
|  | 	main: | ||||||
|  | 		patterns: [ | ||||||
|  | 			{include: "#punctuation"} | ||||||
|  | 			{include: "#private"} | ||||||
|  | 			{include: "#image"} | ||||||
|  | 			{include: "#pickleData"} | ||||||
|  | 			{include: "#sections"} | ||||||
|  | 			{include: "#copyright"} | ||||||
|  | 			{include: "#property"} | ||||||
|  | 			{include: "#control"} | ||||||
|  | 			{include: "#address"} | ||||||
|  | 			{include: "#encoding"} | ||||||
|  | 			{include: "source.fontforge#shared"} | ||||||
|  | 			{include: "#colour"} | ||||||
|  | 		] | ||||||
|  | 	 | ||||||
|  | 	punctuation: | ||||||
|  | 		patterns: [ | ||||||
|  | 			{match: "<|>",  name: "punctuation.definition.brackets.angle.sfd"} | ||||||
|  | 			{match: "[{}]", name: "punctuation.definition.brackets.curly.sfd"} | ||||||
|  | 		] | ||||||
|  |  | ||||||
|  | 	private: | ||||||
|  | 		name: "meta.section.private.sfd" | ||||||
|  | 		begin: "^BeginPrivate(?=:)" | ||||||
|  | 		end:   "^EndPrivate\\b" | ||||||
|  | 		beginCaptures: 0: name: "keyword.control.begin.private.sfd" | ||||||
|  | 		endCaptures:   0: name: "keyword.control.end.private.sfd" | ||||||
|  | 		patterns: [ | ||||||
|  | 			{match: "^\\S+", name: "entity.name.private.property.sfd"} | ||||||
|  | 			{include: "$self"} | ||||||
|  | 		] | ||||||
|  | 	 | ||||||
|  | 	image: | ||||||
|  | 		name: "meta.image.sfd" | ||||||
|  | 		begin: "^(Image)(?=:)(.+)$" | ||||||
|  | 		end:   "^(EndImage)\\b" | ||||||
|  | 		contentName: "string.unquoted.raw.data.sfd" | ||||||
|  | 		beginCaptures: | ||||||
|  | 			1: name: "keyword.control.begin.image.sfd" | ||||||
|  | 			2: patterns: [include: "$self"] | ||||||
|  | 		endCaptures: | ||||||
|  | 			1: name: "keyword.control.end.image.sfd" | ||||||
|  |  | ||||||
|  | 	pickleData: | ||||||
|  | 		name: "meta.pickle-data.sfd" | ||||||
|  | 		begin: "^(PickledData)(:)\\s*(\")" | ||||||
|  | 		end:   '"' | ||||||
|  | 		beginCaptures: | ||||||
|  | 			1: name: "entity.name.property.sfd" | ||||||
|  | 			2: name: "punctuation.separator.dictionary.key-value.sfd" | ||||||
|  | 			3: name: "punctuation.definition.string.begin.sfd" | ||||||
|  | 		endCaptures: | ||||||
|  | 			0: name: "punctuation.definition.string.end.sfd" | ||||||
|  | 		patterns: [match: "\\\\.", name: "constant.character.escape.sfd"] | ||||||
|  |  | ||||||
|  | 	sections: | ||||||
|  | 		name: "meta.section.${2:/downcase}.sfd" | ||||||
|  | 		begin: "^(Start|Begin)([A-Z]\\w+)(?=:)" | ||||||
|  | 		end:   "^(End\\2)\\b" | ||||||
|  | 		beginCaptures: 0: name: "keyword.control.begin.${2:/downcase}.sfd" | ||||||
|  | 		endCaptures:   0: name: "keyword.control.end.${2:/downcase}.sfd" | ||||||
|  | 		patterns: [include: "$self"] | ||||||
|  |  | ||||||
|  | 	control: | ||||||
|  | 		name: "keyword.control.${1:/downcase}.sfd" | ||||||
|  | 		match: "\\b(Fore|Back|SplineSet|^End\\w+)\\b" | ||||||
|  |  | ||||||
|  | 	colour: | ||||||
|  | 		name: "constant.other.hex.colour.sfd" | ||||||
|  | 		match: "(#)[A-Fa-f0-9]{3,}|(?<=\\s)[A-Fa-f0-9]{6,8}" | ||||||
|  | 		captures: | ||||||
|  | 			1: name: "punctuation.definition.colour.sfd" | ||||||
|  |  | ||||||
|  | 	encoding: | ||||||
|  | 		name: "constant.language.encoding.sfd" | ||||||
|  | 		match: "(?i)\\b(ISO[-\\w]+)(?<=\\d)(?=\\s|$)" | ||||||
|  |  | ||||||
|  | 	# Don't highlight numbers in freeform strings (years/version strings) | ||||||
|  | 	copyright: | ||||||
|  | 		name: "meta.${1:/downcase}-string.sfd" | ||||||
|  | 		begin: "^(Copyright|U?Comments?|\\w+Name)(:)" | ||||||
|  | 		end:   "$" | ||||||
|  | 		beginCaptures: | ||||||
|  | 			1: name: "entity.name.property.sfd" | ||||||
|  | 			2: name: "punctuation.separator.dictionary.key-value.sfd" | ||||||
|  | 		patterns: [include: "source.fontforge#stringEscapes"] | ||||||
|  | 	 | ||||||
|  | 	# No idea what this is, but it looks distracting without a fix | ||||||
|  | 	# Assuming it's referring to a memory register or something. | ||||||
|  | 	address: | ||||||
|  | 		match: "\\d+[xX][A-Fa-f0-9]+" | ||||||
|  | 		name: "constant.numeric.hexadecimal.sfd" | ||||||
|  | 	 | ||||||
|  | 	property: | ||||||
|  | 		match: "^([^:]+)(:)" | ||||||
|  | 		name: "meta.dictionary.key-value.sfd" | ||||||
|  | 		captures: | ||||||
|  | 			1: name: "entity.name.property.sfd" | ||||||
|  | 			2: name: "punctuation.separator.dictionary.key-value.sfd" | ||||||
|  | 	 | ||||||
							
								
								
									
										11
									
								
								samples/CSON/wercker-status.cson
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								samples/CSON/wercker-status.cson
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,11 @@ | |||||||
|  | 'menu': [ | ||||||
|  |   { | ||||||
|  |     'label': 'Packages' | ||||||
|  |     'submenu': [ | ||||||
|  |       'label': 'Wercker Status' | ||||||
|  |       'submenu': [ | ||||||
|  |         { 'label': 'Check now!', 'command': 'wercker-status:checknow' } | ||||||
|  |       ] | ||||||
|  |     ] | ||||||
|  |   } | ||||||
|  | ] | ||||||
							
								
								
									
										60
									
								
								samples/Julia/julia
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								samples/Julia/julia
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,60 @@ | |||||||
|  | #!/usr/bin/env julia | ||||||
|  |  | ||||||
|  | # From https://github.com/JoshCheek/language-sampler-for-fullpath/blob/b766dcdbd249ec63516f491390a75315e78cba95/julia/fullpath | ||||||
|  | help_screen = """ | ||||||
|  | usage: fullpath *[relative-paths] [-c] | ||||||
|  |  | ||||||
|  |   Prints the fullpath of the paths | ||||||
|  |   If no paths are given as args, it will read them from stdin | ||||||
|  |  | ||||||
|  |   If there is only one path, the trailing newline is omitted | ||||||
|  |  | ||||||
|  |   The -c flag will copy the results into your pasteboard | ||||||
|  | """ | ||||||
|  |  | ||||||
|  | help  = false | ||||||
|  | copy  = false | ||||||
|  | dir   = pwd() | ||||||
|  | paths = [] | ||||||
|  |  | ||||||
|  | for arg = ARGS | ||||||
|  |   if arg == "-h" || arg == "--help" | ||||||
|  |     help = true | ||||||
|  |   elseif arg == "-c" || arg == "--copy" | ||||||
|  |     copy = true | ||||||
|  |   elseif arg != "" | ||||||
|  |     push!(paths, arg) | ||||||
|  |   end | ||||||
|  | end | ||||||
|  |  | ||||||
|  | if help | ||||||
|  |   print(help_screen) | ||||||
|  |   exit() | ||||||
|  | end | ||||||
|  |  | ||||||
|  | function notempty(string) | ||||||
|  |   return !isempty(string) | ||||||
|  | end | ||||||
|  |  | ||||||
|  | if length(paths) == 0 | ||||||
|  |   paths = filter(notempty, map(chomp, readlines())) | ||||||
|  | end | ||||||
|  |  | ||||||
|  | function print_paths(stream, paths) | ||||||
|  |   if length(paths) == 1 | ||||||
|  |     path = paths[1] | ||||||
|  |     print(stream, "$dir/$path") | ||||||
|  |   else | ||||||
|  |     for path = paths | ||||||
|  |       println(stream, "$dir/$path") | ||||||
|  |     end | ||||||
|  |   end | ||||||
|  | end | ||||||
|  |  | ||||||
|  | if copy | ||||||
|  |   read, write, process = readandwrite(`pbcopy`) | ||||||
|  |   print_paths(write, paths) | ||||||
|  |   close(write) | ||||||
|  | end | ||||||
|  |  | ||||||
|  | print_paths(STDOUT, paths) | ||||||
							
								
								
									
										13
									
								
								samples/Pic/dextroamphetamine.chem
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								samples/Pic/dextroamphetamine.chem
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,13 @@ | |||||||
|  | # Dextroamphetamine molecule | ||||||
|  | .cstart | ||||||
|  | 	.ps 26 | ||||||
|  | 	size 28 | ||||||
|  | R1: | ||||||
|  | 	ring double 1,2 3,4 5,6 | ||||||
|  | 	bond 60 from R1.V2 | ||||||
|  | 	bond 120 | ||||||
|  | A1: | ||||||
|  | 	front bond down ; CH3 | ||||||
|  | 	bond 60 from A1 ; NH2 | ||||||
|  | 	.ps | ||||||
|  | .cend | ||||||
							
								
								
									
										25
									
								
								samples/Pic/graph.pic
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								samples/Pic/graph.pic
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,25 @@ | |||||||
|  | .PS | ||||||
|  | 	ellipse "Pic" "example" | ||||||
|  | 	arrow | ||||||
|  | 	box "This is" "a box"  | ||||||
|  | 	arrow right | ||||||
|  | 	box "Another" "box" dashed | ||||||
|  | 	move down then right; | ||||||
|  | Thing: ellipse "This is a" "circle-thing" | ||||||
|  | 	arrow <-> from last box.r to Thing.l | ||||||
|  | 	move down then left; | ||||||
|  | B: box "Still a box" | ||||||
|  | 	arrow from Thing.l to B.r | ||||||
|  | 	sprintf("Width = %g, Height = %g ", B.wid, B.ht) rjust at B.w | ||||||
|  | 	move down | ||||||
|  | .ps 15 | ||||||
|  | 	define sadness { | ||||||
|  | 		boxwid = 3; | ||||||
|  | 		boxht = 1; | ||||||
|  | 		textht = .5; | ||||||
|  | 		box "\"I run from my depression by" " " "burying myself in code\"" | ||||||
|  | 		arrow down from last box.s | ||||||
|  | 		"Me" | ||||||
|  | 	} | ||||||
|  | 	sadness(); | ||||||
|  | .PE | ||||||
							
								
								
									
										15
									
								
								samples/Pic/ritalin.chem
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								samples/Pic/ritalin.chem
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,15 @@ | |||||||
|  | .\" RITALIN: Methylphenidate Hydrochloride | ||||||
|  | .cstart | ||||||
|  | .ps 15 | ||||||
|  | size 15 | ||||||
|  | 	R1: ring double 1,2 3,4 5,6 pointing up | ||||||
|  | 	bond 60 length .35 from R1.V2 ; BP | ||||||
|  | 	bond 120 length .35 from BP | ||||||
|  | 	R2: ring pointing up put N at 1 | ||||||
|  | 	H above R2 | ||||||
|  | 	bond up  length .35 from BP ; BP | ||||||
|  | 	bond -60 length .35 from BP ; O | ||||||
|  | 	bond up | ||||||
|  | 	double bond 60 length .35 from BP ; O | ||||||
|  | .ps 10 | ||||||
|  | .cend | ||||||
							
								
								
									
										14
									
								
								samples/Sublime Text Config/AMPL.sublime-build
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								samples/Sublime Text Config/AMPL.sublime-build
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | |||||||
|  | { | ||||||
|  | 	"cmd": ["ampl", "${file_path}/${file_base_name}.run"], | ||||||
|  | 	"file_regex": "^(?:[(]file )*[ ]*(...*?), line ([0-9]*)", | ||||||
|  | 	"selector": "source.ampl", | ||||||
|  |  | ||||||
|  | 	"osx": | ||||||
|  | 	{ | ||||||
|  | 		"env": | ||||||
|  | 		{ | ||||||
|  | 			// "ILOG_LICENSE_FILE": "path/to/access.ilm" | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | } | ||||||
							
								
								
									
										8
									
								
								samples/Sublime Text Config/CLIPS.sublime-settings
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								samples/Sublime Text Config/CLIPS.sublime-settings
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | |||||||
|  | { | ||||||
|  | 	"extensions": | ||||||
|  | 	[ | ||||||
|  | 		"clp" | ||||||
|  | 	], | ||||||
|  | 	"tab_size": 8, | ||||||
|  | 	"translate_tabs_to_spaces": false | ||||||
|  | } | ||||||
							
								
								
									
										13
									
								
								samples/Sublime Text Config/Context.sublime-menu
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								samples/Sublime Text Config/Context.sublime-menu
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,13 @@ | |||||||
|  | [ | ||||||
|  | { | ||||||
|  | 	"id" : "nasm", | ||||||
|  | 	"caption": "NASM Assembly", | ||||||
|  | 	"children": | ||||||
|  | 	[ | ||||||
|  | 	{ | ||||||
|  | 		"caption" : "Documentation", | ||||||
|  | 		"command" : "assembly_doc" | ||||||
|  | 	} | ||||||
|  | 	] | ||||||
|  | } | ||||||
|  | ] | ||||||
							
								
								
									
										30
									
								
								samples/Sublime Text Config/Dart.sublime-commands
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								samples/Sublime Text Config/Dart.sublime-commands
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | |||||||
|  | [ | ||||||
|  | 	{ "caption": "Dart: Polymer: Generate Element", "command": "dart_generate_polymer_element" }, | ||||||
|  | 	{ "caption": "Dart: Polymer: Add Entry Point", "command": "dart_add_polymer_entry_point" }, | ||||||
|  |  | ||||||
|  | 	{ "caption": "Dart: Check Configuration", "command": "dart_check_config" }, | ||||||
|  | 	{ "caption": "Dart: Browse API Reference", "command": "dart_open_browser", "args": {"url": "https://api.dartlang.org/apidocs/channels/stable/dartdoc-viewer/home" } }, | ||||||
|  | 	{ "caption": "Dart: Set Default User Browser", "command": "dart_show_user_browsers" }, | ||||||
|  |  | ||||||
|  | 	{ "caption": "Preferences: Dart Settings - Default", "command": "dart_open_settings", "args": {"kind": "default"} }, | ||||||
|  | 	{ "caption": "Preferences: Dart Settings - User", "command": "dart_open_settings", "args": {"kind": "user"} }, | ||||||
|  | 	{ "caption": "Preferences: Dart Settings - File Type (User)", "command": "dart_open_settings", "args": {"kind": "user", "scope": "file_type"} }, | ||||||
|  |  | ||||||
|  | 	{ "caption": "Dart: Run", "command": "dart_smart_run" }, | ||||||
|  | 	{ "caption": "Dart: Run (This File)", "command": "dart_smart_run", "args": {"force_update": true} }, | ||||||
|  | 	{ "caption": "Dart: Stop", "command": "dart_smart_run", "args": {"kill_only": true} }, | ||||||
|  |  | ||||||
|  | 	{ "caption": "Dart: Run In Observatory (This File)", "command": "dart_run_in_observatory" }, | ||||||
|  |  | ||||||
|  | 	{ "caption": "Dart: Show Output Panel", "command": "show_panel", "args": {"panel": "output.dart.out"} }, | ||||||
|  | 	{ "caption": "Dart: Show Errors Panel", "command": "show_panel", "args": {"panel": "output.dart.errors"} }, | ||||||
|  |  | ||||||
|  | 	{ "caption": "Dart: Format", "command": "dart_format" }, | ||||||
|  |  | ||||||
|  | 	{ "caption": "Dart: Generate Documentation", "command": "dart_generate_docs" }, | ||||||
|  | 	{ "caption": "Dart: Serve Documentation", "command": "dart_serve_docs" }, | ||||||
|  |  | ||||||
|  | 	{ "caption": "Dart: Stagehand", "command": "dart_stagehand_wizard" }, | ||||||
|  |  | ||||||
|  | 	{ "caption": "Dart: Pub Get", "command": "dart_pub_get" } | ||||||
|  | ] | ||||||
							
								
								
									
										40
									
								
								samples/Sublime Text Config/Dart.sublime-project
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								samples/Sublime Text Config/Dart.sublime-project
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,40 @@ | |||||||
|  | { | ||||||
|  | 	"folders": | ||||||
|  | 	[ | ||||||
|  | 		{ | ||||||
|  | 			"follow_symlinks": true, | ||||||
|  | 			"path": "." | ||||||
|  | 		} | ||||||
|  | 	], | ||||||
|  |  | ||||||
|  | 	"SublimeLinter": | ||||||
|  | 	{ | ||||||
|  | 		"@python": 3.4 | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	"build_systems": | ||||||
|  | 	[ | ||||||
|  | 		{ | ||||||
|  | 			"name": "Run", | ||||||
|  | 			"shell_cmd": "\"$project_path/scripts/build.sh\"", | ||||||
|  | 			"windows": | ||||||
|  | 			{ | ||||||
|  | 				"shell_cmd": "powershell -noninteractive -file \"$project_path\\build.ps1\"" | ||||||
|  | 			}, | ||||||
|  | 			"working_dir": "${project_path}", | ||||||
|  |  | ||||||
|  | 			"variants": [ | ||||||
|  | 				{ | ||||||
|  | 					"name": "Dart: Test (All)", | ||||||
|  | 					"target": "run_dart_tests", | ||||||
|  | 				}, | ||||||
|  |  | ||||||
|  | 				{ | ||||||
|  | 					"name": "Dart: Test (This File Only)", | ||||||
|  | 					"target": "run_dart_tests", | ||||||
|  | 					"active_file_only": true | ||||||
|  | 				} | ||||||
|  | 			] | ||||||
|  | 		} | ||||||
|  | 	] | ||||||
|  | } | ||||||
| @@ -0,0 +1,7 @@ | |||||||
|  | [ | ||||||
|  | 	{ | ||||||
|  | 		"button": "button1", "count": 1, "modifiers": ["alt"], | ||||||
|  | 		"press_command": "drag_select", | ||||||
|  | 		"command": "robot_go_to_keyword" | ||||||
|  | 	} | ||||||
|  | ] | ||||||
							
								
								
									
										6
									
								
								samples/Sublime Text Config/Default.sublime-keymap
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								samples/Sublime Text Config/Default.sublime-keymap
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | |||||||
|  | [ | ||||||
|  | 	// Disable auto-pair for single quote | ||||||
|  | 	{ "keys": ["'"], "command": "insert_snippet", "args": {"contents": "'"}, "context": | ||||||
|  | 		[{ "key": "selector", "operator": "equal", "operand": "source.rust" }] | ||||||
|  | 	} | ||||||
|  | ] | ||||||
| @@ -0,0 +1,6 @@ | |||||||
|  | [ | ||||||
|  | 	{"command": "move_to", "args": {"to": "hardeol"}}, | ||||||
|  | 	{"command": "insert", "args": {"characters": "\n"}}, | ||||||
|  | 	{"command": "insert", "args": {"characters": "*"}}, | ||||||
|  | 	{"command": "insert", "args": {"characters": " "}} | ||||||
|  | ] | ||||||
							
								
								
									
										5
									
								
								samples/Sublime Text Config/RunBuild.sublime-macro
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								samples/Sublime Text Config/RunBuild.sublime-macro
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | |||||||
|  | [ | ||||||
|  | 	{ | ||||||
|  | 		"command": "haxe_run_build" | ||||||
|  | 	} | ||||||
|  | ] | ||||||
							
								
								
									
										19
									
								
								samples/Sublime Text Config/SourcePawn.sublime-build
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								samples/Sublime Text Config/SourcePawn.sublime-build
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | |||||||
|  | { | ||||||
|  | 	// For default sourcemod scripting directory : | ||||||
|  | 	"cmd": ["<spcomp_path>", "-o$file_path/../plugins/$file_name", "$file"], | ||||||
|  |  | ||||||
|  | 	// For custom sourcemod  scripting directory : | ||||||
|  | 	"cmd": ["<spcomp_path>", "-i<include_path>", "-o$file_path/$file_base_name.smx", "$file"], | ||||||
|  |  | ||||||
|  | 	// Windows example: | ||||||
|  | 	"cmd": ["X:/somefolder/spcomp", "-iX:/somefolder", "-o$file_path/$file_base_name.smx", "$file"], | ||||||
|  | 	"cmd": ["X:/game/csgo/addons/sourcemod/scripting/spcomp", "-o$file_path/../plugins/$file_name", "$file"], | ||||||
|  |  | ||||||
|  | 	// Linux or OSX example: | ||||||
|  | 	"cmd": ["/home/User/sm/spcomp", "-i/home/User/sm/include", "-o$file_path/$file_base_name.smx", "$file"], | ||||||
|  | 	"cmd": ["/home/User/game/csgo/addons/sourcemod/scripting/spcomp", "-o$file_path/../plugins/$file_name", "$file"], | ||||||
|  |  | ||||||
|  |  | ||||||
|  | 	"file_regex": "(.*)\\((\\d+)\\) :", | ||||||
|  | 	"selector": "source.sp" | ||||||
|  | } | ||||||
							
								
								
									
										861
									
								
								samples/Sublime Text Config/Tubnil.sublime-theme
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										861
									
								
								samples/Sublime Text Config/Tubnil.sublime-theme
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,861 @@ | |||||||
|  | [ | ||||||
|  | 	//	Tubnil theme for Sublime Text 2 | ||||||
|  | 	//	https://github.com/nilium/st2-nil-theme | ||||||
|  | 	// | ||||||
|  | 	//	TABS | ||||||
|  | 	//	========================================================== | ||||||
|  | 	//	- Tabset | ||||||
|  | 	//	------------------------------------------------------ | ||||||
|  | 	{ | ||||||
|  | 		"class": "tabset_control", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/tabset-bg.png", | ||||||
|  | 		"layer0.inner_margin": [2, 6], | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"content_margin": [-13, 0, -13,-6], // left, top, right, bottom | ||||||
|  | 		"tab_overlap": 25, | ||||||
|  | 		"tab_width": 150, | ||||||
|  | 		"tab_min_width": 50, | ||||||
|  | 		"tab_height": 35, | ||||||
|  | 		"mouse_wheel_switch": false | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "tabset_control", | ||||||
|  | 		"settings": ["mouse_wheel_switches_tabs"], | ||||||
|  | 		"mouse_wheel_switch": true | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	//	- Tab element | ||||||
|  | 	//	------------------------------------------------------ | ||||||
|  | 	{ | ||||||
|  | 		"class": "tab_control", | ||||||
|  | 		"content_margin": [25, 0, 25, 0], | ||||||
|  | 		"max_margin_trim": 0, | ||||||
|  | 		"hit_test_level": 0.5, | ||||||
|  |  | ||||||
|  | 		//	- Inactive tab settings | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/tab-inactive.png", | ||||||
|  | 		"layer0.inner_margin": [23, 8], | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  |  | ||||||
|  | 		//	- Active tab setting | ||||||
|  | 		"layer1.texture": "SourcePawn/assets/tab-active.png", | ||||||
|  | 		"layer1.inner_margin": [23, 8], | ||||||
|  | 		"layer1.opacity": 0.0, | ||||||
|  |  | ||||||
|  | 		//	- Hover tab setting | ||||||
|  | 		"layer2.texture": "SourcePawn/assets/tab-hover.png", | ||||||
|  | 		"layer2.inner_margin": [23, 8], | ||||||
|  | 		"layer2.opacity": 0.0 | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		//	- Tab close state | ||||||
|  | 		"class": "tab_control", | ||||||
|  | 		"settings": ["show_tab_close_buttons"], | ||||||
|  | 		"content_margin": [20, 0, 20, 7] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		//	- Hover tab state | ||||||
|  | 		"class": "tab_control", | ||||||
|  | 		"attributes": ["hover"], | ||||||
|  | 		"layer2.opacity": 1.0 | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		//	- Active tab state | ||||||
|  | 		"class": "tab_control", | ||||||
|  | 		"attributes": ["selected"], | ||||||
|  | 		"layer0.opacity": 0.0, | ||||||
|  | 		"layer1.opacity": 1.0, | ||||||
|  | 		"layer2.opacity": 0.0 | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		//  - Modified tab state | ||||||
|  | 		"class": "tab_control", | ||||||
|  | 		//"settings": ["highlight_modified_tabs"], | ||||||
|  | 		"attributes": ["dirty"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/tab-inactive-modified.png", | ||||||
|  | 		"layer1.texture": "SourcePawn/assets/tab-active-modified.png", | ||||||
|  | 		"layer2.texture": "SourcePawn/assets/tab-hover-dirty.png" | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	//	- Tab labels | ||||||
|  | 	//	------------------------------------------------------ | ||||||
|  |  | ||||||
|  | 	//	- Inactive tab label | ||||||
|  | 	{ | ||||||
|  | 		"class": "tab_label", | ||||||
|  | 		"fg": [180, 180, 180], | ||||||
|  | 		"shadow_color": [0, 0, 0, 200], | ||||||
|  | 		"shadow_offset": [0, 1] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	//	- Active tab label | ||||||
|  | 	{ | ||||||
|  | 		"class": "tab_label", | ||||||
|  | 		"parents": [{"class": "tab_control", "attributes": ["selected"]}], | ||||||
|  | 		"shadow_color": [0, 0, 0, 165], | ||||||
|  | 		"shadow_offset": [0, 1], | ||||||
|  | 		"fg": [240, 240, 240, 255] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	//	- Hover tab label | ||||||
|  | 	{ | ||||||
|  | 		"class": "tab_label", | ||||||
|  | 		"parents": [{"class": "tab_control", "attributes": ["hover"]}], | ||||||
|  | 		"shadow_color": [0, 0, 0, 165], | ||||||
|  | 		"shadow_offset": [0, 1], | ||||||
|  | 		"fg": [2, 196, 251, 255] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	//	- Dirty Hover tab label | ||||||
|  | 	{ | ||||||
|  | 		"class": "tab_label", | ||||||
|  | 		"parents": [{"class": "tab_control", "attributes": ["hover", "dirty"]}], | ||||||
|  | 		"shadow_color": [0, 0, 0, 165], | ||||||
|  | 		"shadow_offset": [0, 1], | ||||||
|  | 		"fg": [253, 113, 1, 255] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	// - Dirty inactive tab label | ||||||
|  | 	{ | ||||||
|  | 		"class": "tab_label", | ||||||
|  | 		"parents": [{"class": "tab_control", "attributes": ["dirty"]}], | ||||||
|  | 		"settings": ["highlight_modified_tabs"] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	// - Dirty active tab label | ||||||
|  | 	{ | ||||||
|  | 		"class": "tab_label", | ||||||
|  | 		"parents": [{"class": "tab_control", "attributes": ["selected", "dirty"]}], | ||||||
|  | 		"settings": ["highlight_modified_tabs"] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	//	- Tab buttons | ||||||
|  | 	//	------------------------------------------------------ | ||||||
|  |  | ||||||
|  | 	//	- Tab button | ||||||
|  | 	{ | ||||||
|  | 		"class": "tab_close_button", | ||||||
|  | 		"content_margin": [0, 0], | ||||||
|  |  | ||||||
|  | 		//	- Tab close default settings | ||||||
|  | 		"layer1.texture": "SourcePawn/assets/tab-button-close.png", | ||||||
|  | 		"layer1.opacity": 0.0, // hide by default | ||||||
|  | 		"layer1.inner_margin": 0.0, | ||||||
|  |  | ||||||
|  | 		//	- Tab close hover settings | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/tab-button-close-hover.png", | ||||||
|  | 		"layer0.opacity": 0.0 | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		//	- Tab button size | ||||||
|  | 		"class": "tab_close_button", | ||||||
|  | 		"settings": ["show_tab_close_buttons"], | ||||||
|  | 		"content_margin": [8, 8] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "tab_close_button", | ||||||
|  | 		"parents": [{"class": "tab_control", "attributes": ["dirty"]}], | ||||||
|  | 		"layer1.texture": "SourcePawn/assets/tab-button-close-dirty.png" | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		//	- Tab close hover action | ||||||
|  | 		"class": "tab_close_button", | ||||||
|  | 		"parents": [{"class": "tab_control", "attributes": ["hover"]}], | ||||||
|  | 		"layer1.opacity": 0.0, | ||||||
|  | 		"layer0.opacity": 1.0 | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		//	- Tab close press action | ||||||
|  | 		"class": "tab_close_button", | ||||||
|  | 		"attributes": ["hover"], | ||||||
|  | 		"layer1.opacity": 0.4, | ||||||
|  | 		"layer0.opacity": 1.0 | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		//	- Tab close press action | ||||||
|  | 		"class": "tab_close_button", | ||||||
|  | 		"attributes": ["pressed"], | ||||||
|  | 		"layer1.opacity": 1.0, | ||||||
|  | 		"layer0.opacity": 0.0 | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	FOLD BUTTONS | ||||||
|  | //	========================================================== | ||||||
|  |  | ||||||
|  | 	{ | ||||||
|  | 		"class": "fold_button_control", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/arrow-right.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"layer0.inner_margin": 0, | ||||||
|  | 		"layer1.texture": "SourcePawn/assets/arrow-right-hover.png", | ||||||
|  | 		"layer1.opacity": 0.0, | ||||||
|  | 		"layer1.inner_margin": 0, | ||||||
|  | 		"content_margin": [9, 7, 8, 6] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "fold_button_control", | ||||||
|  | 		"attributes": ["hover"], | ||||||
|  | 		"layer0.opacity": 0.0, | ||||||
|  | 		"layer1.opacity": 0.75 | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "fold_button_control", | ||||||
|  | 		"attributes": ["pressed"], | ||||||
|  | 		"layer0.opacity": 0.0, | ||||||
|  | 		"layer1.opacity": 1.0 | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "fold_button_control", | ||||||
|  | 		"attributes": ["expanded"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/arrow-down.png", | ||||||
|  | 		"layer1.texture": "SourcePawn/assets/arrow-down-hover.png" | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	SCROLLBARS (overlay scrollbars from Default theme) | ||||||
|  | //	========================================================== | ||||||
|  | 	{ | ||||||
|  | 		"class": "scroll_bar_control", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/scrollbar/well-vertical.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"layer0.inner_margin": [1, 1], | ||||||
|  | 		"blur": false | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "scroll_bar_control", | ||||||
|  | 		"attributes": ["horizontal"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/scrollbar/well-horizontal.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"layer0.inner_margin": [1, 1], | ||||||
|  | 		"blur": false | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "scroll_corner_control", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/scrollbar/well-corner.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"layer0.inner_margin": [1, 1] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "puck_control", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/scrollbar/bar-vertical.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"layer0.inner_margin": [3, 3], | ||||||
|  | 		"content_margin": [6, 6], | ||||||
|  | 		"blur": false | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "puck_control", | ||||||
|  | 		"attributes": ["horizontal"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/scrollbar/bar-horizontal.png" | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "scroll_area_control", | ||||||
|  | 		"settings": ["overlay_scroll_bars"], | ||||||
|  | 		"overlay": true | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "scroll_area_control", | ||||||
|  | 		"settings": ["!overlay_scroll_bars"], | ||||||
|  | 		"overlay": false | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "scroll_bar_control", | ||||||
|  | 		"settings": ["overlay_scroll_bars"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/overlay/overlay_bar_vertical.png", | ||||||
|  | 		"layer0.inner_margin": [0, 5], | ||||||
|  | 		"blur": true | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "scroll_bar_control", | ||||||
|  | 		"settings": ["overlay_scroll_bars"], | ||||||
|  | 		"attributes": ["horizontal"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/overlay/overlay_bar_horizontal.png", | ||||||
|  | 		"layer0.inner_margin": [5, 0], | ||||||
|  | 		"blur": true | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "puck_control", | ||||||
|  | 		"settings": ["overlay_scroll_bars"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/overlay/overlay_thumb_vertical.png", | ||||||
|  | 		"layer0.inner_margin": [0, 5], | ||||||
|  | 		"content_margin": [5, 20], | ||||||
|  | 		"blur": true | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "puck_control", | ||||||
|  | 		"settings": ["overlay_scroll_bars"], | ||||||
|  | 		"attributes": ["horizontal"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/overlay/overlay_thumb_horizontal.png", | ||||||
|  | 		"layer0.inner_margin": [5, 0], | ||||||
|  | 		"content_margin": [20, 5], | ||||||
|  | 		"blur": true | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "puck_control", | ||||||
|  | 		"settings": ["overlay_scroll_bars"], | ||||||
|  | 		"attributes": ["dark"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/overlay/overlay_dark_thumb_vertical.png" | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "puck_control", | ||||||
|  | 		"settings": ["overlay_scroll_bars"], | ||||||
|  | 		"attributes": ["horizontal", "dark"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/overlay/overlay_dark_thumb_horizontal.png" | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	EMPTY WINDOW BACKGROUND | ||||||
|  | //	========================================================== | ||||||
|  | 	{ | ||||||
|  | 		"class": "sheet_container_control", | ||||||
|  | 		"layer0.tint": [16, 16, 16], | ||||||
|  | 		"layer0.opacity": 1.0 | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	GRID LAYOUT | ||||||
|  | //	========================================================== | ||||||
|  | 	{ | ||||||
|  | 		"class": "grid_layout_control", | ||||||
|  | 		"border_size": 1, | ||||||
|  | 		"border_color": [32, 32, 32] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	MINI MAP | ||||||
|  | //	========================================================== | ||||||
|  | 	{ | ||||||
|  | 		"class": "minimap_control", | ||||||
|  | 		"viewport_color": [185, 185, 185, 50] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	LABELS | ||||||
|  | //	========================================================== | ||||||
|  | 	// 	- General labels | ||||||
|  | 	{ | ||||||
|  | 		"class": "label_control", | ||||||
|  | 		"color": [230, 230, 230] | ||||||
|  | 	}, | ||||||
|  | 	//	- Text field labels | ||||||
|  | 	{ | ||||||
|  | 		"class": "label_control", | ||||||
|  | 		"parents": [{"class": "panel_control"}], | ||||||
|  | 		"shadow_color": [0, 0, 0], | ||||||
|  | 		"shadow_offset": [0, 1] | ||||||
|  | 	}, | ||||||
|  | 	//	- Button labels | ||||||
|  | 	{ | ||||||
|  | 		"class": "label_control", | ||||||
|  | 		"parents": [{"class": "button_control"}], | ||||||
|  | 		"color": [230, 230, 230], | ||||||
|  | 		"shadow_color": [0, 0, 0], | ||||||
|  | 		"shadow_offset": [0, 1] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	TOOLTIP | ||||||
|  | //	========================================================== | ||||||
|  | 	//	- Tooltip container | ||||||
|  | 	{ | ||||||
|  | 		"class": "tool_tip_control", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/tooltip.png", | ||||||
|  | 		"layer0.inner_margin": [4, 4], | ||||||
|  | 		"layer0.opacity": 1, | ||||||
|  | 		"content_margin": [6, 4] | ||||||
|  | 	}, | ||||||
|  | 	//	- Tooltip content | ||||||
|  | 	{ | ||||||
|  | 		"class": "tool_tip_label_control", | ||||||
|  | 		"color": [160, 160, 160], | ||||||
|  | 		"shadow_offset": [0, 1], | ||||||
|  | 		"shadow_color": [0, 0, 0, 255] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	STATUS BAR | ||||||
|  | //	========================================================== | ||||||
|  | 	//	- Status bar container | ||||||
|  | 	{ | ||||||
|  | 		"class": "status_bar", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/status-bar-bg.png", | ||||||
|  | 		"layer0.opacity": 1, | ||||||
|  | 		"layer0.inner_margin": [2, 2], | ||||||
|  | 		"content_margin": [6, 5, 6, 5] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "status_button", | ||||||
|  | 		"min_size": [100, 0] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	//	- Status bar label | ||||||
|  | 	{ | ||||||
|  | 		"class": "label_control", | ||||||
|  | 		"parents": [{"class": "status_bar"}], | ||||||
|  | 		"font.size": 10, | ||||||
|  | 		"color": [160, 160, 160], | ||||||
|  | 		"shadow_color": [0, 0, 0], | ||||||
|  | 		"shadow_offset": [0, 1] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	SIDEBAR | ||||||
|  | //	========================================================== | ||||||
|  | 	//	- Sidebar container (border) | ||||||
|  | 	{ | ||||||
|  | 		"class": "sidebar_container", | ||||||
|  | 		"layer0.tint": [150, 150, 150], | ||||||
|  | 		"layer0.opacity": 0.5, | ||||||
|  | 		"layer0.draw_center": false, | ||||||
|  | 		"layer0.inner_margin": [0, 0, 1, 0], | ||||||
|  | 		"content_margin": [0, 0, 1, 0] | ||||||
|  | 	}, | ||||||
|  | 	//	- Sidebar tree (bg) | ||||||
|  | 	{ | ||||||
|  | 		"class": "sidebar_tree", | ||||||
|  | 		"row_padding": [8, 3], | ||||||
|  | 		"indent": 15, | ||||||
|  | 		"indent_offset": 13, | ||||||
|  | 		"indent_top_level": false, | ||||||
|  | 		"layer0.tint": [19, 20, 21],	// darker gray | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"dark_content": true | ||||||
|  | 	}, | ||||||
|  | 	//	- Sidebar rows | ||||||
|  | 	{ | ||||||
|  | 		"class": "tree_row", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/row-active.png", | ||||||
|  | 		"layer0.opacity": 0.0, | ||||||
|  | 		"layer0.inner_margin": [8, 3], | ||||||
|  | 		"layer1.opacity": 0.0, | ||||||
|  | 		"layer1.inner_margin": [8, 3] | ||||||
|  | 	}, | ||||||
|  | 	//	- Sidebar row selected | ||||||
|  | 	{ | ||||||
|  | 		"class": "tree_row", | ||||||
|  | 		"attributes": ["selected"], | ||||||
|  | 		"layer0.opacity": 1.0 | ||||||
|  | 	}, | ||||||
|  | 	// - Sidebar row dirty | ||||||
|  | 	{ | ||||||
|  | 		"class": "tree_row", | ||||||
|  | 		"attributes": ["dirty"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/row-inactive-modified.png", | ||||||
|  | 		"layer0.opacity": 1.0 | ||||||
|  | 	}, | ||||||
|  | 	// - Sidebar row selected dirty | ||||||
|  | 	{ | ||||||
|  | 		"class": "tree_row", | ||||||
|  | 		"attributes": ["selected", "dirty"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/row-active-modified.png", | ||||||
|  | 		"layer0.opacity": 1.0 | ||||||
|  | 	}, | ||||||
|  | 	//	- Sidebar heading | ||||||
|  | 	{ | ||||||
|  | 		"class": "sidebar_heading", | ||||||
|  | 		"color": [2, 196, 251], | ||||||
|  | 		"font.bold": true, | ||||||
|  | 		"shadow_color": [0, 0, 0], | ||||||
|  | 		"shadow_offset": [0, 1] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "sidebar_heading", | ||||||
|  | 		"parents": [{"class": "tree_row", "attributes": ["selected"]}], | ||||||
|  | 		"color": [180, 180, 180] | ||||||
|  | 	}, | ||||||
|  | 	//	- Sidebar entry label | ||||||
|  | 	{ | ||||||
|  | 		"class": "sidebar_label", | ||||||
|  | 		"color": [200, 200, 200], | ||||||
|  | 		"shadow_color": [0, 0, 0], | ||||||
|  | 		"shadow_offset": [0, 1] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "sidebar_label", | ||||||
|  | 		"parents": [{"class": "tree_row", "attributes": ["expandable"]}], | ||||||
|  | 		"settings": ["bold_folder_labels"], | ||||||
|  | 		"font.bold": true | ||||||
|  | 	}, | ||||||
|  | 	{	//	Sidebar selected entry label | ||||||
|  | 		"class": "sidebar_label", | ||||||
|  | 		"parents": [{"class": "tree_row", "attributes": ["selected"]}], | ||||||
|  | 		"color": [240, 240, 240], | ||||||
|  | 		"shadow_color": [0, 0, 0], | ||||||
|  | 		"shadow_offset": [0, 1] | ||||||
|  | 	}, | ||||||
|  | 	{	//	Sidebar Hover entry label | ||||||
|  | 		"class": "sidebar_label", | ||||||
|  | 		"parents": [{"class": "tree_row", "attributes": ["hover"]}], | ||||||
|  | 		"color": [2, 196, 251], | ||||||
|  | 		"shadow_color": [0, 0, 0], | ||||||
|  | 		"shadow_offset": [0, 1] | ||||||
|  | 	}, | ||||||
|  | 	{	//	Sidebar Hover entry label | ||||||
|  | 		"class": "sidebar_label", | ||||||
|  | 		"parents": [{"class": "tree_row", "attributes": ["dirty"]}], | ||||||
|  | 		"color": [253, 113, 1], | ||||||
|  | 		"shadow_color": [0, 0, 0], | ||||||
|  | 		"shadow_offset": [0, 1] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	//	- Sidebar open files close/dirty | ||||||
|  | 	{ | ||||||
|  | 		"class": "close_button", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/tab-button-close-hover.png", | ||||||
|  | 		"layer0.opacity": 0.5, | ||||||
|  | 		"layer0.inner_margin": 4, | ||||||
|  | 		"layer1.opacity": 0.0, | ||||||
|  | 		"layer1.texture":  "SourcePawn/assets/tab-button-close.png", | ||||||
|  | 		"layer1.inner_margin": 4, | ||||||
|  | 		"content_margin": [8, 8] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "close_button", | ||||||
|  | 		"attributes": ["dirty"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/tab-button-dirty.png", | ||||||
|  | 		"layer0.opacity": 0.5 | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "close_button", | ||||||
|  | 		"attributes": ["hover"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/tab-button-close-hover.png", | ||||||
|  | 		"layer1.opacity": 0.5, | ||||||
|  | 		"layer1.texture": "SourcePawn/assets/tab-button-close.png" | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "close_button", | ||||||
|  | 		"attributes": ["hover", "dirty"], | ||||||
|  | 		"layer1.opacity": 0.5, | ||||||
|  | 		"layer1.texture": "SourcePawn/assets/tab-button-close-dirty.png" | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "close_button", | ||||||
|  | 		"attributes": ["pressed"], | ||||||
|  | 		"layer1.opacity": 1.0, | ||||||
|  | 		"layer1.texture": "SourcePawn/assets/tab-button-close.png" | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "close_button", | ||||||
|  | 		"attributes": ["pressed", "dirty"], | ||||||
|  | 		"layer1.opacity": 1.0, | ||||||
|  | 		"layer1.texture": "SourcePawn/assets/tab-button-close-dirty.png" | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	//	- Sidebar FOLDERS closed | ||||||
|  | 	{ | ||||||
|  | 		"class": "disclosure_button_control", | ||||||
|  | 		"content_margin": [9, 7, 8, 6], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/folder/group-closed.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"layer0.inner_margin": 0 | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "disclosure_button_control", | ||||||
|  | 		"parents": [{"class": "tree_row", "attributes": ["hover"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/folder/group-closed-hover.png" | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "disclosure_button_control", | ||||||
|  | 		"parents": [{"class": "tree_row", "attributes": ["selected"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/folder/group-closed-selected.png" | ||||||
|  | 	}, | ||||||
|  | 	//	- Sidebar Folders open | ||||||
|  | 	{ | ||||||
|  | 		"class": "disclosure_button_control", | ||||||
|  | 		"attributes": ["expanded"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/folder/group-open.png" | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "disclosure_button_control", | ||||||
|  | 		"attributes": ["expanded"], | ||||||
|  | 		"parents": [{"class": "tree_row", "attributes": ["hover"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/folder/group-open-hover.png" | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "disclosure_button_control", | ||||||
|  | 		"attributes": ["expanded"], | ||||||
|  | 		"parents": [{"class": "tree_row", "attributes": ["selected"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/folder/group-open-selected.png" | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	STANDARD TEXT BUTTONS | ||||||
|  | //	========================================================= | ||||||
|  | 	//	- Standard buttons (used for Find / Replace panel) | ||||||
|  | 	{ | ||||||
|  | 		"class": "button_control", | ||||||
|  | 		"content_margin": [6, 5, 6, 6], | ||||||
|  | 		"min_size": [75, 0], | ||||||
|  |  | ||||||
|  | 		//	Default button state | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/btn-large.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"layer0.inner_margin": [6, 6], | ||||||
|  |  | ||||||
|  | 		//	Pressed button setup | ||||||
|  | 		"layer1.texture": "SourcePawn/assets/btn-large-active.png", | ||||||
|  | 		"layer1.opacity": 0.0, | ||||||
|  | 		"layer1.inner_margin": [6, 6] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		//	Pressed button state | ||||||
|  | 		"class": "button_control", | ||||||
|  | 		"attributes": ["pressed"], | ||||||
|  | 		"layer1.opacity": 1.0, | ||||||
|  | 		"content_margin": [6, 6, 6, 6] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	TEXT INPUT FIELD | ||||||
|  | //	========================================================= | ||||||
|  |  | ||||||
|  | 	//	- Text input field item | ||||||
|  | 	{ | ||||||
|  | 		"class": "text_line_control", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/text-field.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"layer0.inner_margin": [10, 10, 10, 10], | ||||||
|  | 		"content_margin": [5, 5, 5, 5] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	PANEL BACKGROUNDS | ||||||
|  | //	========================================================= | ||||||
|  | 	//	- Bottom panel background | ||||||
|  | 	{ | ||||||
|  | 		"class": "panel_control", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/panel-bg.png", | ||||||
|  | 		"layer0.inner_margin": [4, 4, 4, 4], | ||||||
|  | 		"layer0.opacity": 1.0 | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	//	- Quick panel background | ||||||
|  | 	{ | ||||||
|  | 		"class": "overlay_control", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/overlay-bg.png", | ||||||
|  | 		"layer0.inner_margin": [10, 5, 10, 20],  // left, top, right, bottom | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"layer1.opacity": 0, // HIDDEN | ||||||
|  | 		"content_margin": [11, 8, 11, 17] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	QUICK PANEL | ||||||
|  | //	========================================================= | ||||||
|  | 	{ | ||||||
|  | 		"class": "quick_panel", | ||||||
|  | 		"row_padding": [4, 3], | ||||||
|  | 		"layer0.tint": [45, 45, 45], | ||||||
|  | 		"layer0.opacity": 1, | ||||||
|  | 		"dark_content": true | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "quick_panel_row", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/qp-row.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"layer0.inner_margin": [4, 4, 4, 4], | ||||||
|  | 		"layer1.draw_center": true | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "quick_panel_row", | ||||||
|  | 		"attributes": ["selected"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/qp-row-selected.png" | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "quick_panel_label", | ||||||
|  | 		"fg": [190, 190, 190, 255], | ||||||
|  | 		"match_fg": [166, 229, 255, 255], | ||||||
|  | 		"bg": [71, 71, 71, 255], | ||||||
|  | 		"selected_fg": [220, 220, 220, 255], | ||||||
|  | 		"selected_match_fg": [2, 196, 251, 255], | ||||||
|  | 		"selected_bg": [134, 134, 134, 255] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "quick_panel_path_label", | ||||||
|  | 		"fg": [100, 100, 100, 255], | ||||||
|  | 		"match_fg": [166, 229, 255, 255], | ||||||
|  | 		"bg": [41, 41, 41, 255], | ||||||
|  | 		"selected_fg": [120, 120, 120, 255], | ||||||
|  | 		"selected_match_fg": [2, 196, 251, 255], | ||||||
|  | 		"selected_bg": [24, 24, 24, 255] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "quick_panel_score_label", | ||||||
|  | 		"fg": [90, 90, 90, 255], | ||||||
|  | 		"bg": [41, 41, 41, 255], | ||||||
|  | 		"selected_fg": [114, 114, 114, 255], | ||||||
|  | 		"selected_bg": [24, 24, 24, 255] | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	MINI QUICK PANEL | ||||||
|  | //	========================================================= | ||||||
|  | 	{ | ||||||
|  | 		"class": "mini_quick_panel_row", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/qp-row.png", | ||||||
|  | 		"layer0.inner_margin": [4, 4, 4, 4], | ||||||
|  | 		"layer0.opacity": 1.0 | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "mini_quick_panel_row", | ||||||
|  | 		"attributes": ["selected"], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/qp-row-selected.png" | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	CODE COMPLETION DROPDOWN | ||||||
|  | //	========================================================= | ||||||
|  | 	{ | ||||||
|  | 		"class": "popup_control", | ||||||
|  | 		"content_margin": [0, 0] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "auto_complete", | ||||||
|  | 		"row_padding": [2, 2], | ||||||
|  | 		"layer0.tint": [30, 30, 30], | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"dark_content": true | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "auto_complete_label", | ||||||
|  | 		"fg": [140, 140, 140], | ||||||
|  | 		"match_fg": [255, 255, 255], | ||||||
|  | 		"bg": [26, 26, 26], | ||||||
|  | 		"selected_fg": [255, 255, 255], | ||||||
|  | 		"selected_match_fg": [255, 255, 255], | ||||||
|  | 		"selected_bg": [86, 86, 86] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "table_row", | ||||||
|  | 		"layer0.tint": [45, 45, 45], | ||||||
|  | 		"layer0.opacity": 0.0, | ||||||
|  | 		"layer0.inner_margin": [1, 1] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "table_row", | ||||||
|  | 		"attributes": ["selected"], | ||||||
|  | 		"layer0.opacity": 1.0 | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | //	BOTTOM PANEL BUTTONS | ||||||
|  | //	========================================================== | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_button_control", | ||||||
|  | 		"content_margin": [4, 4] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_button_control", | ||||||
|  | 		"attributes": ["pressed"] | ||||||
|  | 	}, | ||||||
|  | 	//	- Regex search button | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_regex", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/regex-off.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"content_margin": [9, 10] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_regex", | ||||||
|  | 		"parents": [{"class": "icon_button_control", "attributes": ["selected"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/regex-on.png" | ||||||
|  | 	}, | ||||||
|  | 	//	- Case sensitive search button | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_case", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/case-off.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"content_margin": [9, 10] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_case", | ||||||
|  | 		"parents": [{"class": "icon_button_control", "attributes": ["selected"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/case-on.png" | ||||||
|  | 	}, | ||||||
|  | 	//	- Match whole word search button | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_whole_word", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/whole-word-off.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"content_margin": [9, 10] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_whole_word", | ||||||
|  | 		"parents": [{"class": "icon_button_control", "attributes": ["selected"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/whole-word-on.png" | ||||||
|  | 	}, | ||||||
|  | 	//	- Reverse search direction button | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_reverse", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/reverse-off.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"content_margin": [9, 10] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_reverse", | ||||||
|  | 		"parents": [{"class": "icon_button_control", "attributes": ["selected"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/reverse-on.png" | ||||||
|  | 	}, | ||||||
|  | 	//	- Search wrap button | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_wrap", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/wrap-off.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"content_margin": [9, 10] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_wrap", | ||||||
|  | 		"parents": [{"class": "icon_button_control", "attributes": ["selected"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/wrap-on.png" | ||||||
|  | 	}, | ||||||
|  | 	//	- Search in selection button | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_in_selection", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/selection-off.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"content_margin": [9, 10] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_in_selection", | ||||||
|  | 		"parents": [{"class": "icon_button_control", "attributes": ["selected"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/selection-on.png" | ||||||
|  | 	}, | ||||||
|  | 	//	- Preserve case button | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_preserve_case", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/preserve-case-off.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"content_margin": [9, 10] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_preserve_case", | ||||||
|  | 		"parents": [{"class": "icon_button_control", "attributes": ["selected"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/preserve-case-on.png" | ||||||
|  | 	}, | ||||||
|  | 	//	- Highlight results button | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_highlight", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/highlight-off.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"content_margin": [9, 10] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_highlight", | ||||||
|  | 		"parents": [{"class": "icon_button_control", "attributes": ["selected"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/highlight-on.png" | ||||||
|  | 	}, | ||||||
|  |  | ||||||
|  | 	// 	BOTTOM PANEL ICONS (EXTENDED: FIND IN FILES) | ||||||
|  | 	//	========================================================= | ||||||
|  |  | ||||||
|  | 	//	- Show search context button | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_context", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/context-off.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"content_margin": [9, 10] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_context", | ||||||
|  | 		"parents": [{"class": "icon_button_control", "attributes": ["selected"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/context-on.png" | ||||||
|  | 	}, | ||||||
|  | 	//	- Use search buffer | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_use_buffer", | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/buffer-off.png", | ||||||
|  | 		"layer0.opacity": 1.0, | ||||||
|  | 		"content_margin": [9, 10] | ||||||
|  | 	}, | ||||||
|  | 	{ | ||||||
|  | 		"class": "icon_use_buffer", | ||||||
|  | 		"parents": [{"class": "icon_button_control", "attributes": ["selected"]}], | ||||||
|  | 		"layer0.texture": "SourcePawn/assets/icons/buffer-on.png" | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | ] | ||||||
							
								
								
									
										136
									
								
								samples/Sublime Text Config/jade.sublime-completions
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										136
									
								
								samples/Sublime Text Config/jade.sublime-completions
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,136 @@ | |||||||
|  | { | ||||||
|  | 	"scope": "entity.name.tag.jade", | ||||||
|  | 	"completions": | ||||||
|  | 	[ | ||||||
|  | 		"a",//	Defines a hyperlink | ||||||
|  | 		"abbr",//	Defines an abbreviation | ||||||
|  | 		"acronym",//	Not supported in HTML5. Use <abbr> instead. | ||||||
|  | 		//Defines an acronym | ||||||
|  | 		"address",//	Defines contact information for the author/owner of a document | ||||||
|  | 		"applet",//	Not supported in HTML5. Use <object> instead. | ||||||
|  | 		//Defines an embedded applet | ||||||
|  | 		"area",//	Defines an area inside an image-map | ||||||
|  | 		"article",//	Defines an article | ||||||
|  | 		"aside",//	Defines content aside from the page content | ||||||
|  | 		"audio",//	Defines sound content | ||||||
|  | 		"b",//	Defines bold text | ||||||
|  | 		"base",//	Specifies the base URL/target for all relative URLs in a document | ||||||
|  | 		"basefont",//	Not supported in HTML5. Use CSS instead. | ||||||
|  | 		//Specifies a default color, size, and font for all text in a document | ||||||
|  | 		"bdi",//	Isolates a part of text that might be formatted in a different direction from other text outside it | ||||||
|  | 		"bdo",//	Overrides the current text direction | ||||||
|  | 		"big",//	Not supported in HTML5. Use CSS instead. | ||||||
|  | 		//Defines big text | ||||||
|  | 		"blockquote",//	Defines a section that is quoted from another source | ||||||
|  | 		"body",//	Defines the document's body | ||||||
|  | 		"br",//	Defines a single line break | ||||||
|  | 		"button",//	Defines a clickable button | ||||||
|  | 		"canvas",//	Used to draw graphics, on the fly, via scripting (usually JavaScript) | ||||||
|  | 		"caption",//	Defines a table caption | ||||||
|  | 		"center",//	Not supported in HTML5. Use CSS instead. | ||||||
|  | 		//Defines centered text | ||||||
|  | 		"cite",//	Defines the title of a work | ||||||
|  | 		"code",//	Defines a piece of computer code | ||||||
|  | 		"col",//	Specifies column properties for each column within a <colgroup> element  | ||||||
|  | 		"colgroup",//	Specifies a group of one or more columns in a table for formatting | ||||||
|  | 		"command",//	Defines a command button that a user can invoke | ||||||
|  | 		"datalist",//	Specifies a list of pre-defined options for input controls | ||||||
|  | 		"dd",//	Defines a description/value of a term in a description list | ||||||
|  | 		"del",//	Defines text that has been deleted from a document | ||||||
|  | 		"details",//	Defines additional details that the user can view or hide | ||||||
|  | 		"dfn",//	Defines a definition term | ||||||
|  | 		"dialog",//	Defines a dialog box or window | ||||||
|  | 		"dir",//	Not supported in HTML5. Use <ul> instead. | ||||||
|  | 		//Defines a directory list | ||||||
|  | 		"div",//	Defines a section in a document | ||||||
|  | 		"dl",//	Defines a description list | ||||||
|  | 		"dt",//	Defines a term/name in a description list | ||||||
|  | 		"em",//	Defines emphasized text  | ||||||
|  | 		"embed",//	Defines a container for an external (non-HTML) application | ||||||
|  | 		"fieldset",//	Groups related elements in a form | ||||||
|  | 		"figcaption",//	Defines a caption for a <figure> element | ||||||
|  | 		"figure",//	Specifies self-contained content | ||||||
|  | 		"font",//	Not supported in HTML5. Use CSS instead. | ||||||
|  | 		//Defines font, color, and size for text | ||||||
|  | 		"footer",//	Defines a footer for a document or section | ||||||
|  | 		"form",//	Defines an HTML form for user input | ||||||
|  | 		"frame",//	Not supported in HTML5. | ||||||
|  | 		//Defines a window (a frame) in a frameset | ||||||
|  | 		"frameset",//	Not supported in HTML5. | ||||||
|  | 		//Defines a set of frames | ||||||
|  | 		"h1",// to <h6>	 Defines HTML headings | ||||||
|  | 		"head",//	Defines information about the document | ||||||
|  | 		"header",//	Defines a header for a document or section | ||||||
|  | 		"hgroup",//	Groups heading elements | ||||||
|  | 		"hr",//	 Defines a thematic change in the content | ||||||
|  | 		"html",//	Defines the root of an HTML document | ||||||
|  | 		"i",//	Defines a part of text in an alternate voice or mood | ||||||
|  | 		"iframe",//	Defines an inline frame | ||||||
|  | 		"img",//	Defines an image | ||||||
|  | 		"input",//	Defines an input control | ||||||
|  | 		"ins",//	Defines a text that has been inserted into a document | ||||||
|  | 		"kbd",//	Defines keyboard input | ||||||
|  | 		"keygen",//	Defines a key-pair generator field (for forms) | ||||||
|  | 		"label",//	Defines a label for an <input> element | ||||||
|  | 		"legend",//	Defines a caption for a <fieldset> element | ||||||
|  | 		"li",//	Defines a list item | ||||||
|  | 		"link",//	Defines the relationship between a document and an external resource (most used to link to style sheets) | ||||||
|  | 		"main",//	Specifies the main content of a document | ||||||
|  | 		"map",//	Defines a client-side image-map | ||||||
|  | 		"mark",//	Defines marked/highlighted text | ||||||
|  | 		"menu",//	Defines a list/menu of commands | ||||||
|  | 		"meta",//	Defines metadata about an HTML document | ||||||
|  | 		"meter",//	Defines a scalar measurement within a known range (a gauge) | ||||||
|  | 		"nav",//	Defines navigation links | ||||||
|  | 		"noframes",//	Not supported in HTML5. | ||||||
|  | 		//Defines an alternate content for users that do not support frames | ||||||
|  | 		"noscript",//	Defines an alternate content for users that do not support client-side scripts | ||||||
|  | 		"object",//	Defines an embedded object | ||||||
|  | 		"ol",//	Defines an ordered list | ||||||
|  | 		"optgroup",//	Defines a group of related options in a drop-down list | ||||||
|  | 		"option",//	Defines an option in a drop-down list | ||||||
|  | 		"output",//	Defines the result of a calculation | ||||||
|  | 		"p",//	Defines a paragraph | ||||||
|  | 		"param",//	Defines a parameter for an object | ||||||
|  | 		"pre",//	Defines preformatted text | ||||||
|  | 		"progress",//	Represents the progress of a task | ||||||
|  | 		"q",//	Defines a short quotation | ||||||
|  | 		"rp",//	Defines what to show in browsers that do not support ruby annotations | ||||||
|  | 		"rt",//	Defines an explanation/pronunciation of characters (for East Asian typography) | ||||||
|  | 		"ruby",//	Defines a ruby annotation (for East Asian typography) | ||||||
|  | 		"s",//	Defines text that is no longer correct | ||||||
|  | 		"samp",//	Defines sample output from a computer program | ||||||
|  | 		"script",//	Defines a client-side script | ||||||
|  | 		"section",//	Defines a section in a document | ||||||
|  | 		"select",//	Defines a drop-down list | ||||||
|  | 		"small",//	Defines smaller text | ||||||
|  | 		"source",//	Defines multiple media resources for media elements (<video> and <audio>) | ||||||
|  | 		"span",//	Defines a section in a document | ||||||
|  | 		"strike",//	Not supported in HTML5. Use <del> instead. | ||||||
|  | 		//Defines strikethrough text | ||||||
|  | 		"strong",//	Defines important text | ||||||
|  | 		"style",//	Defines style information for a document | ||||||
|  | 		"sub",//	Defines subscripted text | ||||||
|  | 		"summary",//	Defines a visible heading for a <details> element | ||||||
|  | 		"sup",//	Defines superscripted text | ||||||
|  | 		"table",//	Defines a table | ||||||
|  | 		"tbody",//	Groups the body content in a table | ||||||
|  | 		"td",//	Defines a cell in a table | ||||||
|  | 		"textarea",//	Defines a multiline input control (text area) | ||||||
|  | 		"tfoot",//	Groups the footer content in a table | ||||||
|  | 		"th",//	Defines a header cell in a table | ||||||
|  | 		"thead",//	Groups the header content in a table | ||||||
|  | 		"time",//	Defines a date/time | ||||||
|  | 		"title",//	Defines a title for the document | ||||||
|  | 		"tr",//	Defines a row in a table | ||||||
|  | 		"track",//	Defines text tracks for media elements (<video> and <audio>) | ||||||
|  | 		"tt",//	Not supported in HTML5. Use CSS instead. | ||||||
|  | 		//Defines teletype text | ||||||
|  | 		"u",//	Defines text that should be stylistically different from normal text | ||||||
|  | 		"ul",//	Defines an unordered list | ||||||
|  | 		"var",//	Defines a variable | ||||||
|  | 		"video",//	Defines a video or movie | ||||||
|  | 		"wbr" | ||||||
|  | 	] | ||||||
|  | } | ||||||
|  |  | ||||||
							
								
								
									
										63
									
								
								samples/TI Program/srcalpha.8xp.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										63
									
								
								samples/TI Program/srcalpha.8xp.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,63 @@ | |||||||
|  | .AlphaCS | ||||||
|  | #ExprOff | ||||||
|  | If getKey(41) | ||||||
|  | 	sub(ADM) | ||||||
|  | End | ||||||
|  | Lbl START | ||||||
|  | "appv alpha "->Str1 | ||||||
|  | "appvAlphaCS"->Str2 | ||||||
|  | .ALPHA CS | ||||||
|  | [7EFFFFE7FFFFE7E7]->Pic11 | ||||||
|  | [E0E0E0E0E0FFFF7F]->Pic12 | ||||||
|  | [FEFFE7FFFEE0E0E0]->Pic13 | ||||||
|  | [E7E7E7FFFFE7E7E7]->Pic14 | ||||||
|  | [7EFFFFE7FFFFE7E7]->Pic15 | ||||||
|  | [7FFFFFE0E0FFFF7F]->Pic16 | ||||||
|  | [7FFFFF781EFFFFFE]->Pic17 | ||||||
|  | .arch | ||||||
|  | [0038447C44440000]->Pic21 | ||||||
|  | .hide | ||||||
|  | [0054004400540000]->Pic22 | ||||||
|  | .lock | ||||||
|  | [0038447C7C7C0000]->Pic23 | ||||||
|  | .(c) Scott Mangiapane | ||||||
|  | Data(72,8)->GDB0 | ||||||
|  | [42600A360008000100994DDF2A6C61B1B28091294A22AAAAAAAB005A6DCA226A69B9A9800000000000202000000000000000C0200000000000000000000000000000000000000000] | ||||||
|  | .icon unknown | ||||||
|  | Data(16,16)->GDB11 | ||||||
|  | [EFFEA803EB8308032BFB28032BFB0803EBFBA803EBFB08032B8328032FFF07FF] | ||||||
|  | .icon SRC | ||||||
|  | Data(16,16)->GDB12 | ||||||
|  | [01801A583E7C3FFC3FFC3E7C1A580A500240FFFFC471BDAFCC6FF5AF8DB1FFFF] | ||||||
|  | .icon ASM | ||||||
|  | Data(16,16)->GDB13 | ||||||
|  | [FFFFFFFFFFFFFFFFFFFFCE6BB5D586D5B75DB4DDFFFFFFFFFFFFFFFFFFFFFFFF] | ||||||
|  | .icon shell | ||||||
|  | Data(16,16)->GDB14 | ||||||
|  | [FFFFFFFFFFFFFFFFFFFFFFFF97B5B155D5359595FFFFFFFFFFFFFFFFFFFFFFFF] | ||||||
|  | Goto SET | ||||||
|  | prgmSRCFUNC | ||||||
|  | prgmSRCGUI | ||||||
|  | prgmSRCSORT | ||||||
|  | Lbl SET | ||||||
|  | .start, set up | ||||||
|  | ClrDraw | ||||||
|  | StoreGDB  | ||||||
|  | DiagnosticOff | ||||||
|  | Fix 5 | ||||||
|  | Full | ||||||
|  | !If GetCalc(Str1,[Y1]) | ||||||
|  | 	sub(NEW) | ||||||
|  | 	StoreGDB  | ||||||
|  | End | ||||||
|  | GetCalc(Str1,[Y1]) | ||||||
|  | If {[Y1]+0} | ||||||
|  | 	!If sub(CODE) | ||||||
|  | 		Goto END | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | Asm(FDCB249E) | ||||||
|  | If {[Y1]+6} | ||||||
|  | 	Asm(FDCB24DE) | ||||||
|  | End | ||||||
|  | Goto DLIST | ||||||
							
								
								
									
										194
									
								
								samples/TI Program/srcfunc.8xp.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										194
									
								
								samples/TI Program/srcfunc.8xp.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,194 @@ | |||||||
|  | .FUNC AlphaCS | ||||||
|  | Lbl ADM | ||||||
|  | DiagnosticOff | ||||||
|  | Fix 5 | ||||||
|  | Full | ||||||
|  | StoreGDB  | ||||||
|  | sub(D2,13,17,70,29,"Admin Access") | ||||||
|  | sub(D1,15,27) | ||||||
|  | Text(15,37,"Admin Code:  -   -   -   -") | ||||||
|  | DispGraph | ||||||
|  | Repeat getKey->A | ||||||
|  | End | ||||||
|  | Text(55,37,"*") | ||||||
|  | DispGraph | ||||||
|  | Repeat getKey->B | ||||||
|  | End | ||||||
|  | Text(62,37,"*") | ||||||
|  | DispGraph | ||||||
|  | Repeat getKey->C | ||||||
|  | End | ||||||
|  | Text(69,37,"*") | ||||||
|  | DispGraph | ||||||
|  | Repeat getKey->D | ||||||
|  | End | ||||||
|  | Text(76,37,"*") | ||||||
|  | DispGraph | ||||||
|  | Normal | ||||||
|  | Pause 100 | ||||||
|  | Full | ||||||
|  | If (A!=20) or (B!=35) or (C!=18) or (D!=27) | ||||||
|  | 	Goto END | ||||||
|  | End | ||||||
|  | sub(D2,13,17,70,29,"Author Info") | ||||||
|  | sub(D1,15,27) | ||||||
|  | Bitmap(15,38,GDB0) | ||||||
|  | DispGraph | ||||||
|  | Repeat (getKey) and (getKey(9)) | ||||||
|  | End | ||||||
|  | DelVar "appv alpha " | ||||||
|  | Return | ||||||
|  | Lbl D1 | ||||||
|  | .draws title | ||||||
|  | Pt-On([r1]+1,[r2]+1,Pic11) | ||||||
|  | Pt-On([r1]+10,[r2]+1,Pic12) | ||||||
|  | Pt-On([r1]+19,[r2]+1,Pic13) | ||||||
|  | Pt-On([r1]+28,[r2]+1,Pic14) | ||||||
|  | Pt-On([r1]+37,[r2]+1,Pic15) | ||||||
|  | Pt-On([r1]+48,[r2]+1,Pic16) | ||||||
|  | Pt-On([r1]+57,[r2]+1,Pic17) | ||||||
|  | RectI([r1],[r2],66,10) | ||||||
|  | Pxl-Off([r1],[r2]) | ||||||
|  | RectI([r1]+14,[r2],4,5) | ||||||
|  | RectI([r1]+23,[r2]+7,4,3) | ||||||
|  | RectI([r1]+46,[r2]+1,1,8) | ||||||
|  | RectI([r1]+45,[r2],3,1) | ||||||
|  | RectI([r1]+46,[r2]+9,2,1) | ||||||
|  | Pxl-Off([r1]+65,[r2]+9) | ||||||
|  | Return | ||||||
|  | Lbl D2 | ||||||
|  | .windows | ||||||
|  | Rect([r1]+1,[r2],[r3]-2,[r4]) | ||||||
|  | Rect([r1],[r2]+1,[r3],[r4]-2) | ||||||
|  | RectI([r1]+1,[r2]+1,[r3]-2,[r4]-2) | ||||||
|  | Text([r1]+2,[r2]+2,[r5]) | ||||||
|  | RectI([r1]+1,[r2]+1,[r3]-2,8) | ||||||
|  | Pt-Off([r1]+[r3]-9,[r2]+1,[C1BEAAB6AABEC1FF]) | ||||||
|  | Pxl-On([r1]+1,[r2]+[r4]-2) | ||||||
|  | Pxl-On([r1]+[r3]-2,[r2]+[r4]-2) | ||||||
|  | Return | ||||||
|  | Lbl D3 | ||||||
|  | .archiving box | ||||||
|  | sub(D2,15,22,66,20,"Archiving...") | ||||||
|  | Text(17,31,"Please wait...") | ||||||
|  | Return | ||||||
|  | Lbl CODE | ||||||
|  | sub(D2,15,22,66,20,"Access Denied") | ||||||
|  | Text(29,32," -      -      -      - ") | ||||||
|  | DispGraph | ||||||
|  | 1->[r2] | ||||||
|  | Repeat getKey->[r1] | ||||||
|  | End | ||||||
|  | Text(29,32,"*") | ||||||
|  | DispGraph | ||||||
|  | If [r1]!=({[Y1]+1}) | ||||||
|  | 	0->[r2] | ||||||
|  | End | ||||||
|  | Repeat getKey->[r1] | ||||||
|  | End | ||||||
|  | Text(39,32,"*") | ||||||
|  | DispGraph | ||||||
|  | If [r1]!=({[Y1]+2}) | ||||||
|  | 	0->[r2] | ||||||
|  | End | ||||||
|  | Repeat getKey->[r1] | ||||||
|  | End | ||||||
|  | Text(49,32,"*") | ||||||
|  | DispGraph | ||||||
|  | If [r1]!=({[Y1]+3}) | ||||||
|  | 	0->[r2] | ||||||
|  | End | ||||||
|  | Repeat getKey->[r1] | ||||||
|  | End | ||||||
|  | Text(59,32,"*") | ||||||
|  | DispGraph | ||||||
|  | If [r1]!=({[Y1]+4}) | ||||||
|  | 	0->[r2] | ||||||
|  | End | ||||||
|  | Normal | ||||||
|  | Pause 200 | ||||||
|  | Full | ||||||
|  | Return[r2] | ||||||
|  | Lbl NEW | ||||||
|  | ClrDraw | ||||||
|  | sub(D1,0,0) | ||||||
|  | RectI(0,11,96,1) | ||||||
|  | Text(1,12,"Installation") | ||||||
|  | Text(1,20,"Enter your new keycode:") | ||||||
|  | Text(1,26," -  -  -  - ") | ||||||
|  | DispGraph | ||||||
|  | GetCalc(Str1,16)->[r1] | ||||||
|  | Fill([r1],16,1) | ||||||
|  | 0->{[r1]} | ||||||
|  | Repeat getKey->[r2] | ||||||
|  | End | ||||||
|  | [r2]->{[r1]+1} | ||||||
|  | Text(1,26,"*") | ||||||
|  | DispGraph | ||||||
|  | Repeat getKey->[r2] | ||||||
|  | End | ||||||
|  | [r2]->{[r1]+2} | ||||||
|  | Text(7,26,"*") | ||||||
|  | DispGraph | ||||||
|  | Repeat getKey->[r2] | ||||||
|  | End | ||||||
|  | [r2]->{[r1]+3} | ||||||
|  | Text(13,26,"*") | ||||||
|  | DispGraph | ||||||
|  | Repeat getKey->[r2] | ||||||
|  | End | ||||||
|  | [r2]->{[r1]+4} | ||||||
|  | Text(19,26,"*") | ||||||
|  | DispGraph | ||||||
|  | Fill(L1,50,0) | ||||||
|  | Text(1,34,"Confirm keycode:") | ||||||
|  | Text(1,40," -  -  -  - ") | ||||||
|  | DispGraph | ||||||
|  | Repeat getKey->[r2] | ||||||
|  | End | ||||||
|  | [r2]->{L1+1} | ||||||
|  | Text(1,40,"*") | ||||||
|  | DispGraph | ||||||
|  | Repeat getKey->[r2] | ||||||
|  | End | ||||||
|  | [r2]->{L1+2} | ||||||
|  | Text(7,40,"*") | ||||||
|  | DispGraph | ||||||
|  | Repeat getKey->[r2] | ||||||
|  | End | ||||||
|  | [r2]->{L1+3} | ||||||
|  | Text(13,40,"*") | ||||||
|  | DispGraph | ||||||
|  | Repeat getKey->[r2] | ||||||
|  | End | ||||||
|  | [r2]->{L1+4} | ||||||
|  | Text(19,40,"*") | ||||||
|  | DispGraph | ||||||
|  | If ({[r1]+1}={L1+1}) and ({[r1]+2}={L1+2}) and ({[r1]+3}={L1+3}) and ({[r1]+4}={L1+4}) | ||||||
|  | 	sub(D3) | ||||||
|  | 	DispGraph | ||||||
|  | 	GetCalc(Str2,10) | ||||||
|  | 	Archive Str1 | ||||||
|  | 	GetCalc(Str1,[Y1]) | ||||||
|  | 	ClrDraw | ||||||
|  | 	Return | ||||||
|  | 	Else | ||||||
|  | 	Text(1,48,"ERROR keycodes do not") | ||||||
|  | 	Text(1,54,"match.") | ||||||
|  | 	DispGraph | ||||||
|  | 	UnArchive Str1 | ||||||
|  | 	DelVar Str1 | ||||||
|  | 	Repeat getKey | ||||||
|  | 	End | ||||||
|  | 	Goto END | ||||||
|  | End | ||||||
|  | Return | ||||||
|  | Lbl END | ||||||
|  | Asm(FDCB249E) | ||||||
|  | If {[Y1]+6} | ||||||
|  | 	Asm(FDCB24DE) | ||||||
|  | End | ||||||
|  | ClrDraw | ||||||
|  | ClrDraw^^r | ||||||
|  | ClrHome | ||||||
|  | Return^^r | ||||||
							
								
								
									
										563
									
								
								samples/TI Program/srcgui.8xp.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										563
									
								
								samples/TI Program/srcgui.8xp.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,563 @@ | |||||||
|  | .GUI AlphaCS | ||||||
|  | #Axiom(RUNPRGM) | ||||||
|  | #Axiom(ZSTAXE) | ||||||
|  | Lbl DLIST | ||||||
|  | ClrDraw | ||||||
|  | ClrDraw^^r | ||||||
|  | sub(D1,0,0) | ||||||
|  | RectI(0,11,96,1) | ||||||
|  | !If sub(POLAR,1) | ||||||
|  | 	RectI(0,63,96,1) | ||||||
|  | 	Text(1,13,"No programs found.") | ||||||
|  | 	DispGraph | ||||||
|  | 	Goto KLIST2 | ||||||
|  | 	Else | ||||||
|  | 	Fill(L5,50,0) | ||||||
|  | 	Copy(L1,L5,20) | ||||||
|  | 	13->B->G | ||||||
|  | 	0->I | ||||||
|  | 	1->H | ||||||
|  | 	Text(1,13,L2) | ||||||
|  | 	If D | ||||||
|  | 		Pt-On(77,13,Pic21) | ||||||
|  | 	End | ||||||
|  | 	If E | ||||||
|  | 		Pt-On(83,13,Pic22) | ||||||
|  | 	End | ||||||
|  | 	If F | ||||||
|  | 		Pt-On(89,13,Pic23) | ||||||
|  | 	End | ||||||
|  | 	For(S,1,6) | ||||||
|  | 		If sub(ADJ,1) | ||||||
|  | 			S*7+13->G | ||||||
|  | 			Text(1,S*7+13,L2) | ||||||
|  | 			If D | ||||||
|  | 				Pt-On(77,S*7+13,Pic21) | ||||||
|  | 			End | ||||||
|  | 			If E | ||||||
|  | 				Pt-On(83,S*7+13,Pic22) | ||||||
|  | 			End | ||||||
|  | 			If F | ||||||
|  | 				Pt-On(89,S*7+13,Pic23) | ||||||
|  | 			End | ||||||
|  | 		End | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | Fill(L4,50,0) | ||||||
|  | Copy(L1,L4,20) | ||||||
|  | Lbl KLIST1 | ||||||
|  | Rect(90,0,6,10) | ||||||
|  | RectI(90,0,6,10) | ||||||
|  | 0->S->T | ||||||
|  | sub(POLAR,1) | ||||||
|  | If Equ>String(L1,L5) | ||||||
|  | 	S++ | ||||||
|  | End | ||||||
|  | sub(POLAR,0) | ||||||
|  | If Equ>String(L1,L4) | ||||||
|  | 	T++ | ||||||
|  | End | ||||||
|  | If (S) and (T) | ||||||
|  | 	Pt-On(90,6,[F870200000000000]) | ||||||
|  | 	Pt-On(90,2,[2070F80000000000]) | ||||||
|  | 	Else | ||||||
|  | 	If S | ||||||
|  | 		Pt-On(90,4,[2070F80000000000]) | ||||||
|  | 	End | ||||||
|  | 	If T | ||||||
|  | 		Pt-On(90,4,[F870200000000000]) | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | RectI(0,63,96,1) | ||||||
|  | RectI(0,B,96,7) | ||||||
|  | DispGraph | ||||||
|  | RectI(0,B,96,7) | ||||||
|  | RectI(0,63,96,1) | ||||||
|  | If getKey(15) | ||||||
|  | 	Goto DLIST | ||||||
|  | End | ||||||
|  | Repeat getKey | ||||||
|  | 	If getKey(41) | ||||||
|  | 		Repeat getKey(41)=0 | ||||||
|  | 		End | ||||||
|  | 		Asm(3E01D303FB76) | ||||||
|  | 		Repeat getKey(41)=0 | ||||||
|  | 		End | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | If getKey(48) | ||||||
|  | 	Goto DSET1 | ||||||
|  | End | ||||||
|  | If (getKey(9)) or (getKey(54)) | ||||||
|  | 	Fill(L1,50,0) | ||||||
|  | 	Copy(L5,L1,20) | ||||||
|  | 	If (B-13/7)=0 | ||||||
|  | 		Fill(L1,50,0) | ||||||
|  | 		Copy(L5+1,L1,20) | ||||||
|  | 		sub(DATA) | ||||||
|  | 		Else | ||||||
|  | 		For(B-13/7) | ||||||
|  | 			sub(ADJ,1) | ||||||
|  | 		End | ||||||
|  | 	End | ||||||
|  | 	Goto DPRGM1 | ||||||
|  | End | ||||||
|  | If getKey(4) | ||||||
|  | 	If (B!=13) | ||||||
|  | 		For(S,0,7) | ||||||
|  | 			RectI(0,63,96,1) | ||||||
|  | 			RectI(0,B-S,96,7) | ||||||
|  | 			DispGraph | ||||||
|  | 			RectI(0,B-S,96,7) | ||||||
|  | 			RectI(0,63,96,1) | ||||||
|  | 		End | ||||||
|  | 		B-7->B | ||||||
|  | 		Else | ||||||
|  | 		sub(POLAR,1) | ||||||
|  | 		If Equ>String(L1,L5) | ||||||
|  | 			Fill(L1,50,0) | ||||||
|  | 			Copy(L4,L1,20) | ||||||
|  | 			sub(ADJ,0) | ||||||
|  | 			Fill(L4,50,0) | ||||||
|  | 			Copy(L1,L4,20) | ||||||
|  | 			Fill(L1,50,0) | ||||||
|  | 			Copy(L5,L1,20) | ||||||
|  | 			sub(ADJ,0) | ||||||
|  | 			Fill(L5,50,0) | ||||||
|  | 			Copy(L1,L5,20) | ||||||
|  | 			Fill(L1,50,0) | ||||||
|  | 			Copy(L4,L1,20) | ||||||
|  | 			Rect(0,0,96,13) | ||||||
|  | 			RectI(0,0,96,13) | ||||||
|  | 			For(7) | ||||||
|  | 				Vertical+ | ||||||
|  | 			End | ||||||
|  | 			Rect(0,62,96,2) | ||||||
|  | 			RectI(0,62,96,2) | ||||||
|  | 			Text(1,13,L2) | ||||||
|  | 			If D | ||||||
|  | 				Pt-On(77,13,Pic21) | ||||||
|  | 			End | ||||||
|  | 			If E | ||||||
|  | 				Pt-On(83,13,Pic22) | ||||||
|  | 			End | ||||||
|  | 			If F | ||||||
|  | 				Pt-On(89,13,Pic23) | ||||||
|  | 			End | ||||||
|  | 			Rect(0,0,96,13) | ||||||
|  | 			RectI(0,0,96,13) | ||||||
|  | 			sub(D1,0,0) | ||||||
|  | 			RectI(0,11,96,1) | ||||||
|  | 		End | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | If getKey(1) | ||||||
|  | 	If (B!=G) | ||||||
|  | 		For(S,0,7) | ||||||
|  | 			RectI(0,63,96,1) | ||||||
|  | 			RectI(0,B+S,96,7) | ||||||
|  | 			DispGraph | ||||||
|  | 			RectI(0,B+S,96,7) | ||||||
|  | 			RectI(0,63,96,1) | ||||||
|  | 		End | ||||||
|  | 		B+7->B | ||||||
|  | 		Else | ||||||
|  | 		sub(POLAR,0) | ||||||
|  | 		If Equ>String(L1,L4) | ||||||
|  | 			Fill(L1,50,0) | ||||||
|  | 			Copy(L5,L1,20) | ||||||
|  | 			sub(ADJ,1) | ||||||
|  | 			Fill(L5,50,0) | ||||||
|  | 			Copy(L1,L5,20) | ||||||
|  | 			Fill(L1,50,0) | ||||||
|  | 			Copy(L4,L1,20) | ||||||
|  | 			sub(ADJ,1) | ||||||
|  | 			Fill(L4,50,0) | ||||||
|  | 			Copy(L1,L4,20) | ||||||
|  | 			For(7) | ||||||
|  | 				Vertical- | ||||||
|  | 			End | ||||||
|  | 			Text(1,55,L2) | ||||||
|  | 			If D | ||||||
|  | 				Pt-On(77,55,Pic21) | ||||||
|  | 			End | ||||||
|  | 			If E | ||||||
|  | 				Pt-On(83,55,Pic22) | ||||||
|  | 			End | ||||||
|  | 			If F | ||||||
|  | 				Pt-On(89,55,Pic23) | ||||||
|  | 			End | ||||||
|  | 			Rect(0,0,96,13) | ||||||
|  | 			RectI(0,0,96,13) | ||||||
|  | 			sub(D1,0,0) | ||||||
|  | 			RectI(0,11,96,1) | ||||||
|  | 		End | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | If getKey(15) | ||||||
|  | 	Goto END | ||||||
|  | End | ||||||
|  | Goto KLIST1 | ||||||
|  | Lbl KLIST2 | ||||||
|  | If getKey(15) | ||||||
|  | 	Goto DLIST | ||||||
|  | End | ||||||
|  | Repeat getKey | ||||||
|  | 	If getKey(41) | ||||||
|  | 		Repeat getKey(41)=0 | ||||||
|  | 		End | ||||||
|  | 		Asm(3E01D303FB76) | ||||||
|  | 		Repeat getKey(41)=0 | ||||||
|  | 		End | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | If getKey(48) | ||||||
|  | 	Goto DSET1 | ||||||
|  | End | ||||||
|  | If getKey(15) | ||||||
|  | 	Goto END | ||||||
|  | End | ||||||
|  | Goto KLIST2 | ||||||
|  | Lbl DPRGM1 | ||||||
|  | GetCalc("appv alpha ",[Y1]) | ||||||
|  | 13->B | ||||||
|  | D->X | ||||||
|  | E->Y | ||||||
|  | F->Z | ||||||
|  | Lbl DPRGM2 | ||||||
|  | GetCalc(L1,[Y3]) | ||||||
|  | 0->H | ||||||
|  | If ({[Y3]+0}=187) and ({[Y3]+1}=109) | ||||||
|  | 	1->H | ||||||
|  | 	If {[Y3]+2}=201 | ||||||
|  | 		2->H | ||||||
|  | 	End | ||||||
|  | 	If {[Y3]+3}=201 | ||||||
|  | 		3->H | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | If {[Y3]+0}=58 | ||||||
|  | 	4->H | ||||||
|  | End | ||||||
|  | ClrDraw | ||||||
|  | ClrDraw^^r | ||||||
|  | sub(D1,0,0) | ||||||
|  | RectI(0,11,96,1) | ||||||
|  | Text(1,49,L2) | ||||||
|  | RectI(0,48,96,16) | ||||||
|  | 69->S | ||||||
|  | If Z | ||||||
|  | 	Pt-Change(S,56,Pic23) | ||||||
|  | 	S-6->S | ||||||
|  | End | ||||||
|  | If Y | ||||||
|  | 	Pt-Change(S,56,Pic22) | ||||||
|  | 	S-6->S | ||||||
|  | End | ||||||
|  | If X | ||||||
|  | 	Pt-Change(S,56,Pic21) | ||||||
|  | End | ||||||
|  | RectI(1,56,94,7) | ||||||
|  | Text(2,56,"size: ",{[Y3]-2}^^r>Dec) | ||||||
|  | Text(1,13,"Run (with zStart)") | ||||||
|  | If X | ||||||
|  | 	Text(1,20,"Unarchive PRGM") | ||||||
|  | 	Else | ||||||
|  | 	Text(1,20,"Archive PRGM") | ||||||
|  | End | ||||||
|  | If Y | ||||||
|  | 	Text(1,27,"Unhide PRGM") | ||||||
|  | 	Else | ||||||
|  | 	Text(1,27,"Hide PRGM") | ||||||
|  | End | ||||||
|  | If Z | ||||||
|  | 	Text(1,34,"Unlock PRGM") | ||||||
|  | 	Else | ||||||
|  | 	Text(1,34,"Lock PRGM") | ||||||
|  | End | ||||||
|  | Rect(76,44,20,20) | ||||||
|  | RectI(77,45,18,18) | ||||||
|  | If H=0 | ||||||
|  | 	Bitmap(78,46,GDB11) | ||||||
|  | End | ||||||
|  | If H=1 | ||||||
|  | 	Bitmap(78,46,GDB13) | ||||||
|  | End | ||||||
|  | If H=2 | ||||||
|  | 	Bitmap(78,46,GDB14) | ||||||
|  | End | ||||||
|  | If H=3 | ||||||
|  | 	Bitmap(78,46,GDB14) | ||||||
|  | End | ||||||
|  | If H=4 | ||||||
|  | 	Bitmap(78,46,GDB12) | ||||||
|  | End | ||||||
|  | Lbl KPRGM | ||||||
|  | RectI(0,B,96,7) | ||||||
|  | DispGraph | ||||||
|  | RectI(0,B,96,7) | ||||||
|  | Repeat getKey | ||||||
|  | End | ||||||
|  | If (getKey(9)) or (getKey(54)) | ||||||
|  | 	If B=13 | ||||||
|  | 		sub(SETPRGM) | ||||||
|  | 		Goto RUN | ||||||
|  | 		Else | ||||||
|  | 		Fill(L2,20,0) | ||||||
|  | 		Copy(L1+1,L2,20) | ||||||
|  | 		Fill(L1,20,0) | ||||||
|  | 		Copy(L2,L1,20) | ||||||
|  | 		sub(DATA) | ||||||
|  | 		If B=20 | ||||||
|  | 			If X | ||||||
|  | 				0->X | ||||||
|  | 				Else | ||||||
|  | 				1->X | ||||||
|  | 			End | ||||||
|  | 			Goto DPRGM2 | ||||||
|  | 		End | ||||||
|  | 		If B=27 | ||||||
|  | 			If Y | ||||||
|  | 				0->Y | ||||||
|  | 				Else | ||||||
|  | 				1->Y | ||||||
|  | 			End | ||||||
|  | 			Goto DPRGM2 | ||||||
|  | 		End | ||||||
|  | 		If B=34 | ||||||
|  | 			If Z | ||||||
|  | 				0->Z | ||||||
|  | 				Else | ||||||
|  | 				1->Z | ||||||
|  | 			End | ||||||
|  | 			Goto DPRGM2 | ||||||
|  | 		End | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | If (getKey(4)) and (B!=13) | ||||||
|  | 	For(S,0,7) | ||||||
|  | 		RectI(0,B-S,96,7) | ||||||
|  | 		DispGraph | ||||||
|  | 		RectI(0,B-S,96,7) | ||||||
|  | 		Normal | ||||||
|  | 		Pause 3 | ||||||
|  | 		Full | ||||||
|  | 	End | ||||||
|  | 	B-7->B | ||||||
|  | End | ||||||
|  | If ((getKey(1)) and (B!=34) | ||||||
|  | 	For(S,0,7) | ||||||
|  | 		RectI(0,B+S,96,7) | ||||||
|  | 		DispGraph | ||||||
|  | 		RectI(0,B+S,96,7) | ||||||
|  | 		Normal | ||||||
|  | 		Pause 3 | ||||||
|  | 		Full | ||||||
|  | 	End | ||||||
|  | 	B+7->B | ||||||
|  | End | ||||||
|  | If getKey(15) | ||||||
|  | 	sub(SETPRGM) | ||||||
|  | 	Goto DLIST | ||||||
|  | End | ||||||
|  | Goto KPRGM | ||||||
|  | Lbl SETPRGM | ||||||
|  | If (X!=D) or (Y!=E) or (Z!=F) | ||||||
|  | 	If X | ||||||
|  | 		sub(D3) | ||||||
|  | 		DispGraph | ||||||
|  | 	End | ||||||
|  | 	UnArchive L1 | ||||||
|  | 	X->D | ||||||
|  | 	If (E!=Y) | ||||||
|  | 		If Y | ||||||
|  | 			{C-7}-64->{C-7} | ||||||
|  | 			{L1+1}-64->{L1+1} | ||||||
|  | 			Else | ||||||
|  | 			{C-7}+64->{C-7} | ||||||
|  | 			{L1+1}+64->{L1+1} | ||||||
|  | 		End | ||||||
|  | 		Y->E | ||||||
|  | 	End | ||||||
|  | 	If (F!=Z) | ||||||
|  | 		If Z | ||||||
|  | 			6->{C} | ||||||
|  | 			|E06->{L1} | ||||||
|  | 			Else | ||||||
|  | 			5->{C} | ||||||
|  | 			|E05->{L1} | ||||||
|  | 		End | ||||||
|  | 		Z->F | ||||||
|  | 	End | ||||||
|  | 	If X | ||||||
|  | 		Archive L1 | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | GetCalc(L1,[Y3]) | ||||||
|  | Return | ||||||
|  | Lbl RUN | ||||||
|  | GetCalc("appv hold ",20)->S | ||||||
|  | Fill(S,20,0) | ||||||
|  | Copy(L1+1,S,10) | ||||||
|  | A->{S+15} | ||||||
|  | DiagnosticOn | ||||||
|  | Fix 4 | ||||||
|  | Normal | ||||||
|  | If D | ||||||
|  | 	GetCalc("appvzRun",{[Y3]-2}^^r)->S | ||||||
|  | 	Copy([Y3],S,{[Y3]-2}^^r) | ||||||
|  | End | ||||||
|  | 2-SampZInt(|LRUNERR) | ||||||
|  | If D | ||||||
|  | 	Fpdf("appvzRun") | ||||||
|  | 	Else | ||||||
|  | 	Fpdf(L1) | ||||||
|  | End | ||||||
|  | 2-SampTInt  | ||||||
|  | DelVar "appvzRun" | ||||||
|  | GetCalc("appv hold ")->S | ||||||
|  | Fill(L1,20,0) | ||||||
|  | Copy(S,L1,10) | ||||||
|  | {S+15}->A | ||||||
|  | sub(DATA) | ||||||
|  | DelVar "appv hold " | ||||||
|  | DiagnosticOff | ||||||
|  | Fix 5 | ||||||
|  | Full | ||||||
|  | Repeat getKey=0 | ||||||
|  | End | ||||||
|  | Goto DPRGM1 | ||||||
|  | Lbl RUNERR | ||||||
|  | 2-SampFTest ->S | ||||||
|  | DelVar "appvzRun" | ||||||
|  | DiagnosticOff | ||||||
|  | Fix 5 | ||||||
|  | Full | ||||||
|  | sub(D2,10,22,76,20,"Error") | ||||||
|  | If S=8 | ||||||
|  | 	Text(12,31,"Syntax") | ||||||
|  | 	Else | ||||||
|  | 	Text(12,31,"Error "[23]"",S>Dec) | ||||||
|  | End | ||||||
|  | DispGraph | ||||||
|  | Repeat (getKey) and (getKey(9)) | ||||||
|  | End | ||||||
|  | GetCalc("appv hold ")->S | ||||||
|  | Fill(L1,20,0) | ||||||
|  | Copy(S,L1,10) | ||||||
|  | {S+15}->A | ||||||
|  | sub(DATA) | ||||||
|  | DelVar "appv hold " | ||||||
|  | DiagnosticOff | ||||||
|  | Fix 5 | ||||||
|  | Full | ||||||
|  | Repeat getKey=0 | ||||||
|  | End | ||||||
|  | Goto DPRGM1 | ||||||
|  | Lbl DSET1 | ||||||
|  | 21->B | ||||||
|  | {[Y1]+5}->X | ||||||
|  | {[Y1]}->Y | ||||||
|  | {[Y1]+6}->Z | ||||||
|  | Lbl DSET2 | ||||||
|  | ClrDraw | ||||||
|  | sub(D1,0,0) | ||||||
|  | RectI(0,11,96,1) | ||||||
|  | Text(1,12,"by ClrDraw, Nov 2013, v 1") | ||||||
|  | RectI(0,19,96,1) | ||||||
|  | RectI(0,63,96,1) | ||||||
|  | If X | ||||||
|  | 	Text(1,21,"Show Hidden On") | ||||||
|  | 	Else | ||||||
|  | 	Text(1,21,"Show Hidden Off") | ||||||
|  | End | ||||||
|  | If Y | ||||||
|  | 	Text(1,28,"Password On") | ||||||
|  | 	Else | ||||||
|  | 	Text(1,28,"Password Off") | ||||||
|  | End | ||||||
|  | If Z | ||||||
|  | 	Text(1,35,"Lowercase On") | ||||||
|  | 	Else | ||||||
|  | 	Text(1,35,"Lowercase Off") | ||||||
|  | End | ||||||
|  | Text(1,42,"Uninstall AlphaCS") | ||||||
|  | Lbl KSET | ||||||
|  | RectI(0,B,96,7) | ||||||
|  | DispGraph | ||||||
|  | RectI(0,B,96,7) | ||||||
|  | Repeat getKey | ||||||
|  | End | ||||||
|  | If (getKey(54)) or (getKey(9)) | ||||||
|  | 	If B=21 | ||||||
|  | 		If X | ||||||
|  | 			0->X | ||||||
|  | 			Else | ||||||
|  | 			1->X | ||||||
|  | 		End | ||||||
|  | 		Goto DSET2 | ||||||
|  | 	End | ||||||
|  | 	If B=28 | ||||||
|  | 		If Y | ||||||
|  | 			0->Y | ||||||
|  | 			Else | ||||||
|  | 			1->Y | ||||||
|  | 		End | ||||||
|  | 		Goto DSET2 | ||||||
|  | 	End | ||||||
|  | 	If B=35 | ||||||
|  | 		If Z | ||||||
|  | 			0->Z | ||||||
|  | 			Else | ||||||
|  | 			1->Z | ||||||
|  | 		End | ||||||
|  | 		Goto DSET2 | ||||||
|  | 	End | ||||||
|  | 	If B=42 | ||||||
|  | 		If sub(CODE) | ||||||
|  | 			DelVar Str1 | ||||||
|  | 			Goto END | ||||||
|  | 			Else | ||||||
|  | 			Goto DSET2 | ||||||
|  | 		End | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | If (getKey(4)) and (B!=21) | ||||||
|  | 	For(7) | ||||||
|  | 		RectI(0,B,96,7) | ||||||
|  | 		DispGraph | ||||||
|  | 		RectI(0,B,96,7) | ||||||
|  | 		B-- | ||||||
|  | 		Normal | ||||||
|  | 		Pause 3 | ||||||
|  | 		Full | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | If (getKey(1)) and (B!=42) | ||||||
|  | 	For(7) | ||||||
|  | 		RectI(0,B,96,7) | ||||||
|  | 		DispGraph | ||||||
|  | 		RectI(0,B,96,7) | ||||||
|  | 		B++ | ||||||
|  | 		Normal | ||||||
|  | 		Pause 3 | ||||||
|  | 		Full | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | If getKey(15) | ||||||
|  | 	If ({[Y1]+5}!=X) or ({[Y1]}!=Y) or ({[Y1]+6}!=Z) | ||||||
|  | 		UnArchive Str1 | ||||||
|  | 		GetCalc(Str1)->S | ||||||
|  | 		X->{S+5} | ||||||
|  | 		Y->{S} | ||||||
|  | 		Z->{S+6} | ||||||
|  | 		sub(D3) | ||||||
|  | 		DispGraph | ||||||
|  | 		Archive Str1 | ||||||
|  | 		GetCalc(Str1,[Y1]) | ||||||
|  | 	End | ||||||
|  | 	Repeat getKey=0 | ||||||
|  | 	End | ||||||
|  | 	Goto DLIST | ||||||
|  | End | ||||||
|  | Goto KSET | ||||||
							
								
								
									
										138
									
								
								samples/TI Program/srcsort.8xp.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										138
									
								
								samples/TI Program/srcsort.8xp.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,138 @@ | |||||||
|  | .SORT AlphaCS | ||||||
|  | Lbl POLAR | ||||||
|  | Fill(L1,50,0) | ||||||
|  | {|E9830}^^r->[r2] | ||||||
|  | Repeat (({[r2]}=5) or ({[r2]}=6)) and (({[r2]-7}>48) or (({[Y1]+5}) and ({[r2]-7}<28))) | ||||||
|  | 	[r2]-{[r2]-6}-7->[r2] | ||||||
|  | 	If [r2]<={|E982E}^^r | ||||||
|  | 		Return0 | ||||||
|  | 	End | ||||||
|  | End | ||||||
|  | For([r3],1,{[r2]-6}) | ||||||
|  | 	{[r2]-6-[r3]}->{L1+[r3]-1} | ||||||
|  | End | ||||||
|  | [r2]-{[r2]-6}-7->[r2] | ||||||
|  | Repeat 0 | ||||||
|  | 	If (({[r2]}=5) or ({[r2]}=6)) and (({[r2]-7}>48) or (({[Y1]+5}) and ({[r2]-7}<28))) | ||||||
|  | 		Fill(L2,50,0) | ||||||
|  | 		For([r3],1,{[r2]-6} | ||||||
|  | 			{[r2]-6-[r3]}->{L2+[r3]-1 | ||||||
|  | 		End | ||||||
|  | 		0->[r3] | ||||||
|  | 		Repeat ({L1+[r3]}!={L2+[r3]}) or ([r3]=20) | ||||||
|  | 			[r3]++ | ||||||
|  | 		End | ||||||
|  | 		If (({L1+[r3]}>{L2+[r3]}) and ([r1]=1)) or (({L1+[r3]}<{L2+[r3]}) and ([r1]=0)) | ||||||
|  | 			Fill(L1,50,0) | ||||||
|  | 			Copy(L2,L1,20) | ||||||
|  | 		End | ||||||
|  | 		Else | ||||||
|  | 		If [r2]<{|E982E}^^r | ||||||
|  | 			sub(DATA) | ||||||
|  | 			Return1 | ||||||
|  | 		End | ||||||
|  | 	End | ||||||
|  | 	[r2]-{[r2]-6}-7->[r2] | ||||||
|  | End | ||||||
|  | Lbl ADJ | ||||||
|  | Fill(L2,50,0) | ||||||
|  | Copy(L1+1,L2,20) | ||||||
|  | Fill(L1,50,0) | ||||||
|  | Copy(L2,L1) | ||||||
|  | Fill(L3,50,0) | ||||||
|  | Copy(L1,L3,20) | ||||||
|  | Fill(L1,50,0) | ||||||
|  | {|E9830}^^r->[r2] | ||||||
|  | sub(CHECK) | ||||||
|  | Repeat (({[r2]}=5) or ({[r2]}=6)) and ([r4]) and (({[r2]-7}>48) or ({[r2]-7}<28)) | ||||||
|  | 	[r2]-{[r2]-6}-7->[r2] | ||||||
|  | 	If [r2]<{|E982E}^^r | ||||||
|  | 		Fill(L1,50,0) | ||||||
|  | 		Copy(L3,L1,20) | ||||||
|  | 		Fill(L3,50,0) | ||||||
|  | 		sub(DATA) | ||||||
|  | 		Return0 | ||||||
|  | 	End | ||||||
|  | 	sub(CHECK) | ||||||
|  | End | ||||||
|  | For([r3],1,{[r2]-6}) | ||||||
|  | 	{[r2]-6-[r3]}->{L1+[r3]-1} | ||||||
|  | End | ||||||
|  | [r2]-{[r2]-6}-7->[r2] | ||||||
|  | Repeat 0 | ||||||
|  | 	sub(CHECK) | ||||||
|  | 	If (({[r2]}=5) or ({[r2]}=6)) and ([r4]) and (({[r2]-7}>48) or ({[r2]-7}<28)) | ||||||
|  | 		Fill(L2,50,0) | ||||||
|  | 		For([r3],1,{[r2]-6} | ||||||
|  | 			{[r2]-6-[r3]}->{L2+[r3]-1 | ||||||
|  | 		End | ||||||
|  | 		0->[r3] | ||||||
|  | 		Repeat ({L1+[r3]}!={L2+[r3]}) or ([r3]=20) | ||||||
|  | 			[r3]++ | ||||||
|  | 		End | ||||||
|  | 		If (({L1+[r3]}>{L2+[r3]}) and ([r1]=1)) or (({L1+[r3]}<{L2+[r3]}) and ([r1]=0)) | ||||||
|  | 			Fill(L1,50,0) | ||||||
|  | 			Copy(L2,L1,20) | ||||||
|  | 		End | ||||||
|  | 		Else | ||||||
|  | 		If [r2]<{|E982E}^^r | ||||||
|  | 			sub(DATA) | ||||||
|  | 			Return1 | ||||||
|  | 		End | ||||||
|  | 	End | ||||||
|  | 	[r2]-{[r2]-6}-7->[r2] | ||||||
|  | End | ||||||
|  | Lbl CHECK | ||||||
|  | 0->[r4] | ||||||
|  | Repeat ({[r2]-7-[r4]}!={L3+[r4]}) or (([r4]>={[r2]-6}) and ({L3+[r4]}=0)) | ||||||
|  | 	[r4]++ | ||||||
|  | End | ||||||
|  | If ((({[r2]-7-[r4]}<{L3+[r4]}) and ([r1]=1)) or (({[r2]-7-[r4]}>{L3+[r4]}) and ([r1]=0))) or (([r4]>={[r2]-6}) and ({L3+[r4]}=0)) | ||||||
|  | 	0->[r4] | ||||||
|  | 	Else | ||||||
|  | 	1->[r4] | ||||||
|  | End | ||||||
|  | Return | ||||||
|  | Lbl DATA | ||||||
|  | {|E9830}^^r->C | ||||||
|  | Repeat 0 | ||||||
|  | 	Repeat ({C}=5) or ({C}=6) and (({[r1]-7}>48) or ({[r1]-7}<28)) | ||||||
|  | 		C-{C-6}-7->C | ||||||
|  | 	End | ||||||
|  | 	Fill(L2,50,0) | ||||||
|  | 	For([r1],1,{C-6}) | ||||||
|  | 		{C-6-[r1]}->{L2+[r1]-1} | ||||||
|  | 	End | ||||||
|  | 	!If Equ>String(L1,L2) | ||||||
|  | 		If {C-5}=0 | ||||||
|  | 			0->D | ||||||
|  | 			Else | ||||||
|  | 			1->D | ||||||
|  | 		End | ||||||
|  | 		If {C-7}<28 | ||||||
|  | 			1->E | ||||||
|  | 			Else | ||||||
|  | 			0->E | ||||||
|  | 		End | ||||||
|  | 		If {C}=6 | ||||||
|  | 			1->F | ||||||
|  | 			Else | ||||||
|  | 			0->F | ||||||
|  | 		End | ||||||
|  | 		Fill(L2,50,0) | ||||||
|  | 		Copy(L1,L2,20) | ||||||
|  | 		Fill(L1,50,0) | ||||||
|  | 		Copy(L2,L1+1,20) | ||||||
|  | 		If E | ||||||
|  | 			{L2}+64->{L2} | ||||||
|  | 		End | ||||||
|  | 		If F | ||||||
|  | 			|E06->{L1} | ||||||
|  | 			Else | ||||||
|  | 			|E05->{L1} | ||||||
|  | 		End | ||||||
|  | 		Return | ||||||
|  | 	End | ||||||
|  | 	C-{C-6}-7->C | ||||||
|  | End | ||||||
|  | Return | ||||||
							
								
								
									
										93
									
								
								script/add-grammar
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										93
									
								
								script/add-grammar
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,93 @@ | |||||||
|  | #!/usr/bin/env ruby | ||||||
|  |  | ||||||
|  | require "optparse" | ||||||
|  |  | ||||||
|  | ROOT = File.expand_path("../../", __FILE__) | ||||||
|  |  | ||||||
|  |  | ||||||
|  | # Break a repository URL into its separate components | ||||||
|  | def parse_url(input) | ||||||
|  |   hosts = "github\.com|bitbucket\.org|gitlab\.com" | ||||||
|  |    | ||||||
|  |   # HTTPS/HTTP link pointing to recognised hosts | ||||||
|  |   if input =~ /^(?:https?:\/\/)?(?:[^.@]+@)?(?:www\.)?(#{hosts})\/([^\/]+)\/([^\/]+)/i | ||||||
|  |     { host: $1.downcase(), user: $2, repo: $3.sub(/\.git$/, "") } | ||||||
|  |   # SSH | ||||||
|  |   elsif input =~ /^git@(#{hosts}):([^\/]+)\/([^\/]+)\.git$/i | ||||||
|  |     { host: $1.downcase(), user: $2, repo: $3 } | ||||||
|  |   # provider:user/repo | ||||||
|  |   elsif input =~ /^(github|bitbucket|gitlab):\/?([^\/]+)\/([^\/]+)\/?$/i | ||||||
|  |     { host: $1.downcase(), user: $2, repo: $3 } | ||||||
|  |   # user/repo - Common GitHub shorthand | ||||||
|  |   elsif input =~ /^\/?([^\/]+)\/([^\/]+)\/?$/ | ||||||
|  |     { host: "github.com", user: $1, repo: $2 } | ||||||
|  |   else | ||||||
|  |     raise "Unsupported URL: #{input}" | ||||||
|  |   end | ||||||
|  | end | ||||||
|  |  | ||||||
|  | # Isolate the vendor-name component of a submodule path | ||||||
|  | def parse_submodule(name) | ||||||
|  |   name =~ /^(?:.*(?:vendor\/)?grammars\/)?([^\/]+)/i | ||||||
|  |   path = "vendor/grammars/#{$1}" | ||||||
|  |   unless File.exist?("#{ROOT}/" + path) | ||||||
|  |     warn "Submodule '#{path}' does not exist. Aborting." | ||||||
|  |     exit 1 | ||||||
|  |   end | ||||||
|  |   path | ||||||
|  | end | ||||||
|  |  | ||||||
|  | # Print debugging feedback to STDOUT if running with --verbose | ||||||
|  | def log(msg) | ||||||
|  |   puts msg if $verbose | ||||||
|  | end | ||||||
|  |  | ||||||
|  |  | ||||||
|  | usage = """Usage: | ||||||
|  |   #{$0} [-v|--verbose] [--replace grammar] url | ||||||
|  | Examples: | ||||||
|  |   #{$0} https://github.com/Alhadis/language-roff | ||||||
|  |   #{$0} --replace sublime-apl https://github.com/Alhadis/language-apl | ||||||
|  | """ | ||||||
|  |  | ||||||
|  | $replace = nil | ||||||
|  | $verbose = false | ||||||
|  |  | ||||||
|  | OptionParser.new do |opts| | ||||||
|  |   opts.banner = usage | ||||||
|  |   opts.on("-v", "--verbose", "Print verbose feedback to STDOUT") do | ||||||
|  |     $verbose = true | ||||||
|  |   end | ||||||
|  |   opts.on("-rSUBMODULE", "--replace=SUBMODDULE", "Replace an existing grammar submodule.") do |name| | ||||||
|  |     $replace = name | ||||||
|  |   end | ||||||
|  | end.parse! | ||||||
|  |  | ||||||
|  |  | ||||||
|  | $url = ARGV[0] | ||||||
|  |  | ||||||
|  | # No URL? Print a usage message and bail. | ||||||
|  | unless $url | ||||||
|  |   warn usage | ||||||
|  |   exit 1; | ||||||
|  | end | ||||||
|  |  | ||||||
|  | # Ensure the given URL is an HTTPS link | ||||||
|  | parts    = parse_url $url | ||||||
|  | https    = "https://#{parts[:host]}/#{parts[:user]}/#{parts[:repo]}" | ||||||
|  | repo_new = "vendor/grammars/#{parts[:repo]}" | ||||||
|  | repo_old = parse_submodule($replace) if $replace | ||||||
|  |  | ||||||
|  | if repo_old | ||||||
|  |   log "Deregistering: #{repo_old}" | ||||||
|  |   `git submodule deinit #{repo_old}` | ||||||
|  |   `git rm -rf #{repo_old}` | ||||||
|  | end | ||||||
|  |  | ||||||
|  | log "Registering new submodule: #{repo_new}" | ||||||
|  | `git submodule add -f #{https} #{repo_new}` | ||||||
|  | exit 1 if $?.exitstatus > 0 | ||||||
|  | `script/convert-grammars --add #{repo_new}` | ||||||
|  |  | ||||||
|  | log "Confirming license" | ||||||
|  | `script/licensed --module "#{repo_new}"` | ||||||
| @@ -4,6 +4,7 @@ | |||||||
|  |  | ||||||
| require "bundler/setup" | require "bundler/setup" | ||||||
| require "licensed/cli" | require "licensed/cli" | ||||||
|  | require "optparse" | ||||||
|  |  | ||||||
| module Licensed | module Licensed | ||||||
|   module Source |   module Source | ||||||
| @@ -32,7 +33,14 @@ module Licensed | |||||||
|   end |   end | ||||||
| end | end | ||||||
|  |  | ||||||
| source = Licensed::Source::Filesystem.new("vendor/grammars/*/", type: "grammar") | module_path = nil | ||||||
|  | OptionParser.new do |opts| | ||||||
|  |   opts.on("-mPATH", "--module=PATH", "Cache license file for specific grammar") do |p| | ||||||
|  |     module_path = p | ||||||
|  |   end | ||||||
|  | end.parse! | ||||||
|  |  | ||||||
|  | source = Licensed::Source::Filesystem.new(module_path || "vendor/grammars/*/", type: "grammar") | ||||||
| config = Licensed::Configuration.new | config = Licensed::Configuration.new | ||||||
| config.sources << source | config.sources << source | ||||||
|  |  | ||||||
| @@ -43,4 +51,5 @@ else | |||||||
| end | end | ||||||
|  |  | ||||||
| command.run | command.run | ||||||
|  | `git checkout -- vendor/licenses/grammar/` if module_path | ||||||
| exit command.success? | exit command.success? | ||||||
|   | |||||||
| @@ -29,7 +29,6 @@ class TestGrammars < Minitest::Test | |||||||
|     "9f0c0b0926a18f5038e455e8df60221125fc3111", # elixir-tmbundle |     "9f0c0b0926a18f5038e455e8df60221125fc3111", # elixir-tmbundle | ||||||
|     "90af581219debd4e90ef041b46c294e8b4ae6d14", # mako-tmbundle |     "90af581219debd4e90ef041b46c294e8b4ae6d14", # mako-tmbundle | ||||||
|     "b9b24778619dce325b651f0d77cbc72e7ae0b0a3", # Julia.tmbundle |     "b9b24778619dce325b651f0d77cbc72e7ae0b0a3", # Julia.tmbundle | ||||||
|     "2d4f8807be850efd925751a8e1839cfc539985b0", # actionscript3-tmbundle |  | ||||||
|     "e06722add999e7428048abcc067cd85f1f7ca71c", # r.tmbundle |     "e06722add999e7428048abcc067cd85f1f7ca71c", # r.tmbundle | ||||||
|     "50b14a0e3f03d7ca754dac42ffb33302b5882b78", # smalltalk-tmbundle |     "50b14a0e3f03d7ca754dac42ffb33302b5882b78", # smalltalk-tmbundle | ||||||
|     "eafbc4a2f283752858e6908907f3c0c90188785b", # gap-tmbundle |     "eafbc4a2f283752858e6908907f3c0c90188785b", # gap-tmbundle | ||||||
|   | |||||||
| @@ -497,7 +497,8 @@ class TestLanguage < Minitest::Test | |||||||
|  |  | ||||||
|   def test_no_unused_colours |   def test_no_unused_colours | ||||||
|     Language.all.each do |language| |     Language.all.each do |language| | ||||||
|       next unless language.type == :data || language.type == :prose |       next unless language.type == :data || language.type == :prose || | ||||||
|  |         language.group.to_s != language.name | ||||||
|       assert !language.color, "Unused colour assigned to #{language.name}" |       assert !language.color, "Unused colour assigned to #{language.name}" | ||||||
|     end |     end | ||||||
|   end |   end | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								vendor/grammars/actionscript3-tmbundle
									
									
									
									
										vendored
									
									
								
							
							
								
								
								
								
								
							
						
						
									
										2
									
								
								vendor/grammars/actionscript3-tmbundle
									
									
									
									
										vendored
									
									
								
							 Submodule vendor/grammars/actionscript3-tmbundle updated: d24ad7dec9...bb76f18706
									
								
							
		Reference in New Issue
	
	Block a user