Edgewall Software

Changes between Version 72 and Version 73 of WikiProcessors


Ignore:
Timestamp:
Nov 14, 2016, 1:30:45 AM (6 years ago)
Author:
trac
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • WikiProcessors

    v72 v73  
    165165|| '''`#!c`''' [[BR]] '''`#!cpp`''' (C++) [[BR]] '''`#!python`''' [[BR]] '''`#!perl`''' [[BR]] '''`#!ruby`''' [[BR]] '''`#!php`''' [[BR]] '''`#!asp`''' [[BR]] '''`#!java`''' [[BR]] '''`#!js`''' (Javascript) [[BR]] '''`#!sql`''' [[BR]] '''`#!xml`''' (XML or HTML) [[BR]] '''`#!sh`''' (!Bourne/Bash shell) [[BR]] '''etc.''' [[BR]] || Trac includes processors to provide inline syntax highlighting for source code in various languages. [[BR]] [[BR]] Trac relies on [http://pygments.org Pygments] for syntax coloring. [[BR]] [[BR]] See TracSyntaxColoring for information about which languages are supported and how to enable support for more languages. ||
    166166|||| ||
     167
     168Since 1.1.2 the default, coding highlighting and MIME-type processors support the argument `lineno` for adding line numbering to the code block. When a value is specified, as in `lineno=3`, the numbering will start at the specified value. When used in combination with the `lineno` argument, the `marks` argument is also supported for highlighting lines. A single line number, set of line numbers and range of line numbers are allowed. For example, `marks=3`, `marks=3-6`, `marks=3,5,7` and `marks=3-5,7` are all allowed. The specified values are relative to the numbered lines, so if `lineno=2` is specified to start the line numbering at 2, `marks=2` will result in the first line being highlighted.
    167169
    168170Using the MIME type as processor, it is possible to syntax-highlight the same languages that are supported when browsing source code.
     
    229231}}}
    230232
     233Line numbers can be added to code blocks and lines can be highlighted //(since 1.1.2)//.
     234{{{
     235{{{#!python lineno=3 marks=3,9-10,16
     236def expand_markup(stream, ctxt=None):
     237    """A Genshi stream filter for expanding `genshi.Markup` events.
     238
     239    Note: Expansion may not be possible if the fragment is badly
     240    formed, or partial.
     241    """
     242    for event in stream:
     243        if isinstance(event[1], Markup):
     244            try:
     245                for subevent in HTML(event[1]):
     246                    yield subevent
     247            except ParseError:
     248                yield event
     249        else:
     250            yield event
     251}}}
     252}}}
     253{{{#!python lineno=3 marks=3,9-10,16
     254def expand_markup(stream, ctxt=None):
     255    """A Genshi stream filter for expanding `genshi.Markup` events.
     256
     257    Note: Expansion may not be possible if the fragment is badly
     258    formed, or partial.
     259    """
     260    for event in stream:
     261        if isinstance(event[1], Markup):
     262            try:
     263                for subevent in HTML(event[1]):
     264                    yield subevent
     265            except ParseError:
     266                yield event
     267        else:
     268            yield event
     269}}}
     270
    231271For more processor macros developed and/or contributed by users, visit the [https://trac-hacks.org Trac Hacks] community site.
    232272