From 3feac5bb2280a044965120e0bdd2b2770d4be30b Mon Sep 17 00:00:00 2001 From: Matty Date: Sat, 8 Feb 2014 14:37:17 +1100 Subject: [PATCH 01/15] cloning from Sass --- lib/coderay/helpers/file_type.rb | 1 + lib/coderay/scanners/scss.rb | 232 +++++++++++++++++++++++++++++++ 2 files changed, 233 insertions(+) create mode 100644 lib/coderay/scanners/scss.rb diff --git a/lib/coderay/helpers/file_type.rb b/lib/coderay/helpers/file_type.rb index 7de34d58..174ba157 100644 --- a/lib/coderay/helpers/file_type.rb +++ b/lib/coderay/helpers/file_type.rb @@ -120,6 +120,7 @@ def type_from_shebang filename 'ru' => :ruby, # config.ru 'rxml' => :ruby, 'sass' => :sass, + 'scss' => :sass, 'sql' => :sql, 'taskpaper' => :taskpaper, 'template' => :json, # AWS CloudFormation template diff --git a/lib/coderay/scanners/scss.rb b/lib/coderay/scanners/scss.rb new file mode 100644 index 00000000..805bb009 --- /dev/null +++ b/lib/coderay/scanners/scss.rb @@ -0,0 +1,232 @@ +module CodeRay +module Scanners + + # A scanner for Sass, in scss syntax. + class SCSS < CSS + + register_for :scss + file_extension 'scss' + + protected + + def setup + @state = :initial + end + + def scan_tokens encoder, options + states = Array(options[:state] || @state).dup + + encoder.begin_group :string if states.last == :sqstring || states.last == :dqstring + + until eos? + + if bol? && (match = scan(/(?>( +)?(\/[\*\/])(.+)?)(?=\n)/)) + encoder.text_token self[1], :space if self[1] + encoder.begin_group :comment + encoder.text_token self[2], :delimiter + encoder.text_token self[3], :content if self[3] + if match = scan(/(?:\n+#{self[1]} .*)+/) + encoder.text_token match, :content + end + encoder.end_group :comment + elsif match = scan(/\n|[^\n\S]+\n?/) + encoder.text_token match, :space + if match.index(/\n/) + value_expected = false + states.pop if states.last == :include + end + + elsif states.last == :sass_inline && (match = scan(/\}/)) + encoder.text_token match, :inline_delimiter + encoder.end_group :inline + states.pop + + elsif case states.last + when :initial, :media, :sass_inline + if match = scan(/(?>#{RE::Ident})(?!\()/ox) + encoder.text_token match, value_expected ? :value : (check(/.*:(?![a-z])/) ? :key : :tag) + next + elsif !value_expected && (match = scan(/\*/)) + encoder.text_token match, :tag + next + elsif match = scan(RE::Class) + encoder.text_token match, :class + next + elsif match = scan(RE::Id) + encoder.text_token match, :id + next + elsif match = scan(RE::PseudoClass) + encoder.text_token match, :pseudo_class + next + elsif match = scan(RE::AttributeSelector) + # TODO: Improve highlighting inside of attribute selectors. + encoder.text_token match[0,1], :operator + encoder.text_token match[1..-2], :attribute_name if match.size > 2 + encoder.text_token match[-1,1], :operator if match[-1] == ?] + next + elsif match = scan(/(\=|@mixin +)#{RE::Ident}/o) + encoder.text_token match, :function + next + elsif match = scan(/@import\b/) + encoder.text_token match, :directive + states << :include + next + elsif match = scan(/@media\b/) + encoder.text_token match, :directive + # states.push :media_before_name + next + end + + when :block + if match = scan(/(?>#{RE::Ident})(?!\()/ox) + if value_expected + encoder.text_token match, :value + else + encoder.text_token match, :key + end + next + end + + when :sqstring, :dqstring + if match = scan(states.last == :sqstring ? /(?:[^\n\'\#]+|\\\n|#{RE::Escape}|#(?!\{))+/o : /(?:[^\n\"\#]+|\\\n|#{RE::Escape}|#(?!\{))+/o) + encoder.text_token match, :content + elsif match = scan(/['"]/) + encoder.text_token match, :delimiter + encoder.end_group :string + states.pop + elsif match = scan(/#\{/) + encoder.begin_group :inline + encoder.text_token match, :inline_delimiter + states.push :sass_inline + elsif match = scan(/ \\ | $ /x) + encoder.end_group states.last + encoder.text_token match, :error unless match.empty? + states.pop + else + raise_inspect "else case #{states.last} reached; %p not handled." % peek(1), encoder + end + + when :include + if match = scan(/[^\s'",]+/) + encoder.text_token match, :include + next + end + + else + #:nocov: + raise_inspect 'Unknown state: %p' % [states.last], encoder + #:nocov: + + end + + elsif match = scan(/\$#{RE::Ident}/o) + encoder.text_token match, :variable + next + + elsif match = scan(/&/) + encoder.text_token match, :local_variable + + elsif match = scan(/\+#{RE::Ident}/o) + encoder.text_token match, :include + value_expected = true + + elsif match = scan(/\/\*(?:.*?\*\/|.*)|\/\/.*/) + encoder.text_token match, :comment + + elsif match = scan(/#\{/) + encoder.begin_group :inline + encoder.text_token match, :inline_delimiter + states.push :sass_inline + + elsif match = scan(/\{/) + value_expected = false + encoder.text_token match, :operator + states.push :block + + elsif match = scan(/\}/) + value_expected = false + encoder.text_token match, :operator + if states.last == :block || states.last == :media + states.pop + end + + elsif match = scan(/['"]/) + encoder.begin_group :string + encoder.text_token match, :delimiter + if states.include? :sass_inline + # no nesting, just scan the string until delimiter + content = scan_until(/(?=#{match}|\}|\z)/) + encoder.text_token content, :content unless content.empty? + encoder.text_token match, :delimiter if scan(/#{match}/) + encoder.end_group :string + else + states.push match == "'" ? :sqstring : :dqstring + end + + elsif match = scan(/#{RE::Function}/o) + encoder.begin_group :function + start = match[/^[-\w]+\(/] + encoder.text_token start, :delimiter + if match[-1] == ?) + encoder.text_token match[start.size..-2], :content + encoder.text_token ')', :delimiter + else + encoder.text_token match[start.size..-1], :content if start.size < match.size + end + encoder.end_group :function + + elsif match = scan(/[a-z][-a-z_]*(?=\()/o) + encoder.text_token match, :predefined + + elsif match = scan(/(?: #{RE::Dimension} | #{RE::Percentage} | #{RE::Num} )/ox) + encoder.text_token match, :float + + elsif match = scan(/#{RE::HexColor}/o) + encoder.text_token match, :color + + elsif match = scan(/! *(?:important|optional)/) + encoder.text_token match, :important + + elsif match = scan(/(?:rgb|hsl)a?\([^()\n]*\)?/) + encoder.text_token match, :color + + elsif match = scan(/@else if\b|#{RE::AtKeyword}/o) + encoder.text_token match, :directive + value_expected = true + + elsif match = scan(/ == | != | [-+*\/>~:;,.=()] /x) + if match == ':' + value_expected = true + elsif match == ';' + value_expected = false + end + encoder.text_token match, :operator + + else + encoder.text_token getch, :error + + end + + end + + states.pop if states.last == :include + + if options[:keep_state] + @state = states.dup + end + + while state = states.pop + if state == :sass_inline + encoder.end_group :inline + elsif state == :sqstring || state == :dqstring + encoder.end_group :string + end + end + + encoder + end + + end + +end +end From 27ba390eb15754b4c10952957f8ceb8796b57049 Mon Sep 17 00:00:00 2001 From: Matty Date: Sat, 8 Feb 2014 15:11:01 +1100 Subject: [PATCH 02/15] default flags for variables --- lib/coderay/scanners/scss.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/coderay/scanners/scss.rb b/lib/coderay/scanners/scss.rb index 805bb009..0bdaad23 100644 --- a/lib/coderay/scanners/scss.rb +++ b/lib/coderay/scanners/scss.rb @@ -184,7 +184,7 @@ def scan_tokens encoder, options elsif match = scan(/#{RE::HexColor}/o) encoder.text_token match, :color - elsif match = scan(/! *(?:important|optional)/) + elsif match = scan(/! *(?:important|optional|default)/) encoder.text_token match, :important elsif match = scan(/(?:rgb|hsl)a?\([^()\n]*\)?/) From 70c2e86b7c3390c6bf0f929ecfbf26a4fee95c19 Mon Sep 17 00:00:00 2001 From: Matty Date: Sat, 8 Feb 2014 16:08:32 +1100 Subject: [PATCH 03/15] placeholder as class --- lib/coderay/scanners/scss.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/coderay/scanners/scss.rb b/lib/coderay/scanners/scss.rb index 0bdaad23..5b389cf4 100644 --- a/lib/coderay/scanners/scss.rb +++ b/lib/coderay/scanners/scss.rb @@ -49,7 +49,8 @@ def scan_tokens encoder, options elsif !value_expected && (match = scan(/\*/)) encoder.text_token match, :tag next - elsif match = scan(RE::Class) + # dont know how to update RE:Name to add "%" as valid start of class name + elsif match = scan(/[\.\%][-_a-zA-Z0-9]+/) encoder.text_token match, :class next elsif match = scan(RE::Id) From 00509ecad848e16fbf64d8c1c3bdae923a039968 Mon Sep 17 00:00:00 2001 From: Matty Date: Sat, 8 Feb 2014 16:10:46 +1100 Subject: [PATCH 04/15] project setup --- coderay.sublime-project | 8 + coderay.sublime-workspace | 1035 +++++++++++++++++++++++++++++++++++++ notes.todo | 28 + 3 files changed, 1071 insertions(+) create mode 100644 coderay.sublime-project create mode 100644 coderay.sublime-workspace create mode 100644 notes.todo diff --git a/coderay.sublime-project b/coderay.sublime-project new file mode 100644 index 00000000..f0576f79 --- /dev/null +++ b/coderay.sublime-project @@ -0,0 +1,8 @@ +{ + "folders": + [ + { + "path": "/Users/matty/Git/coderay" + } + ] +} diff --git a/coderay.sublime-workspace b/coderay.sublime-workspace new file mode 100644 index 00000000..cccd040f --- /dev/null +++ b/coderay.sublime-workspace @@ -0,0 +1,1035 @@ +{ + "auto_complete": + { + "selected_items": + [ + [ + "ma", + "maruku" + ], + [ + "key", + "keyframes" + ], + [ + "in", + "inc include" + ], + [ + "pref", + "prefixes" + ], + [ + "inc", + "inc include (inc)" + ], + [ + "else", + "else else" + ], + [ + "if", + "if if" + ], + [ + "post", + "post__name" + ], + [ + "nam", + "name" + ], + [ + "the", + "thePassword" + ], + [ + "new", + "newFile" + ] + ] + }, + "buffers": + [ + { + "file": "lib/coderay/scanners/css.rb", + "settings": + { + "buffer_size": 6013, + "line_ending": "Unix" + } + }, + { + "file": "lib/coderay/scanners/scss.rb", + "settings": + { + "buffer_size": 7824, + "line_ending": "Unix", + "name": "scss.rb" + } + }, + { + "file": "lib/coderay/scanners/sass.rb", + "settings": + { + "buffer_size": 7808, + "line_ending": "Unix" + } + }, + { + "file": "/Users/matty/Library/Application Support/Sublime Text 2/Packages/User/CSS.sublime-settings", + "settings": + { + "buffer_size": 92, + "line_ending": "Unix" + } + }, + { + "file": "notes.todo", + "settings": + { + "buffer_size": 299, + "line_ending": "Unix", + "name": "notes.todo" + } + } + ], + "build_system": "", + "command_palette": + { + "height": 47.0, + "selected_items": + [ + [ + "syn sass", + "Set Syntax: Sass" + ], + [ + "syn html", + "Set Syntax: HTML" + ], + [ + "hmtl", + "Set Syntax: HTML (Tcl)" + ], + [ + "liq", + "Set Syntax: HTML (Liquid)" + ], + [ + "inst", + "Package Control: Install Package" + ], + [ + "ruby", + "Set Syntax: Ruby" + ], + [ + "rub", + "Set Syntax: Ruby" + ], + [ + "json", + "Set Syntax: JSON" + ], + [ + "syn mar", + "Set Syntax: Markdown" + ], + [ + "html", + "HTML: Encode Special Characters" + ] + ], + "width": 449.0 + }, + "console": + { + "height": 0.0 + }, + "distraction_free": + { + "menu_visible": true, + "show_minimap": false, + "show_open_files": false, + "show_tabs": false, + "side_bar_visible": false, + "status_bar_visible": false + }, + "file_history": + [ + "/Users/matty/Git/coderay/test/scanners/sass/compass.in.sass", + "/Users/matty/Git/coderay/Rakefile", + "/Users/matty/Git/coderay/README.markdown", + "/Users/matty/Git/mattycollins.com.au/_config.yml", + "/Users/matty/Git/mattycollins.com.au/mattycollins.com.au.sublime-project", + "/Users/matty/Git/mattycollins.com.au/giraffe/scripts/main.js", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/_module.scss", + "/Users/matty/Git/mattycollins.com.au/_posts/13-05-14-accessible-sprites.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-12-03-better-related-posts.md", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/_init.scss", + "/Users/matty/Git/mattycollins.com.au/_posts/2014-01-19-learning-jekyll.md", + "/Users/matty/Git/mattycollins.com.au/styleguide/index.md", + "/Users/matty/Git/mattycollins.com.au/styleguide/typography/index.md", + "/Users/matty/Git/mattycollins.com.au/_posts/13-06-11-double-stranded-sass.md", + "/Users/matty/Git/mattycollins.com.au/_posts/13-09-29-content-and-color.md", + "/Users/matty/Git/mattycollins.com.au/_posts/13-11-09-baby-got-neck.md", + "/Users/matty/Git/mattycollins.com.au/_posts/13-11-10-disqus.md", + "/Users/matty/Git/mattycollins.com.au/_posts/13-4-28-jekyll-and-hyde.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-22-dat-workflow.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-12-10-accessibility-basics.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2014-01-22-semantic-classes-in-css.md", + "/Users/matty/Git/mattycollins.com.au/about/this-guy.html", + "/Users/matty/Git/mattycollins.com.au/about/this-site.html", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/_base.scss", + "/Users/matty/Git/mattycollins.com.au/_posts/2012-09-5-guest-post-on-css-tricks.md", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_syntax.scss", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-designing-in-browser.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-12-09-device-testing-in-visual-studio.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-12-19-On-Twenty-Thirteen.md", + "/Users/matty/Git/mattycollins.com.au/_posts/13-04-18-git-around-me.md", + "/Users/matty/Git/mattycollins.com.au/_layouts/default.html", + "/Users/matty/Git/mattycollins.com.au/blerg/index.html", + "/Users/matty/git/mattycollins.com.au/_posts/2014-01-22-semantic-class-in-css.md", + "/Users/matty/Git/mattycollins.com.au/.htaccess", + "/Users/matty/Library/Application Support/Sublime Text 2/Packages/User/link.sublime-snippet", + "/Users/matty/Library/Application Support/Sublime Text 2/Packages/User/Markdown/link.sublime-snippet", + "/Users/matty/Git/mattycollins.com.au/_layouts/about.html", + "/Users/matty/Git/mattycollins.com.au/_posts/2014-01-19-using-smacss-and-jekyll.md", + "/Users/matty/Git/mattycollins.com.au/_includes/header.html", + "/Users/matty/Git/mattycollins.com.au/_includes/head.html", + "/Users/matty/Git/mattycollins.com.au/_includes/footer.html", + "/Users/matty/Git/mattycollins.com.au/_posts/2014-01-19-using-smaccs-and-jekyll.md", + "/Users/matty/git/mattycollins.com.au/_posts/2014-01-19-using-smaccs-and-jekyll.md", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/_leVars.scss", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/_theme.scss", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_fauxHighlight.scss", + "/Users/matty/Git/mattycollins.com.au/index.html", + "/Users/matty/Git/mattycollins.com.au/about.html", + "/Users/matty/Git/mattycollins.com.au/_layouts/home.html", + "/Users/matty/Git/mattycollins.com.au/about/testimonials.html", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_testimonials.scss", + "/Users/matty/Git/mattycollins.com.au/_data/testimonials.yml", + "/Users/matty/Git/mattycollins.com.au/data/testimondials.yml", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-12-19-on-twenty-thirteen.md", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/giraffic.0.1/_mixins.scss", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_related.scss", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_social.scss", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_giraffe.scss", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_comments.scss", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_pageNotFound.scss", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_bio.scss", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_footnotes.scss", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_navigation.scss", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_screenSizes.scss", + "/Users/matty/Git/mattycollins.com.au/_site/giraffe/styles/screen.css", + "/Users/matty/Git/mattycollins.com.au/_site/giraffe/styles/nomedia.css", + "/Users/matty/Git/mattycollins.com.au/mattycollins.com.au.sublime-workspace", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/giraffic.0.1/_helpers.scss", + "/Users/matty/Git/mattycollins.com.au/_drafts/device-testing-in-visual-studio.md", + "/Users/matty/Git/mattycollins.com.au/Rakefile", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-12-03-sidebar-enhancements.md", + "/Users/matty/Git/mattycollins.com.au/_drafts/sidebar-enhancements.md", + "/Users/matty/Git/mattycollins.com.au/_includes/bio.html", + "/Users/matty/Git/mattycollins.com.au/humans.txt", + "/Users/matty/Git/mattycollins.com.au/_posts/13-11-06-lorem-ipsum.md", + "/Users/matty/Git/mattycollins.com.au/_posts/posts.todo", + "/Users/matty/Git/mattycollins.com.au/_layouts/page.html", + "/Users/matty/Git/mattycollins.com.au/sitemap.xml", + "/Users/matty/Git/mattycollins.com.au/robots.txt", + "/Users/matty/Git/sauce-bottle/readme.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-25-adding-seo.md", + "/Users/matty/Git/mattycollins.com.au/404.html", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_pager.scss", + "/Users/matty/Git/mattycollins.com.au/blerg.html", + "/Users/matty/Git/mattycollins.com.au/_drafts/mad-flows.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-22-test.md", + "/Users/matty/Git/mattycollins.com.au/_drafts/draft.md", + "/Users/matty/Git/mattycollins.com.au/_posts/mad-flows.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-demo.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-testing-my-new-post-title.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-again.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-one-more-time.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-another-one.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-what-about-can-t-do-this.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-nicole-smells-like-dog-buns.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-can-i-space.md", + "/Users/matty/Git/mattycollins.com.au/mattycollins-progress.todo", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-Anthology of Interest II.md", + "/Users/matty/Git/mattycollins.com.au/_drafts/in-browser.md", + "/Users/matty/Git/mattycollins.com.au/Interest", + "/Users/matty/Git/mattycollins.com.au/of", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-Anthology", + "/Users/matty/Git/mattycollins.com.au/II.md", + "/Users/matty/Git/mattycollins.com.au/giraffe/styles/giraffic.0.1/_giraffic.scss", + "/Users/matty/Git/mattycollins.com.au/giraffe/scripts/plugins.js", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-nicole.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-demo.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-workflow.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-wait.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-yes.md", + "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-test.md", + "/Users/matty/Library/Application Support/Sublime Text 2/Packages/User/Preferences.sublime-settings", + "/Users/matty/mattycollins.com.au/_config.yml", + "/Users/matty/mattycollins.com.au/mattycollins.com.au.sublime-workspace", + "/Users/matty/mattycollins.com.au/giraffe/styles/screen.scss", + "/Users/matty/mattycollins.com.au/mattycollins.com.au.sublime-project" + ], + "find": + { + "height": 35.0 + }, + "find_in_files": + { + "height": 0.0, + "where_history": + [ + "" + ] + }, + "find_state": + { + "case_sensitive": false, + "find_history": + [ + "html", + "ruby", + "scss", + "delimiter", + "highlight", + "/*", + "false", + "\";\n", + "```", + "endhighlight", + "{% highlight", + "true", + "endhighlight", + "{% highlight ", + "social", + "\";\n", + "false", + "redcarpet", + "rdiscount", + "endhightlight", + "fixme:", + "redcarpet", + "social", + "rdiscount", + "markdown", + "post_url", + "endhighlight", + "highlight", + "endhighlight", + "highlight", + "endhighlight", + "{% highlight ", + "endhighlight", + "{% highlight ", + "rdiscount", + "endhighlight", + "highlight", + "box dim", + "false", + "will", + " _", + "theme", + "from", + "these", + "and", + "classes", + "callTaction", + "donate", + "background", + "color", + "html", + "and", + "that", + "apply", + "button", + "subHeadline", + "beta", + "media__title", + "beta", + "it", + "blog", + "beta", + "news__title", + "news", + "div", + "notation", + "and", + "summary", + "newsList", + "html", + "article", + "newsList", + "recentNews", + "running", + "learning", + "seo_description", + "search_engine_keywords", + "argument", + "is", + "snippet", + "this", + "python", + "html", + "some", + "with", + "paDge", + "macro", + "minor", + "--micro", + "t-micro", + "micro", + "blue", + "social", + "testimonia", + " I ", + " i ", + "ProductiDon", + "-", + ".", + "--mut", + "goto", + "Sublime", + "hightlight", + "keyframe", + "animation", + "duration", + "webkit", + "nicole", + "frames demo", + "demo", + "duration", + "\">\n", + "javascript", + "j", + "javascript button", + "additional", + "adding", + "link", + "link so", + "15", + "meaning", + "meadning", + ".\n", + "accessible", + "accessibility", + ".", + ",", + "the" + ], + "highlight": true, + "in_selection": false, + "preserve_case": false, + "regex": false, + "replace_history": + [ + ], + "reverse": false, + "show_context": true, + "use_buffer2": true, + "whole_word": false, + "wrap": true + }, + "groups": + [ + { + "selected": 3, + "sheets": + [ + { + "buffer": 0, + "file": "lib/coderay/scanners/css.rb", + "settings": + { + "buffer_size": 6013, + "regions": + { + }, + "selection": + [ + [ + 107, + 107 + ] + ], + "settings": + { + "syntax": "Packages/Ruby/Ruby.tmLanguage", + "tab_size": 2, + "translate_tabs_to_spaces": true + }, + "translation.x": 0.0, + "translation.y": 366.0, + "zoom_level": 1.0 + }, + "type": "text" + }, + { + "buffer": 1, + "file": "lib/coderay/scanners/scss.rb", + "settings": + { + "buffer_size": 7824, + "regions": + { + }, + "selection": + [ + [ + 97, + 97 + ] + ], + "settings": + { + "auto_name": "scss.rb", + "syntax": "Packages/Ruby/Ruby.tmLanguage", + "tab_size": 2, + "translate_tabs_to_spaces": true + }, + "translation.x": 0.0, + "translation.y": 0.0, + "zoom_level": 1.0 + }, + "type": "text" + }, + { + "buffer": 2, + "file": "lib/coderay/scanners/sass.rb", + "settings": + { + "buffer_size": 7808, + "regions": + { + }, + "selection": + [ + [ + 166, + 166 + ] + ], + "settings": + { + "syntax": "Packages/Ruby/Ruby.tmLanguage", + "tab_size": 2, + "translate_tabs_to_spaces": true + }, + "translation.x": 0.0, + "translation.y": 0.0, + "zoom_level": 1.0 + }, + "type": "text" + }, + { + "buffer": 3, + "file": "/Users/matty/Library/Application Support/Sublime Text 2/Packages/User/CSS.sublime-settings", + "settings": + { + "buffer_size": 92, + "regions": + { + }, + "selection": + [ + [ + 92, + 92 + ] + ], + "settings": + { + "syntax": "Packages/JavaScript/JSON.tmLanguage" + }, + "translation.x": 0.0, + "translation.y": 0.0, + "zoom_level": 1.0 + }, + "type": "text" + } + ] + }, + { + "selected": 0, + "sheets": + [ + { + "buffer": 4, + "file": "notes.todo", + "settings": + { + "buffer_size": 299, + "regions": + { + }, + "selection": + [ + [ + 299, + 299 + ] + ], + "settings": + { + "auto_name": "notes.todo", + "syntax": "Packages/PlainTasks/PlainTasks.tmLanguage" + }, + "translation.x": 0.0, + "translation.y": 0.0, + "zoom_level": 1.0 + }, + "type": "text" + } + ] + } + ], + "incremental_find": + { + "height": 0.0 + }, + "input": + { + "height": 33.0 + }, + "layout": + { + "cells": + [ + [ + 0, + 0, + 1, + 1 + ], + [ + 1, + 0, + 2, + 1 + ] + ], + "cols": + [ + 0.0, + 0.728845534437, + 1.0 + ], + "rows": + [ + 0.0, + 1.0 + ] + }, + "menu_visible": true, + "replace": + { + "height": 64.0 + }, + "save_all_on_build": true, + "select_file": + { + "height": 0.0, + "selected_items": + [ + [ + "conf", + "_config.yml" + ], + [ + "mod", + "giraffe/styles/_module.scss" + ], + [ + "syn", + "giraffe/styles/controls/_syntax.scss" + ], + [ + "main", + "giraffe/scripts/main.js" + ], + [ + "con", + "_config.yml" + ], + [ + "sem", + "_posts/2014-01-22-semantic-classes-in-css.md" + ], + [ + "larn", + "_posts/2014-01-19-learning-jekyll.md" + ], + [ + "bet", + "_posts/2013-12-03-better-related-posts.md" + ], + [ + "", + "_config.yml" + ], + [ + "sp", + "_posts/13-05-14-accessible-sprites.md" + ], + [ + "rela", + "_posts/2013-12-03-better-related-posts.md" + ], + [ + "spr", + "_posts/13-05-14-accessible-sprites.md" + ], + [ + ".scs", + "giraffe/styles/_base.scss" + ], + [ + "csst", + "_posts/2012-09-5-guest-post-on-css-tricks.md" + ], + [ + "spri", + "_posts/13-05-14-accessible-sprites.md" + ], + [ + "acspe", + "_posts/13-05-14-accessible-sprites.md" + ], + [ + "better", + "_posts/2013-12-03-better-related-posts.md" + ], + [ + "lear", + "_posts/2014-01-19-learning-jekyll.md" + ], + [ + "relat", + "_posts/2013-12-03-better-related-posts.md" + ], + [ + "hta", + ".htaccess" + ], + [ + "hig", + "giraffe/styles/controls/_fauxHighlight.scss" + ], + [ + "conte", + "_posts/13-09-29-content-and-color.md" + ], + [ + "bas", + "giraffe/styles/_base.scss" + ], + [ + "base", + "giraffe/styles/_base.scss" + ], + [ + "theme", + "giraffe/styles/_theme.scss" + ], + [ + "leva", + "giraffe/styles/_leVars.scss" + ], + [ + "onthr", + "_posts/2013-12-19-on-twenty-thirteen.md" + ], + [ + "th", + "giraffe/styles/_theme.scss" + ], + [ + "the", + "giraffe/styles/_theme.scss" + ], + [ + "hi", + "giraffe/styles/controls/_fauxHighlight.scss" + ], + [ + "nav", + "giraffe/styles/controls/_navigation.scss" + ], + [ + "ssiz", + "giraffe/styles/controls/_screenSizes.scss" + ], + [ + "mxin", + "giraffe/styles/giraffic.0.1/_mixins.scss" + ], + [ + "foot", + "giraffe/styles/controls/_footnotes.scss" + ], + [ + "hea", + "_includes/head.html" + ], + [ + "high", + "giraffe/styles/controls/_fauxHighlight.scss" + ], + [ + "inde", + "index.html" + ], + [ + "help", + "giraffe/styles/giraffic.0.1/_helpers.scss" + ], + [ + "acce", + "_posts/13-05-14-accessible-sprites.md" + ], + [ + "dra", + "_drafts/device-testing-in-visual-studio.md" + ], + [ + "gues", + "_posts/2012-09-5-guest-post-on-css-tricks.md" + ], + [ + "rake", + "Rakefile" + ], + [ + "sideb", + "_posts/2013-12-03-sidebar-enhancements.md" + ], + [ + "dat", + "_posts/2013-11-22-dat-workflow.md" + ], + [ + "defau", + "_layouts/default.html" + ], + [ + "draf", + "_drafts/sidebar-enhancements.md" + ], + [ + "them", + "giraffe/styles/_theme.scss" + ], + [ + "footn", + "giraffe/styles/controls/_footnotes.scss" + ], + [ + "mode", + "giraffe/styles/_module.scss" + ], + [ + "def", + "_layouts/default.html" + ], + [ + "gitar", + "_posts/13-04-18-git-around-me.md" + ], + [ + "bio", + "_includes/bio.html" + ], + [ + "ost", + "_posts/posts.todo" + ], + [ + "huma", + "humans.txt" + ], + [ + "dis", + "_posts/13-11-10-disqus.md" + ], + [ + "bab", + "_posts/13-11-09-baby-got-neck.md" + ], + [ + "lore", + "_posts/13-11-06-lorem-ipsum.md" + ], + [ + "jek", + "_posts/13-4-28-jekyll-and-hyde.md" + ], + [ + "inb", + "_posts/2013-11-17-designing-in-browser.md" + ], + [ + "cont", + "_posts/13-09-29-content-and-color.md" + ], + [ + "da", + "_posts/2013-11-22-dat-workflow.md" + ], + [ + "robo", + "robots.txt" + ], + [ + "site", + "sitemap.xml" + ], + [ + "about", + "about/this-guy.html" + ], + [ + "this", + "about/this-site.html" + ], + [ + "content", + "_posts/13-09-29-content-and-color.md" + ], + [ + "header", + "_includes/header.html" + ], + [ + "thme", + "giraffe/styles/_theme.scss" + ], + [ + "page", + "_layouts/page.html" + ], + [ + "thi", + "about/this-guy.html" + ], + [ + "p", + "_layouts/page.html" + ], + [ + "ind", + "index.html" + ], + [ + "hum", + "humans.txt" + ], + [ + "head", + "_includes/head.html" + ], + [ + "htc", + ".htaccess" + ], + [ + "404", + "404.html" + ], + [ + "acc", + ".htaccess" + ], + [ + "defa", + "_layouts/default.html" + ], + [ + "ht", + ".htaccess" + ], + [ + "_.scss", + "giraffe/styles/controls/_bio.scss" + ], + [ + "bler", + "blerg.html" + ], + [ + "rak", + "Rakefile" + ], + [ + "var", + "giraffe/styles/_leVars.scss" + ], + [ + "todo", + "_posts/posts.todo" + ], + [ + "ra", + "Rakefile" + ], + [ + "post/", + "_posts/13-11-06-lorem-ipsum.md" + ], + [ + "mad", + "_drafts/mad-flows.md" + ], + [ + "rk", + "Rakefile" + ], + [ + "mixin", + "giraffe/styles/giraffic.0.1/_mixins.scss" + ], + [ + "giraf", + "giraffe/styles/giraffic.0.1/_giraffic.scss" + ], + [ + "giraff", + "giraffe/styles/controls/_giraffe.scss" + ], + [ + "plug", + "giraffe/scripts/plugins.js" + ], + [ + ".scss", + "mattycollins.com.au/giraffe/styles/screen.scss" + ] + ], + "width": 0.0 + }, + "select_project": + { + "height": 500.0, + "selected_items": + [ + [ + "mat", + "/Users/matty/Git/mattycollins.com.au/mattycollins.com.au.sublime-project" + ], + [ + "", + "/Users/matty/Git/mattycollins.com.au/mattycollins.com.au.sublime-project" + ] + ], + "width": 380.0 + }, + "show_minimap": true, + "show_open_files": false, + "show_tabs": true, + "side_bar_visible": true, + "side_bar_width": 422.0, + "status_bar_visible": true +} diff --git a/notes.todo b/notes.todo new file mode 100644 index 00000000..c8a63426 --- /dev/null +++ b/notes.todo @@ -0,0 +1,28 @@ + ☐ remove sublime stuff + ☐ remove this file + +thoughts: + ☐ look at css for base + ☐ add things from sass + +scss things: + ☐ % placeholder + ☐ "&" with id + ☐ for + ☐ while + ☐ each + ✔ debug @done (14-02-08 15:30) + ✔ warn @done (14-02-08 15:30) + ✔ if / else @done (14-02-08 15:30) + ☐ loops + ✔ inline "or" @done (14-02-08 15:30) + ✔ litteral ruby "#{$}" @done (14-02-08 15:30) + ✔ !default @done (14-02-08 15:30) + ✔ functions @done (14-02-08 15:30) + +to start: + ✔ copy css @done (14-02-08 14:56) + ✔ run test @done (14-02-08 14:56) + ✔ create test dir @done (14-02-08 14:56) + ✔ run said test @done (14-02-08 15:30) + ☐ \ No newline at end of file From 1041c84e3fc0ef2057c7867d411ac4f49d513306 Mon Sep 17 00:00:00 2001 From: Matty Date: Sat, 8 Feb 2014 17:08:28 +1100 Subject: [PATCH 05/15] nested class selectors --- lib/coderay/scanners/scss.rb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/coderay/scanners/scss.rb b/lib/coderay/scanners/scss.rb index 5b389cf4..4497d906 100644 --- a/lib/coderay/scanners/scss.rb +++ b/lib/coderay/scanners/scss.rb @@ -79,12 +79,20 @@ def scan_tokens encoder, options end when :block - if match = scan(/(?>#{RE::Ident})(?!\()/ox) + # check for nested selectors class or element + if match = scan(/(\.|\%)[-_a-zA-Z0-9]+/) + encoder.text_token match, :class + next + # TODO: test for tag + # assume standard block now + elsif match = scan(/(?>#{RE::Ident})(?!\()/ox) if value_expected encoder.text_token match, :value else encoder.text_token match, :key end + + next end From f2c649e1f2a682f1207777d1b8d14651819311c3 Mon Sep 17 00:00:00 2001 From: Matty Date: Sat, 8 Feb 2014 18:01:23 +1100 Subject: [PATCH 06/15] housekeeping --- lib/coderay/scanners/scss.rb | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lib/coderay/scanners/scss.rb b/lib/coderay/scanners/scss.rb index 4497d906..1f0b737d 100644 --- a/lib/coderay/scanners/scss.rb +++ b/lib/coderay/scanners/scss.rb @@ -49,7 +49,7 @@ def scan_tokens encoder, options elsif !value_expected && (match = scan(/\*/)) encoder.text_token match, :tag next - # dont know how to update RE:Name to add "%" as valid start of class name + # TODO: update RE:Name to add "%" as valid start of class name elsif match = scan(/[\.\%][-_a-zA-Z0-9]+/) encoder.text_token match, :class next @@ -91,8 +91,6 @@ def scan_tokens encoder, options else encoder.text_token match, :key end - - next end From b1051c1af054d217f865daef5182767469e0990d Mon Sep 17 00:00:00 2001 From: Matty Date: Sat, 8 Feb 2014 18:01:23 +1100 Subject: [PATCH 07/15] housekeeping --- lib/coderay/scanners/scss.rb | 4 +--- notes.todo | 29 ++++------------------------- 2 files changed, 5 insertions(+), 28 deletions(-) diff --git a/lib/coderay/scanners/scss.rb b/lib/coderay/scanners/scss.rb index 4497d906..1f0b737d 100644 --- a/lib/coderay/scanners/scss.rb +++ b/lib/coderay/scanners/scss.rb @@ -49,7 +49,7 @@ def scan_tokens encoder, options elsif !value_expected && (match = scan(/\*/)) encoder.text_token match, :tag next - # dont know how to update RE:Name to add "%" as valid start of class name + # TODO: update RE:Name to add "%" as valid start of class name elsif match = scan(/[\.\%][-_a-zA-Z0-9]+/) encoder.text_token match, :class next @@ -91,8 +91,6 @@ def scan_tokens encoder, options else encoder.text_token match, :key end - - next end diff --git a/notes.todo b/notes.todo index c8a63426..caab0847 100644 --- a/notes.todo +++ b/notes.todo @@ -1,28 +1,7 @@ ☐ remove sublime stuff ☐ remove this file -thoughts: - ☐ look at css for base - ☐ add things from sass - -scss things: - ☐ % placeholder - ☐ "&" with id - ☐ for - ☐ while - ☐ each - ✔ debug @done (14-02-08 15:30) - ✔ warn @done (14-02-08 15:30) - ✔ if / else @done (14-02-08 15:30) - ☐ loops - ✔ inline "or" @done (14-02-08 15:30) - ✔ litteral ruby "#{$}" @done (14-02-08 15:30) - ✔ !default @done (14-02-08 15:30) - ✔ functions @done (14-02-08 15:30) - -to start: - ✔ copy css @done (14-02-08 14:56) - ✔ run test @done (14-02-08 14:56) - ✔ create test dir @done (14-02-08 14:56) - ✔ run said test @done (14-02-08 15:30) - ☐ \ No newline at end of file +issues: + ☐ #n53 "li" needs tag selector + ☐ #n56 "min-width" needs key + ☐ n#106 id incorrectly errors on "&" From 9c23396ef863931f885fdd3a220d252e83513130 Mon Sep 17 00:00:00 2001 From: Matty Date: Sun, 9 Feb 2014 11:35:28 +1100 Subject: [PATCH 08/15] issue tracking --- notes.todo | 1 + 1 file changed, 1 insertion(+) diff --git a/notes.todo b/notes.todo index caab0847..62b8cf88 100644 --- a/notes.todo +++ b/notes.todo @@ -5,3 +5,4 @@ issues: ☐ #n53 "li" needs tag selector ☐ #n56 "min-width" needs key ☐ n#106 id incorrectly errors on "&" + ☐ add keywords? From 5612445ed22c1fa6235659ff513946bd127b279b Mon Sep 17 00:00:00 2001 From: Matty Date: Sun, 9 Feb 2014 12:17:08 +1100 Subject: [PATCH 09/15] nested tags work --- lib/coderay/scanners/scss.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/coderay/scanners/scss.rb b/lib/coderay/scanners/scss.rb index 1f0b737d..ba3974e5 100644 --- a/lib/coderay/scanners/scss.rb +++ b/lib/coderay/scanners/scss.rb @@ -88,8 +88,10 @@ def scan_tokens encoder, options elsif match = scan(/(?>#{RE::Ident})(?!\()/ox) if value_expected encoder.text_token match, :value - else + elsif check(/\s*:/) encoder.text_token match, :key + else + encoder.text_token match, :tag end next end From fb06a237c71d9876115bbf0cfed3a0d49d1467cd Mon Sep 17 00:00:00 2001 From: Matty Date: Sun, 9 Feb 2014 12:19:53 +1100 Subject: [PATCH 10/15] nested id --- lib/coderay/scanners/scss.rb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/coderay/scanners/scss.rb b/lib/coderay/scanners/scss.rb index ba3974e5..7db80d6e 100644 --- a/lib/coderay/scanners/scss.rb +++ b/lib/coderay/scanners/scss.rb @@ -79,12 +79,13 @@ def scan_tokens encoder, options end when :block - # check for nested selectors class or element + # check for nested selectors if match = scan(/(\.|\%)[-_a-zA-Z0-9]+/) encoder.text_token match, :class next - # TODO: test for tag - # assume standard block now + elsif match = scan(RE::Id) + encoder.text_token match, :id + next elsif match = scan(/(?>#{RE::Ident})(?!\()/ox) if value_expected encoder.text_token match, :value From 23d29c36959931a749e034281f6dfac2bcbd7ad9 Mon Sep 17 00:00:00 2001 From: Matty Date: Sun, 9 Feb 2014 12:44:50 +1100 Subject: [PATCH 11/15] issues --- notes.todo | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/notes.todo b/notes.todo index 62b8cf88..8746ee04 100644 --- a/notes.todo +++ b/notes.todo @@ -2,7 +2,7 @@ ☐ remove this file issues: - ☐ #n53 "li" needs tag selector + ✔ #n53 "li" needs tag selector @done (14-02-09 12:44) ☐ #n56 "min-width" needs key - ☐ n#106 id incorrectly errors on "&" + ✔ n#106 id incorrectly errors on "&" @done (14-02-09 12:44) ☐ add keywords? From 52b0d1223b5e6b75d02a0ff59859c644f4aa2129 Mon Sep 17 00:00:00 2001 From: Matty Date: Sun, 9 Feb 2014 17:11:23 +1100 Subject: [PATCH 12/15] removed block, changed inline key-tag logic --- lib/coderay/scanners/scss.rb | 24 ++---------------------- 1 file changed, 2 insertions(+), 22 deletions(-) diff --git a/lib/coderay/scanners/scss.rb b/lib/coderay/scanners/scss.rb index 7db80d6e..c01db69e 100644 --- a/lib/coderay/scanners/scss.rb +++ b/lib/coderay/scanners/scss.rb @@ -44,7 +44,7 @@ def scan_tokens encoder, options elsif case states.last when :initial, :media, :sass_inline if match = scan(/(?>#{RE::Ident})(?!\()/ox) - encoder.text_token match, value_expected ? :value : (check(/.*:(?![a-z])/) ? :key : :tag) + encoder.text_token match, value_expected ? :value : (check(/\S*:(?![a-z])/) ? :key : :tag) next elsif !value_expected && (match = scan(/\*/)) encoder.text_token match, :tag @@ -77,26 +77,7 @@ def scan_tokens encoder, options # states.push :media_before_name next end - - when :block - # check for nested selectors - if match = scan(/(\.|\%)[-_a-zA-Z0-9]+/) - encoder.text_token match, :class - next - elsif match = scan(RE::Id) - encoder.text_token match, :id - next - elsif match = scan(/(?>#{RE::Ident})(?!\()/ox) - if value_expected - encoder.text_token match, :value - elsif check(/\s*:/) - encoder.text_token match, :key - else - encoder.text_token match, :tag - end - next - end - + when :sqstring, :dqstring if match = scan(states.last == :sqstring ? /(?:[^\n\'\#]+|\\\n|#{RE::Escape}|#(?!\{))+/o : /(?:[^\n\"\#]+|\\\n|#{RE::Escape}|#(?!\{))+/o) encoder.text_token match, :content @@ -151,7 +132,6 @@ def scan_tokens encoder, options elsif match = scan(/\{/) value_expected = false encoder.text_token match, :operator - states.push :block elsif match = scan(/\}/) value_expected = false From dd03707c03dd89c20da882404d554caf30e1f954 Mon Sep 17 00:00:00 2001 From: Matty Date: Mon, 10 Feb 2014 23:16:44 +1100 Subject: [PATCH 13/15] classes now capture inline variables --- lib/coderay/scanners/scss.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/coderay/scanners/scss.rb b/lib/coderay/scanners/scss.rb index c01db69e..c2afff57 100644 --- a/lib/coderay/scanners/scss.rb +++ b/lib/coderay/scanners/scss.rb @@ -50,7 +50,7 @@ def scan_tokens encoder, options encoder.text_token match, :tag next # TODO: update RE:Name to add "%" as valid start of class name - elsif match = scan(/[\.\%][-_a-zA-Z0-9]+/) + elsif match = scan(/(\.|\%)[^\d][-_a-zA-Z\d#\{\}\$]+/) encoder.text_token match, :class next elsif match = scan(RE::Id) From 6a307903b1954753cb545d41918be107635dc9ca Mon Sep 17 00:00:00 2001 From: Matty Date: Mon, 10 Feb 2014 23:22:49 +1100 Subject: [PATCH 14/15] removing local project files --- coderay.sublime-workspace | 1035 ------------------------------------- notes.todo | 8 - 2 files changed, 1043 deletions(-) delete mode 100644 coderay.sublime-workspace delete mode 100644 notes.todo diff --git a/coderay.sublime-workspace b/coderay.sublime-workspace deleted file mode 100644 index cccd040f..00000000 --- a/coderay.sublime-workspace +++ /dev/null @@ -1,1035 +0,0 @@ -{ - "auto_complete": - { - "selected_items": - [ - [ - "ma", - "maruku" - ], - [ - "key", - "keyframes" - ], - [ - "in", - "inc include" - ], - [ - "pref", - "prefixes" - ], - [ - "inc", - "inc include (inc)" - ], - [ - "else", - "else else" - ], - [ - "if", - "if if" - ], - [ - "post", - "post__name" - ], - [ - "nam", - "name" - ], - [ - "the", - "thePassword" - ], - [ - "new", - "newFile" - ] - ] - }, - "buffers": - [ - { - "file": "lib/coderay/scanners/css.rb", - "settings": - { - "buffer_size": 6013, - "line_ending": "Unix" - } - }, - { - "file": "lib/coderay/scanners/scss.rb", - "settings": - { - "buffer_size": 7824, - "line_ending": "Unix", - "name": "scss.rb" - } - }, - { - "file": "lib/coderay/scanners/sass.rb", - "settings": - { - "buffer_size": 7808, - "line_ending": "Unix" - } - }, - { - "file": "/Users/matty/Library/Application Support/Sublime Text 2/Packages/User/CSS.sublime-settings", - "settings": - { - "buffer_size": 92, - "line_ending": "Unix" - } - }, - { - "file": "notes.todo", - "settings": - { - "buffer_size": 299, - "line_ending": "Unix", - "name": "notes.todo" - } - } - ], - "build_system": "", - "command_palette": - { - "height": 47.0, - "selected_items": - [ - [ - "syn sass", - "Set Syntax: Sass" - ], - [ - "syn html", - "Set Syntax: HTML" - ], - [ - "hmtl", - "Set Syntax: HTML (Tcl)" - ], - [ - "liq", - "Set Syntax: HTML (Liquid)" - ], - [ - "inst", - "Package Control: Install Package" - ], - [ - "ruby", - "Set Syntax: Ruby" - ], - [ - "rub", - "Set Syntax: Ruby" - ], - [ - "json", - "Set Syntax: JSON" - ], - [ - "syn mar", - "Set Syntax: Markdown" - ], - [ - "html", - "HTML: Encode Special Characters" - ] - ], - "width": 449.0 - }, - "console": - { - "height": 0.0 - }, - "distraction_free": - { - "menu_visible": true, - "show_minimap": false, - "show_open_files": false, - "show_tabs": false, - "side_bar_visible": false, - "status_bar_visible": false - }, - "file_history": - [ - "/Users/matty/Git/coderay/test/scanners/sass/compass.in.sass", - "/Users/matty/Git/coderay/Rakefile", - "/Users/matty/Git/coderay/README.markdown", - "/Users/matty/Git/mattycollins.com.au/_config.yml", - "/Users/matty/Git/mattycollins.com.au/mattycollins.com.au.sublime-project", - "/Users/matty/Git/mattycollins.com.au/giraffe/scripts/main.js", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/_module.scss", - "/Users/matty/Git/mattycollins.com.au/_posts/13-05-14-accessible-sprites.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-12-03-better-related-posts.md", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/_init.scss", - "/Users/matty/Git/mattycollins.com.au/_posts/2014-01-19-learning-jekyll.md", - "/Users/matty/Git/mattycollins.com.au/styleguide/index.md", - "/Users/matty/Git/mattycollins.com.au/styleguide/typography/index.md", - "/Users/matty/Git/mattycollins.com.au/_posts/13-06-11-double-stranded-sass.md", - "/Users/matty/Git/mattycollins.com.au/_posts/13-09-29-content-and-color.md", - "/Users/matty/Git/mattycollins.com.au/_posts/13-11-09-baby-got-neck.md", - "/Users/matty/Git/mattycollins.com.au/_posts/13-11-10-disqus.md", - "/Users/matty/Git/mattycollins.com.au/_posts/13-4-28-jekyll-and-hyde.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-22-dat-workflow.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-12-10-accessibility-basics.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2014-01-22-semantic-classes-in-css.md", - "/Users/matty/Git/mattycollins.com.au/about/this-guy.html", - "/Users/matty/Git/mattycollins.com.au/about/this-site.html", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/_base.scss", - "/Users/matty/Git/mattycollins.com.au/_posts/2012-09-5-guest-post-on-css-tricks.md", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_syntax.scss", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-designing-in-browser.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-12-09-device-testing-in-visual-studio.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-12-19-On-Twenty-Thirteen.md", - "/Users/matty/Git/mattycollins.com.au/_posts/13-04-18-git-around-me.md", - "/Users/matty/Git/mattycollins.com.au/_layouts/default.html", - "/Users/matty/Git/mattycollins.com.au/blerg/index.html", - "/Users/matty/git/mattycollins.com.au/_posts/2014-01-22-semantic-class-in-css.md", - "/Users/matty/Git/mattycollins.com.au/.htaccess", - "/Users/matty/Library/Application Support/Sublime Text 2/Packages/User/link.sublime-snippet", - "/Users/matty/Library/Application Support/Sublime Text 2/Packages/User/Markdown/link.sublime-snippet", - "/Users/matty/Git/mattycollins.com.au/_layouts/about.html", - "/Users/matty/Git/mattycollins.com.au/_posts/2014-01-19-using-smacss-and-jekyll.md", - "/Users/matty/Git/mattycollins.com.au/_includes/header.html", - "/Users/matty/Git/mattycollins.com.au/_includes/head.html", - "/Users/matty/Git/mattycollins.com.au/_includes/footer.html", - "/Users/matty/Git/mattycollins.com.au/_posts/2014-01-19-using-smaccs-and-jekyll.md", - "/Users/matty/git/mattycollins.com.au/_posts/2014-01-19-using-smaccs-and-jekyll.md", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/_leVars.scss", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/_theme.scss", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_fauxHighlight.scss", - "/Users/matty/Git/mattycollins.com.au/index.html", - "/Users/matty/Git/mattycollins.com.au/about.html", - "/Users/matty/Git/mattycollins.com.au/_layouts/home.html", - "/Users/matty/Git/mattycollins.com.au/about/testimonials.html", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_testimonials.scss", - "/Users/matty/Git/mattycollins.com.au/_data/testimonials.yml", - "/Users/matty/Git/mattycollins.com.au/data/testimondials.yml", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-12-19-on-twenty-thirteen.md", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/giraffic.0.1/_mixins.scss", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_related.scss", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_social.scss", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_giraffe.scss", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_comments.scss", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_pageNotFound.scss", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_bio.scss", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_footnotes.scss", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_navigation.scss", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_screenSizes.scss", - "/Users/matty/Git/mattycollins.com.au/_site/giraffe/styles/screen.css", - "/Users/matty/Git/mattycollins.com.au/_site/giraffe/styles/nomedia.css", - "/Users/matty/Git/mattycollins.com.au/mattycollins.com.au.sublime-workspace", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/giraffic.0.1/_helpers.scss", - "/Users/matty/Git/mattycollins.com.au/_drafts/device-testing-in-visual-studio.md", - "/Users/matty/Git/mattycollins.com.au/Rakefile", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-12-03-sidebar-enhancements.md", - "/Users/matty/Git/mattycollins.com.au/_drafts/sidebar-enhancements.md", - "/Users/matty/Git/mattycollins.com.au/_includes/bio.html", - "/Users/matty/Git/mattycollins.com.au/humans.txt", - "/Users/matty/Git/mattycollins.com.au/_posts/13-11-06-lorem-ipsum.md", - "/Users/matty/Git/mattycollins.com.au/_posts/posts.todo", - "/Users/matty/Git/mattycollins.com.au/_layouts/page.html", - "/Users/matty/Git/mattycollins.com.au/sitemap.xml", - "/Users/matty/Git/mattycollins.com.au/robots.txt", - "/Users/matty/Git/sauce-bottle/readme.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-25-adding-seo.md", - "/Users/matty/Git/mattycollins.com.au/404.html", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/controls/_pager.scss", - "/Users/matty/Git/mattycollins.com.au/blerg.html", - "/Users/matty/Git/mattycollins.com.au/_drafts/mad-flows.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-22-test.md", - "/Users/matty/Git/mattycollins.com.au/_drafts/draft.md", - "/Users/matty/Git/mattycollins.com.au/_posts/mad-flows.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-demo.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-testing-my-new-post-title.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-again.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-one-more-time.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-another-one.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-what-about-can-t-do-this.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-nicole-smells-like-dog-buns.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-20-can-i-space.md", - "/Users/matty/Git/mattycollins.com.au/mattycollins-progress.todo", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-Anthology of Interest II.md", - "/Users/matty/Git/mattycollins.com.au/_drafts/in-browser.md", - "/Users/matty/Git/mattycollins.com.au/Interest", - "/Users/matty/Git/mattycollins.com.au/of", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-Anthology", - "/Users/matty/Git/mattycollins.com.au/II.md", - "/Users/matty/Git/mattycollins.com.au/giraffe/styles/giraffic.0.1/_giraffic.scss", - "/Users/matty/Git/mattycollins.com.au/giraffe/scripts/plugins.js", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-nicole.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-demo.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-workflow.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-wait.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-yes.md", - "/Users/matty/Git/mattycollins.com.au/_posts/2013-11-17-test.md", - "/Users/matty/Library/Application Support/Sublime Text 2/Packages/User/Preferences.sublime-settings", - "/Users/matty/mattycollins.com.au/_config.yml", - "/Users/matty/mattycollins.com.au/mattycollins.com.au.sublime-workspace", - "/Users/matty/mattycollins.com.au/giraffe/styles/screen.scss", - "/Users/matty/mattycollins.com.au/mattycollins.com.au.sublime-project" - ], - "find": - { - "height": 35.0 - }, - "find_in_files": - { - "height": 0.0, - "where_history": - [ - "" - ] - }, - "find_state": - { - "case_sensitive": false, - "find_history": - [ - "html", - "ruby", - "scss", - "delimiter", - "highlight", - "/*", - "false", - "\";\n", - "```", - "endhighlight", - "{% highlight", - "true", - "endhighlight", - "{% highlight ", - "social", - "\";\n", - "false", - "redcarpet", - "rdiscount", - "endhightlight", - "fixme:", - "redcarpet", - "social", - "rdiscount", - "markdown", - "post_url", - "endhighlight", - "highlight", - "endhighlight", - "highlight", - "endhighlight", - "{% highlight ", - "endhighlight", - "{% highlight ", - "rdiscount", - "endhighlight", - "highlight", - "box dim", - "false", - "will", - " _", - "theme", - "from", - "these", - "and", - "classes", - "callTaction", - "donate", - "background", - "color", - "html", - "and", - "that", - "apply", - "button", - "subHeadline", - "beta", - "media__title", - "beta", - "it", - "blog", - "beta", - "news__title", - "news", - "div", - "notation", - "and", - "summary", - "newsList", - "html", - "article", - "newsList", - "recentNews", - "running", - "learning", - "seo_description", - "search_engine_keywords", - "argument", - "is", - "snippet", - "this", - "python", - "html", - "some", - "with", - "paDge", - "macro", - "minor", - "--micro", - "t-micro", - "micro", - "blue", - "social", - "testimonia", - " I ", - " i ", - "ProductiDon", - "-", - ".", - "--mut", - "goto", - "Sublime", - "hightlight", - "keyframe", - "animation", - "duration", - "webkit", - "nicole", - "frames demo", - "demo", - "duration", - "\">\n", - "javascript", - "j", - "javascript button", - "additional", - "adding", - "link", - "link so", - "15", - "meaning", - "meadning", - ".\n", - "accessible", - "accessibility", - ".", - ",", - "the" - ], - "highlight": true, - "in_selection": false, - "preserve_case": false, - "regex": false, - "replace_history": - [ - ], - "reverse": false, - "show_context": true, - "use_buffer2": true, - "whole_word": false, - "wrap": true - }, - "groups": - [ - { - "selected": 3, - "sheets": - [ - { - "buffer": 0, - "file": "lib/coderay/scanners/css.rb", - "settings": - { - "buffer_size": 6013, - "regions": - { - }, - "selection": - [ - [ - 107, - 107 - ] - ], - "settings": - { - "syntax": "Packages/Ruby/Ruby.tmLanguage", - "tab_size": 2, - "translate_tabs_to_spaces": true - }, - "translation.x": 0.0, - "translation.y": 366.0, - "zoom_level": 1.0 - }, - "type": "text" - }, - { - "buffer": 1, - "file": "lib/coderay/scanners/scss.rb", - "settings": - { - "buffer_size": 7824, - "regions": - { - }, - "selection": - [ - [ - 97, - 97 - ] - ], - "settings": - { - "auto_name": "scss.rb", - "syntax": "Packages/Ruby/Ruby.tmLanguage", - "tab_size": 2, - "translate_tabs_to_spaces": true - }, - "translation.x": 0.0, - "translation.y": 0.0, - "zoom_level": 1.0 - }, - "type": "text" - }, - { - "buffer": 2, - "file": "lib/coderay/scanners/sass.rb", - "settings": - { - "buffer_size": 7808, - "regions": - { - }, - "selection": - [ - [ - 166, - 166 - ] - ], - "settings": - { - "syntax": "Packages/Ruby/Ruby.tmLanguage", - "tab_size": 2, - "translate_tabs_to_spaces": true - }, - "translation.x": 0.0, - "translation.y": 0.0, - "zoom_level": 1.0 - }, - "type": "text" - }, - { - "buffer": 3, - "file": "/Users/matty/Library/Application Support/Sublime Text 2/Packages/User/CSS.sublime-settings", - "settings": - { - "buffer_size": 92, - "regions": - { - }, - "selection": - [ - [ - 92, - 92 - ] - ], - "settings": - { - "syntax": "Packages/JavaScript/JSON.tmLanguage" - }, - "translation.x": 0.0, - "translation.y": 0.0, - "zoom_level": 1.0 - }, - "type": "text" - } - ] - }, - { - "selected": 0, - "sheets": - [ - { - "buffer": 4, - "file": "notes.todo", - "settings": - { - "buffer_size": 299, - "regions": - { - }, - "selection": - [ - [ - 299, - 299 - ] - ], - "settings": - { - "auto_name": "notes.todo", - "syntax": "Packages/PlainTasks/PlainTasks.tmLanguage" - }, - "translation.x": 0.0, - "translation.y": 0.0, - "zoom_level": 1.0 - }, - "type": "text" - } - ] - } - ], - "incremental_find": - { - "height": 0.0 - }, - "input": - { - "height": 33.0 - }, - "layout": - { - "cells": - [ - [ - 0, - 0, - 1, - 1 - ], - [ - 1, - 0, - 2, - 1 - ] - ], - "cols": - [ - 0.0, - 0.728845534437, - 1.0 - ], - "rows": - [ - 0.0, - 1.0 - ] - }, - "menu_visible": true, - "replace": - { - "height": 64.0 - }, - "save_all_on_build": true, - "select_file": - { - "height": 0.0, - "selected_items": - [ - [ - "conf", - "_config.yml" - ], - [ - "mod", - "giraffe/styles/_module.scss" - ], - [ - "syn", - "giraffe/styles/controls/_syntax.scss" - ], - [ - "main", - "giraffe/scripts/main.js" - ], - [ - "con", - "_config.yml" - ], - [ - "sem", - "_posts/2014-01-22-semantic-classes-in-css.md" - ], - [ - "larn", - "_posts/2014-01-19-learning-jekyll.md" - ], - [ - "bet", - "_posts/2013-12-03-better-related-posts.md" - ], - [ - "", - "_config.yml" - ], - [ - "sp", - "_posts/13-05-14-accessible-sprites.md" - ], - [ - "rela", - "_posts/2013-12-03-better-related-posts.md" - ], - [ - "spr", - "_posts/13-05-14-accessible-sprites.md" - ], - [ - ".scs", - "giraffe/styles/_base.scss" - ], - [ - "csst", - "_posts/2012-09-5-guest-post-on-css-tricks.md" - ], - [ - "spri", - "_posts/13-05-14-accessible-sprites.md" - ], - [ - "acspe", - "_posts/13-05-14-accessible-sprites.md" - ], - [ - "better", - "_posts/2013-12-03-better-related-posts.md" - ], - [ - "lear", - "_posts/2014-01-19-learning-jekyll.md" - ], - [ - "relat", - "_posts/2013-12-03-better-related-posts.md" - ], - [ - "hta", - ".htaccess" - ], - [ - "hig", - "giraffe/styles/controls/_fauxHighlight.scss" - ], - [ - "conte", - "_posts/13-09-29-content-and-color.md" - ], - [ - "bas", - "giraffe/styles/_base.scss" - ], - [ - "base", - "giraffe/styles/_base.scss" - ], - [ - "theme", - "giraffe/styles/_theme.scss" - ], - [ - "leva", - "giraffe/styles/_leVars.scss" - ], - [ - "onthr", - "_posts/2013-12-19-on-twenty-thirteen.md" - ], - [ - "th", - "giraffe/styles/_theme.scss" - ], - [ - "the", - "giraffe/styles/_theme.scss" - ], - [ - "hi", - "giraffe/styles/controls/_fauxHighlight.scss" - ], - [ - "nav", - "giraffe/styles/controls/_navigation.scss" - ], - [ - "ssiz", - "giraffe/styles/controls/_screenSizes.scss" - ], - [ - "mxin", - "giraffe/styles/giraffic.0.1/_mixins.scss" - ], - [ - "foot", - "giraffe/styles/controls/_footnotes.scss" - ], - [ - "hea", - "_includes/head.html" - ], - [ - "high", - "giraffe/styles/controls/_fauxHighlight.scss" - ], - [ - "inde", - "index.html" - ], - [ - "help", - "giraffe/styles/giraffic.0.1/_helpers.scss" - ], - [ - "acce", - "_posts/13-05-14-accessible-sprites.md" - ], - [ - "dra", - "_drafts/device-testing-in-visual-studio.md" - ], - [ - "gues", - "_posts/2012-09-5-guest-post-on-css-tricks.md" - ], - [ - "rake", - "Rakefile" - ], - [ - "sideb", - "_posts/2013-12-03-sidebar-enhancements.md" - ], - [ - "dat", - "_posts/2013-11-22-dat-workflow.md" - ], - [ - "defau", - "_layouts/default.html" - ], - [ - "draf", - "_drafts/sidebar-enhancements.md" - ], - [ - "them", - "giraffe/styles/_theme.scss" - ], - [ - "footn", - "giraffe/styles/controls/_footnotes.scss" - ], - [ - "mode", - "giraffe/styles/_module.scss" - ], - [ - "def", - "_layouts/default.html" - ], - [ - "gitar", - "_posts/13-04-18-git-around-me.md" - ], - [ - "bio", - "_includes/bio.html" - ], - [ - "ost", - "_posts/posts.todo" - ], - [ - "huma", - "humans.txt" - ], - [ - "dis", - "_posts/13-11-10-disqus.md" - ], - [ - "bab", - "_posts/13-11-09-baby-got-neck.md" - ], - [ - "lore", - "_posts/13-11-06-lorem-ipsum.md" - ], - [ - "jek", - "_posts/13-4-28-jekyll-and-hyde.md" - ], - [ - "inb", - "_posts/2013-11-17-designing-in-browser.md" - ], - [ - "cont", - "_posts/13-09-29-content-and-color.md" - ], - [ - "da", - "_posts/2013-11-22-dat-workflow.md" - ], - [ - "robo", - "robots.txt" - ], - [ - "site", - "sitemap.xml" - ], - [ - "about", - "about/this-guy.html" - ], - [ - "this", - "about/this-site.html" - ], - [ - "content", - "_posts/13-09-29-content-and-color.md" - ], - [ - "header", - "_includes/header.html" - ], - [ - "thme", - "giraffe/styles/_theme.scss" - ], - [ - "page", - "_layouts/page.html" - ], - [ - "thi", - "about/this-guy.html" - ], - [ - "p", - "_layouts/page.html" - ], - [ - "ind", - "index.html" - ], - [ - "hum", - "humans.txt" - ], - [ - "head", - "_includes/head.html" - ], - [ - "htc", - ".htaccess" - ], - [ - "404", - "404.html" - ], - [ - "acc", - ".htaccess" - ], - [ - "defa", - "_layouts/default.html" - ], - [ - "ht", - ".htaccess" - ], - [ - "_.scss", - "giraffe/styles/controls/_bio.scss" - ], - [ - "bler", - "blerg.html" - ], - [ - "rak", - "Rakefile" - ], - [ - "var", - "giraffe/styles/_leVars.scss" - ], - [ - "todo", - "_posts/posts.todo" - ], - [ - "ra", - "Rakefile" - ], - [ - "post/", - "_posts/13-11-06-lorem-ipsum.md" - ], - [ - "mad", - "_drafts/mad-flows.md" - ], - [ - "rk", - "Rakefile" - ], - [ - "mixin", - "giraffe/styles/giraffic.0.1/_mixins.scss" - ], - [ - "giraf", - "giraffe/styles/giraffic.0.1/_giraffic.scss" - ], - [ - "giraff", - "giraffe/styles/controls/_giraffe.scss" - ], - [ - "plug", - "giraffe/scripts/plugins.js" - ], - [ - ".scss", - "mattycollins.com.au/giraffe/styles/screen.scss" - ] - ], - "width": 0.0 - }, - "select_project": - { - "height": 500.0, - "selected_items": - [ - [ - "mat", - "/Users/matty/Git/mattycollins.com.au/mattycollins.com.au.sublime-project" - ], - [ - "", - "/Users/matty/Git/mattycollins.com.au/mattycollins.com.au.sublime-project" - ] - ], - "width": 380.0 - }, - "show_minimap": true, - "show_open_files": false, - "show_tabs": true, - "side_bar_visible": true, - "side_bar_width": 422.0, - "status_bar_visible": true -} diff --git a/notes.todo b/notes.todo deleted file mode 100644 index 8746ee04..00000000 --- a/notes.todo +++ /dev/null @@ -1,8 +0,0 @@ - ☐ remove sublime stuff - ☐ remove this file - -issues: - ✔ #n53 "li" needs tag selector @done (14-02-09 12:44) - ☐ #n56 "min-width" needs key - ✔ n#106 id incorrectly errors on "&" @done (14-02-09 12:44) - ☐ add keywords? From 4fdd080b34be7668389ceb74556289bfccdfa587 Mon Sep 17 00:00:00 2001 From: Matty Date: Mon, 10 Feb 2014 23:23:44 +1100 Subject: [PATCH 15/15] removing project file --- coderay.sublime-project | 8 -------- 1 file changed, 8 deletions(-) delete mode 100644 coderay.sublime-project diff --git a/coderay.sublime-project b/coderay.sublime-project deleted file mode 100644 index f0576f79..00000000 --- a/coderay.sublime-project +++ /dev/null @@ -1,8 +0,0 @@ -{ - "folders": - [ - { - "path": "/Users/matty/Git/coderay" - } - ] -}