PDFPCRC(5)

πŸ“¦
version 4.7.0 Β· 5 versions
, in arch rolling, debian trixie, fedora 43, fedora 44, ubuntu questing, ubuntu resolute, ubuntu stonking

🌸 PDFPCRC(5) β€” the pdfpc config file, bestie edition πŸ’…

okay so this is the pdfpcrc page from the File Formats Manual (section 5, we're fancy) and it's literally just the ✨ configuration file ✨ for pdfpc. Sit down, grab a strawberry πŸ“, and let's get into it.


πŸŽ€ NAME πŸŽ€

pdfpcrc β€” the pdfpc configuration file. that's it, that's the name, iconic.


πŸ¦‹ DESCRIPTION πŸ¦‹

So here's the tea: pdfpc(1) reads its system-wide configuration file first, and then it peeks at your user-specific one if that one actually exists. Two files, one order, no cap.

✨ Keybindings ✨

These are the commands it accepts, bestie:

  • bind <key> <action> [<arg>] β€” ties a key to an action, and if that action needs an argument you pass it along too 🫢
  • unbind <key> β€” frees that key from whatever it was doing. let it go, it's healing era
  • unbind_all β€” wipes every key binding. all of them. clean slate πŸ’€
  • mouse <button> <action> β€” binds a mouse button to an action πŸ–±οΈ
  • unmouse <button> β€” unbinds a mouse button
  • unmouse_all β€” clears every single mouse binding

Key names? You can get those with the xev(1) utility. And heads up, names are case sensitive β€” so don't come crying to me when KP_1 doesn't act like kp_1. 😭

Key combos with modifiers go in the form <mod>+<key>, where <mod> is one of:

  • S β€” for shift
  • C β€” for control
  • A/M β€” for Alt/Meta

Also there's a lil shorthand: if it's shift + an alphabetic character, just give the uppercase version of that character. So S+r and R? literally the same thing. same energy, same result. ✨

Wanna see every possible action? That's the -L command line option on pdfpc(1). Wanna see which bindings you've actually got defined? Use the -B command line option. iykyk πŸ‘‘

🌈 Options 🌈

Some changes can be made permanent through the config file. The syntax is:

option <option_name> <option_value>

And here are all the option_name's it recognizes β€” yes, all of them, I'm not skipping a single one:

  • black-on-end β€” drops an extra black slide at the end of the presentation (bool, Default is false). dramatic exit, honestly
  • cache-clean-period β€” how often (in units of s) to check for expired cached content (int, Default is 60)
  • cache-expiration β€” how long (in units of s) to keep (pre)rendered slides in the cache (int, Default is 600). Set it to a negative value and cached slides stay forever πŸ’–
  • cache-max-rtime β€” the max time (in units of ms) it takes to render a slide for its cache to be protected from expiration (int, Default is 1000)
  • cache-min-rtime β€” the min time (in units of ms) it takes to render a slide for it to actually get cached (int, Default is 10)
  • cache-max-usize β€” the max size (in units of kB) of a slide image to store it uncompressed in the cache (int, Default is 256)
  • current-height β€” percentage of the height of the "main" presenter area used for the current slide (int, Default is 80)
  • current-size β€” percentage of the width of the presenter screen used for the current slide (int, Default is 60)
  • cursor-timeout β€” mouse inactivity timeout (in units of s) after which the cursor gets hidden (int, Default is 2). bye cursor πŸ‘‹
  • disable-input-autodetection β€” do NOT automatically detect the type (pen or eraser) of tablet input devices (bool, Default is false)
  • disable-input-pressure β€” ignore pressure sensitivity of tablet input devices (pen or eraser) even when the hardware supports it (bool, Default is false)
  • disable-scrolling β€” disables scrolling events on the presenter window (bool, Default is false)
  • disable-tooltips β€” disables tooltips for the toolbox (bool, Default is false)
  • enable-auto-srt-load β€” tries to load video subtitle files automatically. For each video media, pdfpc appends ".srt" to the media URI and attempts to load a subtitle file (in the SRT format) from that location (bool, Default is false) 🎬
  • final-slide β€” show the final slide of an overlay group instead of the next slide. If the user reaches the last slide of the overlay group, the next slide will be shown again.
  • move-on-mapped β€” dual-monitor full-screen window placement is a tricky business, fr fr. Some window managers (e.g., FVWM) ignore the placement if it's made before the window is shown. This option enables a workaround (bool, Default is false)
  • next-height β€” percentage of the height of the "main" presenter area used for the next slide (int, Default is 70)
  • next-slide-first-overlay β€” if the next slide is an overlay group, show the first slide of that group in the next slide view instead of the last slide of that group (bool, Default is false)
  • overview-min-size β€” minimum width for the overview miniatures, in pixels (int, Default is 150)
  • pointer-color β€” set the pointer color. Can be a literal color name or a #rrggbb representation (default is red) ❀️
  • pointer-opacity β€” set the pointer opacity in percent (int, default is 50)
  • pointer-size β€” set the initial pointer size, in pixels (int, default is 10)
  • prerender-delay β€” delay (in seconds) to launch the pre-rendering process after a slide change (int, default is 4)
  • prerender-slides β€” number of slides ahead of the current one to pre-render (int, default is 2). Set to 0 to disable pre-rendering; set to a negative number to pre-render all at once πŸ”₯
  • presentation-interactive β€” let the presentation window react to user actions, similar to the presenter (bool, default is false). Note that if the presentation window is the only pdfpc GUI (i.e., if run with -sS), it will be interactive irrespective of this flag.
  • presentation-screen β€” screen to be used for the presentation (output name, see e.g. "xrandr --listmonitors")
  • presenter-screen β€” screen to be used for the presenter (output name)
  • rest-https β€” run the REST server in the TLS mode (bool, Default is false) πŸ”’
  • rest-port β€” port of the REST server (int, Default is 8088)
  • rest-passwd β€” password to authenticate against the REST server (string, if not set, a randomly generated one is used) πŸ™ˆ
  • rest-static-root β€” root path to serve static HTML content. If it begins with "/", it's interpreted as the absolute path; otherwise, relative to /usr/share/pdfpc (string, Default is "www")
  • spotlight-opacity β€” set the opacity of the area outside of the spotlight, in percent (int, default is 50)
  • spotlight-size β€” set the initial spotlight size, in pixels (int, default is 100)
  • status-height β€” percentage of the height of the presenter screen left for the status area (timer, progress, icons), leaving (100 - status_height)% for the "main" area (int, Default is 10)
  • switch-screens β€” switch the presentation and the presenter screen (bool, Default is false)
  • time-of-day β€” display the current time instead of the timer ⏰
  • timer-pace-color β€” enable color hints of the timer, continuously indicating whether the presentation is progressing according to the expected pace (bool, Default is true). See the timer operation description in pdfpc(1).
  • toolbox β€” show the toolbox on startup (bool, Default is false) 🧰
  • toolbox-direction β€” set the toolbox direction. LtoR, RtoL, TtoB, or BtoT for the left-to-right, right-to-left, top-to-bottom, or botton-to-top, respectively (Default is LtoR)
  • toolbox-minimized β€” set the initial toolbox state minimized (bool, Default is false)
  • transition-fps β€” frames-per-second for slide transitions (int, Default is 25). Set to 0 to disable all transitions.
  • windowed-mode β€” set the initial windowed mode: none, presenter, presentation, or both (Default is presenter)

πŸ“ EXAMPLES πŸ“

Wanna change the drawing pen color using the numerical pad keys? say less:

bind S+KP_1    setPenColor  red
bind S+KP_2    setPenColor  green
bind S+KP_3    setPenColor  blue

And if you want the black-on-end option on always, you'd add this to the config file:

option black-on-end true

ate. periodt. πŸ’…


πŸ’œ FILES πŸ’œ

  • /etc/pdfpcrc β€” System-wide configuration file
  • $XDG_CONFIG_HOME/pdfpc/pdfpcrc β€” User configuration file (if $XDG_CONFIG_HOME is not set, $HOME/.config will be used).

🧚 SEE ALSO 🧚


that's the whole page, bestie. go forth and configure responsibly 🫢

okay so this was the pdfpcrc page from the File Formats Manual β€” footer says PDFPCRC(5) and it's the page that ships with pdfpc, version vibes and date and all. mwah, bye πŸ‘‘βœ¨