From f95365946c3f25cf236e9d96fdf2bb54dbdd29d7 Mon Sep 17 00:00:00 2001 From: Alhadis Date: Mon, 29 Aug 2016 01:43:44 +1000 Subject: [PATCH 01/27] Separate CSON from CoffeeScript --- lib/linguist/languages.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index f8e97318..ad13c8f9 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -526,6 +526,15 @@ COLLADA: tm_scope: text.xml ace_mode: xml +CSON: + type: data + group: CoffeeScript + tm_scope: source.coffee + ace_mode: coffee + searchable: false + extensions: + - .cson + CSS: type: markup tm_scope: source.css @@ -648,7 +657,6 @@ CoffeeScript: - ._coffee - .cake - .cjsx - - .cson - .iced filenames: - Cakefile From 48b64c2d31831ff1039fd5e190b8162aa2473c5c Mon Sep 17 00:00:00 2001 From: Alhadis Date: Mon, 29 Aug 2016 01:57:32 +1000 Subject: [PATCH 02/27] Add CSON samples --- samples/CSON/base.cson | 72 +++++++++++++++++++++ samples/CSON/config.cson | 59 +++++++++++++++++ samples/CSON/ff-sfd.cson | 108 +++++++++++++++++++++++++++++++ samples/CSON/wercker-status.cson | 11 ++++ 4 files changed, 250 insertions(+) create mode 100644 samples/CSON/base.cson create mode 100644 samples/CSON/config.cson create mode 100644 samples/CSON/ff-sfd.cson create mode 100644 samples/CSON/wercker-status.cson diff --git a/samples/CSON/base.cson b/samples/CSON/base.cson new file mode 100644 index 00000000..d9941643 --- /dev/null +++ b/samples/CSON/base.cson @@ -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!' diff --git a/samples/CSON/config.cson b/samples/CSON/config.cson new file mode 100644 index 00000000..5b0415b2 --- /dev/null +++ b/samples/CSON/config.cson @@ -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"] + ] diff --git a/samples/CSON/ff-sfd.cson b/samples/CSON/ff-sfd.cson new file mode 100644 index 00000000..409d5caa --- /dev/null +++ b/samples/CSON/ff-sfd.cson @@ -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" + diff --git a/samples/CSON/wercker-status.cson b/samples/CSON/wercker-status.cson new file mode 100644 index 00000000..f4572b7a --- /dev/null +++ b/samples/CSON/wercker-status.cson @@ -0,0 +1,11 @@ +'menu': [ + { + 'label': 'Packages' + 'submenu': [ + 'label': 'Wercker Status' + 'submenu': [ + { 'label': 'Check now!', 'command': 'wercker-status:checknow' } + ] + ] + } +] From fe709659061a70e0fdaf09f89601fa35e6c8f985 Mon Sep 17 00:00:00 2001 From: Scott Mangiapane Date: Mon, 3 Oct 2016 21:11:28 -0400 Subject: [PATCH 03/27] Added entry for TI-83+/84 programs and apps --- lib/linguist/languages.yml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 269525ce..29f67e5d 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -4207,6 +4207,14 @@ Thrift: - ".thrift" ace_mode: text language_id: 374 +TI PRGM: + type: programming + extensions: + - ".8xp" + - ".8xk" + - ".8xp.txt" + - ".8xk.txt" + color: "#A0AA87" Turing: type: programming color: "#cf142b" From a3628f86da9ea02bf281836d5543d5c0c5713117 Mon Sep 17 00:00:00 2001 From: Scott Mangiapane Date: Mon, 3 Oct 2016 21:12:30 -0400 Subject: [PATCH 04/27] Added example files for TI-83+/84 programs --- samples/TI PRGM/srcalpha.8xp | Bin 0 -> 1175 bytes samples/TI PRGM/srcalpha.8xp.txt | 63 ++++ samples/TI PRGM/srcfunc.8xp | Bin 0 -> 1990 bytes samples/TI PRGM/srcfunc.8xp.txt | 194 +++++++++++ samples/TI PRGM/srcgui.8xp | Bin 0 -> 4372 bytes samples/TI PRGM/srcgui.8xp.txt | 563 +++++++++++++++++++++++++++++++ samples/TI PRGM/srcsort.8xp | Bin 0 -> 1569 bytes samples/TI PRGM/srcsort.8xp.txt | 138 ++++++++ 8 files changed, 958 insertions(+) create mode 100644 samples/TI PRGM/srcalpha.8xp create mode 100644 samples/TI PRGM/srcalpha.8xp.txt create mode 100644 samples/TI PRGM/srcfunc.8xp create mode 100644 samples/TI PRGM/srcfunc.8xp.txt create mode 100644 samples/TI PRGM/srcgui.8xp create mode 100644 samples/TI PRGM/srcgui.8xp.txt create mode 100644 samples/TI PRGM/srcsort.8xp create mode 100644 samples/TI PRGM/srcsort.8xp.txt diff --git a/samples/TI PRGM/srcalpha.8xp b/samples/TI PRGM/srcalpha.8xp new file mode 100644 index 0000000000000000000000000000000000000000..2d8a1f61c994bd2e0f8ffbda1173e53d3600f6e8 GIT binary patch literal 1175 zcmZ`&&rcLF6kd{b5rfI@)ze;QS4e-%OlS7ew4GLoEGV%qN>+Q?S6veo9R56yIa zdt;EP_0?>nNt-jx&B5#-dz)=#gSFXr*;c=LztXMVNtcwEfBINdVDY5d5%$=g*#o<$ zQf{B|^WD0S8{AHdq}$*Z{4(u{r5rTZ zt1l~<*EAXr7huN0gx3tPbFMDJ4yM3nZj2=g5&!?%0lW=ga86A=;nezfN*S2LE-4H0#i(l36yv0 zcE91JKsmJ|JMy}4)Ktd75G8VDhIyQpH*!?rBe~=r5(sB|$@i5Q+#Irvk-6MET z?Js)*Y2&bsL&!TXD%`q=5Y;lGkUAyOxLotutu?HRxRFIXqIn$3grI8WgP<+T>d+eq zM+l1`qM9jcO!0v4FeCzmh@Tf+`3%cM7^OmE0%4*=V%G>|b&+<<>d<12anqCzr3{iF z3X?#xAd#*Lw^&)-{(zntLR%b{4}pfgWv_{u3?vTVC>q2tZsSezt5o;+3%DG!yr6RD z(ehkAr;G4kUb=7x&L8D%J!*U4525FvZfE=x|IF=cz8UasK67rStr1 +"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 \ No newline at end of file diff --git a/samples/TI PRGM/srcfunc.8xp b/samples/TI PRGM/srcfunc.8xp new file mode 100644 index 0000000000000000000000000000000000000000..507b28f90290f482fcf8eac2c8161f3cda4ec0a3 GIT binary patch literal 1990 zcmZ`)&u<$=6keo2eh4J*m6NZ#qeeTkKm0?e8?U>*w@vh%D@4cD#&G(*NclAoy zZ@OIz3zGZzm z`})dq(tLj@u`C#0%vR~U6RSP-t9qik$%;IU(|4u%MBWMIUHL$&H&em5&v=QIJSHm4 zjn!lIRPCxh!XDwTr-o|i+T_U@51A<0atm+2H0hhD0pfa>9cSH{_#p13e6ceV%VW6} znxL;oV4c87=uBfU(O~7jU`k*qngBnRe{s)42}gyvEj;_3LcQ&WcqMIK#w%^pIsa@d zQRuWHpQ!^dGEn=@71dWislmAtzo!z*?E1W}ps-`t3Oj|0ZBx2cH~Y#_+m0(wI7jFfeH^@tTl_)&rjP%# zqkcpMzvtqC?gddQJW~CHTeVt+a<3qkh5bIYyWnO?gOU_{5mf|C&R!^3Y;D zvWdi3&?eU>@Mh+++Pr3rn9E|a!6h9{AkBDYX=3wbf#uT0%RWW>7q17jj^-Mte|61b zp=JlW`T=uk($c`%g$kceuQ7l~O?4ABl0-&jT(j~r$n*bYVA+&$;c{Nah3k14XX{7M zA#rzWPVbFrO13aIL}zT@*pQa717nkbFvBsUUP@fmYkIJ$n-49rES42)$mm4=K^KGJ z=r)#@uP&dXhDI|+5@}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 \ No newline at end of file diff --git a/samples/TI PRGM/srcgui.8xp b/samples/TI PRGM/srcgui.8xp new file mode 100644 index 0000000000000000000000000000000000000000..98d0c401fc3026241eb63d005eeb2f3c2f89d897 GIT binary patch literal 4372 zcmcIo&2JM&6nC0!h*2u-a_j-+!oeOT+An|6s)HTdNeTs&btKzTqS9apsao579C~ak z{sPXWy;VX=MGG{jlR`x(fgG$Tn50q3*^!H}gYp>(bO0)s8JMYcB@ArGN#N(ye zv{Q_~dpI(6xpwYq?fm#BUyOV8YnPX5Q}y$;%j3@Y#Q2q^$)(z7wX3zI<;l-$SO3)C ziEQa_dvjCM^Rp5BZ0S$+<9Lr{#k%-StclxG9v7d^&7VFyH~o=;*Q!^_mJ0^o&7Yd} zO8h#%ewd4~yv0mrfAkZuqB}gLPilBB0Tq)#gaHG#f$pJD0GuJqU9Vj=@y86qj;+Osez7jw&KWdG1|>wzXDuD`D_GRd8*-v&unok(?d*STRZPic>JH zykk1WTnZWNVUb=skR};kp=8loU)3{)@jf02*D#QZNH-N4!-`6)rRSQK^L5IAitvtx z)!BpE&z7Lu|b!cmw=b9-k z2fdwaBOu*E2$?(FHI^)cXM;;GbSQ{|az`E-)PJEvT}=~Iyo3Yrl?)FS&*AhpvP!Wf zY11AwiuA3sc%vQ`2Wmb5rYK9YLMVWGu0H*`CWzwKh1TGT2SHhma-`z0ieK7`7y#7qTQl!qppulp42iI!}$@ zuSOfAO0}Ty;)`F##J90HTh!Iy;CZdg3tEL2wW`0*=E6h&FCH;4Q)W;Rql-rxW^~0$ zr+}Qau&^*Q5I}4q*wGc+w788m3W+F=qBxS`(;y>}=B^~YZfqh|ZbqhxYRXN^E&`+_ zGn&U+RsNmF5=kTvsqvag&>+7OP?5oaS`MhFDgs{=L6T)$!krs7y~o9dxG%QE-475H z7~Zs_hu;EI&F49q!!ccKV$Wl-786?@p0_co9~+p>tuk%2O%|WWxF+%s;)%E$qiBP@ z-QkL5pCS#VBPn%c4RY`F9{_JAOvkY*$#PtEY#kSbpTsXAJ;XZ|ro-WhRFb(anMiOh zCUG5b6U<8EFU+3-tbd(KijJduaQBjTpCNLCyujUu#t*I4;0owNU7S}#3DRtn@?@gS zw^6WVs8kclCgotKsCZ0t0I@6mY{#Y8n`jPVS3_)xnlK;p^8{eCf2iexx#iFHV10rA z;qYsar6w2!0b(pA#zBaCXJalvSYJ%A?uwCE3o)wudxO`xGwi8k?D}Da#&SK6@n5MI z@ViRcm=!)c)l5a3Nmr9Ee3Y`F*76Mjl8i>*4!Kr4 z+PtC_AiSj)>s83C@+5>s`Fkdw3y~;9Bzyv%L}>G>R-_YUE|y^tg*-r~7krm$!$-9> z6#u%ogEmH402E$%;d;T%7Uh!FM!klWh;ng(Uvc>bx+F^hVoNrA00JaJ99ulXybdf# z1j+pcm4&%ESdW88fv25=)bHZxLPTzx<)YNX+h?ORP+qcBMSE1ZWS_E5%c28R1xqLzPj zxB`wY>WxGcy^WVBdYIP9s2pghcN^bm2i$yssc<+heiYAQ*I5joW8z5+lgwc;yjXCZ zCXkhp6Ue`#bw1&I@Rz|NKR06vwSniD8E3?UU;-St<({~QO{ngQoD^vmKZ}TO;Lj!{ z1;yMeW*|Edp$0@k4S`MA@CYMjlgF32DBX&vOV_sg z;325*18W=Oj_!t(-@(%<*K7hFe4r-G3J}`Gc>9O5_|)t@t8kfaQdFq*GGaod3SgBl zC|1HlaS3({?^cAmrA$BtoT}g%1qx!71Zw#JEtdVQ@*+o{ggzL^|C6A*CPFiE@o&!P Bc|rgH literal 0 HcmV?d00001 diff --git a/samples/TI PRGM/srcgui.8xp.txt b/samples/TI PRGM/srcgui.8xp.txt new file mode 100644 index 00000000..aba98bf3 --- /dev/null +++ b/samples/TI PRGM/srcgui.8xp.txt @@ -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 \ No newline at end of file diff --git a/samples/TI PRGM/srcsort.8xp b/samples/TI PRGM/srcsort.8xp new file mode 100644 index 0000000000000000000000000000000000000000..4998713bc157cb378f95a503a6f58ef68fd6313a GIT binary patch literal 1569 zcmds1O>f#j5H$!S7Nrut_Qa)!VkNR6e6&FG&$s0S+aL$$8X-uzL`p8_@Y(oRUQ@3}|5Bg$o(jO`cHmm$oT0ge@AO27O zyZ=oL`1;MsYpc(%M~YV0HC^R}_LEjkXT_Yf_*JP?kQSTN)o0P7p{izR^P24JxCJxp zCAZFCh9|7kYD-mBjy3HY%xe-*Agyx(u69|GuXMh|^Gn*Ap+#N@OWvNeS*|crTxoj- zgU=q!mCl2EQ@S2yHYp|}rvhifz=*5oq>bz&Dr{C5(FsGk(w?}}IIEfSDoUk8cX-@mm~QYl{9IQIm#IB62e zmc@P5vIY3JZ0=5DSK9wYFyWn&xCMzD&DHdzAbDq9d`YuXTx>cL4IP;$Bv~n9!SDWq zu%rKynvX%z5Q#%T+=U)8y5t5CTk;iOlkj(w2yAsCEH;w}-$tZAb32C$lGfq$;leA3 zX!H[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 \ No newline at end of file From 4e4d851f71e1e1595b7caa933a9ea600fdc15120 Mon Sep 17 00:00:00 2001 From: Scott Mangiapane Date: Mon, 3 Oct 2016 21:15:36 -0400 Subject: [PATCH 05/27] Alphabetized "TI PRGM" --- lib/linguist/languages.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 29f67e5d..e787896b 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -4072,6 +4072,14 @@ SystemVerilog: codemirror_mode: verilog codemirror_mime_type: text/x-systemverilog language_id: 363 +TI PRGM: + type: programming + color: "#A0AA87" + extensions: + - ".8xp" + - ".8xk" + - ".8xp.txt" + - ".8xk.txt" TLA: type: programming extensions: @@ -4207,14 +4215,6 @@ Thrift: - ".thrift" ace_mode: text language_id: 374 -TI PRGM: - type: programming - extensions: - - ".8xp" - - ".8xk" - - ".8xp.txt" - - ".8xk.txt" - color: "#A0AA87" Turing: type: programming color: "#cf142b" From e32a4f13efcc28cbaa6751fc37215d5287d4a082 Mon Sep 17 00:00:00 2001 From: Scott Mangiapane Date: Mon, 3 Oct 2016 21:37:56 -0400 Subject: [PATCH 06/27] Updated languages.yml --- lib/linguist/languages.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index e787896b..a12e5cfd 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -4074,6 +4074,7 @@ SystemVerilog: language_id: 363 TI PRGM: type: programming + ace_mode: text color: "#A0AA87" extensions: - ".8xp" From 6589bd9dc720bf1efadb9884ba98b61b8ae708a3 Mon Sep 17 00:00:00 2001 From: Scott Mangiapane Date: Mon, 3 Oct 2016 21:47:52 -0400 Subject: [PATCH 07/27] Added tm_scope to TI PRGM --- lib/linguist/languages.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index a12e5cfd..23680969 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -4081,6 +4081,7 @@ TI PRGM: - ".8xk" - ".8xp.txt" - ".8xk.txt" + tm_scope: none TLA: type: programming extensions: From 676861fff38054a17409fdef84fccf5dcb2a4b74 Mon Sep 17 00:00:00 2001 From: Scott Mangiapane Date: Mon, 3 Oct 2016 21:59:46 -0400 Subject: [PATCH 08/27] Removed binary files from the TI PRGM sample --- samples/TI PRGM/srcalpha.8xp | Bin 1175 -> 0 bytes samples/TI PRGM/srcfunc.8xp | Bin 1990 -> 0 bytes samples/TI PRGM/srcgui.8xp | Bin 4372 -> 0 bytes samples/TI PRGM/srcsort.8xp | Bin 1569 -> 0 bytes 4 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 samples/TI PRGM/srcalpha.8xp delete mode 100644 samples/TI PRGM/srcfunc.8xp delete mode 100644 samples/TI PRGM/srcgui.8xp delete mode 100644 samples/TI PRGM/srcsort.8xp diff --git a/samples/TI PRGM/srcalpha.8xp b/samples/TI PRGM/srcalpha.8xp deleted file mode 100644 index 2d8a1f61c994bd2e0f8ffbda1173e53d3600f6e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1175 zcmZ`&&rcLF6kd{b5rfI@)ze;QS4e-%OlS7ew4GLoEGV%qN>+Q?S6veo9R56yIa zdt;EP_0?>nNt-jx&B5#-dz)=#gSFXr*;c=LztXMVNtcwEfBINdVDY5d5%$=g*#o<$ zQf{B|^WD0S8{AHdq}$*Z{4(u{r5rTZ zt1l~<*EAXr7huN0gx3tPbFMDJ4yM3nZj2=g5&!?%0lW=ga86A=;nezfN*S2LE-4H0#i(l36yv0 zcE91JKsmJ|JMy}4)Ktd75G8VDhIyQpH*!?rBe~=r5(sB|$@i5Q+#Irvk-6MET z?Js)*Y2&bsL&!TXD%`q=5Y;lGkUAyOxLotutu?HRxRFIXqIn$3grI8WgP<+T>d+eq zM+l1`qM9jcO!0v4FeCzmh@Tf+`3%cM7^OmE0%4*=V%G>|b&+<<>d<12anqCzr3{iF z3X?#xAd#*Lw^&)-{(zntLR%b{4}pfgWv_{u3?vTVC>q2tZsSezt5o;+3%DG!yr6RD z(ehkAr;G4kUb=7x&L8D%J!*U4525FvZfE=x|IF=cz8UasK67r8?U>*w@vh%D@4cD#&G(*NclAoy zZ@OIz3zGZzm z`})dq(tLj@u`C#0%vR~U6RSP-t9qik$%;IU(|4u%MBWMIUHL$&H&em5&v=QIJSHm4 zjn!lIRPCxh!XDwTr-o|i+T_U@51A<0atm+2H0hhD0pfa>9cSH{_#p13e6ceV%VW6} znxL;oV4c87=uBfU(O~7jU`k*qngBnRe{s)42}gyvEj;_3LcQ&WcqMIK#w%^pIsa@d zQRuWHpQ!^dGEn=@71dWislmAtzo!z*?E1W}ps-`t3Oj|0ZBx2cH~Y#_+m0(wI7jFfeH^@tTl_)&rjP%# zqkcpMzvtqC?gddQJW~CHTeVt+a<3qkh5bIYyWnO?gOU_{5mf|C&R!^3Y;D zvWdi3&?eU>@Mh+++Pr3rn9E|a!6h9{AkBDYX=3wbf#uT0%RWW>7q17jj^-Mte|61b zp=JlW`T=uk($c`%g$kceuQ7l~O?4ABl0-&jT(j~r$n*bYVA+&$;c{Nah3k14XX{7M zA#rzWPVbFrO13aIL}zT@*pQa717nkbFvBsUUP@fmYkIJ$n-49rES42)$mm4=K^KGJ z=r)#@uP&dXhDI|+5@}3*^!H}gYp>(bO0)s8JMYcB@ArGN#N(ye zv{Q_~dpI(6xpwYq?fm#BUyOV8YnPX5Q}y$;%j3@Y#Q2q^$)(z7wX3zI<;l-$SO3)C ziEQa_dvjCM^Rp5BZ0S$+<9Lr{#k%-StclxG9v7d^&7VFyH~o=;*Q!^_mJ0^o&7Yd} zO8h#%ewd4~yv0mrfAkZuqB}gLPilBB0Tq)#gaHG#f$pJD0GuJqU9Vj=@y86qj;+Osez7jw&KWdG1|>wzXDuD`D_GRd8*-v&unok(?d*STRZPic>JH zykk1WTnZWNVUb=skR};kp=8loU)3{)@jf02*D#QZNH-N4!-`6)rRSQK^L5IAitvtx z)!BpE&z7Lu|b!cmw=b9-k z2fdwaBOu*E2$?(FHI^)cXM;;GbSQ{|az`E-)PJEvT}=~Iyo3Yrl?)FS&*AhpvP!Wf zY11AwiuA3sc%vQ`2Wmb5rYK9YLMVWGu0H*`CWzwKh1TGT2SHhma-`z0ieK7`7y#7qTQl!qppulp42iI!}$@ zuSOfAO0}Ty;)`F##J90HTh!Iy;CZdg3tEL2wW`0*=E6h&FCH;4Q)W;Rql-rxW^~0$ zr+}Qau&^*Q5I}4q*wGc+w788m3W+F=qBxS`(;y>}=B^~YZfqh|ZbqhxYRXN^E&`+_ zGn&U+RsNmF5=kTvsqvag&>+7OP?5oaS`MhFDgs{=L6T)$!krs7y~o9dxG%QE-475H z7~Zs_hu;EI&F49q!!ccKV$Wl-786?@p0_co9~+p>tuk%2O%|WWxF+%s;)%E$qiBP@ z-QkL5pCS#VBPn%c4RY`F9{_JAOvkY*$#PtEY#kSbpTsXAJ;XZ|ro-WhRFb(anMiOh zCUG5b6U<8EFU+3-tbd(KijJduaQBjTpCNLCyujUu#t*I4;0owNU7S}#3DRtn@?@gS zw^6WVs8kclCgotKsCZ0t0I@6mY{#Y8n`jPVS3_)xnlK;p^8{eCf2iexx#iFHV10rA z;qYsar6w2!0b(pA#zBaCXJalvSYJ%A?uwCE3o)wudxO`xGwi8k?D}Da#&SK6@n5MI z@ViRcm=!)c)l5a3Nmr9Ee3Y`F*76Mjl8i>*4!Kr4 z+PtC_AiSj)>s83C@+5>s`Fkdw3y~;9Bzyv%L}>G>R-_YUE|y^tg*-r~7krm$!$-9> z6#u%ogEmH402E$%;d;T%7Uh!FM!klWh;ng(Uvc>bx+F^hVoNrA00JaJ99ulXybdf# z1j+pcm4&%ESdW88fv25=)bHZxLPTzx<)YNX+h?ORP+qcBMSE1ZWS_E5%c28R1xqLzPj zxB`wY>WxGcy^WVBdYIP9s2pghcN^bm2i$yssc<+heiYAQ*I5joW8z5+lgwc;yjXCZ zCXkhp6Ue`#bw1&I@Rz|NKR06vwSniD8E3?UU;-St<({~QO{ngQoD^vmKZ}TO;Lj!{ z1;yMeW*|Edp$0@k4S`MA@CYMjlgF32DBX&vOV_sg z;325*18W=Oj_!t(-@(%<*K7hFe4r-G3J}`Gc>9O5_|)t@t8kfaQdFq*GGaod3SgBl zC|1HlaS3({?^cAmrA$BtoT}g%1qx!71Zw#JEtdVQ@*+o{ggzL^|C6A*CPFiE@o&!P Bc|rgH diff --git a/samples/TI PRGM/srcsort.8xp b/samples/TI PRGM/srcsort.8xp deleted file mode 100644 index 4998713bc157cb378f95a503a6f58ef68fd6313a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1569 zcmds1O>f#j5H$!S7Nrut_Qa)!VkNR6e6&FG&$s0S+aL$$8X-uzL`p8_@Y(oRUQ@3}|5Bg$o(jO`cHmm$oT0ge@AO27O zyZ=oL`1;MsYpc(%M~YV0HC^R}_LEjkXT_Yf_*JP?kQSTN)o0P7p{izR^P24JxCJxp zCAZFCh9|7kYD-mBjy3HY%xe-*Agyx(u69|GuXMh|^Gn*Ap+#N@OWvNeS*|crTxoj- zgU=q!mCl2EQ@S2yHYp|}rvhifz=*5oq>bz&Dr{C5(FsGk(w?}}IIEfSDoUk8cX-@mm~QYl{9IQIm#IB62e zmc@P5vIY3JZ0=5DSK9wYFyWn&xCMzD&DHdzAbDq9d`YuXTx>cL4IP;$Bv~n9!SDWq zu%rKynvX%z5Q#%T+=U)8y5t5CTk;iOlkj(w2yAsCEH;w}-$tZAb32C$lGfq$;leA3 zX!H Date: Mon, 3 Oct 2016 22:07:23 -0400 Subject: [PATCH 09/27] Updated TI PRGM languages.yml entry Alphabetized extensions and added a language_id. --- lib/linguist/languages.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 23680969..e5795d56 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -4077,10 +4077,11 @@ TI PRGM: ace_mode: text color: "#A0AA87" extensions: - - ".8xp" - ".8xk" - - ".8xp.txt" + - ".8xp" - ".8xk.txt" + - ".8xp.txt" + language_id: 422 tm_scope: none TLA: type: programming From 520e5a5cfe585c7e77b69949c87fe2f6266843c1 Mon Sep 17 00:00:00 2001 From: Scott Mangiapane Date: Mon, 3 Oct 2016 22:13:43 -0400 Subject: [PATCH 10/27] Alphabetized extensions for TI PRGM (again) --- lib/linguist/languages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index e5795d56..543226ba 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -4078,8 +4078,8 @@ TI PRGM: color: "#A0AA87" extensions: - ".8xk" - - ".8xp" - ".8xk.txt" + - ".8xp" - ".8xp.txt" language_id: 422 tm_scope: none From 7e63399196d88ed763c6d082a93ef9830e28e5e8 Mon Sep 17 00:00:00 2001 From: Alhadis Date: Tue, 4 Oct 2016 17:23:45 +1100 Subject: [PATCH 11/27] Delete colour property for ASN.1 language This is classified on GitHub as "data", so the colour it's assigned only wastes valuable "real estate" when checking colour proximity. References: github/linguist#3113 --- lib/linguist/languages.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 269525ce..f9c7c628 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -103,7 +103,6 @@ APL: language_id: 6 ASN.1: type: data - color: "#aeead0" extensions: - ".asn" - ".asn1" From 8d55fc1bd549dee7dff95d4cdaaa5a7a4f214b8a Mon Sep 17 00:00:00 2001 From: Scott Mangiapane Date: Tue, 4 Oct 2016 14:38:28 -0400 Subject: [PATCH 12/27] Reordered extensions for TI PRGM --- lib/linguist/languages.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 543226ba..89c3c0b0 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -4077,9 +4077,9 @@ TI PRGM: ace_mode: text color: "#A0AA87" extensions: + - ".8xp" - ".8xk" - ".8xk.txt" - - ".8xp" - ".8xp.txt" language_id: 422 tm_scope: none From e38cc75da57504655fa37192d47350bb1586f7f5 Mon Sep 17 00:00:00 2001 From: Alhadis Date: Wed, 5 Oct 2016 13:06:49 +1100 Subject: [PATCH 13/27] Update ASN.1 grammar This stops the ASN.1 submodule from being flagged as modified due to its .DS_Store file being wiped locally by an automated process. References: ajLangley12/language-asn1#1 --- vendor/grammars/language-asn1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vendor/grammars/language-asn1 b/vendor/grammars/language-asn1 index bc3811c7..208b6d9e 160000 --- a/vendor/grammars/language-asn1 +++ b/vendor/grammars/language-asn1 @@ -1 +1 @@ -Subproject commit bc3811c7706476e48f5085660b72b18ad028314f +Subproject commit 208b6d9ebe873180b109a286a481ca6639200d3e From 26310d95156c5a012de6385f49f388523503ab42 Mon Sep 17 00:00:00 2001 From: Scott Mangiapane Date: Tue, 4 Oct 2016 23:02:11 -0400 Subject: [PATCH 14/27] TI PRGM -> TI Code --- lib/linguist/languages.yml | 2 +- samples/{TI PRGM => TI Code}/srcalpha.8xp.txt | 0 samples/{TI PRGM => TI Code}/srcfunc.8xp.txt | 0 samples/{TI PRGM => TI Code}/srcgui.8xp.txt | 0 samples/{TI PRGM => TI Code}/srcsort.8xp.txt | 0 5 files changed, 1 insertion(+), 1 deletion(-) rename samples/{TI PRGM => TI Code}/srcalpha.8xp.txt (100%) rename samples/{TI PRGM => TI Code}/srcfunc.8xp.txt (100%) rename samples/{TI PRGM => TI Code}/srcgui.8xp.txt (100%) rename samples/{TI PRGM => TI Code}/srcsort.8xp.txt (100%) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 89c3c0b0..2726a062 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -4072,7 +4072,7 @@ SystemVerilog: codemirror_mode: verilog codemirror_mime_type: text/x-systemverilog language_id: 363 -TI PRGM: +TI Code: type: programming ace_mode: text color: "#A0AA87" diff --git a/samples/TI PRGM/srcalpha.8xp.txt b/samples/TI Code/srcalpha.8xp.txt similarity index 100% rename from samples/TI PRGM/srcalpha.8xp.txt rename to samples/TI Code/srcalpha.8xp.txt diff --git a/samples/TI PRGM/srcfunc.8xp.txt b/samples/TI Code/srcfunc.8xp.txt similarity index 100% rename from samples/TI PRGM/srcfunc.8xp.txt rename to samples/TI Code/srcfunc.8xp.txt diff --git a/samples/TI PRGM/srcgui.8xp.txt b/samples/TI Code/srcgui.8xp.txt similarity index 100% rename from samples/TI PRGM/srcgui.8xp.txt rename to samples/TI Code/srcgui.8xp.txt diff --git a/samples/TI PRGM/srcsort.8xp.txt b/samples/TI Code/srcsort.8xp.txt similarity index 100% rename from samples/TI PRGM/srcsort.8xp.txt rename to samples/TI Code/srcsort.8xp.txt From 20b8188384710444e3388b969cfe0327e1d4465d Mon Sep 17 00:00:00 2001 From: Alhadis Date: Wed, 5 Oct 2016 16:14:33 +1100 Subject: [PATCH 15/27] Add test to guard against unused colours --- lib/linguist/languages.yml | 2 +- test/test_language.rb | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index f9c7c628..c890ae40 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -19,7 +19,7 @@ # language_id - Integer used as a language-name-independent indexed field so that we can rename # languages in Linguist without reindexing all the code on GitHub. Must not be # changed for existing languages without the explicit permission of GitHub staff. -# color - CSS hex color to represent the language. +# color - CSS hex color to represent the language. Only used if type is "programming" or "prose" # tm_scope - The TextMate scope that represents this programming # language. This should match one of the scopes listed in # the grammars.yml file. Use "none" if there is no grammar diff --git a/test/test_language.rb b/test/test_language.rb index 1f6d19d2..08f60112 100644 --- a/test/test_language.rb +++ b/test/test_language.rb @@ -494,4 +494,11 @@ class TestLanguage < Minitest::Test message << missing.sort.join("\n") assert missing.empty?, message end + + def test_no_unused_colours + Language.all.each do |language| + next unless language.type == :data || language.type == :prose + assert !language.color, "Unused colour assigned to #{language.name}" + end + end end From 12695fee2f2752aa5a207025523b53ba1a410e62 Mon Sep 17 00:00:00 2001 From: Alhadis Date: Wed, 5 Oct 2016 21:36:22 +1100 Subject: [PATCH 16/27] Add ".make" as a Makefile file extension --- lib/linguist/languages.yml | 1 + samples/Makefile/file-icons.make | 134 +++++++++++++++++++++++++++++++ 2 files changed, 135 insertions(+) create mode 100644 samples/Makefile/file-icons.make diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 269525ce..c8234cb5 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -2429,6 +2429,7 @@ Makefile: extensions: - ".mak" - ".d" + - ".make" - ".mk" - ".mkfile" filenames: diff --git a/samples/Makefile/file-icons.make b/samples/Makefile/file-icons.make new file mode 100644 index 00000000..09d8a78c --- /dev/null +++ b/samples/Makefile/file-icons.make @@ -0,0 +1,134 @@ +charmap := charmap.md +font-name := file-icons +font-folder := dist +font-config := icomoon.json +icon-size := 34 +icon-folder := svg +repo-name := Alhadis/FileIcons +svg := $(wildcard $(icon-folder)/*.svg) +last-commit = $(shell git log -1 --oneline --no-abbrev | cut -d' ' -f1) + + +all: unpack $(font-folder)/$(font-name).woff2 charmap + + +# Aliases +unpack: $(font-folder)/$(font-name).ttf +charmap: $(charmap) + + +# Extract a downloaded IcoMoon folder +$(font-folder)/%.ttf: %.zip + @rm -rf $(font-folder) tmp $(font-config) + @unzip -qd tmp $^ + @mv tmp/fonts $(font-folder) + @mv tmp/selection.json $(font-config) + @rm -rf tmp $^ + @perl -pi -e 's|^( {2})+|"\t" x (length($$&)/2)|ge' $(font-config) + @echo "" >> $(font-config) # Ensure trailing newline + @echo "Files extracted." + + +# Generate a WOFF2 file from a TTF +%.woff2: %.ttf + @[ ! -f $@ ] && { \ + hash woff2_compress 2>/dev/null || { \ + echo >&2 "WOFF2 conversion tools not found. Consult the readme file."; \ + exit 2; \ + }; \ + woff2_compress $^ >/dev/null; \ + echo "WOFF2 file generated."; \ + }; + + + +# Clean up SVG source +lint: $(svg) + @perl -0777 -pi -e '\ + s/\r\n/\n/g; \ + s/\s*<\/g>//gmi; \ + s/\s*<\/g>//gmi; \ + s/\s+(id|viewBox|xml:space)="[^"]*"/ /gmi; \ + s/]*>//gi; \ + s/<\?xml.*?\?>//gi; \ + s///gm; \ + s/ style="enable-background:.*?;"//gmi; \ + s/"\s+>/">/g; \ + s/\x20{2,}/ /g; \ + s/[\t\n]+//gm;' $^ + + + +# Generate/update character map +$(charmap): + @./create-map.pl -r=$(repo-name) -i=$(icon-folder) --size=$(icon-size) $(font-folder)/$(font-name).svg $@ + + + + +# POSIX systems only: reattach hard links to File-Icons package +relink: + @$(call need-var,ATOM_FILE_ICONS,ERROR_NO_PKG) + @ln -f $(font-folder)/$(font-name).woff2 $(wildcard $(ATOM_FILE_ICONS)/fonts/file-icons-*.woff2) + + + +# Force an icon's preview to be refreshed on GitHub +cachebust: + @$(call need-var,icon,ERROR_NO_ICON) + @base="https://cdn.rawgit.com/Alhadis/FileIcons/"; \ + perl -pi -e 's{$$base\K\w+(?=/svg/$(icon:%.svg=%)\.svg")}{$(last-commit)}ig;' $(charmap) + + +# Dummy task to improve feedback if `cachebust` is mistyped +icon: + $(call need-var,,ERROR_UNDEF_ICON) + + + +# Reset unstaged changes/additions in object directories +clean: + @git clean -fd $(font-folder) + @git checkout -- $(font-folder) 2>/dev/null || true + + +# Delete extracted and generated files +distclean: + @rm -rf $(font-folder) + + +.PHONY: clean distclean $(charmap) cachebust icon +.ONESHELL: + + +# Error message shown to users attempting to run `make relink` without a link +ERROR_NO_PKG := Environment variable ATOM_FILE_ICONS not found. \ + | \ + | Try this instead:\ + | \ + | \ make relink ATOM_FILE_ICONS=/path/to/your/file-icons/installation | + + +# Error message shown when running `make cachebust` without an icon +ERROR_NO_ICON := No icon specified. Task aborted.| \ + | Usage: \ + | \ make icon=file[.svg] cachebust \ + | \ + | Examples: \ + | \ make icon=Manpage cachebust \ + | \ make icon=APL.svg cachebust | + + +# Shown if user tries running `make icon NAME cachebust` by mistake +ERROR_UNDEF_ICON := No task named \"icon\". \ + | \ + | Did you mean this? \ + | \ make icon=NAME cachebust | + + + +# If the given value is empty, die with an error message +need = @$(if $(1),,echo $(subst | ,$$'\n',$(2)); exit 2) + +# Like `need`, but uses variable names instead of string values +need-var = @$(call need,$($(1)),$($(2))) From a2db058ce4bb1b60708987977617b4a064fc9088 Mon Sep 17 00:00:00 2001 From: Scott Mangiapane Date: Wed, 5 Oct 2016 12:24:50 -0400 Subject: [PATCH 17/27] TI Code -> TI Program --- lib/linguist/languages.yml | 4 +--- samples/{TI Code/srcalpha.8xp.txt => TI Program/srcalpha.txt} | 0 samples/{TI Code/srcfunc.8xp.txt => TI Program/srcfunc.txt} | 0 samples/{TI Code/srcgui.8xp.txt => TI Program/srcgui.txt} | 0 samples/{TI Code/srcsort.8xp.txt => TI Program/srcsort.txt} | 0 5 files changed, 1 insertion(+), 3 deletions(-) rename samples/{TI Code/srcalpha.8xp.txt => TI Program/srcalpha.txt} (100%) rename samples/{TI Code/srcfunc.8xp.txt => TI Program/srcfunc.txt} (100%) rename samples/{TI Code/srcgui.8xp.txt => TI Program/srcgui.txt} (100%) rename samples/{TI Code/srcsort.8xp.txt => TI Program/srcsort.txt} (100%) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 2726a062..f4195d88 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -4072,15 +4072,13 @@ SystemVerilog: codemirror_mode: verilog codemirror_mime_type: text/x-systemverilog language_id: 363 -TI Code: +TI Program: type: programming ace_mode: text color: "#A0AA87" extensions: - ".8xp" - ".8xk" - - ".8xk.txt" - - ".8xp.txt" language_id: 422 tm_scope: none TLA: diff --git a/samples/TI Code/srcalpha.8xp.txt b/samples/TI Program/srcalpha.txt similarity index 100% rename from samples/TI Code/srcalpha.8xp.txt rename to samples/TI Program/srcalpha.txt diff --git a/samples/TI Code/srcfunc.8xp.txt b/samples/TI Program/srcfunc.txt similarity index 100% rename from samples/TI Code/srcfunc.8xp.txt rename to samples/TI Program/srcfunc.txt diff --git a/samples/TI Code/srcgui.8xp.txt b/samples/TI Program/srcgui.txt similarity index 100% rename from samples/TI Code/srcgui.8xp.txt rename to samples/TI Program/srcgui.txt diff --git a/samples/TI Code/srcsort.8xp.txt b/samples/TI Program/srcsort.txt similarity index 100% rename from samples/TI Code/srcsort.8xp.txt rename to samples/TI Program/srcsort.txt From 71dfed0e458cb8d5aefb154d7aedf387c6acfd4b Mon Sep 17 00:00:00 2001 From: Scott Mangiapane Date: Wed, 5 Oct 2016 12:31:32 -0400 Subject: [PATCH 18/27] Restored .8xp.txt extension --- lib/linguist/languages.yml | 2 ++ samples/TI Program/{srcalpha.txt => srcalpha.8xp.txt} | 0 samples/TI Program/{srcfunc.txt => srcfunc.8xp.txt} | 0 samples/TI Program/{srcgui.txt => srcgui.8xp.txt} | 0 samples/TI Program/{srcsort.txt => srcsort.8xp.txt} | 0 5 files changed, 2 insertions(+) rename samples/TI Program/{srcalpha.txt => srcalpha.8xp.txt} (100%) rename samples/TI Program/{srcfunc.txt => srcfunc.8xp.txt} (100%) rename samples/TI Program/{srcgui.txt => srcgui.8xp.txt} (100%) rename samples/TI Program/{srcsort.txt => srcsort.8xp.txt} (100%) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index f4195d88..98f2664e 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -4079,6 +4079,8 @@ TI Program: extensions: - ".8xp" - ".8xk" + - ".8xk.txt" + - ".8xp.txt" language_id: 422 tm_scope: none TLA: diff --git a/samples/TI Program/srcalpha.txt b/samples/TI Program/srcalpha.8xp.txt similarity index 100% rename from samples/TI Program/srcalpha.txt rename to samples/TI Program/srcalpha.8xp.txt diff --git a/samples/TI Program/srcfunc.txt b/samples/TI Program/srcfunc.8xp.txt similarity index 100% rename from samples/TI Program/srcfunc.txt rename to samples/TI Program/srcfunc.8xp.txt diff --git a/samples/TI Program/srcgui.txt b/samples/TI Program/srcgui.8xp.txt similarity index 100% rename from samples/TI Program/srcgui.txt rename to samples/TI Program/srcgui.8xp.txt diff --git a/samples/TI Program/srcsort.txt b/samples/TI Program/srcsort.8xp.txt similarity index 100% rename from samples/TI Program/srcsort.txt rename to samples/TI Program/srcsort.8xp.txt From 1bbb919fefdb60d0f748ceb455dcd6384ee4f4d9 Mon Sep 17 00:00:00 2001 From: Alhadis Date: Thu, 6 Oct 2016 16:42:01 +1100 Subject: [PATCH 19/27] Reclassify Sublime configuration files as JSON See: - https://github.com/github/linguist/issues/2662#issuecomment-251865073 - https://github.com/github/linguist/pull/3267 --- lib/linguist/languages.yml | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 269525ce..e926889e 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -1929,6 +1929,19 @@ JSON: - ".json" - ".geojson" - ".JSON-tmLanguage" + - ".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" - ".topojson" filenames: - ".arcconfig" @@ -2041,19 +2054,6 @@ JavaScript: - ".pac" - ".sjs" - ".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" - ".xsjslib" filenames: From 5a5bf7d5e59b44dcfbc5338c26f893fd710bcd30 Mon Sep 17 00:00:00 2001 From: Alhadis Date: Fri, 7 Oct 2016 10:56:15 +1100 Subject: [PATCH 20/27] Add new entry for Sublime Text config files --- lib/linguist/languages.yml | 35 ++++++++++++++++++++++------------- 1 file changed, 22 insertions(+), 13 deletions(-) diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 55fc6933..e4840150 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -1928,19 +1928,6 @@ JSON: - ".json" - ".geojson" - ".JSON-tmLanguage" - - ".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" - ".topojson" filenames: - ".arcconfig" @@ -4039,6 +4026,28 @@ SubRip Text: ace_mode: text tm_scope: text.srt 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: 422 SuperCollider: type: programming color: "#46390b" From d265b78e7eccc11f6fc86d118a3972c6bef7a5bd Mon Sep 17 00:00:00 2001 From: Alhadis Date: Fri, 7 Oct 2016 11:37:27 +1100 Subject: [PATCH 21/27] Copy Sublime configs from submodules --- .../Sublime Text Config/AMPL.sublime-build | 14 + .../CLIPS.sublime-settings | 8 + .../Sublime Text Config/Context.sublime-menu | 13 + .../Sublime Text Config/Dart.sublime-commands | 30 + .../Sublime Text Config/Dart.sublime-project | 40 + .../Default (Linux).sublime-mousemap | 7 + .../Default.sublime-keymap | 6 + .../JavaDoc Add Line.sublime-macro | 6 + .../RunBuild.sublime-macro | 5 + .../SourcePawn.sublime-build | 19 + .../Sublime Text Config/Tubnil.sublime-theme | 861 ++++++++++++++++++ .../jade.sublime-completions | 136 +++ 12 files changed, 1145 insertions(+) create mode 100644 samples/Sublime Text Config/AMPL.sublime-build create mode 100644 samples/Sublime Text Config/CLIPS.sublime-settings create mode 100644 samples/Sublime Text Config/Context.sublime-menu create mode 100644 samples/Sublime Text Config/Dart.sublime-commands create mode 100644 samples/Sublime Text Config/Dart.sublime-project create mode 100644 samples/Sublime Text Config/Default (Linux).sublime-mousemap create mode 100644 samples/Sublime Text Config/Default.sublime-keymap create mode 100644 samples/Sublime Text Config/JavaDoc Add Line.sublime-macro create mode 100644 samples/Sublime Text Config/RunBuild.sublime-macro create mode 100644 samples/Sublime Text Config/SourcePawn.sublime-build create mode 100644 samples/Sublime Text Config/Tubnil.sublime-theme create mode 100644 samples/Sublime Text Config/jade.sublime-completions diff --git a/samples/Sublime Text Config/AMPL.sublime-build b/samples/Sublime Text Config/AMPL.sublime-build new file mode 100644 index 00000000..7434f54d --- /dev/null +++ b/samples/Sublime Text Config/AMPL.sublime-build @@ -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" + } + } + +} diff --git a/samples/Sublime Text Config/CLIPS.sublime-settings b/samples/Sublime Text Config/CLIPS.sublime-settings new file mode 100644 index 00000000..1b6ef5f3 --- /dev/null +++ b/samples/Sublime Text Config/CLIPS.sublime-settings @@ -0,0 +1,8 @@ +{ + "extensions": + [ + "clp" + ], + "tab_size": 8, + "translate_tabs_to_spaces": false +} diff --git a/samples/Sublime Text Config/Context.sublime-menu b/samples/Sublime Text Config/Context.sublime-menu new file mode 100644 index 00000000..ae2526e5 --- /dev/null +++ b/samples/Sublime Text Config/Context.sublime-menu @@ -0,0 +1,13 @@ +[ +{ + "id" : "nasm", + "caption": "NASM Assembly", + "children": + [ + { + "caption" : "Documentation", + "command" : "assembly_doc" + } + ] +} +] \ No newline at end of file diff --git a/samples/Sublime Text Config/Dart.sublime-commands b/samples/Sublime Text Config/Dart.sublime-commands new file mode 100644 index 00000000..901bbdfe --- /dev/null +++ b/samples/Sublime Text Config/Dart.sublime-commands @@ -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" } +] diff --git a/samples/Sublime Text Config/Dart.sublime-project b/samples/Sublime Text Config/Dart.sublime-project new file mode 100644 index 00000000..22c1677a --- /dev/null +++ b/samples/Sublime Text Config/Dart.sublime-project @@ -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 + } + ] + } + ] +} diff --git a/samples/Sublime Text Config/Default (Linux).sublime-mousemap b/samples/Sublime Text Config/Default (Linux).sublime-mousemap new file mode 100644 index 00000000..c6d56aa5 --- /dev/null +++ b/samples/Sublime Text Config/Default (Linux).sublime-mousemap @@ -0,0 +1,7 @@ +[ + { + "button": "button1", "count": 1, "modifiers": ["alt"], + "press_command": "drag_select", + "command": "robot_go_to_keyword" + } +] diff --git a/samples/Sublime Text Config/Default.sublime-keymap b/samples/Sublime Text Config/Default.sublime-keymap new file mode 100644 index 00000000..e62a0a9b --- /dev/null +++ b/samples/Sublime Text Config/Default.sublime-keymap @@ -0,0 +1,6 @@ +[ + // Disable auto-pair for single quote + { "keys": ["'"], "command": "insert_snippet", "args": {"contents": "'"}, "context": + [{ "key": "selector", "operator": "equal", "operand": "source.rust" }] + } +] diff --git a/samples/Sublime Text Config/JavaDoc Add Line.sublime-macro b/samples/Sublime Text Config/JavaDoc Add Line.sublime-macro new file mode 100644 index 00000000..a2d62b99 --- /dev/null +++ b/samples/Sublime Text Config/JavaDoc Add Line.sublime-macro @@ -0,0 +1,6 @@ +[ + {"command": "move_to", "args": {"to": "hardeol"}}, + {"command": "insert", "args": {"characters": "\n"}}, + {"command": "insert", "args": {"characters": "*"}}, + {"command": "insert", "args": {"characters": " "}} +] diff --git a/samples/Sublime Text Config/RunBuild.sublime-macro b/samples/Sublime Text Config/RunBuild.sublime-macro new file mode 100644 index 00000000..574a045d --- /dev/null +++ b/samples/Sublime Text Config/RunBuild.sublime-macro @@ -0,0 +1,5 @@ +[ + { + "command": "haxe_run_build" + } +] diff --git a/samples/Sublime Text Config/SourcePawn.sublime-build b/samples/Sublime Text Config/SourcePawn.sublime-build new file mode 100644 index 00000000..013a949d --- /dev/null +++ b/samples/Sublime Text Config/SourcePawn.sublime-build @@ -0,0 +1,19 @@ +{ + // For default sourcemod scripting directory : + "cmd": ["", "-o$file_path/../plugins/$file_name", "$file"], + + // For custom sourcemod scripting directory : + "cmd": ["", "-i", "-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" +} diff --git a/samples/Sublime Text Config/Tubnil.sublime-theme b/samples/Sublime Text Config/Tubnil.sublime-theme new file mode 100644 index 00000000..cb494beb --- /dev/null +++ b/samples/Sublime Text Config/Tubnil.sublime-theme @@ -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" + } + +] diff --git a/samples/Sublime Text Config/jade.sublime-completions b/samples/Sublime Text Config/jade.sublime-completions new file mode 100644 index 00000000..cd3894b7 --- /dev/null +++ b/samples/Sublime Text Config/jade.sublime-completions @@ -0,0 +1,136 @@ +{ + "scope": "entity.name.tag.jade", + "completions": + [ + "a",// Defines a hyperlink + "abbr",// Defines an abbreviation + "acronym",// Not supported in HTML5. Use instead. + //Defines an acronym + "address",// Defines contact information for the author/owner of a document + "applet",// Not supported in HTML5. Use 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 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
    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
    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
    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 element + "legend",// Defines a caption for a
    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 (