Skip to content

Releases: gpoore/fvextra

v1.13.2

30 May 01:47

Choose a tag to compare

  • Fixed a bug that prevented detecting characters with a \mathcode of
    "8000 under XeTeX and LuaTeX (gpoore/minted#451).

v1.13.1

26 May 03:07

Choose a tag to compare

  • Replaced \mathcode with \Umathcodenum under XeTeX (#31).

v1.13.0

15 May 00:20

Choose a tag to compare

  • Enhanced \VerbatimPygments support for Pygments options escapeinside
    and texcomments. Pygments escape tokens are now always retokenized using
    the catcodes in place before the verbatim context. Pygments comment tokens
    are also retokenized if the new option texcomments=true. This makes
    these tokens behave more like regular LaTeX; previously, \active
    characters could produce unexpected or undesired results
    (gpoore/minted#303, gpoore/minted#312, gpoore/minted#422).

  • Fixed a bug that caused some Pygments output to vanish when using
    \VerbatimPygments with breaklines=false but breakanywhere=true
    (gpoore/minted#442).

  • \VerbatimPygments now patches Pygments macros to work correctly when the
    plus sign + is \active or otherwise has a modified catcode.

  • Added \FVExtraSaveCodes and \FVExtraUseCodes. These save the catcodes
    of all characters in \FVExtraDoSpecials, and then restore them. All
    commands and environments now automatically save the catcodes in place when
    they begin. These can be restored via \FancyVerbRestoreCodes.

  • Replaced \FV@SetupMathLigs with \FV@SetupMathActive. This makes all
    characters in \FVExtraDoSpecials behave more normally within math,
    instead of only patching `, <, >, ,, ', and -.

    \active versions of characters are now defined in a way that avoids
    infinite loops for characters with a \mathcode of "8000. This fixes
    compatibility with packages like semantic (gpoore/minted#422).

    \FV@SetupMathActive makes \FV@SetupMathSpace and \FancyVerbMathSpace
    redundant, so these were removed.

  • Added \FV@UseKeyValues@Hook. This is at the very end of
    \FV@UseKeyValues. It is useful for modifications like
    \FV@SetupMathActive that need to occur very early within a command or
    environment.

  • Improved compatibility with the LaTeX Tagged PDF project by modifying
    patch for \FV@List (#29).

  • All hooks now have a default value of empty, instead of some being \let
    to \relax. This fixes compatibility with \FV@AddToHook.

v1.12.0

04 Mar 22:41

Choose a tag to compare

  • Added command \IterateBuffer for iterating over buffers and applying a
    macro to each line.

  • Added command \BufferMdfivesum that calculates the MD5 sum of the current
    buffer.

  • Added command \WriteBuffer that writes a buffer to file. This is the
    buffer equivalent of VerbatimWrite.

  • Added new options for \InsertBuffer: wrapperenvname, wrapperenvopt,
    wrapperenvarg. Improved implementation of \InsertBuffer to eliminate
    temp macros.

  • Optimized line breaking for very long lines (#28).

v1.11.0

10 Feb 00:29

Choose a tag to compare

  • Added command \InsertBuffer. This inserts an existing buffer created
    with VerbatimBuffer so that it is interpreted as LaTeX.

  • Added \ClearBuffer as an alias for \VerbatimClearBuffer.

  • When afterbuffer is used with VerbatimBuffer or derived environments to
    typeset the buffer, the typeset buffer may now contain VerbatimBuffer or
    environments based on it. Previously, nested buffering overwrote temp
    macros and produced incorrect results. Typically, nested buffering should
    be avoided for a given buffer; a different buffer should be used at each
    level of nesting. The current buffer depth is now available in
    \FancyVerbBufferDepth.

  • Added option backgroundcolorboxoverlap and alias bgcolorboxoverlap.
    When there is a background color for a block of text, this oversizes the
    \colorbox behind each line by backgroundcolorboxoverlap, and then
    slightly overlaps these boxes by the same amount. Some PDF viewers and
    browsers produce rendering artifacts with a background color. These appear
    in between lines of text as extremely thin horizontal rules that are the
    color of the page behind the background. backgroundcolorboxoverlap
    eliminates rendering artifacts in most software that produces them, and
    otherwise significantly reduces artifacts (gpoore/minted#429).

  • Line breaking now works with very long lines (#28). Previously, very long
    lines could result in a "Dimension too large" error if they were longer
    than \maxdimen, or no error and also no line breaking if they were so
    long that the length overflowed and became negative.

  • Renamed \FV@bufferlengthname to \FancyVerbBufferLengthName. Added
    documentation for \FancyVerbBufferLengthName and
    \FancyVerbBufferLineName.

v1.10.0

18 Nov 04:12

Choose a tag to compare

  • Replaced FancyVerbBufferIndex counter with \FancyVerbBufferIndex macro
    to prevent issues with commands and environments such as \text from
    amsmath that modify counter behavior.

v1.9.0

16 Oct 12:28

Choose a tag to compare

  • Replaced buffer length counters with macros to prevent issues with
    \includeonly resetting counters.

v1.8.0

14 Sep 16:27

Choose a tag to compare

  • Added new option backgroundcolor (alias bgcolor). This provides a
    basic, \colorbox-based implementation of background colors for commands
    and environments. Added new option backgroundcolorvphantom (alias
    bgcolorvphantom) for customizing background height. Added new option
    backgroundcolorpadding (alias bgcolorpadding) for customizing padding
    between text and the edge of the region with background color.

  • Added option insertenvname. This customizes the verbatim environment
    used by \VerbatimInsertBuffer.

  • When numberblanklines=false, highlightlines no longer highlights blank
    lines at the end of a highlighted range (#25, gpoore/minted#226).

  • An unnecessary line break is no longer inserted before the last "word" of a
    line when it is preceded by a long "word" that is broken internally as a
    result of breakbefore, breakafter, or breakanywhere (#26).

  • Added option breakpreferspaces (default true). This determines whether
    line breaks are preferentially inserted at normal spaces rather than at
    other locations allowed by breakbefore, breakafter, or breakanywhere
    (#26).

  • Added option breakanywhereinlinestretch (gpoore/minted#387).

  • \FVExtraReadVArg now takes a multi-line (but not multi-paragraph)
    verbatim argument. The new \FVExtraReadVArgSingleLine provides the old
    functionality of taking an argument restricted to a single line
    (gpoore/minted#376).

  • By default, \Verb and \SaveVerb now take multi-line (but not
    multi-paragraph) verbatim arguments. The old behavior of requiring
    verbatim arguments to be on a single line can be restored by setting the
    new option vargsingleline to true.

  • Added documentation for undocumented fancyvrb option listparameters
    (gpoore/minted#256).

  • Expanded breaklines documentation with discussion of limitations and
    alternatives (gpoore/minted#400).

v1.7.0

16 May 18:36

Choose a tag to compare

  • Added new command \VerbatimClearBuffer.

  • VerbatimBuffer environments with the same buffer name now append to the
    same buffer, regardless of the value of globalbuffer. Previously,
    globalbuffer=false caused any pre-existing buffer to be cleared. Now,
    globalbuffer=false causes anything that is appended to the buffer to be
    removed at the end of the environment, but the entire buffer is not
    cleared.

  • \FVExtraUnexpandedReadStarOArgMArgBVArg now checks that the final
    argument it reads is braced (#22).

  • Text that immediately follows \VerbatimInsertBuffer is no longer indented
    to start a new paragraph.

  • Updated tcblisting usage in docs for compatibility with the latest
    tcolorbox.

v1.6.1

29 Nov 05:13

Choose a tag to compare

  • Fixed bug from v1.6 that caused a space following a comma to be lost (#21).