MENYOKI.CONF(5)

πŸ“¦
version 1.8.0 Β· 2 versions
, in arch rolling, nixpkgs unstable

πŸ’– MENYOKI.CONF(5) πŸ’–

okay so bestie, welcome to the menyoki manual β€” this page is MENYOKI.CONF(5), and it's literally all about the config file. no cap, it's the glow-up your command line never knew it needed ✨

πŸ¦‹ SYNOPSIS

menyoki will look for your config in these places, in this order-ish vibe:

$MENYOKI_CONFIG
$HOME/.config/menyoki.conf
$HOME/.config/menyoki/menyoki.conf
$HOME/.config/menyoki/config

🌸 DESCRIPTION

so here's the tea: you can override the default command line arguments with a configuration file. yup, your fave flags but pre-loaded. you can point at it with the --config option, or with the $MENYOKI_CONFIG environment variable. OR β€” and this is the lowkey best part β€” you can just drop it in a location where menyoki already looks by default (see SYNOPSIS above, she's right there πŸ’…).


✨ GENERAL ✨

these options live in the [general] section. the main characters of the whole file, honestly.

  • verbose β€” increase logging verbosity. she's chatty, she's telling you everything πŸ—£οΈ
  • quiet β€” do not show output. silent treatment, but make it intentional 🀫
  • color <HEX> β€” set the main color. [default: 3AA431]

πŸŽ€ RECORD πŸŽ€

options that belong to the [record] section. screen recording era πŸ’–

  • root β€” record the root window
  • focus β€” record the focused window
  • select β€” select the window to record
  • parent β€” record the parent of the window
  • with-alpha β€” record with the alpha channel
  • no-keys β€” disable the action keys while recording
  • mouse β€” select the window with mouse click
  • action-keys <KEYS> β€” set the action keys [default: LAlt-S,LAlt-Enter]
  • cancel-keys <KEYS> β€” set the cancel keys [default: LControl-D,Escape]
  • border <BORDER> β€” set the border width [default: 1]
  • padding <T:R:B:L> β€” set the record area padding
  • size <WxH> β€” set the record area size
  • duration <S> β€” set the duration for recording [default: ∞]
  • countdown <S> β€” set the countdown before recording [default: 3]
  • timeout <S> β€” set the timeout for window selection [default: 300]
  • interval <MS> β€” set the refresh interval for window selection [default: 10]
  • font <FONT> β€” set the font to use for window selection
  • monitor <NUM> β€” set the monitor to record as root window
  • command β€” set the command to run

🧚 SPLIT 🧚

options that belong to the [split] section. breaking an animation into frames, we love a decomposition moment βœ‚οΈ

  • dir <DIRECTORY> β€” set the output directory
  • file β€” set the animation file

πŸ”₯ MAKE πŸ”₯

options that belong to the [make] section. frames go in, animation comes out πŸŒ€

  • no-sort β€” use frames in the order given
  • fps <FPS> β€” set the FPS [default: 20]
  • quality <QUALITY> β€” set the frame quality (1-100) [default: 75]
  • repeat <REPEAT> β€” set the number of repetitions [default: ∞]
  • dir <DIRECTORY> β€” set the directory to read frames
  • format <FORMAT> β€” set the animation format [default: gif] [possible values: gif, apng]

πŸ’œ CAPTURE πŸ’œ

options that belong to the [capture] section. screenshots but make it fashion πŸ“Έ

  • root β€” capture the root window
  • focus β€” capture the focused window
  • select β€” select the window to capture
  • parent β€” capture the parent of the window
  • with-alpha β€” capture with the alpha channel
  • mouse β€” select the window with mouse click
  • action-keys <KEYS> β€” set the action keys [default: LAlt-S,LAlt-Enter]
  • cancel-keys <KEYS> β€” set the cancel keys [default: LControl-D,Escape]
  • border <BORDER> β€” set the border width [default: 1]
  • padding <T:R:B:L> β€” set the capture area padding
  • size <WxH> β€” set the capture area size
  • countdown <S> β€” set the countdown before capturing [default: 0]
  • timeout <S> β€” set the timeout for window selection [default: 300]
  • interval <MS> β€” set the refresh interval for window selection [default: 10]
  • font <FONT> β€” set the font to use for window selection
  • monitor <NUM> β€” set the monitor to capture as root window
  • command β€” set the command to run

🌈 EDIT 🌈

options that belong to the [edit] section. this is the makeover montage section of the manpage, honestly πŸ’…

  • convert β€” convert image using the given encoder
  • grayscale β€” convert image to grayscale
  • invert β€” invert the colors of the image
  • crop <T:R:B:L> β€” apply padding to crop the image
  • resize <WxH> β€” resize the image without keeping the aspect ratio
  • ratio <RATIO> β€” resize the image proportionally by aspect ratio [default: 1.0]
  • rotate <ROTATE> β€” rotate the image (clockwise) [possible values: 90, 180, 270]
  • flip <FLIP> β€” flip the image [possible values: horizontal, vertical]
  • blur <SIGMA> β€” blur the image [default: 0.0]
  • hue <HUE> β€” adjust the hue of the image [default: Β±0]
  • contrast <CONTRAST> β€” adjust the contrast of the image [default: Β±0.0]
  • brightness <BRIGHTNESS> β€” adjust the brightness of the image [default: Β±0]
  • filter <FILTER> β€” set the sampling filter for scaling [default: lanczos3] [possible values: nearest, triangle, catmull-rom, gaussian, lanczos3]
  • file β€” set the input file

πŸ“ ANALYZE πŸ“

options that belong to the [analyze] section. detective mode activated πŸ”

  • timestamp β€” use Unix timestamp for report dates
  • time-zone <TIMEZONE> β€” set the time zone of the report [default: utc] [possible values: utc, local]
  • file β€” set the image file

⭐ VIEW ⭐

options that belong to the [view] section. just you and the image, having a moment πŸ‘€

  • transparent β€” display transparent image with transparent background
  • file β€” set the image file

🫢 SAVE 🫢

options that belong to the [save] section. naming files is an art form, iykyk 🎨

  • with-extension β€” always save the file with an extension
  • timestamp β€” add Unix timestamp to the file name
  • date <FORMAT> β€” add formatted date/time to the file name [default: %Y%m%dT%H%M%S]
  • file β€” set the output file

🎬 GIF 🎬

options that belong to the [gif] section.

  • gifski β€” use the gifski encoder
  • fast β€” encode 3 times faster (gifski)
  • fps <FPS> β€” set the FPS [default: 20]
  • quality <QUALITY> β€” set the frame quality (1-100) [default: 75]
  • repeat <REPEAT> β€” set the number of repetitions [default: ∞]
  • speed <SPEED> β€” set the animation speed [default: 1.0]
  • cut-beginning <S> β€” cut the beginning of the animation [default: 0.0]
  • cut-end <S> β€” cut the end of the anim [default: 0.0]

πŸ¦„ APNG πŸ¦„

options that belong to the [apng] section.

  • fps <FPS> β€” set the FPS [default: 20]
  • repeat <REPEAT> β€” set the number of repetitions [default: ∞]
  • speed <SPEED> β€” set the animation speed [default: 1.0]
  • cut-beginning <S> β€” cut the beginning of the animation [default: 0.0]
  • cut-end <S> β€” cut the end of the anim [default: 0.0]

πŸ‘‘ PNG πŸ‘‘

options that belong to the [png] section.

  • compression <COMPRESSION> β€” set the compression level [default: fast] [possible values: default, fast, best]
  • filter <FILTER> β€” set the filter algorithm [default: sub] [possible values: none, sub, up, avg, paeth]

🌸 JPG 🌸

options that belong to the [jpg] section.

  • quality <QUALITY> β€” set the image quality (1-100) [default: 90]

πŸ¦‹ WEBP πŸ¦‹

options that belong to the [webp] section.

  • quality <QUALITY> β€” set the lossy encoding quality (1-100) [default: 80]
  • lossless β€” use lossless encoding

πŸ’€ PNM πŸ’€

options that belong to the [pnm] section.

  • format <FORMAT> β€” set the PNM format [default: pixmap] [possible values: bitmap, graymap, pixmap, arbitrary]
  • encoding <ENCODING> β€” set the encoding for storing the samples [default: binary] [possible values: binary, ascii]

πŸ’œ ENVIRONMENT πŸ’œ

okay bestie this part is so useful. corresponding environment variables can be set for overriding the command line flags and options. the general prototype of the variables that menyoki checks is literally this:

MENYOKI_{SECTION}_{ARGUMENT}=value

plus β€” bonus round β€” MENYOKI_WINDOW_SYSTEM can be set to x11 or wayland for overriding the window system that is otherwise detected from the presence of WAYLAND_DISPLAY. yes, she detects it herself, but you can boss her around too 😌

🌟 Examples

the original put these in a table; we're doing a list because tables are not the vibe here. every command ↔ env var pair, exactly as she wrote it:

  • menyoki --quiet β†’ MENYOKI_GENERAL_QUIET=true
  • menyoki record gif --fps 10 save --timestamp β†’ MENYOKI_GIF_FPS=10 and MENYOKI_SAVE_TIMESTAMP=true
  • menyoki capture --size 200x300 jpg --quality 100 β†’ MENYOKI_CAPTURE_SIZE=200x300 and MENYOKI_JPG_QUALITY=100
  • menyoki edit test.png --ratio 2.0 --filter triangle β†’ MENYOKI_EDIT_RATIO=2.0 and MENYOKI_EDIT_FILTER=triangle
  • menyoki split test.gif --dir frames/ pnm --format graymap β†’ MENYOKI_SPLIT_DIR=frames/ and MENYOKI_PNM_FORMAT=graymap
  • menyoki analyze test.png --timestamp save --date %H%M%S β†’ MENYOKI_ANALYZE_TIMESTAMP=true and MENYOKI_SAVE_DATE=%H%M%S
  • menyoki view test.png --transparent β†’ MENYOKI_VIEW_TRANSPARENT=true

🫢 AUTHOR 🫢

written by Orhun ParmaksΔ±z <orhunparmaksiz@gmail.com> β€” king behavior, honestly πŸ‘‘

😭 REPORTING BUGS

contact the author via email, or use GitHub Issues for reporting bugs: <https://github.com/orhun/menyoki/issues/> β€” please be nice, bug reports are a love language πŸ›

Copyright Β© 2020-2024 Orhun ParmaksΔ±z

licensed under GPLv3: <https://gnu.org/licenses/gpl.html>

πŸ”— SEE ALSO


and that's the whole page, bestie πŸŽ€ this was menyoki 1.7.0, dated March 2023 β€” go forth and configurate πŸ’–

πŸ“¦ where this page comes from