1.2.0 * Add option :shortcut which configures attribute shortcuts Default setting: Slim::Parser.default_options[:shortcut] = {'#' => 'id', '.' => 'class', '*' => '*'} Define custom shortcut attribute (e.g. a@ajax-link renders ) Slim::Parser.default_options[:shortcut] = {'@' => 'role'} Define custom shortcut attribute with tag (e.g. @ajax-link renders ) Slim::Parser.default_options[:shortcut] = {'@' => 'a role'} * Add syntax for splat attributes (#109) * Support for dynamic tags, e.g. *{:tag => 'img', :src => 'image.jpg'} 1.1.1 * Evaluating a html attribute now happens only once (#219) * Code with trailing comma is treated as broken line (#226) * Support option :remove_empty_attrs (default true) * Require temple 0.4.0 1.1.0 * Support for special characters in class/id shortcut removed * Do not allow : in class/id shortcut * Add support for block expansion syntax * Support options :indent, :sort_attrs * Require temple 0.3.5 1.0.4 * Pass options to embedded Tilt engine Slim::EmbeddedEngine.set_default_options :markdown => {...} * Add test case for precompiled embedded engine 'builder' * Bug #204 fixed, tabs were not parsed correctly 1.0.3 * Fix rubinius test cases * Fix line numbers for embedded engines * Require temple 0.3.4 * Remove dynamic embedded engines Haml, Liquid, Radius, Markaby * More thorough integration testing using travis-ci See http://travis-ci.org/#!/stonean/slim * Empty static attributes are not removed anymore * Line indicator =' is supported in tags 1.0.2 * Support for Rails 3.1 streaming (Temple > 0.3.2 required) * Switch to default format xhtml (supports all doctypes, including html5) * Improve parsing of #{interpolation} in quoted attributes (issue #159) * Use travis-ci for continous integration testing 1.0.1 * Only delimiting brackets must be balanced in ruby attributes e.g this is possible now `a href=(ruby_code "{") * Skip empty lines in text block (#156) 1.0.0 * Fixed html attribute issue in sections mode (#127) * Obsolete directive syntax removed * Syntax for trailing whitespace added (==' and =') * Deprecated file 'slim/rails.rb' removed * Parsing of #{interpolation} in markdown fixed * Support for attributes which span multiple lines * Dynamic attributes with value true/false are interpreted as boolean * Support boolean attributes without value e.g. option(selected id="abc") 0.9.3 * Allow for bypassing escaping in attributes * check if string encoding is valid * support for html conditional comments * Use new Temple html attribute expression [:html, :attrs, [:html, :attr, ...], ...] * Use new slim html attribute expression (similiar to Temple) * Option :id_delimiter replaced with :attr_delimiter * Attribute value merging improved (nil/empty values are ignored now) * Arrays attribute values are joined * Boolean attributes (e.g. selected=true is converted to selected="selected") * Option :debug removed * Slim expression grammar provided, Temple validator used in tests * Option :auto_escape replaced with inverse option :disable_escape * Require temple 0.3.0 0.9.2 * add SassEngine which respects :pretty * embedded engine code refactored * temple supports denser template registration * deprecate slim/rails (just require 'slim') * use temple rails and tilt templates * add encoding option to Slim::Parser/Slim::Engine to enforce template encoding * vim support is now an external project 0.9.1 * add new doctype syntax without ! * slim directive expression has type and args 0.9.0 * slim should not be registered as the default template handler. * add support for unescaped text interpolation 0.8.4 * Added the option to turn off automatic HTML escaping. * update to tilt 1.2.2 * allow call to yield in logic less mode * allow doctype declaration to be capitalized 0.8.3 * Added support for html comments. The parser uses the :static filter instead of the :comment filter due to the way the parser is constructed. 0.8.2 * fix issue #96 * Added the Temple Debugger filter. * Rails problems fixed 0.8.1 * remove backtick slim syntax -- no longer supported * slim executable conflict. issue #91 * vim syntax support improved 0.8.0 * rails logic less support 0.7.4 * use ' for text block with trailing whitespace * allow to disable/enable embedded engines 0.7.3 * fix #82 * basic rails test added 0.7.2 * get rid of rails deprecation warning * use_html_safe is activated automatically by temple 0.7.1 * logic less mode * add syntax for explicitly closed tags 0.7.0 * slim-mode.el for emacs added (modified haml-mode.el, needs some work to be fully functional for slim) * embedded engines * escape interpolated strings/attributes * Slim#Filter now uses optional configuration hash * Initial implementation for Rail's `html_safe`. Closes #25 * fallback to escape_html stolen from cgi.rb if escape_utils is unavailable, use normal requires because slim is on the load path * Limit the allowed characters used for attributes delimiters (now only allows parentheses, square brackets and curly braces). See #16 for more info. * Default to HTML5-mode * Slim now uses Temple and Tilt. * Choose your own attribute delimiter! 0.6.1 * can wrap parens around attributes if you so desire * added erubis to the benchmarks 0.6.0 * Added slim itself, haml and mustache to the development env for easier benchmarking. * added escape_html functionality. need to tweak for speed 0.5.1 * Consecutive condition statements now working as expected. 0.5.0 * Added 'unless' to the list of control words. * Fixes for inline conditions. There must be a better way of doing this?? * '-' is a valid character in HTML attributes, so let's allow that. * Improved the regex so that control code now supports code blocks. * Output code (start with '=') can now accept code blocks. * Method calls no longer need parenthesis. We need more tests to ensure the implementation's robustness. 0.4.1 * Added '|' as an alias of '`' for parsing plain text. This simulates the syntax of the Jade template engine. * Added instructions of how to use the gem. 0.4.0 * support for nesting lines under backtick * make it so that one space is the left margin. any additional spaces will be copied over * support for using indentation after backtick to denote paragraphs. useful for script tags and paragraphs 0.3.1 * fix bug with adding end to nesting ruby code 0.3.0 * Optimize compiled string to reduce number of concatentations to the buffer 0.2.0 * can now make code call on same line as tag 0.1.0 * Initial release