Skip to content

Releases: gadenbuie/xaringanExtra

xaringanExtra 0.8.0

19 May 18:40
ecec8cc
Compare
Choose a tag to compare

This release focuses entirely on improving the panelset feature, especially in Quarto web pages and slides. Panelset is also now a Quarto extension that can be installed with quarto add gadenbuie/xaringanExtra and can be used with any computation engine.

  • panelset now works even better in Quarto documents, using the same syntax as used for panelsets in R Markdown documents (#190).

  • panelset now supports a fenced div syntax where ::: {.panelset} is used to start a panelset and each panel is defined by a new heading within the fenced div. When used in this way, the heading level of the subsections is ignored, the highest level subsection heading within the fenced div determines the section level that creates a new panel (#191).

  • panelset CSS was revamped for better ergonomics, in particular to improve how the border bottom separating the tabs from the content and the bottom border of the active tab are handled. style_panelset_tabs() gains a new separator_color argument to replace tabs_border_bottom (#192).

  • panelset now fully supports panelset chunks in Quarto, either with #| panelset: true for chunk options or the alternative syntax specifying the panel names for the source and output panels (#193):

    ```{r}
    #| panelset:
    #|  - source: The Code
    #|  - output: The Result
    rnorm(10)
    ```

    Unlike in R Markdown, where you always need to place panelset chunks in a ::: {.panelset} div, in Quarto, panelset code chunks automatically create their own panelsets with two tabs (code and output). Use the ::: {.panelset} syntax to add more than one panelset code chunk to the same panelset (#196).

  • Nested panelsets are now supported (#194)! In xaringan slides and when using the hand-rolled panelset syntax, you can now nest panelsets within panelsets. In R Markdown or Quarto documents, panelsets chunks can be nested within panelset sections. Nesting panelset sections requires the fenced div syntax:

    # Nested fenced divs
    
    ::: {.panelset #outer}
    
    ## One
    
    Outer panel One.
    
    ::: {.panelset #inner}
    ### One A
    
    Inner panel One A.
    
    ### One B
    
    Inner panel One B.
    :::
    
    ## Two
    
    Outer panel Two.
    :::
  • panelset fully supports Quarto Revealjs Presentations. All of panelset’s features in xaringan are fully supported in Quarto slides, including automatically stepping through the panels on a slides (#195).

  • panelset now supports synchronized panels (#195)! Give each panelset a group attribute with a unique name, e.g. {.panelset group="language"}, and the selected tab will be synchronized across all other panelsets with the same group name. The tab selection is synchronized by tab name, so if the user switches from the “R” tab to the “Python” tab, all panelsets with group="language" will have their “Python” tab activated (if they have one).

    The chosen panel tab is stored in the user’s browser, which means that the user’s choice is reflected across all pages on your domain. It’s also remembered when they return to your page later (in the same browser). Technically, this feature uses the browser’s localStorage API and no user data is transmitted anywhere.

  • panelset is now also a Quarto extension that can be installed and used without requiring R (#195). To install the extension, run the following in your terminal.

    quarto add gadenbuie/xaringanExtra

    Then, in your Quarto document, add the following to the YAML front matter:

    filters:
      - panelset
  • panelset now forces the chunk options echo = TRUE and eval = TRUE, when panelset = TRUE is used. Without these options, panelset’s knitr hooks can’t correctly convert the chunk source and output into two separate panels.

    When these options are disabled via a chunk option on the panelset chunk, panelset will give an error to help you spot this issue early. But if echo and eval are globally set to FALSE, panelset will now automatically set them to TRUE. This is especially helpful in Quarto revealjs presentations where Quarto defaults to echo = FALSE (#196).

v0.7.0

16 Jul 14:18
5ebc3f0
Compare
Choose a tag to compare

xaringanExtra 0.7.0

  • BREAKING CHANGE: All arguments to use_banner() must be named. use_banner()
    now takes ... earlier since you may want to include style_banner() style
    arguments without having to specify all the other arguments (#169).

  • scribble can now be disabled on an individual slide by adding
    class: no-scribble to the slide (@mattwarkentin #166).

  • Embedding slides via embed_xaringan() no longer requires that you set
    self_contained: false in the R Markdown document. embed_xaringan() now
    automatically sets the data-external="1" attribute on the element embedding
    the xaringan slides (thanks @jhelvy, @drfurtado, #177).

  • editable now hides remark's "Paused" overlay when editing slides in
    presenter mode (#178).

Thanks!

@jhelvy, @drfurtado, @mattwarkentin

v0.6.0

07 Jun 14:56
72d2960
Compare
Choose a tag to compare

xaringanExtra 0.6.0 (2022-06-07)

New extras

  • Add banners to your slides with use_banner(). Banners are text (or other
    HTML) that appear on every slide, for example the title of your talk or a link
    to your slides online. (thanks @mattwarkentin and @dataning, #161)

Improved extras

  • Sideways panelsets collapse to standard panelsets with tabs above the content
    on small devices (max-width 480px). (#122)

  • Keep sideways panelset tabs on screen with long-scrolling content. (#123)

  • The panelset=TRUE chunk option now automatically sets results="hold"
    unless over-ridden by a local chunk option.

Fixed extras

  • share again no longer shows when viewing slides in the RStudio viewer pane. (#128)

  • use_xaringan_extras("panelset") is now equivalent to use_panelset().
    Previously the first would not install the knitr chunk hooks.

  • panelset now uses the xaringan knitr source hooks, restoring line highlighting
    in the source panel of panelset chunks. (#138)

  • Hide scribble controls when printing slides (thanks @yyzeng, #136).

  • text_poster() has been removed.

v0.5.0

13 Jun 19:17
Compare
Choose a tag to compare

v0.4.2

30 May 03:46
b182aa3
Compare
Choose a tag to compare
  • Added color presets to scribble: press 0 through 9 while drawing to
    quickly toggle through a preset color palette, customizable using the
    palette argument of use_palette() (thanks @kim-soo-hwan, #112, #117).

  • New feature: animated progress bars that don't interfere with the slide
    number. Simply add use_progress_bar() to your slides! (#109, #118)

v0.4.0

28 Mar 02:24
Compare
Choose a tag to compare

New extension: Always play gifs from the start with use_freezeframe() (#102)

v0.3.1

13 Mar 20:01
Compare
Choose a tag to compare
  • Breaking change: scribble now only accepts hexadecimal pen colors. You
    can still use rgb() syntax by calling the rgb() function in R: instead of
    "rgb(61, 255, 232)", you can write rgb(61, 255, 232, maxColorValue = 255).
  • Fix a few other minor issues with scribble:
    • Fix toolbox unminimizing after mouseover when it should stay minimized
    • Don't show the eraser cursor until the mouse moves

v0.3.0

08 Mar 03:15
Compare
Choose a tag to compare

New addin: scribble! Now you can draw on your slides! Huge thanks to
@mattwarkentin for developing and contributing this extension. With
use_scribble() you can draw on your slides using your mouse or a tablet with
stylus. Drawings stay with each slide and scale when the slides are resized.
You can erase individual lines, undo or redo with keyboard shortcuts, or clear
the drawings on the current slide easily with the provided toolbox.
Thanks also to @LauraRK and @rpruim for suggestions and feedback.
(@mattwarkentin #87)

v0.2.6

02 Mar 14:30
Compare
Choose a tag to compare
  • New addin: search! Easily search through the text in your slides.
    (thanks @statnmap, #82)

  • All extensions now use version numbers that are independent of the
    xaringanExtra package version. This will reduce the number of copies of an
    extension that are added to a blogdown site's dependencies by ensuring that
    unrelated package updates don't change the extension version number.

v0.2.5

17 Feb 05:14
Compare
Choose a tag to compare
  • Resizing the tiles in Tile View now works when using browser zoom in/out