Compare commits

...

14 Commits

29 changed files with 22182 additions and 7 deletions

View File

@@ -1,6 +1,6 @@
#set text(font: "Source Sans 3")
= General Planning
= Initial Planning
#table(
columns: (auto, 1fr),
@@ -16,3 +16,20 @@
[*8*],
[*9*],
)
= History
#table(
columns: (auto, 1fr),
align: (center, left + horizon),
table.header[*Week*][*Objectives*],
[*1*], [Kickoff, setup project, start prototyping a syntax],
[*2*], [Syntax prototype, simple parser],
[*3*], [Basic type checker (assignments, functions, operations)],
[*4*], [Diagnostics, type check control flow, refine architecture, subtyping],
[*5*], [Generic types, methods and overloads, simple code generator],
[*6*], [For loops, generate assertions, generate stubs, constraints, variance, type unification],
[*7*], [],
[*8*], [],
[*9*], [],
)

262
design/calculus_rules.typ Normal file
View File

@@ -0,0 +1,262 @@
#import "@preview/curryst:0.6.0": rule, prooftree, rule-set
#import "@preview/codly:1.3.0": codly-init
#show: codly-init
#let syntax(body) = {
set text(weight: "bold", fill: rgb(100, 50, 0))
body
}
#let mk-box(title, body, ..args) = block(
inset: 1em,
stroke: black,
..args,
)[
=== #title
#body
]
#let blank(r, c) = grid.cell(
rowspan: r,
colspan: c
)[]
#let tab = sym.arrow.r.stop
#let nl = move(dx: -2pt, dy: 2pt, sym.arrow.curve.l)
#let syntax-preamble = doc => {
show tab: set text(fill: gray.darken(20%))
show sym.arrow.curve.l: set text(fill: gray.darken(20%))
set math.cases(gap: 4pt)
show math.equation: set align(left)
doc
}
#let python-syntax = mk-box(width: 100%)[Python Syntax][
#show: syntax-preamble
#grid(
columns: (auto, auto, 1fr, auto),
align: (left, left, left, right).map(a => a + horizon),
column-gutter: .4em,
row-gutter: 1.2em,
$"t"$, $::=$, none, [_terms_],
blank(11, 2),
$"x"$, [_variable_],
$"i"$, [_integer literal_],
$"f"$, [_float literal_],
$"z"$, [_string literal_],
$"True"$, [_constant true_],
$"False"$, [_constant false_],
$"None"$, [_constant none_],
$f("t")$, [_call_],
$"t"_21 #syntax[if] "t"_1 #syntax[else] "t"_22$, [_ternary_],
$"t"_1 "op" "t"_2$, [_operation_],
$"s"; "t"$, [_sequence_],
grid.cell(colspan: 4)[],
$"v"$, $::=$, none, [_values_],
blank(6, 2),
$"i"$, [_integer literal_],
$"f"$, [_float literal_],
$"z"$, [_string literal_],
$"True"$, [_constant true_],
$"False"$, [_constant false_],
$"None"$, [_constant none_],
grid.cell(colspan: 4)[],
$"s"$, $::=$, none, [_statements_],
blank(4, 2),
$"x" = "t"$, [_assignment_],
$"x": "T"$, [_variable declaration_],
$ cases(
#syntax[def] f("x": "T") -> "T": #nl,
#tab "t" #nl,
delim: "["
) $, [_def_],
$ cases(
#syntax[if] "t": #nl,
tab "s" #nl,
#syntax[else]: #nl,
tab "s" #nl,
delim: "["
) $, [_if / else_],
)
]
#let midas-syntax = mk-box(width: 100%)[Midas Syntax][
#show: syntax-preamble
#grid(
columns: (auto, auto, 1fr, auto),
align: (left, left, left, right).map(a => a + horizon),
column-gutter: .4em,
row-gutter: 1.2em,
$"T"$, $::=$, none, [_types_],
blank(5, 2),
$"X"$, [_named type_],
$"T" ["T"]$, [_type application_],
$"T" #syntax[where] "c"$, [_constraint type_],
${attach("p"_i: "T"_i, tr: i in 1..n)}$, [_complex type_],
$(attach("a"_i: "T"_i, tr: i in 1..n)) -> "T"$, [_function type_],
grid.cell(colspan: 4)[],
$"s"$, $::=$, none, [_statements_],
blank(2, 2),
$#syntax[type] "X" = "T"$, [_type definition_],
$#syntax[type] "X"["Y"] = "T"$, [_generic definition_],
)
]
#grid(
columns: (1fr, 1fr),
column-gutter: 1em,
python-syntax,
midas-syntax
)
#pagebreak()
#let abs-typ-rules = (
int: rule($Gamma tack "i": "Int"$, name: [(T-Int)]),
float: rule($Gamma tack "f": "Float"$, name: [(T-Float)]),
str: rule($Gamma tack "z": "Str"$, name: [(T-Str)]),
"true": rule($Gamma tack "True": "Bool"$, name: [(T-True)]),
"false": rule($Gamma tack "False": "Bool"$, name: [(T-False)]),
"none": rule($Gamma tack "None": "None"$, name: [(T-None)]),
var: rule(
$"x": "T" in Gamma$,
$Gamma tack "x": "T"$,
name: [(T-Var)]
),
def: rule(
$Gamma, f: "T"_1 -> "T"_2, "x": "T"_1 tack "t": "T"_2$,
$Gamma tack #syntax[def] f("x": "T"_1) -> "T"_2: "t" space tack.l space Gamma, f: "T"_1 -> "T"_2 $,
name: [(T-Def)]
),
call: rule(
$Gamma tack f: "T"_1 -> "T"_2$,
$Gamma tack "t": "T"_1$,
$Gamma tack f("t"): "T"_2$,
name: [(T-Call)]
),
ternary: rule(
$Gamma tack "t"_1: "Bool"$,
$Gamma tack "t"_21: "T"$,
$Gamma tack "t"_22: "T"$,
$Gamma tack "t"_21 #syntax[if] "t"_1 #syntax[else] "t"_22: "T"$,
name: [(T-Tern)]
),
op: rule(
$Gamma tack "t"_1: "T"_1$,
$Gamma tack "t"_2: "T"_2$,
$"op": "T"_1 -> "T"_2 -> "T"_3 in Gamma$,
$Gamma tack "t"_1 "op" "t"_2: "T"_3$,
name: [(T-Op)]
),
seq: rule(
$Gamma tack "s" tack.l Gamma'$,
$Gamma' tack "t": "T"$,
$Gamma tack "s"; "t": "T"$,
name: [(T-Seq)]
),
annot: rule(
$Gamma tack "x": "T" tack.l Gamma, "x": "T"$,
name: [(T-Annot)]
),
if-else: rule(
$Gamma tack "t": "Bool"$,
$Gamma tack "s"_1 tack.l Gamma'$,
$Gamma tack "s"_2 tack.l Gamma''$,
$Gamma tack #syntax[if] "t": "s"_1 #syntax[else]: "s"_2 tack.l Gamma$,
name: [(T-IfElse)]
)
)
#let py-typ-rules = (
int: ```py 12: int```,
float: ```py 12.34: float```,
str: ```py "foo": str```,
"true": ```py True: bool```,
"false": ```py False: bool```,
"none": ```py None: None```,
var: ```py x```,
def: ```py
def func(a: S) -> T:
return ...: T
```,
call: ```py
def func(a: S) -> T: ...
...
func(a: S): T
```,
ternary: ```py (true if cond else false): T ```,
op: ```py (a + b): T```,
annot: ```py x: T```,
if-else: ```py
if cond:
...
else:
...
```,
)
#let reading-keys = (
def: [
_Gamma_ judges that $#syntax[def] f("x": "T"_1) -> "T"_2: "t"$ adds $f: "T"_1 -> "T"_2$ to the context, iff by adding $f: "T"_1 -> "T"_2$ and $"x": "T"_1$ to _Gamma_, it can judge that $"t": "T"_2$
],
annot: [
_Gamma_ judges that $"x": "T"$ adds $"x": "T"$ to the context
],
if-else: [
_Gamma_ judges that $#syntax[if] "t": "s"_1 #syntax[else]: "s"_2$ produces an the unchanged context $Gamma'$, iff _Gamma_ judges that $"t": "Bool"$, that $"s"_1$ produces the context $Gamma'$, and $"s"_2$ produces the context $Gamma''$. This means that statements in
]
)
#mk-box[Python Typing][
#v(1em)
#stack(dir: ltr, spacing: 1fr)[_*Rule*_][_*Python example*_]
#for (i, (k, abs-rule)) in abs-typ-rules.pairs().enumerate() {
let py-rule = py-typ-rules.at(k, default: none)
let reading-key = reading-keys.at(k, default: none)
let cells = (
prooftree(abs-rule),
py-rule
)
if reading-key != none {
cells.push(
grid.cell(
colspan: 2,
inset: (x: .8em, y: .4em),
stroke: (left: gray.lighten(50%) + 2pt),
)[
#set text(size: .8em)
#show math.equation: box.with(
fill: red.lighten(90%),
outset: (y: .3em, x: 1pt),
)
*Reading key*:\
#reading-key
]
)
}
box(
fill: if calc.even(i) {gray.lighten(95%)} else {},
outset: (x: .5em),
inset: (y: .5em),
align(
horizon,
grid(
columns: (auto, 1fr),
column-gutter: 1em,
row-gutter: .5em,
align: (left + horizon, right + horizon),
..cells,
)
)
)
}
]

View File

@@ -4,16 +4,21 @@
title: "Midas: mieux typer Python",
subtitle: "Présentation intermédiaire",
short-title: "Midas",
supervisor: "Superviseure",
"context": "Contexte",
problematic: "Problématique",
case-1: [Cas 1 -- Type != sémantique],
case-2: [Cas 2 -- Erreur de type _at runtime_],
goal: "Objectif",
gradual-typing: [Typage graduel (_gradual typing_)],
static-type-checking: [Vérification statique],
optional-typing: "Typage optionnel",
static-type-checking: "Vérification statique",
dynamic-checks: "Vérificiations dynamiques",
runtime-assertions: [Assertions _at runtime_],
value-constraints: "Contraintes de valeur",
example: "Exemple",
lat-lon-error: "Invalide, même si float+float est valide",
planning: "Planification",
initial-planning: "Planification initiale",
week: "Semaine",
objectives: "Objectifs",
@@ -40,16 +45,21 @@
title: "Midas: better type checking in Python",
subtitle: "Halfway presentation",
short-title: "Midas",
supervisor: "Supervisor",
"context": "Context",
problematic: "Problematic",
case-1: [Case 1 -- Type != semantic],
case-2: [Case 2 -- Runtime type error],
goal: "Goal",
gradual-typing: "Gradual typing",
optional-typing: "Optional typing",
static-type-checking: "Static type checking",
dynamic-checks: "Dynamic checks",
runtime-assertions: "Runtime assertions",
value-constraints: "Value constraints",
example: "Example",
lat-lon-error: "Invalid, even though float+float is valid",
planning: "Planning",
initial-planning: "Initial planning",
week: "Week",
objectives: "Objectives",

16606
halfway-presentation/main.pdf Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -2,7 +2,9 @@
#import "@preview/touying-unistra-pristine:1.4.3": *
#import "@preview/codly:1.3.0": codly, codly-init
#import "@preview/codly-languages:0.1.10": codly-languages
#import "@preview/cetz:0.5.2": canvas, draw
#import "langs.typ": i18n, i18n-date
#import "utils.typ": title-slide
#let langs = (
fr: ("fr", "ch"),
@@ -74,9 +76,27 @@
)
#title-slide(
logo: image("logo_white.svg", height: 3em)
logo: image("logo_white.svg", height: 3em),
extra-body: place(
bottom + right,
dx: -2em,
dy: -2em
)[
#text(
fill: white,
weight: "bold"
)[#i18n("supervisor"): Dr D. Racordon]
]
)
#focus-slide(
theme: "pink",
show-counter: false,
)[
#i18n("context")
]
== #i18n("context")
==== #i18n("case-1")
@@ -84,13 +104,15 @@
#[
#set text(size: .8em)
```python
df = pd.read_csv()
df = pd.read_csv(...)
value = df["distance"] / df["time"]
...
value += df["age"]
```
]
#pause
==== #i18n("case-2")
#[
@@ -105,10 +127,12 @@ TypeError: unsupported operand type(s) for +: 'int' and 'NoneType'
== #i18n("goal")
- #i18n("gradual-typing")
- #i18n("optional-typing")
- #i18n("static-type-checking")
- #i18n("dynamic-checks")
- #i18n("runtime-assertions")
- #i18n("value-constraints")
#let wah = place(
@@ -137,7 +161,7 @@ df: Frame[
birth_date: date,
height: float & (0 < _ < 250),
name: Optional[str],
home: GeoLocation,
home: GeoCoordinate,
] = pd.read_csv(...)
lat = df["home"].lat
lon = df["home"].lon
@@ -145,6 +169,11 @@ invalid = lat + lon # [[lat-lon-error]]
```
]
#focus-slide(
theme: "yellow",
show-counter: false
)[#i18n("planning")]
== #i18n("initial-planning")
#table(
@@ -181,6 +210,11 @@ invalid = lat + lon # [[lat-lon-error]]
[*9*],
)
#focus-slide(
theme: "neon",
show-counter: false
)[#i18n("demo")]
== #i18n("demo")
=== #i18n("def-custom-types")
@@ -217,3 +251,9 @@ speed += time # [[invalid]]
```
]
#focus-slide(
theme: "mandarine",
show-counter: false,
)[
Questions ?
]

View File

@@ -0,0 +1,100 @@
#import "@preview/touying:0.6.2": *
#import "@preview/touying-unistra-pristine:1.4.3": *
// Redefine to allow extra-body
#let title-slide(
title: "",
subtitle: "",
logo: "",
logos: (),
hide: (),
extra-body: [],
..args,
) = touying-slide-wrapper(self => {
let info = self.info + args.named()
let nb-logos = logos.len()
if logo != "" and nb-logos > 0 {
panic("'logo' and 'logos' cannot be set at the same time.")
}
let logo-body = none
if nb-logos == 0 {
logo-body = logo
} else {
logo-body = grid(
columns: if nb-logos > 0 {
nb-logos
} else {
1
},
..(logos).map(logo => logo),
)
}
let body = {
set text(fill: white)
set block(inset: 0mm, outset: 0mm, spacing: 0em)
set align(top + left)
_gradientize(
self,
block(
fill: none,
width: 100%,
height: 100%,
inset: (left: 2em, top: 1em),
grid(
columns: 1fr,
rows: (6em, 6em, 4em, 4em),
logo-body,
_cell([
#text(size: 2em, weight: "bold", if (title != "") {
title
} else {
info.title
})
#linebreak()
#text(size: 1.7em, weight: "regular", if (subtitle != "") {
subtitle
} else {
info.subtitle
})
]),
_cell([
#if ((none, "").all(x => x != info.subtitle)) {
linebreak()
}
#set text(size: 1.5em, fill: self.colors.white)
#text(weight: "bold", info.author)
#if "email" in info {
linebreak()
text(info.email, size: 0.8em)
}
]),
if "date" not in hide {
_cell([
#set text(fill: self.colors.white.transparentize(25%))
#utils.display-info-date(self)
])
},
),
),
c1: self.colors.nblue.E,
c2: self.colors.cyan.E,
)
}
self = utils.merge-dicts(
self,
config-common(freeze-slide-counter: true),
config-page(margin: 0em),
config-common(subslide-preamble: none),
)
touying-slide(
self: self,
body + extra-body,
)
})

View File

@@ -14,3 +14,26 @@
- Read TAPL (22)
- Rework abstract types
- Generalize syntax (more modularity for generics, unions, constraints, etc.)
- Weekly meeting
#day(3)
- Halfway presentations
- Define formal syntax and typing rules
#day(5)
- Work on formal rules
- Update syntax definition (EBNF + railroad diagrams)
- Add usage documentation
- Implement subtyping
#day(6)
- Implement subtyping
#day(7)
- Implement subtyping
- Implement attribute reference and assignments
- Improve diagnostics in CLI

44
journal/week5.typ Normal file
View File

@@ -0,0 +1,44 @@
#import "template.typ": week, day
#show: week.with(num: 5)
#day(1)
- Implement generics
- Refactor type checker
- Create demo program
#day(2)
- Define formal calculus rules
- Add type params to extend block
#day(3)
- Rework extend block for methods
- Goal: allow defining any method on types
- Issues:
- `GetExpr` can reference either a property on a `ComplexType` or a method.
- A method (or function) can be overloaded, for example ```py list[T].__getitem__(int) -> T``` and ```py list[T].__getitem__(slice) -> list[T]```
#day(4)
- Rework complex types: extension type, combine properties and methods as members
#day(5)
- Implement member lookup
- Adapt operations
- Handle generic members
#day(6)
- Redefine builtins with members
- Tidy up
- Add unary operations and subscripts
#day(7)
- Resolve overloaded functions
- Add slices
- Add simple code generator

40
journal/week6.typ Normal file
View File

@@ -0,0 +1,40 @@
#import "template.typ": week, day
#show: week.with(num: 6)
#day(1)
- Simple code generator
- Redesign CLI
- Split overloaded command into multiple simple commands
- Add some commands
- Add for loops
- Start implementing cast assertions
#day(2)
- Weekly meeting
- Forward raw unhandled Python statements and expressions
- Generate cast assertions (type)
- Add generator tests
#day(3)
- Generate stubs from Midas definitions
#day(4)
- Generate predicate functions
#day(5)
- Type check predicate body
#day(6)
- Add variance to type variables (infer, use in subtype check, integrate in generated stubs)
- Unify / match types in generic function calls
#day(7)
- Unify / match types in generic function calls

21
journal/week7.typ Normal file
View File

@@ -0,0 +1,21 @@
#import "template.typ": week, day
#show: week.with(num: 7)
#day(1)
- better handle type variables
- write simple demo script
- various fixes
#day(2)
- weekly meeting
- start implementing data-frame and column types
#day(3)
- statically check cast expressions on literal values
- add unsafe cast
- setup user manual
- setup report

14
report/acronyms.typ Normal file
View File

@@ -0,0 +1,14 @@
#import "@preview/acrostiche:0.7.0": *
#let acronyms = (
"DVI": (link("https://fr.wikipedia.org/wiki/Digital_visual_interface")[Digital Visual Interface],),
"FPGA": (link("https://en.wikipedia.org/wiki/Field-programmable_gate_array")[Field Programmable Gates Array],),
"HDMI": (link("https://en.wikipedia.org/wiki/HDMI")[High Definition Multimedia Interface],),
"LED": (link("https://en.wikipedia.org/wiki/Light-emitting_diode")[Light Emitting Diodes],),
"LCD": (link("https://en.wikipedia.org/wiki/Liquid-crystal_display")[Liquid Crystal Display],),
"PMod": (link("https://en.wikipedia.org/wiki/Pmod_Interface")[Peripheral Module],),
"USB": (link("https://en.wikipedia.org/wiki/USB")[Universal Serial Bus],),
"VGA": (link("https://fr.wikipedia.org/wiki/Video_Graphics_Array")[Virtual Graphics Array],),
)
#init-acronyms(acronyms)

146
report/bachelor_thesis.typ Normal file
View File

@@ -0,0 +1,146 @@
// ___ ____ ____ _ _ _____ ___
// |_ _/ ___| / ___| | | | | ____|_ _| Informatique et
// | |\___ \| | ___ | |_| | _| | | systèmes de communication
// | | ___) | |__|___| | _ | |___ | | HEI Sion · HES-SO Valais / mui 24-26
// |___|____/ \____| |_| |_|_____|___|
//
// 52 65 61 64 69 6e 67 20 68 65 78 20 66 6f 72 20 66 75 6e 3f 20 49 53 43 20 66 6f 72 65 76 65 72
//
#import "@preview/isc-hei-bthesis:0.8.1" : *
#let doc_language = "en"
#show: thesis.with(
title: "Midas",
subtitle: none,
authors: "Louis Heredero",
language: doc_language,
thesis-supervisor: "Prof. Dr Dimi Racordon",
thesis-co-supervisor: none,
thesis-expert: "Dr Sébastien Doeraene",
thesis-id: "ISC-ID-26-8",
project-repos: "https://git.kb28.ch/HEL/midas",
school: "Haute École d'Ingénierie de Sion",
programme: "Informatique et systèmes de communication (ISC)",
keywords: ("engineering", "type systems", "gradual typing"),
major : "Data engineering",
date: datetime(year: 2026, month: 7, day: 10), // Date of the thesis & the declaration (or datetime.today())
// Declaration of honour signature
signature: image("figs/signature_placeholder.svg", width: 4.5cm), // A scan/photo of your handwritten signature
revision: "1.0",
code-theme: "bluloco-light",
// The cover might show a red "ATTENTION REQUISE" box listing required fields still
// left at their placeholder values (and warns if the title/subtitle is too long).
// Uncomment to hide it, but only do this if you know what you are doing.
// hide-completeness-warning: true,
)
// If using acronyms
#import "@preview/acrostiche:0.7.0": *
#include "acronyms.typ"
// A tidy acronym table for the appendix, using the acronyms declared above.
// (Kept here, not in the package, so acrostiche stays an example-only dependency.)
#let acronym-table() = print-index(
title: page-title(i18n(doc_language, "acronym-table-title"), mult: 1, top: 1em, bottom: 1em),
sorted: "up",
delimiter: " : ",
row-gutter: 0.7em,
outlined: false,
)
////////////////////////////
// Let's get started folks!
////////////////////////////
#cleardoublepage()
#include "pages/abstract.typ"
#cleardoublepage()
#include "pages/résumé.typ"
#cleardoublepage()
#declaration-of-honour()
#cleardoublepage()
#include "pages/acknowledgements.typ"
/*
== The content of a thesis
The general structure of a bachelor thesis typically includes the following sections:
1. *Abstract*: A concise summary of the thesis, including the research question, methodology, results, and conclusions.
2. *Résumé*: A summary of the thesis in French.
3. *Acknowledgements*: [Optional] A section to thank those who supported your work.
4. *Table of Contents*: An organized list of chapters and sections.
5. *Introduction*: Presents the background/context, motivation, objectives, and scope and plan of the thesis.
6. *State of the Art / Literature Review*: Reviews existing research and situates the thesis within the academic context, if relevant to your work.
7. *Development and Methodology*: Describes the methods, materials, and procedures used in the research/thesis.
8. *Results*: Presents the findings of the research, often with tables, figures, and analysis.
9. *Discussion*: Interprets the results, discusses implications, and relates findings to the research question.
10. *Conclusion*: Summarizes the main findings and contributions, and suggests future work.
11. *References / Bibliography*: Lists all sources cited in the thesis.
12. *Appendices*: (Optional) Contains supplementary material such as raw data, code, or additional explanations.
This structure may vary depending on the field of study, but these elements are commonly found in most bachelor theses. They are recommended for the _ISC Bachelor thesis_ and should be adapted to the specific requirements of your thesis (e.g., if you have a state of the art section or not).
You can also change the order or the names of the sections, for instance, if you want to put the state of the art before the introduction, or if you want to add a section on methodology before the results.
*/
= Introduction
#lorem-pars(100)
= Development and Methodology 1
#lorem-pars(200)
= Results and Discussion
#lorem-pars(200)
= Conclusion
#lorem-pars(100)
#pagebreak()
#the-bibliography(
bib-file: read("bibliography.bib", encoding: none),
full: true,
style: "ieee"
)
//////////////
// Appendices
//////////////
#cleardoublepage()
#appendix-page()
#pagebreak()
// Table of acronyms (optional). Defined near the acronyms above.
#acronym-table()
#pagebreak()
// Table of listings
#table-of-figures()
// Code inclusion
#pagebreak()
#code-samples()
#figure(
code(
```python
print("Hello World!")
```
),
caption: "Code included from the file example.scala"
)

35
report/bibliography.bib Normal file
View File

@@ -0,0 +1,35 @@
@book{tapl,
author = {Pierce, Benjamin C.},
title = {Types and Programming Languages},
year = {2002},
isbn = {0262162091},
publisher = {The MIT Press},
edition = {1st},
abstract = {A type system is a syntactic method for automatically checking the absence of certain erroneous behaviors by classifying program phrases according to the kinds of values they compute. The study of type systems -- and of programming languages from a type-theoretic perspective -- has important applications in software engineering, language design, high-performance compilers, and security.This text provides a comprehensive introduction both to type systems in computer science and to the basic theory of programming languages. The approach is pragmatic and operational; each new concept is motivated by programming examples and the more theoretical sections are driven by the needs of implementations. Each chapter is accompanied by numerous exercises and solutions, as well as a running implementation, available via the Web. Dependencies between chapters are explicitly identified, allowing readers to choose a variety of paths through the material.The core topics include the untyped lambda-calculus, simple type systems, type reconstruction, universal and existential polymorphism, subtyping, bounded quantification, recursive types, kinds, and type operators. Extended case studies develop a variety of approaches to modeling the features of object-oriented languages.}
}
@article{gator,
author = {Geisler, Dietrich and Yoon, Irene and Kabra, Aditi and He, Horace and Sanders, Yinnon and Sampson, Adrian},
title = {Geometry types for graphics programming},
year = {2020},
issue_date = {November 2020},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
volume = {4},
number = {OOPSLA},
url = {https://doi.org/10.1145/3428241},
doi = {10.1145/3428241},
abstract = {In domains that deal with physical space and geometry, programmers need to track the coordinate systems that underpin a computation. We identify a class of geometry bugs that arise from confusing which coordinate system a vector belongs to. These bugs are not ruled out by current languages for vector-oriented computing, are difficult to check for at run time, and can generate subtly incorrect output that can be hard to test for. We introduce a type system and language that prevents geometry bugs by reflecting the coordinate system for each geometric object. A value's geometry type encodes its reference frame, the kind of geometric object (such as a point or a direction), and the coordinate representation (such as Cartesian or spherical coordinates). We show how these types can rule out geometrically incorrect operations, and we show how to use them to automatically generate correct-by-construction code to transform vectors between coordinate systems. We implement a language for graphics programming, Gator, that checks geometry types and compiles to OpenGL's shading language, GLSL. Using case studies, we demonstrate that Gator can raise the level of abstraction for shader programming and prevent common errors without inducing significant annotation overhead or performance cost.},
journal = {Proc. ACM Program. Lang.},
month = nov,
articleno = {173},
numpages = {25},
keywords = {computer graphics, geometry, language design, type systems}
}
@inproceedings{Siek2006GradualTF,
title={Gradual Typing for Functional Languages},
author={Jeremy G. Siek and Walid Taha},
year={2006},
url={https://api.semanticscholar.org/CorpusID:1398902}
}

View File

@@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" width="220" height="70" viewBox="0 0 220 70">
<!-- Placeholder handwritten-style signature for the template example. -->
<path d="M8 50 C 30 10, 45 60, 60 35 S 85 5, 100 40 C 110 60, 120 20, 135 38 S 165 55, 185 25 C 195 12, 205 30, 212 22"
fill="none" stroke="#1a2b6b" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M70 55 C 110 48, 150 58, 200 50" fill="none" stroke="#1a2b6b" stroke-width="1.2" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 514 B

16
report/fonts/README.md Normal file
View File

@@ -0,0 +1,16 @@
# License
All the fonts downloaded by this script for the layout of the documents are licensed under the [SIL Open Font License](https://openfontlicense.org/) which is included in [here](ofl.md).
## Installing fonts
This report template uses several fonts packaged in this repository. To install the fonts in a Linux environment, simply type:
```bash
source install_fonts.sh
```
from within the `fonts` directory and voilà!
The installer also creates a local fontconfig alias so Linux maps `Source Sans Pro` to `Source Sans 3`.
This keeps Typst/web template naming compatibility while avoiding missing-font warnings on Linux.

View File

@@ -0,0 +1,59 @@
#!/usr/bin/env bash
RED='\033[0;31m'
GREEN='\033[0;32m'
NC='\033[0m' # No Color
VU="${GREEN}${NC}"
# v2: ships both "Source Sans 3" and "Source Sans Pro" (v2 name used by the
# Typst web editor) so templates compile without font warnings on both CLI and web.
FONTS_URL="https://files.isc-vs.ch/typst/modern-isc-fonts-v2.tar.gz"
FONTS_ARCHIVE="modern-isc-fonts-v2.tar.gz"
FONTS_DIR="modern-isc-fonts-v2"
echo -e "Downloading and installing fonts locally..."
fonts_dir="${HOME}/.local/share/fonts"
if [ ! -d "${fonts_dir}" ]; then
mkdir -p "${fonts_dir}"
echo -e "Created fonts directory $fonts_dir $VU"
else
echo -e "Found fonts directory $fonts_dir $VU"
fi
wget -q --show-progress "${FONTS_URL}"
if [ $? -ne 0 ]; then
echo -e "${RED}Error: Failed to download ${FONTS_ARCHIVE}.${NC}"
exit 1
fi
echo -e "Font bundle downloaded $VU"
tar -zxf "${FONTS_ARCHIVE}"
cp "${FONTS_DIR}"/*.ttf "${fonts_dir}/"
cp "${FONTS_DIR}"/*.otf "${fonts_dir}/"
echo -e "Fonts installed $VU"
echo -e "Rebuilding font cache..."
fc-cache -f
echo -e "Font cache rebuilt $VU"
rm -f "${FONTS_ARCHIVE}"
rm -rf "${FONTS_DIR}/"
# Verify all required fonts are visible to Typst
missing_fonts=()
for font in "Source Sans Pro" "Source Sans 3" "Inria Sans" "Fira Code"; do
if ! typst fonts | grep -q "^${font}$"; then
missing_fonts+=("$font")
fi
done
if [ ${#missing_fonts[@]} -eq 0 ]; then
echo -e "${VU} All required fonts found in Typst. Install successful!"
else
echo -e "${RED}The following fonts were not found by Typst: ${missing_fonts[*]}${NC}"
exit 1
fi

113
report/fonts/ofl.md Normal file
View File

@@ -0,0 +1,113 @@
Copyright &#40;c) ``<dates>``, ``<Copyright Holder>`` (``<URL|email>``),
with Reserved Font Name ``<Reserved Font Name>``.
Copyright &#40;c) ``<dates>``, ``<additional Copyright Holder>`` (``<URL|email>``),
with Reserved Font Name ``<additional Reserved Font Name>``.
Copyright &#40;c) ``<dates>``, ``<additional Copyright Holder>`` (``<URL|email>``).
This Font Software is licensed under the SIL Open Font License, Version 1.1.
This license is copied below, and is also available with a FAQ at:
<https://openfontlicense.org>
---
# SIL OPEN FONT LICENSE
##### *Version 1.1 - 26 February 2007*
PREAMBLE
----------
The goals of the Open Font License (OFL) are to stimulate worldwide
development of collaborative font projects, to support the font creation
efforts of academic and linguistic communities, and to provide a free and
open framework in which fonts may be shared and improved in partnership
with others.
The OFL allows the licensed fonts to be used, studied, modified and
redistributed freely as long as they are not sold by themselves. The
fonts, including any derivative works, can be bundled, embedded,
redistributed and/or sold with any software provided that any reserved
names are not used by derivative works. The fonts and derivatives,
however, cannot be released under any other type of license. The
requirement for fonts to remain under this license does not apply
to any document created using the fonts or their derivatives.
DEFINITIONS
-------------
***Font Software*** refers to the set of files released by the Copyright
Holder(s) under this license and clearly marked as such. This may
include source files, build scripts and documentation.
***Reserved Font Name*** refers to any names specified as such after the
copyright statement(s).
***Original Version*** refers to the collection of Font Software components as
distributed by the Copyright Holder(s).
***Modified Version*** refers to any derivative made by adding to, deleting,
or substituting -- in part or in whole -- any of the components of the
Original Version, by changing formats or by porting the Font Software to a
new environment.
***Author*** refers to any designer, engineer, programmer, technical
writer or other person who contributed to the Font Software.
PERMISSION & CONDITIONS
------------------------
Permission is hereby granted, free of charge, to any person obtaining
a copy of the ***Font Software***, to use, study, copy, merge, embed, modify,
redistribute, and sell modified and unmodified copies of the ***Font
Software***, subject to the following conditions:
1) Neither the ***Font Software*** nor any of its individual components,
in ***Original*** or ***Modified Versions***, may be sold by itself.
2) ***Original*** or ***Modified Versions*** of the ***Font Software*** may be bundled,
redistributed and/or sold with any software, provided that each copy
contains the above copyright notice and this license. These can be
included either as stand-alone text files, human-readable headers or
in the appropriate machine-readable metadata fields within text or
binary files as long as those fields can be easily viewed by the user.
3) No ***Modified Version*** of the ***Font Software*** may use the ***Reserved Font
Name(s)*** unless explicit written permission is granted by the corresponding
Copyright Holder. This restriction only applies to the primary font name as
presented to the users.
4) The name(s) of the Copyright Holder(s) or the ***Author(s)*** of the ***Font
Software*** shall not be used to promote, endorse or advertise any
***Modified Version***, except to acknowledge the contribution(s) of the
Copyright Holder(s) and the ***Author(s)*** or with their explicit written
permission.
5) The ***Font Software***, modified or unmodified, in part or in whole,
must be distributed entirely under this license, and must not be
distributed under any other license. The requirement for fonts to
remain under this license does not apply to any document created
using the ***Font Software***.
TERMINATION
-----------
This license becomes null and void if any of the above conditions are
not met.
DISCLAIMER
-----------
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
OTHER DEALINGS IN THE FONT SOFTWARE.

21
report/pages/abstract.typ Normal file
View File

@@ -0,0 +1,21 @@
#import "@preview/isc-hei-bthesis:0.8.1" : *
#page-title("Abstract")
#v(1fr)
The abstract of a bachelor thesis should provide a concise summary of the entire work. It typically includes:
- The context and motivation for the research.
- The main objective or research question.
- A brief description of the methodology or approach used.
- The key results or findings.
- The main conclusion or implications of the work.
The abstract should be self-contained, clear, and usually does not exceed 250300 words. It allows readers to quickly understand the purpose and outcomes of the thesis without reading the full document.
The abstract *must* be written in both French and English.
#lorem(150)
#abstract-footer("en")

View File

@@ -0,0 +1,18 @@
#import "@preview/isc-hei-bthesis:0.8.1" : *
// Get the proper title for acknowledgements if not written in English
#page-title(context i18n(inc.global-language.get(), "acknowledgements"))
#v(1fr)
The *Acknowledgements* section of a bachelor thesis is where you express gratitude to those who supported you during your research and writing process. It is an *OPTIONAL* section. It may include:
- Academic supervisors or advisors who provided guidance.
- Professors or instructors who offered feedback or resources.
- Family and friends for emotional or practical support.
- Institutions or organizations that provided funding, facilities, or data.
- Anyone else who contributed significantly to your work.
Keep this section concise and sincere. It is typically placed after the abstract and before the main content of your thesis.
#v(1fr)

21
report/pages/résumé.typ Normal file
View File

@@ -0,0 +1,21 @@
#import "@preview/isc-hei-bthesis:0.8.1" : *
#page-title("Résumé")
#v(1fr)
Le résumé dun mémoire de bachelor doit fournir un aperçu concis de lensemble du travail. Il inclut généralement:
- Le contexte et la motivation de la recherche.
- Lobjectif principal ou la question de recherche.
- Une brève description de la méthodologie ou de lapproche utilisée.
- Les principaux résultats ou découvertes.
- La conclusion principale ou les implications du travail.
Le résumé doit être autonome, clair et ne pas dépasser habituellement 250 à 300 mots. Il permet aux lecteurs de comprendre rapidement le but et les résultats du mémoire sans lire lintégralité du document.
Le résumé doit être rédigé en français *et* en anglais.
#lorem(150)
#abstract-footer("fr")

View File

@@ -0,0 +1,511 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<!--
Name: 3024 day
Author: Jan T. Sott
License: Public Domain Mark 1.0
URL: https://github.com/idleberg/3024.tmTheme
Base16 template for TextMate by Chris Kempson (https://github.com/chriskempson)
-->
<plist version="1.0">
<dict>
<key>author</key>
<string>Jan T. Sott</string>
<key>name</key>
<string>3024 day</string>
<key>comment</key>
<string>https://github.com/idleberg/3024.tmTheme</string>
<key>semanticClass</key>
<string>theme.light.3024</string>
<key>colorSpaceName</key>
<string>sRGB</string>
<key>gutterSettings</key>
<dict>
<key>background</key>
<string>#f7f7f7</string>
<key>divider</key>
<string>#f7f7f7</string>
<key>foreground</key>
<string>#4a4543</string>
<key>selectionBackground</key>
<string>#f7f7f7</string>
<key>selectionForeground</key>
<string>#a5a2a2</string>
</dict>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>background</key>
<string>#f7f7f7</string>
<key>caret</key>
<string>#4a4543</string>
<key>foreground</key>
<string>#4a4543</string>
<key>invisibles</key>
<string>#d6d5d4</string>
<key>lineHighlight</key>
<string>#d6d5d4</string>
<key>selection</key>
<string>#d6d5d4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Text</string>
<key>scope</key>
<string>variable.parameter.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#4a4543</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comments</string>
<key>scope</key>
<string>comment, punctuation.definition.comment</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#807d7c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation</string>
<key>scope</key>
<string>punctuation.definition.string, punctuation.definition.variable, punctuation.definition.string, punctuation.definition.parameters, punctuation.definition.string, punctuation.definition.array</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#4a4543</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Delimiters</string>
<key>scope</key>
<string>none</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#4a4543</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Operators</string>
<key>scope</key>
<string>keyword.operator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#4a4543</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keywords</string>
<key>scope</key>
<string>keyword, keyword.control</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a16a94</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variables</string>
<key>scope</key>
<string>variable</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#db2d20</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Functions</string>
<key>scope</key>
<string>entity.name.function, meta.require, support.function.any-method</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#01a0e4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Classes</string>
<key>scope</key>
<string>meta.class, support.class, entity.name.class, entity.name.type.class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed0c8c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Methods</string>
<key>scope</key>
<string>keyword.other.special-method</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#01a0e4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage</string>
<key>scope</key>
<string>storage</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a16a94</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Support</string>
<key>scope</key>
<string>support.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b5e4f4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Strings, Inherited Class</string>
<key>scope</key>
<string>string, constant.other.symbol, entity.other.inherited-class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#01a252</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Integers</string>
<key>scope</key>
<string>constant.numeric</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed0c8c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Floats</string>
<key>scope</key>
<string>none</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed0c8c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Boolean</string>
<key>scope</key>
<string>none</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed0c8c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Constants</string>
<key>scope</key>
<string>constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed0c8c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tags</string>
<key>scope</key>
<string>entity.name.tag</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#db2d20</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Attributes</string>
<key>scope</key>
<string>entity.other.attribute-name</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed0c8c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Attribute IDs</string>
<key>scope</key>
<string>entity.other.attribute-name.id, punctuation.definition.entity</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#01a0e4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Selector</string>
<key>scope</key>
<string>meta.selector</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a16a94</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Values</string>
<key>scope</key>
<string>none</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed0c8c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Headings</string>
<key>scope</key>
<string>markup.heading punctuation.definition.heading, entity.name.section</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#01a0e4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Units</string>
<key>scope</key>
<string>keyword.other.unit</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed0c8c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Bold</string>
<key>scope</key>
<string>markup.bold, punctuation.definition.bold</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#ed0c8c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Italic</string>
<key>scope</key>
<string>markup.italic, punctuation.definition.italic</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#a16a94</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Code</string>
<key>scope</key>
<string>markup.raw.inline</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#01a252</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Link Text</string>
<key>scope</key>
<string>string.other.link</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#db2d20</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Link Url</string>
<key>scope</key>
<string>meta.link</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed0c8c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Lists</string>
<key>scope</key>
<string>markup.list</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#db2d20</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Quotes</string>
<key>scope</key>
<string>markup.quote</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ed0c8c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Separator</string>
<key>scope</key>
<string>meta.separator</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#d6d5d4</string>
<key>foreground</key>
<string>#4a4543</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Inserted</string>
<key>scope</key>
<string>markup.inserted</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#01a252</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Deleted</string>
<key>scope</key>
<string>markup.deleted</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#db2d20</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Changed</string>
<key>scope</key>
<string>markup.changed</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a16a94</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Colors</string>
<key>scope</key>
<string>constant.other.color</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b5e4f4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Regular Expressions</string>
<key>scope</key>
<string>string.regexp</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b5e4f4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Escape Characters</string>
<key>scope</key>
<string>constant.character.escape</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b5e4f4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Embedded</string>
<key>scope</key>
<string>punctuation.section.embedded, variable.interpolation</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#cdab53</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Invalid</string>
<key>scope</key>
<string>invalid.illegal</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#db2d20</string>
<key>foreground</key>
<string>#f7f7f7</string>
</dict>
</dict>
</array>
<key>uuid</key>
<string>14875ac8-6a02-493d-9cfa-1701c764e24b</string>
</dict>
</plist>

View File

@@ -0,0 +1,948 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<!-- Generated by: TmTheme-Editor -->
<!-- ============================================ -->
<!-- app: http://tmtheme-editor.herokuapp.com -->
<!-- code: https://github.com/aziz/tmTheme-Editor -->
<plist version="1.0">
<dict>
<key>name</key>
<string>Angular-io-Code</string>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>background</key>
<string>#F5F6F7</string>
<key>foreground</key>
<string>#5C707A</string>
<key>invisibles</key>
<string>#5C707A</string>
<key>caret</key>
<string>#5C707A</string>
<key>gutter</key>
<string>#F5F6F7</string>
<key>gutterForeground</key>
<string>#5C707A</string>
<key>guide</key>
<string>#969896</string>
<key>stackGuide</key>
<string>#969896</string>
<key>activeGuide</key>
<string>#969896</string>
<key>lineHighlight</key>
<string>#FFFFFF00</string>
<key>findHighlight</key>
<string>#969896</string>
<key>findHighlightForeground</key>
<string>#969896</string>
<key>selection</key>
<string>#969896</string>
<key>selectionBorder</key>
<string>#ffffff</string>
<key>bracketsForeground</key>
<string>#647F11</string>
<key>bracketsOptions</key>
<string>underline</string>
<key>bracketContentsForeground</key>
<string>#647F11</string>
<key>bracketContentsOptions</key>
<string>underline</string>
<key>tagsForeground</key>
<string>#647F11</string>
<key>tagsOptions</key>
<string>underline</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comment</string>
<key>scope</key>
<string>comment</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#969896</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String</string>
<key>scope</key>
<string>string</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>RegExp Operator</string>
<key>scope</key>
<string>regexp-operator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>RegExp Character Class</string>
<key>scope</key>
<string>string.regexp.characterclass punctuation.definition.string.begin, string.regexp.characterclass punctuation.definition.string.end</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Number</string>
<key>scope</key>
<string>constant.numeric</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Built-in Constant</string>
<key>scope</key>
<string>constant.language</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>User-defined Constant</string>
<key>scope</key>
<string>constant.character, constant.other, variable.other.constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable</string>
<key>scope</key>
<string>variable</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>keyword</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Bitwise</string>
<key>scope</key>
<string>bitwise-operator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage</string>
<key>scope</key>
<string>storage</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage Type</string>
<key>scope</key>
<string>storage.type</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Class Name</string>
<key>scope</key>
<string>entity.name.class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Inherited Class</string>
<key>scope</key>
<string>entity.other.inherited-class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function Name</string>
<key>scope</key>
<string>entity.name.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function Argument</string>
<key>scope</key>
<string>variable.parameter</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#5C707A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag Name</string>
<key>scope</key>
<string>entity.name.tag</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag Attribute</string>
<key>scope</key>
<string>entity.other.attribute-name</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library Function</string>
<key>scope</key>
<string>support.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library Constant</string>
<key>scope</key>
<string>support.constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library Class</string>
<key>scope</key>
<string>support.type, support.class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library Variable</string>
<key>scope</key>
<string>support.other.variable</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Invalid</string>
<key>scope</key>
<string>invalid, invalid.illegal, invalid.deprecated</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#f5f5f5</string>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Find-in-files Filename</string>
<key>scope</key>
<string>entity.name.filename.find-in-files</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#5C707A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Find-in-files Line Numbers</string>
<key>scope</key>
<string>constant.numeric.line-number.find-in-files, constant.numeric.line-number.match.find-in-files</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#969896</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Diff Header</string>
<key>scope</key>
<string>meta.diff.header</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#969896</string>
<key>background</key>
<string>#ffffff</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Diff Header</string>
<key>scope</key>
<string>meta.diff.header punctuation.definition.from-file.diff</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
<key>background</key>
<string>#ffecec</string>
<key>fontStyle</key>
<string>italic </string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Diff Header</string>
<key>scope</key>
<string>meta.diff.header punctuation.definition.to-file.diff</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
<key>background</key>
<string>#eaffea</string>
<key>fontStyle</key>
<string>italic </string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Diff Range</string>
<key>scope</key>
<string>meta.diff.range</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#969896</string>
<key>fontStyle</key>
<string>italic </string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Diff Deleted</string>
<key>scope</key>
<string>markup.deleted</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#ffecec</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Diff Deleted Punctuation</string>
<key>scope</key>
<string>markup.deleted punctuation.definition.inserted</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Diff Inserted</string>
<key>scope</key>
<string>markup.inserted</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#eaffea</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Diff Inserted Punctuation</string>
<key>scope</key>
<string>markup.inserted punctuation.definition.inserted</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>GitGutter Deleted</string>
<key>scope</key>
<string>markup.deleted.git_gutter</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>GitGutter Inserted</string>
<key>scope</key>
<string>markup.inserted.git_gutter</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>GitGutter Modified</string>
<key>scope</key>
<string>markup.changed.git_gutter</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#969896</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>GitGutter Ignored</string>
<key>scope</key>
<string>markup.ignored.git_gutter</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b3b3b3</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>GitGutter Untracked</string>
<key>scope</key>
<string>markup.untracked.git_gutter</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b3b3b3</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Entity Punctuation</string>
<key>scope</key>
<string>source.css punctuation.definition.entity</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#5C707A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Pseudo Selector</string>
<key>scope</key>
<string>source.css entity.other.attribute-name.pseudo-class, source.css entity.other.attribute-name.pseudo-element</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Property Value</string>
<key>scope</key>
<string>source.css meta.value, source.css support.constant, source.css support.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Color</string>
<key>scope</key>
<string>source.css constant.other.color</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Entity Punctuation</string>
<key>scope</key>
<string>source.scss punctuation.definition.entity</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#5C707A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Pseudo Selector</string>
<key>scope</key>
<string>source.scss entity.other.attribute-name.pseudo-class, source.scss entity.other.attribute-name.pseudo-element</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Color</string>
<key>scope</key>
<string>source.scss support.constant.property-value, source.scss support.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable</string>
<key>scope</key>
<string>source.scss variable</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>this</string>
<key>scope</key>
<string>variable.language.this.js</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function</string>
<key>scope</key>
<string>source.js entity.name.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
<key>fontStyle</key>
<string>regular</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function Definition</string>
<key>scope</key>
<string>source.js meta.function entity.name.function, source.js entity.name.function meta.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>New Function</string>
<key>scope</key>
<string>entity.name.type.new.js</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function Prototype</string>
<key>scope</key>
<string>variable.language.prototype.js</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Support Function</string>
<key>scope</key>
<string>source.js support.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function Prototype</string>
<key>scope</key>
<string>support.type.object.console.js</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JSON Property</string>
<key>scope</key>
<string>meta.structure.dictionary.json string.quoted.double.json</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#5C707A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JSON Value</string>
<key>scope</key>
<string>meta.structure.dictionary.json meta.structure.dictionary.value.json string.quoted.double.json</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
<key>fontStyle</key>
<string>regular</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>source.python keyword</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage</string>
<key>scope</key>
<string>source.python storage</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage Type</string>
<key>scope</key>
<string>source.python storage.type</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function</string>
<key>scope</key>
<string>source.python entity.name.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Class</string>
<key>scope</key>
<string>source.php entity.name.type.class</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Language Variable</string>
<key>scope</key>
<string>variable.language.ruby</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Module Name</string>
<key>scope</key>
<string>entity.name.type.module.ruby</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Class Name</string>
<key>scope</key>
<string>entity.name.type.class.ruby</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Inherited Class</string>
<key>scope</key>
<string>entity.other.inherited-class.ruby</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation</string>
<key>scope</key>
<string>punctuation.definition.heading.markdown, punctuation.definition.italic.markdown, punctuation.definition.bold.markdown, punctuation.definition.string.begin.markdown, punctuation.definition.string.end.markdown, punctuation.definition.metadata.markdown, punctuation.definition.link.markdown, punctuation.definition.blockquote.markdown, punctuation.definition.raw.markdown</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Separator</string>
<key>scope</key>
<string>text.html.markdown meta.separator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#5C707A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Heading</string>
<key>scope</key>
<string>text.html.markdown markup.heading</string>
<key>settings</key>
<dict>
</dict>
</dict>
<dict>
<key>name</key>
<string>Code Block</string>
<key>scope</key>
<string>text.html.markdown markup.raw.block</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#5C707A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Inline Code</string>
<key>scope</key>
<string>text.html.markdown markup.raw.inline</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#5C707A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Link and Image</string>
<key>scope</key>
<string>text.html.markdown meta.link, text.html.markdown meta.image</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Link URL</string>
<key>scope</key>
<string>text.html.markdown markup.underline.link, text.html.markdown constant.other.reference</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#647F11</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>List</string>
<key>scope</key>
<string>text.html.markdown markup.list</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Bold</string>
<key>scope</key>
<string>text.html.markdown markup.bold</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string> bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Italic</string>
<key>scope</key>
<string>text.html.markdown markup.italic</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Bold Italic</string>
<key>scope</key>
<string>text.html.markdown markup.bold markup.italic</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string> italic bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Italic Bold</string>
<key>scope</key>
<string>text.html.markdown markup.italic markup.bold</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Decorators</string>
<key>scope</key>
<string>tag.decorator.js entity.name.tag.js, tag.decorator.js punctuation.definition.tag.js, tag.decorator.ts entity.name.tag.ts, tag.decorator.ts punctuation.definition.tag.ts</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#647F11</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Type</string>
<key>scope</key>
<string>meta.return.type, meta.return-type, meta.cast, meta.type.annotation, support.type, entity.name.class, entity.name.type, storage.type.cs, storage.type.java</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D43669</string>
</dict>
</dict>
</array>
<key>colorSpaceName</key>
<string>sRGB</string>
<key>semanticClass</key>
<string>theme.light.angular-io-code</string>
<key>author</key>
<string>NoHomey</string>
<key>comment</key>
<string>Angular.io inspired theme</string>
</dict>
</plist>

View File

@@ -0,0 +1,294 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>author</key>
<string>Austin Cummings</string>
<key>name</key>
<string>Chrome DevTools</string>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>background</key>
<string>#FFFFFF</string>
<key>caret</key>
<string>#000000</string>
<key>foreground</key>
<string>#000000</string>
<key>invisibles</key>
<string>#B3B3B3F4</string>
<key>lineHighlight</key>
<string>#0000001A</string>
<key>selection</key>
<string>#BAD6FD</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String</string>
<key>scope</key>
<string>string</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#C41A16</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Number</string>
<key>scope</key>
<string>constant.numeric</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#1C00CF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>keyword</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#AA0D91</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Operator</string>
<key>scope</key>
<string>keyword.operator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Identifier</string>
<key>scope</key>
<string>constant.language</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#AA0D91</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Exception</string>
<key>scope</key>
<string>support.class.exception</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#990000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function name</string>
<key>scope</key>
<string>entity.name.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#000000</string>
<!-- <key>fontStyle</key>
<string>italic</string> -->
</dict>
</dict>
<dict>
<key>name</key>
<string>Type name</string>
<key>scope</key>
<string>entity.name.type</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold underline</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Arguments</string>
<key>scope</key>
<string>variable.parameter</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comment</string>
<key>scope</key>
<string>comment</string>
<key>settings</key>
<dict>
<!-- <key>fontStyle</key>
<string>italic</string> -->
<key>foreground</key>
<string>#007400</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Invalid</string>
<key>scope</key>
<string>invalid</string>
<key>settings</key>
<dict>
<!-- <key>background</key>
<string>#E71A114D</string> -->
<key>foreground</key>
<string>#FF0000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Trailing whitespace</string>
<key>scope</key>
<string>invalid.deprecated.trailing-whitespace</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#E71A1100</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Embedded source</string>
<key>scope</key>
<string>text source</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#FAFAFAFC</string>
<key>foreground</key>
<string>#000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag</string>
<key>scope</key>
<string>meta.tag, declaration.tag</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#AA0D91</string>
</dict>
</dict>
<!-- <dict>
<key>name</key>
<string>Constant</string>
<key>scope</key>
<string>constant, support.constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#000000</string>
</dict>
</dict> -->
<dict>
<key>name</key>
<string>Support</string>
<key>scope</key>
<string>support</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage</string>
<key>scope</key>
<string>storage</string>
<key>settings</key>
<dict>
<!-- <key>fontStyle</key>
<string>bold</string> -->
<key>foreground</key>
<string>#AA0D91</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Section name</string>
<key>scope</key>
<string>entity.name.section</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold underline</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Frame title</string>
<key>scope</key>
<string>entity.name.function.frame</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#000000</string>
<!-- <string>#881280</string> -->
</dict>
</dict>
<dict>
<key>name</key>
<string>XML Declaration</string>
<key>scope</key>
<string>meta.tag.preprocessor.xml</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#333333</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag Attribute</string>
<key>scope</key>
<string>entity.other.attribute-name</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<!-- <string>#3366CC</string> -->
<string>#994500</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag Name</string>
<key>scope</key>
<string>entity.name.tag</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#881280</string>
<!-- <key>fontStyle</key>
<string>bold</string> -->
</dict>
</dict>
</array>
<key>uuid</key>
<string>4FCFA210-B247-11D9-9D00-000D93347A42</string>
</dict>
</plist>

View File

@@ -0,0 +1,436 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>author</key>
<string>Kobzarev Mikhail</string>
<key>name</key>
<string>EditPlus</string>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>background</key>
<string>#FFFFFF</string>
<key>caret</key>
<string>#000000</string>
<key>foreground</key>
<string>#000000</string>
<key>invisibles</key>
<string>#B3B3B3F4</string>
<key>lineHighlight</key>
<string>#00808060</string>
<key>selection</key>
<string>#BAD6FD</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String</string>
<key>scope</key>
<string>string</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF00FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Number</string>
<key>scope</key>
<string>constant.numeric</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#800080</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Regular expression</string>
<key>scope</key>
<string>string.regexp</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF0080</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>keyword</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0000FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Identifier</string>
<key>scope</key>
<string>constant.language</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0000FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Exception</string>
<key>scope</key>
<string>support.class.exception</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#990000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function name</string>
<key>scope</key>
<string>entity.name.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#800000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Type name</string>
<key>scope</key>
<string>entity.name.type</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold underline</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Arguments</string>
<key>scope</key>
<string>variable.parameter</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comment</string>
<key>scope</key>
<string>comment</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#008000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Invalid</string>
<key>scope</key>
<string>invalid</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#E71A114D</string>
<key>foreground</key>
<string>#FF0000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Trailing whitespace</string>
<key>scope</key>
<string>invalid.deprecated.trailing-whitespace</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#E71A1100</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Embedded source</string>
<key>scope</key>
<string>text source</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#FFFFFF</string>
<key>foreground</key>
<string>#800000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Functions Alt</string>
<key>scope</key>
<string>support.function.construct</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#FFFFFF</string>
<key>foreground</key>
<string>#0000FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag</string>
<key>scope</key>
<string>meta.tag, declaration.tag</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0033CC</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Constant</string>
<key>scope</key>
<string>constant, support.constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#800000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Support</string>
<key>scope</key>
<string>support</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#3333FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation</string>
<key>scope</key>
<string>punctuation.definition.variable</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#3333FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation Alt</string>
<key>scope</key>
<string>punctuation.definition.string</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF00FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Object Ref</string>
<key>scope</key>
<string>meta.function-call</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#800000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Var Alt</string>
<key>scope</key>
<string>variable.other</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#800000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Var Alt 2</string>
<key>scope</key>
<string>variable.other.php</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#008080</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation Alt</string>
<key>scope</key>
<string>punctuation.section.embedded</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#800000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Operators Alt</string>
<key>scope</key>
<string>keyword.operator.assignment</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#800000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Operators Alt 2</string>
<key>scope</key>
<string>keyword.operator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#800000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Operators Alt 3</string>
<key>scope</key>
<string>storage.modifier</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#800000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>SQL</string>
<key>scope</key>
<string>punctuation.definition.string.begin</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF00FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage</string>
<key>scope</key>
<string>storage</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#3333FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Section name</string>
<key>scope</key>
<string>entity.name.section</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold underline</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Frame title</string>
<key>scope</key>
<string>entity.name.function.frame</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#0000FF</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>XML Declaration</string>
<key>scope</key>
<string>meta.tag.preprocessor.xml</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#333333</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag Attribute</string>
<key>scope</key>
<string>entity.other.attribute-name</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF0000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag Name</string>
<key>scope</key>
<string>entity.name.tag</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>SublimeLinter Error</string>
<key>scope</key>
<string>sublimelinter.mark.error</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#D02000</string>
</dict>
</dict><dict>
<key>name</key>
<string>SublimeLinter Warning</string>
<key>scope</key>
<string>sublimelinter.mark.warning</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#DDB700</string>
</dict>
</dict><dict>
<key>name</key>
<string>SublimeLinter Gutter Mark</string>
<key>scope</key>
<string>sublimelinter.gutter-mark</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FFFFFF</string>
</dict>
</dict></array>
<key>uuid</key>
<string>4FCFA210-B247-11D9-9D00-000D93347A42</string>
</dict>
</plist>

View File

@@ -0,0 +1,374 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>author</key>
<string>Ankur Gupta</string>
<key>name</key>
<string>GitHub Clean White</string>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>background</key>
<string>#FFFFFF</string>
<key>caret</key>
<string>#000000</string>
<key>foreground</key>
<string>#000000</string>
<key>invisibles</key>
<string>#B3B3B3F4</string>
<key>lineHighlight</key>
<string>#0000001A</string>
<key>selection</key>
<string>#BAD6FD</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String</string>
<key>scope</key>
<string>string</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#C41A16</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Number</string>
<key>scope</key>
<string>constant.numeric</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0086B3</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>keyword</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#A71D5D</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Operator</string>
<key>scope</key>
<string>keyword.operator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Built-in constant</string>
<key>scope</key>
<string>constant.language</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0086B3</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Exception</string>
<key>scope</key>
<string>support.class.exception</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#990000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function name</string>
<key>scope</key>
<string>entity.name.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#000000</string>
<!-- <key>fontStyle</key>
<string>italic</string> -->
</dict>
</dict>
<dict>
<key>name</key>
<string>Type name</string>
<key>scope</key>
<string>entity.name.type</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold underline</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Arguments</string>
<key>scope</key>
<string>variable.parameter</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comment</string>
<key>scope</key>
<string>comment</string>
<key>settings</key>
<dict>
<!-- <key>fontStyle</key>
<string>italic</string> -->
<key>foreground</key>
<string>#969896</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Invalid</string>
<key>scope</key>
<string>invalid</string>
<key>settings</key>
<dict>
<!-- <key>background</key>
<string>#E71A114D</string> -->
<key>foreground</key>
<string>#FF0000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Trailing whitespace</string>
<key>scope</key>
<string>invalid.deprecated.trailing-whitespace</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#E71A1100</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Embedded source</string>
<key>scope</key>
<string>text source</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#FAFAFAFC</string>
<key>foreground</key>
<string>#000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag</string>
<key>scope</key>
<string>meta.tag, declaration.tag</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#AA0D91</string>
</dict>
</dict>
<!-- <dict>
<key>name</key>
<string>Constant</string>
<key>scope</key>
<string>constant, support.constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#000000</string>
</dict>
</dict> -->
<dict>
<key>name</key>
<string>Support</string>
<key>scope</key>
<string>support</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage</string>
<key>scope</key>
<string>storage</string>
<key>settings</key>
<dict>
<!-- <key>fontStyle</key>
<string>bold</string> -->
<key>foreground</key>
<string>#AA0D91</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Section name</string>
<key>scope</key>
<string>entity.name.section</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold underline</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Frame title</string>
<key>scope</key>
<string>entity.name.function.frame</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#000000</string>
<!-- <string>#881280</string> -->
</dict>
</dict>
<dict>
<key>name</key>
<string>XML Declaration</string>
<key>scope</key>
<string>meta.tag.preprocessor.xml</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#333333</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>html attribute</string>
<key>scope</key>
<string>entity.other.attribute-name</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<!-- <string>#3366CC</string> -->
<string>#0A8585</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>html tag punctuation</string>
<key>scope</key>
<string>entity.name.tag</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#121289</string>
<!-- <key>fontStyle</key>
<string>bold</string> -->
</dict>
</dict>
<!-- Adding stuff for diff. This works in ST3 -->
<dict>
<key>name</key>
<string>diff header from</string>
<key>scope</key>
<string>meta.diff.header.from-file</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#FFDDDD</string>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>diff header to</string>
<key>scope</key>
<string>meta.diff.header.to-file</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#DDFFDD</string>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#000000</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>diff inserted</string>
<key>scope</key>
<string>markup.inserted.diff</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#DDFFDD</string>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>diff deleted</string>
<key>scope</key>
<string>markup.deleted.diff</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#FFDDDD</string>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#000000</string>
</dict>
</dict>
<!-- BracketHighlighter colors -->
<dict>
<key>name</key>
<string>BH Color</string>
<key>scope</key>
<string>brackethighlighter.default</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#FF992244</string>
<key>fontStyle</key>
<string>italic</string>
</dict>
</dict>
</array>
<key>uuid</key>
<string>26786979-843B-4FE2-BCB6-4FCEC6F8FB58</string>
<key>colorSpaceName</key>
<string>sRGB</string>
<key>semanticClass</key>
<string>theme.light.git_hub_clean_white</string>
<key>comment</key>
<string>v1.0 Feb 1, 2015
Made to look as close to GitHub as possible.</string>
</dict>
</plist>

View File

@@ -0,0 +1,643 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>author</key>
<string>GitHub</string>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>selection</key>
<string>#c8c8fa</string>
<key>lineHighlight</key>
<string>#fafbfc</string>
<key>background</key>
<string>#fff</string>
<key>foreground</key>
<string>#24292e</string>
<key>invisibles</key>
<string>#959da5</string>
<key>caret</key>
<string>#24292e</string>
<key>diffRenamed</key>
<string>#fafbfc</string>
<key>diffModified</key>
<string>#f9c513</string>
<key>diffDeleted</key>
<string>#d73a49</string>
<key>diffAdded</key>
<string>#34d058</string>
<key>markdown</key>
<string>#f7f7f7</string>
<key>inactiveSelection</key>
<string>#fafbfc</string>
<key>selectionBorder</key>
<string>#fafbfc</string>
<key>findHighlight</key>
<string>#e36209</string>
<key>findHighlightForeground</key>
<string>#fff8f2</string>
<key>guide</key>
<string>#959da5</string>
<key>activeGuide</key>
<string>#24292e</string>
<key>stackGuide</key>
<string>#959da5</string>
<key>highlight</key>
<string>#444d56</string>
<key>popupCss</key>
<string>&lt;![CDATA[html { background-color: #e0e0e0; } h1, h2, h3, h4, h5, h6 { color: #005cc5; margin-top: 0.2em; margin-bottom: 0.2em; } h1 { font-size: 1.5em; } h2 { font-size: 1.4em; } h3 { font-size: 1.3em; } h4 { font-size: 1.2em; } h5 { font-size: 1.1em; } h6 { font-size: 1em; } blockquote { color: #22863a; display: block; font-style: italic; } pre { display: block; } a { color: #032f62; font-style: underline; } body { color: #24292e; background-color: #fff; margin: 1px; font-size: 1em; padding: 0.2em; } .danger { color: #b31d28; } .important, .attention { color: #6f42c1; } .caution, .warning { color: #e36209; } .note { color: #735c0f; }]]&gt;</string>
<key>highlightForeground</key>
<string>#444d56</string>
<key>tagsOptions</key>
<string>underline</string>
<key>bracketContentsOptions</key>
<string>underline</string>
<key>bracketContentsForeground</key>
<string>#24292e</string>
<key>bracketsOptions</key>
<string>underline</string>
<key>bracketsForeground</key>
<string>#24292e</string>
<key>gutterForeground</key>
<string>#24292e</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>comment, punctuation.definition.comment, string.comment</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#6a737d</string>
</dict>
<key>name</key>
<string>Comment</string>
</dict>
<dict>
<key>scope</key>
<string>constant, entity.name.constant, variable.other.constant, variable.language</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#005cc5</string>
</dict>
<key>name</key>
<string>Constant</string>
</dict>
<dict>
<key>scope</key>
<string>keyword.operator.symbole, keyword.other.mark</string>
<key>name</key>
<string>Clojure workaround; don't highlight these separately from their enclosing scope</string>
<key>settings</key>
<dict/>
</dict>
<dict>
<key>scope</key>
<string>entity, entity.name</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#6f42c1</string>
</dict>
<key>name</key>
<string>Entity</string>
</dict>
<dict>
<key>scope</key>
<string>variable.parameter.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#24292e</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>entity.name.tag</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#22863a</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>keyword</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#d73a49</string>
</dict>
<key>name</key>
<string>Keyword</string>
</dict>
<dict>
<key>scope</key>
<string>storage, storage.type</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#d73a49</string>
</dict>
<key>name</key>
<string>Storage</string>
</dict>
<dict>
<key>scope</key>
<string>storage.modifier.package, storage.modifier.import, storage.type.java</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#24292e</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>string, punctuation.definition.string, string punctuation.section.embedded source</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#032f62</string>
</dict>
<key>name</key>
<string>String</string>
</dict>
<dict>
<key>name</key>
<string>Ada workaround; don't highlight imports as strings</string>
<key>scope</key>
<string>string.unquoted.import.ada</string>
<key>settings</key>
<dict/>
</dict>
<dict>
<key>scope</key>
<string>support</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#005cc5</string>
</dict>
<key>name</key>
<string>Support</string>
</dict>
<dict>
<key>scope</key>
<string>meta.property-name</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#005cc5</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>variable</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#e36209</string>
</dict>
<key>name</key>
<string>Variable</string>
</dict>
<dict>
<key>scope</key>
<string>variable.other</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#24292e</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>invalid.broken</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold italic underline</string>
<key>foreground</key>
<string>#b31d28</string>
</dict>
<key>name</key>
<string>Invalid - Broken</string>
</dict>
<dict>
<key>scope</key>
<string>invalid.deprecated</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold italic underline</string>
<key>foreground</key>
<string>#b31d28</string>
</dict>
<key>name</key>
<string>Invalid Deprecated</string>
</dict>
<dict>
<key>scope</key>
<string>invalid.illegal</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic underline</string>
<key>background</key>
<string>#b31d28</string>
<key>foreground</key>
<string>#fafbfc</string>
</dict>
<key>name</key>
<string>Invalid Illegal</string>
</dict>
<dict>
<key>scope</key>
<string>carriage-return</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic underline</string>
<key>background</key>
<string>#d73a49</string>
<key>foreground</key>
<string>#fafbfc</string>
<key>content</key>
<string>^M</string>
</dict>
<key>name</key>
<string>Carriage Return</string>
</dict>
<dict>
<key>scope</key>
<string>invalid.unimplemented</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold italic underline</string>
<key>foreground</key>
<string>#b31d28</string>
</dict>
<key>name</key>
<string>Invalid - Unimplemented</string>
</dict>
<dict>
<key>scope</key>
<string>message.error</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b31d28</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>string source</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#24292e</string>
</dict>
<key>name</key>
<string>String embedded-source</string>
</dict>
<dict>
<key>scope</key>
<string>string variable</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#005cc5</string>
</dict>
<key>name</key>
<string>String variable</string>
</dict>
<dict>
<key>scope</key>
<string>source.regexp, string.regexp</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#032f62</string>
</dict>
<key>name</key>
<string>String.regexp</string>
</dict>
<dict>
<key>scope</key>
<string>string.regexp.character-class, string.regexp constant.character.escape, string.regexp source.ruby.embedded, string.regexp string.regexp.arbitrary-repitition</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#032f62</string>
</dict>
<key>name</key>
<string>String.regexp.«special»</string>
</dict>
<dict>
<key>scope</key>
<string>string.regexp constant.character.escape</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#22863a</string>
</dict>
<key>name</key>
<string>String.regexp constant.character.escape</string>
</dict>
<dict>
<key>scope</key>
<string>support.constant</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#005cc5</string>
</dict>
<key>name</key>
<string>Support.constant</string>
</dict>
<dict>
<key>scope</key>
<string>support.variable</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#005cc5</string>
</dict>
<key>name</key>
<string>Support.variable</string>
</dict>
<dict>
<key>scope</key>
<string>meta.module-reference</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#005cc5</string>
</dict>
<key>name</key>
<string>meta module-reference</string>
</dict>
<dict>
<key>scope</key>
<string>markup.list</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#735c0f</string>
</dict>
<key>name</key>
<string>Markup.list</string>
</dict>
<dict>
<key>scope</key>
<string>markup.heading, markup.heading entity.name</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#005cc5</string>
</dict>
<key>name</key>
<string>Markup.heading</string>
</dict>
<dict>
<key>scope</key>
<string>markup.quote</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#22863a</string>
</dict>
<key>name</key>
<string>Markup.quote</string>
</dict>
<dict>
<key>scope</key>
<string>markup.italic</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>italic</string>
<key>foreground</key>
<string>#24292e</string>
</dict>
<key>name</key>
<string>Markup.italic</string>
</dict>
<dict>
<key>scope</key>
<string>markup.bold</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#24292e</string>
</dict>
<key>name</key>
<string>Markup.bold</string>
</dict>
<dict>
<key>scope</key>
<string>markup.raw</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string/>
<key>foreground</key>
<string>#005cc5</string>
</dict>
<key>name</key>
<string>Markup.raw</string>
</dict>
<dict>
<key>scope</key>
<string>markup.deleted, meta.diff.header.from-file, punctuation.definition.deleted</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#ffeef0</string>
<key>foreground</key>
<string>#b31d28</string>
</dict>
<key>name</key>
<string>Markup.deleted</string>
</dict>
<dict>
<key>scope</key>
<string>markup.inserted, meta.diff.header.to-file, punctuation.definition.inserted</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#f0fff4</string>
<key>foreground</key>
<string>#22863a</string>
</dict>
<key>name</key>
<string>Markup.inserted</string>
</dict>
<dict>
<key>scope</key>
<string>markup.changed, punctuation.definition.changed</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#ffebda</string>
<key>foreground</key>
<string>#e36209</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>markup.ignored, markup.untracked</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#f6f8fa</string>
<key>background</key>
<string>#005cc5</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>meta.diff.range</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#6f42c1</string>
<key>fontStyle</key>
<string>bold</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>meta.diff.header</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#005cc5</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>meta.separator</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#005cc5</string>
</dict>
<key>name</key>
<string>Meta.separator</string>
</dict>
<dict>
<key>name</key>
<string>Output</string>
<key>scope</key>
<string>meta.output</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#005cc5</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>brackethighlighter.tag, brackethighlighter.curly, brackethighlighter.round, brackethighlighter.square, brackethighlighter.angle, brackethighlighter.quote</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#586069</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>brackethighlighter.unmatched</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b31d28</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>sublimelinter.mark.error</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#b31d28</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>sublimelinter.mark.warning</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#e36209</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>sublimelinter.gutter-mark</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#959da5</string>
</dict>
</dict>
<dict>
<key>scope</key>
<string>constant.other.reference.link, string.other.link</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#032f62</string>
<key>fontStyle</key>
<string>underline</string>
</dict>
</dict>
</array>
<key>comment</key>
<string>GitHub Light syntax theme</string>
<key>name</key>
<string>GitHub Light</string>
<key>semanticClass</key>
<string>theme.light.github</string>
<key>filename</key>
<string>github-light</string>
<key>uuid</key>
<string>A1C4DFA0-7031-11E4-9803-0800200C9A66</string>
</dict>
</plist>

369
report/themes/ILM.tmTheme Normal file
View File

@@ -0,0 +1,369 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<!-- Created by: ilm techno solutions -->
<!-- ============================================ -->
<!-- code: https://github.com/codex8/Colorsublime-Themes -->
<plist version="1.0">
<dict>
<key>name</key>
<string>ILM</string>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>background</key>
<string>#FFFFFF</string>
<key>caret</key>
<string>#000000</string>
<key>foreground</key>
<string>#000000</string>
<key>invisibles</key>
<string>#BFBFBF</string>
<key>lineHighlight</key>
<string>#FFFBD1</string>
<key>selection</key>
<string>#BDD5FC</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comment</string>
<key>scope</key>
<string>comment</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#BCC8BA</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String</string>
<key>scope</key>
<string>string</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#5D90CD</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Number</string>
<key>scope</key>
<string>constant.numeric</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#46A609</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Built-in constant</string>
<key>scope</key>
<string>constant.language</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#39946A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>User-defined constant</string>
<key>scope</key>
<string>constant.character, constant.other</string>
<key>settings</key>
<dict>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable</string>
<key>scope</key>
<string>variable.language, variable.other</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#2b991b</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>keyword, support.constant.property-value, constant.other.color</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string> bold</string>
<key>foreground</key>
<string>#ef5a19</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword -&gt; Unit</string>
<key>scope</key>
<string>keyword.other.unit</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#96DC5F</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword -&gt; Operator</string>
<key>scope</key>
<string>keyword.operator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#655465</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage</string>
<key>scope</key>
<string>storage</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#C52727</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Class name</string>
<key>scope</key>
<string>entity.name.class</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string> bold</string>
<key>foreground</key>
<string>#27a6b4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Inherited class</string>
<key>scope</key>
<string>entity.other.inherited-class</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#858585</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function name</string>
<key>scope</key>
<string>entity.name.function</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string> bold</string>
<key>foreground</key>
<string>#5319b5</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function argument</string>
<key>scope</key>
<string>variable.parameter</string>
<key>settings</key>
<dict>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag name</string>
<key>scope</key>
<string>entity.name.tag</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#606060</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>HTML Entity</string>
<key>scope</key>
<string>constant.character.entity</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#BF78CC</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JS Support Class</string>
<key>scope</key>
<string>support.class.js</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#BF78CC</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag attribute</string>
<key>scope</key>
<string>entity.other.attribute-name</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#606060</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>CSS Selector</string>
<key>scope</key>
<string>meta.selector.css, entity.name.tag.css, entity.other.attribute-name.id.css, entity.other.attribute-name.class.css</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#C52727</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>CSS Property</string>
<key>scope</key>
<string>meta.property-name.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#484848</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library function</string>
<key>scope</key>
<string>support.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#C52727</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library constant</string>
<key>scope</key>
<string>support.constant</string>
<key>settings</key>
<dict>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library class&#x2f;type</string>
<key>scope</key>
<string>support.type, support.class</string>
<key>settings</key>
<dict>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library variable</string>
<key>scope</key>
<string>support.other.variable</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Invalid</string>
<key>scope</key>
<string>invalid</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#FF002A</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation&#x2f;Widgets</string>
<key>scope</key>
<string>punctuation.section.embedded</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#C52727</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation (Tags)</string>
<key>scope</key>
<string>punctuation.definition.tag</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#606060</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword -&gt; CSS</string>
<key>scope</key>
<string>constant.other.color.rgb-value.css, support.constant.property-value.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#BF78CC</string>
</dict>
</dict>
</array>
<key>uuid</key>
<string>47536290-6FC1-4B09-A08F-B219909E1A69</string>
<key>colorSpaceName</key>
<string>sRGB</string>
<key>semanticClass</key>
<string>theme.ILM</string>
<key>author</key>
<string>sameer</string>
<key>comment</key>
<string>https://github.com/codex8/Colorsublime-Themes</string>
</dict>
</plist>

View File

@@ -0,0 +1,369 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<!-- Created by: ilm techno solutions -->
<!-- ============================================ -->
<!-- code: https://github.com/codex8/Colorsublime-Themes -->
<plist version="1.0">
<dict>
<key>name</key>
<string>ILM 2</string>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>background</key>
<string>#FFFFFF</string>
<key>caret</key>
<string>#000000</string>
<key>foreground</key>
<string>#000000</string>
<key>invisibles</key>
<string>#BFBFBF</string>
<key>lineHighlight</key>
<string>#FFFBD1</string>
<key>selection</key>
<string>#BDD5FC</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comment</string>
<key>scope</key>
<string>comment</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#c5c8baff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>String</string>
<key>scope</key>
<string>string</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#5dcdbfff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Number</string>
<key>scope</key>
<string>constant.numeric</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a69d09ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Built-in constant</string>
<key>scope</key>
<string>constant.language</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#459439ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>User-defined constant</string>
<key>scope</key>
<string>constant.character, constant.other</string>
<key>settings</key>
<dict>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable</string>
<key>scope</key>
<string>variable.language, variable.other</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#7f991bff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword</string>
<key>scope</key>
<string>keyword, support.constant.property-value, constant.other.color</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string> bold</string>
<key>foreground</key>
<string>#ef1967ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword -&gt; Unit</string>
<key>scope</key>
<string>keyword.other.unit</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#dccf5fff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword -&gt; Operator</string>
<key>scope</key>
<string>keyword.operator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#5a5465ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage</string>
<key>scope</key>
<string>storage</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#c52790ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Class name</string>
<key>scope</key>
<string>entity.name.class</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string> bold</string>
<key>foreground</key>
<string>#27b464ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Inherited class</string>
<key>scope</key>
<string>entity.other.inherited-class</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#858585ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function name</string>
<key>scope</key>
<string>entity.name.function</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string> bold</string>
<key>foreground</key>
<string>#1947b5ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function argument</string>
<key>scope</key>
<string>variable.parameter</string>
<key>settings</key>
<dict>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag name</string>
<key>scope</key>
<string>entity.name.tag</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#606060ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>HTML Entity</string>
<key>scope</key>
<string>constant.character.entity</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8778ccff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>JS Support Class</string>
<key>scope</key>
<string>support.class.js</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8778ccff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tag attribute</string>
<key>scope</key>
<string>entity.other.attribute-name</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#606060ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>CSS Selector</string>
<key>scope</key>
<string>meta.selector.css, entity.name.tag.css, entity.other.attribute-name.id.css, entity.other.attribute-name.class.css</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#c52790ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>CSS Property</string>
<key>scope</key>
<string>meta.property-name.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#484848ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library function</string>
<key>scope</key>
<string>support.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#c52790ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library constant</string>
<key>scope</key>
<string>support.constant</string>
<key>settings</key>
<dict>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library class&#x2f;type</string>
<key>scope</key>
<string>support.type, support.class</string>
<key>settings</key>
<dict>
</dict>
</dict>
<dict>
<key>name</key>
<string>Library variable</string>
<key>scope</key>
<string>support.other.variable</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Invalid</string>
<key>scope</key>
<string>invalid</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#ff00d4ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation&#x2f;Widgets</string>
<key>scope</key>
<string>punctuation.section.embedded</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#c52790ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation (Tags)</string>
<key>scope</key>
<string>punctuation.definition.tag</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#606060ff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keyword -&gt; CSS</string>
<key>scope</key>
<string>constant.other.color.rgb-value.css, support.constant.property-value.css</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#8778ccff</string>
</dict>
</dict>
</array>
<key>uuid</key>
<string>47536290-6FC1-4B09-A08F-B219909E1A69</string>
<key>colorSpaceName</key>
<string>sRGB</string>
<key>semanticClass</key>
<string>theme.light.ILM light</string>
<key>author</key>
<string>sameer</string>
<key>comment</key>
<string>sam0hack</string>
</dict>
</plist>

View File

@@ -0,0 +1,619 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<!-- Generated by: TmTheme-Editor -->
<!-- ============================================ -->
<!-- app: http://tmtheme-editor.herokuapp.com -->
<!-- code: https://github.com/aziz/tmTheme-Editor -->
<plist version="1.0">
<dict>
<key>author</key>
<string>Umut Topuzoğlu</string>
<key>name</key>
<string>Bluloco Light</string>
<key>semanticClass</key>
<string>theme.light.bluloco_light</string>
<key>colorSpaceName</key>
<string>sRGB</string>
<key>gutterSettings</key>
<dict>
<key>background</key>
<string>#353b45</string>
<key>divider</key>
<string>#353b45</string>
<key>foreground</key>
<string>#a0a1a7</string>
<key>selectionBackground</key>
<string>#d2ecff</string>
<key>selectionForeground</key>
<string>#565c64</string>
</dict>
<key>settings</key>
<array>
<dict>
<key>settings</key>
<dict>
<key>background</key>
<string>#f9f9f9</string>
<key>caret</key>
<string>#f31459</string>
<key>foreground</key>
<string>#383a42</string>
<key>invisibles</key>
<string>#a0a1a7</string>
<key>lineHighlight</key>
<string>#f1f1f1</string>
<key>selection</key>
<string>#d2ecff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Text</string>
<key>scope</key>
<string>variable.parameter.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#383a42</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Comments</string>
<key>scope</key>
<string>comment, punctuation.definition.comment, string.comment</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a0a1a7</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Punctuation</string>
<key>scope</key>
<string>punctuation.definition.variable, punctuation.definition.parameters, punctuation.definition.array, punctuation.definition.function, meta.brace, punctuation.terminator.statement, meta.delimiter.object.comma, punctuation.definition.entity, punctuation.definition,punctuation.definition.string.begin.markdown, punctuation.definition.string.end.markdown, punctuation.separator.key-value, punctuation.separator.dictionary, punctuation.terminator, meta.delimiter.comma, punctuation.separator.comma,punctuation.accessor,punctuation.separator.array,punctuation.section.property-list.begin.bracket.curly, punctuation.section.property-list.end.bracket.curly, punctuation.separator.statement</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#7a82da</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Delimiters</string>
<key>scope</key>
<string>none</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#383a42</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Operators</string>
<key>scope</key>
<string>keyword.operator</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#7a82da</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Keywords</string>
<key>scope</key>
<string>keyword, variable.language</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0098dd</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variables</string>
<key>scope</key>
<string>variable</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#383a42</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Functions</string>
<key>scope</key>
<string>entity.name.function, meta.require, support.function.any-method, meta.function-call</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#23974a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Classes</string>
<key>scope</key>
<string>support.class, entity.name.class, entity.name.type.class,meta.class.instance,meta.class.inheritance, entity.other.inherited-class, entity.name.type</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#d52753</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Methods</string>
<key>scope</key>
<string>keyword.other.special-method</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#23974a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Storage</string>
<key>scope</key>
<string>storage,constant.language</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0098dd</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Support</string>
<key>scope</key>
<string>support.function</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#23974a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Strings, Inherited Class</string>
<key>scope</key>
<string>string, constant.other.symbol, punctuation.definition.string,support.constant.property-value, string.quoted.double.shell</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#c5a332</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Integers</string>
<key>scope</key>
<string>constant.numeric</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ce33c0</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Floats</string>
<key>scope</key>
<string>none</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ce33c0</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Boolean</string>
<key>scope</key>
<string>none</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0098dd</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Constants</string>
<key>scope</key>
<string>constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#823ff1</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Tags</string>
<key>scope</key>
<string>entity.name.tag, punctuation.definition.tag</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#275fe4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Attribute IDs</string>
<key>scope</key>
<string>entity.other.attribute-name</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#df631c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Selector</string>
<key>scope</key>
<string>meta.selector</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#7a82da</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Values</string>
<key>scope</key>
<string>none</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ce33c0</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Headings</string>
<key>scope</key>
<string>markup.heading, punctuation.definition.heading, entity.name.section, markup.heading.setext</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#c5a332</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Units</string>
<key>scope</key>
<string>keyword.other.unit</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#c5a332</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Bold</string>
<key>scope</key>
<string>markup.bold, punctuation.definition.bold</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string>bold</string>
<key>foreground</key>
<string>#d52753</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Italic</string>
<key>scope</key>
<string>markup.italic, punctuation.definition.italic</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#df631c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Code</string>
<key>scope</key>
<string>markup.raw.inline</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#c5a332</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Link Text</string>
<key>scope</key>
<string>string.other.link</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#275fe4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Link Url</string>
<key>scope</key>
<string>meta.link</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0098dd</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Lists</string>
<key>scope</key>
<string>beginning.punctuation.definition.list</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a05a48</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Quotes</string>
<key>scope</key>
<string>markup.quote</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#823ff1</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Separator</string>
<key>scope</key>
<string>meta.separator</string>
<key>settings</key>
<dict>
<key>background</key>
<string>#d2ecff</string>
<key>foreground</key>
<string>#383a42</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Inserted</string>
<key>scope</key>
<string>markup.inserted</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#23974a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Deleted</string>
<key>scope</key>
<string>markup.deleted</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#d52753</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Changed</string>
<key>scope</key>
<string>markup.changed</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0098dd</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Colors</string>
<key>scope</key>
<string>constant.other.color, support.constant.color</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#c5a332</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Regular Expressions</string>
<key>scope</key>
<string>string.regexp</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a05a48</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Escape Characters</string>
<key>scope</key>
<string>constant.character.escape</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#df631c</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Embedded</string>
<key>scope</key>
<string>punctuation.section.embedded, variable.interpolation</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0098dd</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Illegal</string>
<key>scope</key>
<string>invalid</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#ff0000</string>
<key>background</key>
<string>#d2ecff</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Support Constant</string>
<key>scope</key>
<string>support.constant</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a05a48</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>New Operator</string>
<key>scope</key>
<string>keyword.operator.new</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0098dd</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Css ID</string>
<key>scope</key>
<string>entity.other.attribute-name.id</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#d52753</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Function Parameters</string>
<key>scope</key>
<string>meta.function-call.arguments</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#383a42</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Object Properties</string>
<key>scope</key>
<string>meta.object-literal.key, meta.object.member, support.type.property-name, entity.name.tag.yaml, constant.other.key,constant.other.object.key.js,string.unquoted.label.js</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a05a48</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markup Code</string>
<key>scope</key>
<string>markup.inline.raw, markup.fenced_code.block, markup.raw.block</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#a05a48</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Markup Link Image</string>
<key>scope</key>
<string>markup.underline.link.image</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#23974a</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>Variable Parameter</string>
<key>scope</key>
<string>variable.parameter</string>
<key>settings</key>
<dict></dict>
</dict>
<dict>
<key>name</key>
<string>Type Primitive</string>
<key>scope</key>
<string>support.type.primitive</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#0098dd</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>BASH: Command Substitution</string>
<key>scope</key>
<string>string.interpolated.dollar.shell</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#d52753</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>BASH: Math Operation</string>
<key>scope</key>
<string>string.other.math.shell</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#275fe4</string>
</dict>
</dict>
<dict>
<key>name</key>
<string>BASH: Substitution</string>
<key>scope</key>
<string>punctuation.definition.string.begin.shell, punctuation.definition.string.end.shell</string>
<key>settings</key>
<dict>
<key>foreground</key>
<string>#7a82da</string>
</dict>
</dict>
</array>
<key>uuid</key>
<string>uuid</string>
</dict>
</plist>