← XeFM English | 日本語 · crftwr/xefm on GitHub · craftware

Trying XeFM in a Throwaway Home

English | 日本語

xefm try starts XeFM in the terminal inside a temporary home folder. Your own ~/.xefm — your config, your favorites, your extensions — is never read or changed, and the temporary home is deleted when XeFM exits. Use it to:

Trying it by hand

xefm try                              # plain XeFM
xefm try --ext ./hello-xefm           # with an extension package
xefm try --config ~/.xefm/config.py   # with a copy of your config

XeFM opens in this terminal. The keymap preset is already chosen and the Tip of the Day is off. The left pane opens on a few sample files. Quit XeFM as usual.

Option What it does
--ext SOURCE install this extension package: a folder, a .zip, an https:// zip or github:owner/repo. Repeat it for more than one
--config FILE use this config.py instead of XeFM’s template. XeFM uses a copy, so your file is not changed
--keymap afx / orthodox / native / vim the keymap preset (default: afx)
--left DIR, --right DIR open these folders instead of the samples
--keep-home keep the temporary home, and print where it is

Running a script

xefm try --ext ./hello-xefm --keys steps.json --screens out/ --record demo.cast

With --keys, XeFM runs out of sight in a terminal of its own and follows the script. After each step it saves the screen as text. It exits when the script ends, so nothing is left waiting. The script is a JSON list of steps:

[
  {"intent": "open the command palette", "keys": ["Ctrl-T"]},
  {"intent": "find the action", "keys": [{"text": "hello"}]},
  {"intent": "run it", "keys": ["Enter"]}
]
Option What it does
--screens DIR where the screens go (default: try-screens/)
--record FILE also record the whole session as an asciicast file
--size COLSxROWS the terminal’s size (default: 120x40)

In the --screens folder:

A recording plays with asciinema play demo.cast, or becomes a GIF with agg: agg demo.cast demo.gif.

Scripts need an extra package, pip install 'quality-loop[tui]', and do not run on Windows yet. Trying XeFM by hand works everywhere.

Things to know

See also