Project

General

Profile

Changelog » History » Version 9

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