Skip to content

User Options and Variables

Every documented variable, grouped by the chapter that defines it. Each row links to the entry, which gives the accepted values, the default and the scope. A buffer-local variable can hold a different value in each buffer; a process-wide one applies everywhere.

Variable Purpose
ebox-image-converters Ordered (NAME . FUNCTION) image converters, called only by preparation.
Variable Purpose
ebox-viewport-settle-delay Seconds of quiet after the last size change before Ebox reflows.
ebox-viewport-width Viewport width in pixels for rendering outside a mount, or nil.
ebox-viewport-height Viewport height in lines for rendering outside a mount, or nil.
Variable Purpose
ebox-scroll-step Lines scrolled by one wheel step or ebox-scroll-down.
ebox-swipe-distance Horizontal pixels a gesture travels before it counts as a swipe.
ebox-swipe-quiet Seconds without horizontal wheel events that end a swipe gesture; a direction change also ends it immediately.
Variable Purpose
etaf-direction-scheme Direction scheme of the key layer: arrows (default) or vim.
ebox-buffer-mode-map Keymap of mounted Ebox buffers: scrolling, focus navigation and activation.
Variable Purpose
ebox-input-edit-commands Commands that edit the session value when a session :keymap binds them.
Variable Purpose
etaf-animation-easings Alist of (NAME . FUNCTION) easing curves from progress to eased progress.
etaf-animation-interpolators Ordered ((PREDICATE . FUNCTION) ...) conversions consulted before built-in interpolation.
etaf-animation-frame-rate Display clock rate in frames per second for running animations.
etaf-animation-speed Animation speed multiplier, a positive number; 1.0 is normal speed.
etaf-animation-paused While non-nil, the shared clock stops advancing.
etaf-animation-enabled Whether animations interpolate over time; t by default.
Variable Purpose
etaf-video-audio Whether new videos play their source's audio track by default.
etaf-video-audio-volume Default audio volume for new videos, from 0 to 100.
etaf-video-density-ramp Characters used for one video pixel in the ascii render mode.
etaf-video-display-fps Display timer rate in frames per second for new video playback.
etaf-video-ffmpeg-program Name or absolute path of the ffmpeg executable used to decode video.
etaf-video-ffplay-program Name or absolute path of the ffplay executable used for audio.
etaf-video-ffprobe-program Name or absolute path of the ffprobe executable used for metadata.
Variable Purpose
etaf-ui-icon-default-set The registered fallback style, initially nerd; bind or set it before rendering.
Variable Purpose
etaf-ui-markdown-flavor Default markdown dialect of etaf-ui-markdown-parse.
etaf-ui-markdown-flavors Named dialects and the extension flags they enable.
Variable Purpose
ekp-alignment Paragraph alignment mode.
ekp-first-line-indent First-line indentation: pixels, or t for 2 em of the paragraph font.
ekp-parshape Per-line layout, as a sequence of (INDENT . WIDTH) cons cells.
ekp-line-penalty Penalty for each line break. Higher = fewer lines. Default 10.
ekp-hyphen-penalty Penalty for hyphenated breaks. Higher = avoid hyphenation. Default 50.
ekp-adjacent-fitness-penalty Penalty when adjacent lines differ in tightness by more than one class.
ekp-consecutive-hyphen-penalty Base penalty multiplier for consecutive hyphenated lines.
ekp-last-line-min-ratio Minimum fill ratio for last line (0.0-1.0).
ekp-last-line-short-penalty Penalty multiplier for underfilled last lines.
ekp-looseness Target line count offset: 0=optimal, +1=looser (more lines), -1=tighter.
ekp-ragged-stretch-pixel Per-line end-of-line flexibility (pixels) for non-justify alignment.
ekp-default-cws-stretch-pixel Max stretched pixel of whitespace between CJK chars.
ekp-kinsoku-profile Kinsoku profile used when compiling paragraph break permissions.
ekp-cjk-no-line-start-extra Custom/Japanese CJK letters that must not start a line.
ekp-cjk-no-line-end-extra Custom CJK characters that must not end a line.
ekp-protrusion Non-nil enables right-edge character protrusion (hanging punctuation).
ekp-protrusion-ratios Alist CLASS → RATIO of the glyph width allowed to protrude.
ekp-number-unit-suffixes Exact suffixes recognized by the compact number-unit classifier.
ekp-break-policy Text property controlling regional break policy.
ekp-inline-code-policy Default break policy for automatic inline code spans.
ekp-token-break-policies Break policies for bounded automatic token classifiers.
ekp-overlong-token-policy Policy for ordinary non-CJK tokens wider than the measure.
ekp-hyphenation Global discretionary hyphenation policy.
ekp-latin-lang Language code for hyphenation (e.g., "en_US", "de_DE").
ekp-buffer-measure Measure used for automatic and default manual buffer layout.
ekp-buffer-margin-pixel Pixels reserved inside the window body width.
ekp-buffer-skip-faces Faces whose paragraphs stay verbatim.
ekp-buffer-inline-faces Faces whose exact spans use ekp-inline-code-policy.
ekp-buffer-skip-predicate Function called with a paragraph string that should stay verbatim.
ekp-buffer-mode-policy-alist Mode profiles consulted by automatic and manual buffer layout.
ekp-auto-justify-lazy-threshold Buffer size beyond which whole-buffer reflows run visible-first.
ekp-auto-justify-paragraph-limit Maximum hard-paragraph characters planned automatically.
ekp-auto-justify-resize-delay Seconds to debounce window resize reflows.
ekp-auto-justify-tick-budget Seconds of work allowed in one lazy reflow tick.
ekp-auto-justify-native-append Use the loaded native module for automatic live append DP.
ekp-para-cache-limit Maximum number of cached paragraphs.
ekp-use-c-module When non-nil, use C dynamic module for DP computation if available.
Variable Purpose
etaf-performance-max-records Maximum completed operations retained by the recorder.
  • In EKP a parameter can come from three places. A buffer-local value wins over a matching mode profile, which wins over the global variable; the entry for each parameter says how it is read.
  • Some variables are read every time the subsystem runs, so a change takes effect from the next key press or the next frame; others are captured when a new video, animation or session starts. The entry says which.
  • ebox-buffer-mode-map holds a keymap and ebox-input-edit-commands a command list; the other rows hold data values.