Project

General

Profile

Changelog » History » Version 8

Kornelius Kalnbach, 10/19/2011 10:42 PM

1 1 Kornelius Kalnbach
h1=. CodeRay Version History
2 1 Kornelius Kalnbach
 
3 5 Kornelius Kalnbach
p=. _This files lists all changes in the CodeRay library since the 0.9.8 release._
4 1 Kornelius Kalnbach
 
5 2 Kornelius Kalnbach
{{toc}}
6 2 Kornelius Kalnbach
 
7 8 Kornelius Kalnbach
h2. Changes in 1.0.1
8 8 Kornelius Kalnbach
 
9 8 Kornelius Kalnbach
New:
10 8 Kornelius Kalnbach
 
11 8 Kornelius Kalnbach
* YAML scanner allows "-" and "/" in key names
12 8 Kornelius Kalnbach
 
13 8 Kornelius Kalnbach
Changes:
14 8 Kornelius Kalnbach
 
15 8 Kornelius Kalnbach
* HTML page output has no white border anymore (alpha style)
16 8 Kornelius Kalnbach
 
17 8 Kornelius Kalnbach
Fixes:
18 8 Kornelius Kalnbach
 
19 8 Kornelius Kalnbach
* fixed warning in the output of "coderay stylesheet"
20 8 Kornelius Kalnbach
* fixed additional scrollbar in code when last line contains an eyecatcher
21 8 Kornelius Kalnbach
* minor fixes in the tests (issue github-#4)
22 8 Kornelius Kalnbach
23 1 Kornelius Kalnbach
h2. Changes in 1.0
24 1 Kornelius Kalnbach
 
25 5 Kornelius Kalnbach
CodeRay 1.0 is a major rewrite of the library, and incompatible to earlier versions.
26 5 Kornelius Kalnbach
 
27 5 Kornelius Kalnbach
The command line and programmer interfaces are similar to 0.9, but the internals have completely changed.
28 5 Kornelius Kalnbach
29 5 Kornelius Kalnbach
h3. General changes
30 5 Kornelius Kalnbach
 
31 5 Kornelius Kalnbach
* *NEW*: The new Diff scanner colorizes code inside of the diff, and highlights inline changes.
32 5 Kornelius Kalnbach
* *NEW*: Extended support and usage of HTML5 and CSS 3 features.
33 5 Kornelius Kalnbach
* *NEW*: Direct Streaming
34 5 Kornelius Kalnbach
* *NEW* scanners: Clojure and HAML
35 5 Kornelius Kalnbach
* *CHANGED*: Token classes (used as CSS classes) are readable names; breaks you stylesheet!
36 5 Kornelius Kalnbach
* *IMPROVED* documentation
37 5 Kornelius Kalnbach
* *IMPROVED* speed: faster startup (using @autoload@), scanning, and encoding
38 5 Kornelius Kalnbach
* *IMPROVED* Ruby 1.9 encodings support
39 5 Kornelius Kalnbach
* *IMPROVED* Tests: There are more of them now!
40 5 Kornelius Kalnbach
41 1 Kornelius Kalnbach
h3. Direct Streaming
42 1 Kornelius Kalnbach
 
43 5 Kornelius Kalnbach
CodeRay 1.0 introduces _Direct Streaming_ as a faster and simpler alternative to Tokens. It means that all Scanners,
44 5 Kornelius Kalnbach
Encoders and Filters had to be rewritten, and that older scanners using the Tokens API are no longer compatible with
45 5 Kornelius Kalnbach
this version.
46 1 Kornelius Kalnbach
 
47 5 Kornelius Kalnbach
The main benefits of this change are:
48 1 Kornelius Kalnbach
 
49 5 Kornelius Kalnbach
* more speed (benchmarks show 10% to 50% more tokens per second compared to CodeRay 0.9)
50 5 Kornelius Kalnbach
* the ability to stream output into a pipe on the command line
51 5 Kornelius Kalnbach
* a simpler API
52 5 Kornelius Kalnbach
* less code
53 5 Kornelius Kalnbach
 
54 1 Kornelius Kalnbach
Changes related to the new tokens handling include:
55 5 Kornelius Kalnbach
* *CHANGED*: The Scanners now call Encoders directly; tokens are not added to a Tokens array, but are send to the
56 5 Kornelius Kalnbach
  Encoder as a method call. The Tokens representation (which can be seen as a cache now) is still present, but as a
57 5 Kornelius Kalnbach
  special case; Tokens just encodes the given tokens into an Array for later use.
58 1 Kornelius Kalnbach
* *CHANGED*: The token actions (@text_token@, @begin_group@ etc.) are now public methods of @Encoder@ and @Tokens@.
59 1 Kornelius Kalnbach
* *REWRITE* of all Scanners, Encoders, Filters, and Tokens.
60 1 Kornelius Kalnbach
* *RENAMED* @:open@ and @:close@ actions to @:begin_group@ and @:end_group@.
61 1 Kornelius Kalnbach
* *RENAMED* @open_token@ and @close_token@ methods to @begin_group@ and @end_group@.
62 5 Kornelius Kalnbach
* *NEW* method @#tokens@ allows to add several tokens to the stream. @Tokens@ and @Encoders::Encoder@ define this
63 5 Kornelius Kalnbach
  method.
64 5 Kornelius Kalnbach
* *CHANGED* The above name changes also affect the JSON, XML, and YAML encoders. CodeRay 1.0 output will be incompatible
65 5 Kornelius Kalnbach
  with earlier versions.
66 5 Kornelius Kalnbach
* *REMOVED* @TokenStream@ and the @Streamable@ API and all related features like @NotStreamableError@ are now obsolete
67 5 Kornelius Kalnbach
  and have been removed.
68 1 Kornelius Kalnbach
69 5 Kornelius Kalnbach
h3. Command Line
70 1 Kornelius Kalnbach
 
71 5 Kornelius Kalnbach
The @coderay@ executable was rewritten and has a few new features:
72 3 Kornelius Kalnbach
 
73 5 Kornelius Kalnbach
* *NEW* Ability to stream into a pipe; try @coderay file | more -r@
74 5 Kornelius Kalnbach
* *NEW* help
75 5 Kornelius Kalnbach
* *IMPROVED*: more consistent parameter handling
76 5 Kornelius Kalnbach
* *REMOVED* @coderay_stylesheet@ executable; use @coderay stylesheet [name]@.
77 1 Kornelius Kalnbach
78 1 Kornelius Kalnbach
h3. @Tokens@
79 1 Kornelius Kalnbach
 
80 6 Kornelius Kalnbach
* *NEW* methods @count@, @begin_group@, @end_group@, @begin_line@, and @end_line@.
81 1 Kornelius Kalnbach
* *REMOVED* methods @#stream?@, @#each_text_token@.
82 7 Kornelius Kalnbach
* *REMOVED* methods @#optimize@, @#fix@, @#split_into_lines@ along with their bang! variants.
83 3 Kornelius Kalnbach
* *REMOVED* @#text@ and @#text_size@ methods. Use the @Text@ encoder instead.
84 3 Kornelius Kalnbach
* *REMOVED* special implementation of @#each@ taking a filter parameter. Use @TokenKindFilter@ instead.
85 1 Kornelius Kalnbach
86 1 Kornelius Kalnbach
h3. *RENAMED*: @TokenKinds@
87 3 Kornelius Kalnbach
 
88 3 Kornelius Kalnbach
Renamed from @Tokens::ClassOfKind@ (was also @Tokens::AbbreviationForKind@ for a while).
89 1 Kornelius Kalnbach
The term "token class" is no longer used in CodeRay. Instead, tokens have _kinds_.
90 1 Kornelius Kalnbach
See "#122":http://redmine.rubychan.de/issues/122.
91 3 Kornelius Kalnbach
 
92 5 Kornelius Kalnbach
* *CHANGED* all token CSS classes to readable names.
93 1 Kornelius Kalnbach
* *ADDED* token kinds @:filename@, @:namespace@, and @:eyecatcher@.
94 5 Kornelius Kalnbach
* *RENAMED* @:pre_constant@ and @:pre_type@ to @:predefined_constant@ and @predefined_type@.
95 5 Kornelius Kalnbach
* *RENAMED* @:oct@ and @:bin@ to @:octal@ and @binary@.
96 5 Kornelius Kalnbach
* *REMOVED* token kinds @:attribute_name_fat@, @:attribute_value_fat@, @:operator_fat@, @interpreted@,
97 5 Kornelius Kalnbach
  @:tag_fat@, @tag_special@, @:xml_text@, @:nesting_delimiter@, @:open@, and @:close@.
98 3 Kornelius Kalnbach
* *CHANGED*: Don't raise error for unknown token kinds unless in @$CODERAY_DEBUG@ mode.
99 1 Kornelius Kalnbach
* *CHANGED* the value for a token kind that is not highlighted from
100 1 Kornelius Kalnbach
  @:NO_HIGHLIGHT@ to @false@.
101 1 Kornelius Kalnbach
102 1 Kornelius Kalnbach
h3. @Duo@
103 1 Kornelius Kalnbach
 
104 1 Kornelius Kalnbach
* *NEW* method @call@ for allowing code like @CodeRay::Duo[:python => :yaml].(code)@ in Ruby 1.9.
105 1 Kornelius Kalnbach
106 1 Kornelius Kalnbach
h3. @Encoders::CommentFilter@
107 1 Kornelius Kalnbach
 
108 1 Kornelius Kalnbach
* *NEW* alias @:remove_comments@
109 3 Kornelius Kalnbach
110 1 Kornelius Kalnbach
h3. @Encoders::Filter@
111 1 Kornelius Kalnbach
 
112 1 Kornelius Kalnbach
* *NEW* option @tokens@.
113 1 Kornelius Kalnbach
* *CHANGED*: Now it simply delegates to the output.
114 1 Kornelius Kalnbach
* *REMOVED* @include_text_token?@ and @include_block_token?@ methods.
115 1 Kornelius Kalnbach
116 1 Kornelius Kalnbach
h3. @Encoders::HTML@
117 1 Kornelius Kalnbach
 
118 1 Kornelius Kalnbach
The HTML encoder was cleaned up and simplified.
119 1 Kornelius Kalnbach
 
120 1 Kornelius Kalnbach
* *NEW*: HTML5 and CSS 3 compatible.
121 1 Kornelius Kalnbach
  See "#215":http://redmine.rubychan.de/issues/215.
122 1 Kornelius Kalnbach
* *ADDED* support for @:line_number_anchors@.
123 1 Kornelius Kalnbach
  See "#208":http://redmine.rubychan.de/issues/208.
124 5 Kornelius Kalnbach
* *CHANGED* the default style to @:alpha@.
125 5 Kornelius Kalnbach
* *CHANGED*: Use double click to toggle line numbers in table mode (as single
126 1 Kornelius Kalnbach
  click jumps to an anchor.)
127 1 Kornelius Kalnbach
* *REMOVED* support for @:line_numbers => :list@.
128 1 Kornelius Kalnbach
* *FIXED* splitting of lines for @:line_numbers => :inline@, so that the line
129 1 Kornelius Kalnbach
  numbers don't get colored, too.
130 1 Kornelius Kalnbach
* *RENAMED* @Output#numerize@ to @#number@, which is an actual English word.
131 1 Kornelius Kalnbach
132 1 Kornelius Kalnbach
h3. @Encoders::LinesOfCode@
133 1 Kornelius Kalnbach
 
134 1 Kornelius Kalnbach
* *CHANGED*: @compile@ and @finish@ methods are now protected.
135 1 Kornelius Kalnbach
136 5 Kornelius Kalnbach
h3. *Renamed*: @Encoders::Terminal@ (was @Encoders::Term@)
137 1 Kornelius Kalnbach
 
138 1 Kornelius Kalnbach
* *RENAMED* from @Encoders::Term@, added @:term@ alias.
139 1 Kornelius Kalnbach
* *CLEANUP*: Use @#setup@'s @super@, don't use @:procedure@ token class.
140 1 Kornelius Kalnbach
* *CHANGED*: @#token@'s second parameter is no longer optional.
141 2 Kornelius Kalnbach
* *REMOVED* colors for obsolete token kinds.
142 1 Kornelius Kalnbach
* *FIXED* handling of line tokens.
143 1 Kornelius Kalnbach
144 1 Kornelius Kalnbach
h3. @Encoders::Text@
145 1 Kornelius Kalnbach
 
146 1 Kornelius Kalnbach
* *FIXED* default behavior of stripping the trailing newline.
147 1 Kornelius Kalnbach
148 5 Kornelius Kalnbach
h3. *RENAMED*: @Encoders::TokenKindFilter@ (was @Encoders::TokenClassFilter@)
149 1 Kornelius Kalnbach
 
150 1 Kornelius Kalnbach
* *NEW*: Handles token groups.
151 1 Kornelius Kalnbach
  See "#223":http://redmine.rubychan.de/issues/223.
152 1 Kornelius Kalnbach
* *RENAMED* @include_block_token?@ to @include_group?@.
153 1 Kornelius Kalnbach
154 1 Kornelius Kalnbach
h3. @Encoders::Statistic@
155 1 Kornelius Kalnbach
 
156 1 Kornelius Kalnbach
* *CHANGED*: Tokens actions are counted separately.
157 1 Kornelius Kalnbach
158 3 Kornelius Kalnbach
h3. @Scanners::Scanner@
159 3 Kornelius Kalnbach
 
160 3 Kornelius Kalnbach
* *NEW* methods @#file_extension@ and @#encoding@.
161 3 Kornelius Kalnbach
* *NEW*: The @#tokenize@ method also takes an Array of Strings as source. The
162 1 Kornelius Kalnbach
  code is highlighted as one and split into parts of the input lengths
163 1 Kornelius Kalnbach
  after that using @Tokens#split_into_parts@.
164 5 Kornelius Kalnbach
* *NEW* method @#binary_string@
165 5 Kornelius Kalnbach
* *REMOVED* helper method @String#to_unix@.
166 5 Kornelius Kalnbach
* *REMOVED* method @#streamable?@.
167 5 Kornelius Kalnbach
* *REMOVED* @#marshal_load@ and @#marshal_dump@.
168 5 Kornelius Kalnbach
* *RENAMED* class method @normify@ to @normalize@; it also deals with encoding now.
169 5 Kornelius Kalnbach
* *CHANGED*: @#column@ starts counting with 1 instead of 0
170 1 Kornelius Kalnbach
171 1 Kornelius Kalnbach
h3. *NEW*: @Scanners::Clojure@
172 1 Kornelius Kalnbach
 
173 1 Kornelius Kalnbach
Thanks to Licenser, CodeRay now supports the Clojure language.
174 1 Kornelius Kalnbach
175 1 Kornelius Kalnbach
h3. @Scanners::CSS@
176 3 Kornelius Kalnbach
 
177 1 Kornelius Kalnbach
* *NEW*: Rudimentary support for the @attr@, @counter@, and @counters@ functions.
178 1 Kornelius Kalnbach
  See "#224":http://redmine.rubychan.de/issues/224.
179 1 Kornelius Kalnbach
* *NEW*: Rudimentary support for CSS 3 colors.
180 1 Kornelius Kalnbach
* *CHANGED*: Attribute selectors are highlighted as @:attribute_name@ instead of @:string@.
181 1 Kornelius Kalnbach
* *CHANGED*: Comments are scanned as one token instead of three.
182 1 Kornelius Kalnbach
183 1 Kornelius Kalnbach
h3. @Scanners::Debug@
184 1 Kornelius Kalnbach
 
185 1 Kornelius Kalnbach
* *NEW*: Support for line tokens (@begin_line@ and @end_line@ represented by @[@ and @]@.)
186 1 Kornelius Kalnbach
* *FIXED*: Don't send @:error@ and @nil@ tokens for buggy input any more.
187 1 Kornelius Kalnbach
* *FIXED*: Closes unclosed tokens at the end of @scan_tokens@.
188 1 Kornelius Kalnbach
* *IMPROVED*: Highlight unknown tokens as @:error@.
189 1 Kornelius Kalnbach
* *CHANGED*: Raises an error when trying to end an invalid token group.
190 1 Kornelius Kalnbach
191 1 Kornelius Kalnbach
h3. @Scanners::Delphi@
192 1 Kornelius Kalnbach
 
193 1 Kornelius Kalnbach
* *FIXED*: Closes open string groups.
194 1 Kornelius Kalnbach
195 1 Kornelius Kalnbach
h3. @Scanners::Diff@
196 1 Kornelius Kalnbach
 
197 1 Kornelius Kalnbach
* *NEW*: Highlighting of code based on file names.
198 1 Kornelius Kalnbach
  See ticket "#52":http://redmine.rubychan.de/issues/52.
199 1 Kornelius Kalnbach
  
200 1 Kornelius Kalnbach
  Use the @:highlight_code@ option to turn this feature off. It's enabled
201 1 Kornelius Kalnbach
  by default.
202 1 Kornelius Kalnbach
  
203 1 Kornelius Kalnbach
  This is a very original feature. It enables multi-language highlighting for
204 1 Kornelius Kalnbach
  diff files, which is especially helpful for CodeRay development itself. The
205 1 Kornelius Kalnbach
  updated version of the scanner test suite generated .debug.diff.html files
206 1 Kornelius Kalnbach
  using this.
207 1 Kornelius Kalnbach
  
208 1 Kornelius Kalnbach
  Note: This is still experimental. Tokens spanning more than one line
209 1 Kornelius Kalnbach
  may get highlighted incorrectly. CodeRay tries to keep scanner states
210 1 Kornelius Kalnbach
  between the lines and changes, but the quality of the results depend on
211 1 Kornelius Kalnbach
  the scanner.
212 1 Kornelius Kalnbach
* *NEW*: Inline change highlighting, as suggested by Eric Thomas.
213 1 Kornelius Kalnbach
  See ticket "#227":http://redmine.rubychan.de/issues/227 for details.
214 1 Kornelius Kalnbach
  
215 1 Kornelius Kalnbach
  Use the @:inline_diff@ option to turn this feature off. It's enabled by
216 1 Kornelius Kalnbach
  default.
217 1 Kornelius Kalnbach
  
218 1 Kornelius Kalnbach
  For single-line changes (that is, a single deleted line followed by a single
219 1 Kornelius Kalnbach
  inserted line), this feature surrounds the changed parts with an
220 1 Kornelius Kalnbach
  @:eyecatcher@ group which appears in a more saturated background color.
221 1 Kornelius Kalnbach
  The implementation is quite complex, and highly experimental. The problem
222 1 Kornelius Kalnbach
  with multi-layer tokenizing is that the tokens have to be split into parts.
223 1 Kornelius Kalnbach
  If the inline change starts, say, in the middle of a string, then additional
224 1 Kornelius Kalnbach
  @:end_group@ and @:begin_group@ tokens must be inserted to keep the group
225 1 Kornelius Kalnbach
  nesting intact. The extended @Scanner#tokenize@ method and the new
226 1 Kornelius Kalnbach
  @Tokens#split_into_parts@ method take care of this.
227 1 Kornelius Kalnbach
* *NEW*: Highlight the file name in the change headers as @:filename@.
228 1 Kornelius Kalnbach
* *CHANGED*: Highlight unknown lines as @:comment@ instead of @:head@.
229 5 Kornelius Kalnbach
* *IMPROVED*: Background colors for Diff output have been optimized.
230 1 Kornelius Kalnbach
231 5 Kornelius Kalnbach
h3. *RENAMED*: @Scanners::ERB@ (was @Scanners::RHTML@)
232 5 Kornelius Kalnbach
233 5 Kornelius Kalnbach
h3. *NEW*: @Scanners::HAML@
234 5 Kornelius Kalnbach
 
235 5 Kornelius Kalnbach
It uses the new :state options of the HTML and Ruby scanners.
236 5 Kornelius Kalnbach
 
237 5 Kornelius Kalnbach
Some rare cases are not considered (like @#{...}@ snippets inside of :javascript blocks),
238 5 Kornelius Kalnbach
but it highlights pretty well.
239 5 Kornelius Kalnbach
240 1 Kornelius Kalnbach
h3. @Scanners::HTML@
241 1 Kornelius Kalnbach
 
242 1 Kornelius Kalnbach
* *FIXED*: Closes open string groups.
243 1 Kornelius Kalnbach
244 1 Kornelius Kalnbach
h3. @Scanners::JavaScript@
245 1 Kornelius Kalnbach
 
246 4 Kornelius Kalnbach
* *IMPROVED*: Added @NaN@ and @Infinity@ to list of predefined constants.
247 1 Kornelius Kalnbach
* *IMPROVED* recognition of RegExp literals with leading spaces.
248 1 Kornelius Kalnbach
249 1 Kornelius Kalnbach
h3. @Scanners::Java@
250 1 Kornelius Kalnbach
 
251 1 Kornelius Kalnbach
* *NEW*: Package names are highlighted as @:namespace@.
252 1 Kornelius Kalnbach
  See "#210":http://redmine.rubychan.de/issues/210.
253 1 Kornelius Kalnbach
254 5 Kornelius Kalnbach
h3. *REMOVED*: @Scanners::NitroXHTML@
255 5 Kornelius Kalnbach
 
256 5 Kornelius Kalnbach
Nitro is "dead":http://www.nitrohq.com/.
257 5 Kornelius Kalnbach
258 1 Kornelius Kalnbach
h3. *RENAMED*: @Scanners::Text@ (was @Scanners::Plaintext@)
259 1 Kornelius Kalnbach
 
260 1 Kornelius Kalnbach
* *IMPROVED*: Just returns the string without scanning (faster).
261 1 Kornelius Kalnbach
 
262 1 Kornelius Kalnbach
 This is much faster than scanning until @/\z/@ in Ruby 1.8.
263 1 Kornelius Kalnbach
264 1 Kornelius Kalnbach
h3. @Scanners::Python@
265 1 Kornelius Kalnbach
 
266 1 Kornelius Kalnbach
* *CHANGED*: Docstrings are highlighted as @:comment@.
267 1 Kornelius Kalnbach
  See "#190":http://redmine.rubychan.de/issues/190.
268 1 Kornelius Kalnbach
269 3 Kornelius Kalnbach
h3. *NEW*: @Scanners::Raydebug@
270 1 Kornelius Kalnbach
271 5 Kornelius Kalnbach
Copied from @Scanners::Debug@, highlights the token dump instead of importing it. It also reacts to the @.raydebug@ file
272 5 Kornelius Kalnbach
name suffix now.
273 5 Kornelius Kalnbach
274 1 Kornelius Kalnbach
h3. @Scanners::Ruby@
275 1 Kornelius Kalnbach
 
276 1 Kornelius Kalnbach
* *ADDED* more predefined keywords (see http://murfy.de/ruby-constants).
277 1 Kornelius Kalnbach
* *IMPROVED* support for singleton method definitions.
278 1 Kornelius Kalnbach
  See "#147":http://redmine.rubychan.de/issues/147.
279 1 Kornelius Kalnbach
* *FIXED*: Don't highlight methods with a capital letter as constants
280 5 Kornelius Kalnbach
  (eg. @GL.PushMatrix@).
281 1 Kornelius Kalnbach
* *NEW*: Highlight buggy floats (like .5) as @:error@.
282 1 Kornelius Kalnbach
* *CLEANUP* of documentation, names of constants and variables, state handling.
283 1 Kornelius Kalnbach
  
284 1 Kornelius Kalnbach
  Moved @StringState@ class from @patterns.rb@ into a separate file.
285 1 Kornelius Kalnbach
* *NEW*: Complicated rule for recognition of @foo=@ style method names.
286 1 Kornelius Kalnbach
* *NEW*: Handles @:keep_state@ option (a bit; experimental).
287 1 Kornelius Kalnbach
  
288 1 Kornelius Kalnbach
  Actually, Ruby checks if there is @[~>=]@, but not @=>@ following the name.
289 1 Kornelius Kalnbach
  
290 1 Kornelius Kalnbach
* *REMOVED* @EncodingError@
291 1 Kornelius Kalnbach
292 5 Kornelius Kalnbach
h3. *REMOVED* @Scanners::Scheme@
293 1 Kornelius Kalnbach
 
294 5 Kornelius Kalnbach
* It is too buggy, and nobody was using it. To be added again when it's fixed.
295 5 Kornelius Kalnbach
  See "#59":http://redmine.rubychan.de/issues/59.
296 1 Kornelius Kalnbach
297 1 Kornelius Kalnbach
h3. @Scanners::SQL@
298 1 Kornelius Kalnbach
 
299 1 Kornelius Kalnbach
* *IMPROVED*: Extended list of keywords and functions (thanks to
300 1 Kornelius Kalnbach
  Joshua Galvez, Etienne Massip, and others).
301 1 Kornelius Kalnbach
 
302 1 Kornelius Kalnbach
  See "#221":http://redmine.rubychan.de/issues/221.
303 1 Kornelius Kalnbach
* *FIXED*: Closes open string groups.
304 1 Kornelius Kalnbach
* *FIXED*: Words after @.@ are always recognized as @:ident@.
305 1 Kornelius Kalnbach
306 1 Kornelius Kalnbach
h3. @Scanners::YAML@
307 1 Kornelius Kalnbach
 
308 1 Kornelius Kalnbach
* *FIXED*: Allow spaces before colon in mappings.
309 1 Kornelius Kalnbach
 
310 1 Kornelius Kalnbach
  See "#231":http://redmine.rubychan.de/issues/231.
311 1 Kornelius Kalnbach
312 1 Kornelius Kalnbach
h3. *NEW*: @Styles::Alpha@
313 5 Kornelius Kalnbach
314 5 Kornelius Kalnbach
A style that uses transparent HSLA colors as defined in CSS 3. See "#199":http://redmine.rubychan.de/issues/199.
315 1 Kornelius Kalnbach
 
316 5 Kornelius Kalnbach
It also uses the CSS 3 property @user-select: none@ to keep the user from selecting the line numbers. This is especially
317 5 Kornelius Kalnbach
nice for @:inline@ line numbers. See "#226":http://redmine.rubychan.de/issues/226.
318 1 Kornelius Kalnbach
319 1 Kornelius Kalnbach
h3. @WordList@
320 1 Kornelius Kalnbach
 
321 1 Kornelius Kalnbach
Stripped down to 19 LOC.
322 1 Kornelius Kalnbach
323 5 Kornelius Kalnbach
* *RENAMED* @CaseIgnoringWordList@ to @WordList::CaseIgnoring@.
324 1 Kornelius Kalnbach
* *REMOVED* caching option because it creates memory leaks.
325 1 Kornelius Kalnbach
* *REMOVED* block option.
326 1 Kornelius Kalnbach
327 1 Kornelius Kalnbach
h3. @FileType@
328 1 Kornelius Kalnbach
 
329 1 Kornelius Kalnbach
* *NEW*: Recognizes @.gemspec@, @.rjs@, @.rpdf@ extensions, @Gemfile@, and @Capfile@ as Ruby.
330 1 Kornelius Kalnbach
  
331 1 Kornelius Kalnbach
  Thanks to the authors of the TextMate Ruby bundle!
332 5 Kornelius Kalnbach
* *REMOVED* @FileType#shebang@ is a protected method now.
333 1 Kornelius Kalnbach
334 1 Kornelius Kalnbach
h3. @Plugin@
335 1 Kornelius Kalnbach
 
336 1 Kornelius Kalnbach
* *IMPROVED*: @register_for@ sets the @plugin_id@; it can now be a @Symbol@.
337 1 Kornelius Kalnbach
* *ADDED* @PluginHost#const_missing@ method: Plugins are loaded automatically.
338 1 Kornelius Kalnbach
  Using @Scanners::JavaScript@ in your code loads @scanners/java_script.rb@.
339 1 Kornelius Kalnbach
* *ADDED* @#all_plugins@ method to simplify getting 
340 1 Kornelius Kalnbach
  information about all available plugins (suggested by bnhymn).
341 5 Kornelius Kalnbach
* *CHANGED* the default plugin key from @nil@ to @:default@.
342 1 Kornelius Kalnbach
343 1 Kornelius Kalnbach
h3. @GZip@
344 1 Kornelius Kalnbach
 
345 1 Kornelius Kalnbach
* *MOVED* into @CodeRay@ namespace.
346 1 Kornelius Kalnbach
* *MOVED* file from @gzip_simple.rb@ to @gzip.rb@.
347 1 Kornelius Kalnbach
* *REMOVED* @String@ extensions.
348 1 Kornelius Kalnbach
349 5 Kornelius Kalnbach
h3. More API changes
350 1 Kornelius Kalnbach
 
351 1 Kornelius Kalnbach
* *FIXED* @Encoders::HTML#token@'s second parameter is no longer optional.
352 1 Kornelius Kalnbach
* *CHANGED* @Encoders::HTML::Output@'s API.
353 1 Kornelius Kalnbach
* *REMOVED* lots of unused methods.
354 1 Kornelius Kalnbach
 
355 5 Kornelius Kalnbach
The helper classes were cleaned up; see above for details.
356 1 Kornelius Kalnbach
 
357 5 Kornelius Kalnbach
* *CHANGED* @Plugin@ API was simplified and stripped of all unnecessary features.
358 5 Kornelius Kalnbach
* *CHANGED* Moved @GZip@ and @FileType@ libraries into @CodeRay@; cleaned them up.