maim [OPTIONS] [FILEPATH]
maim (make image) is an utility that takes a screenshot of your
desktop, and encodes a png or jpg image of it. By default it outputs the
encoded image data directly to standard output.
- -h, --help
- Print help and exit.
- -v, --version
- Print version and exit.
- -x,
--xdisplay=hostname:number.screen_number
- Sets the xdisplay to use.
- -f,
--format=STRING
- Sets the desired output format, by default maim will attempt to determine
the desired output format automatically from the output file. If that
fails it defaults to a lossless png format. Currently only supports `png`
or `jpg`.
- -i,
--window=WINDOW
- Sets the desired window to capture, defaults to the root window. Allows
for an integer, hex, or `root` for input.
- -g,
--geometry=GEOMETRY
- Sets the region to capture, uses local coordinates from the given window.
So -g 10x30-5+0 would represent the rectangle wxh+x+y where w=10, h=30,
x=-5, and y=0. x and y are the upper left location of this rectangle.
- -w,
--parent=WINDOW
- By default, maim assumes the --geometry values are in respect to the
provided --window (or root if not provided). This parameter overrides this
behavior by making the geometry be in respect to whatever window you
provide to --parent. Allows for an integer, hex, or `root` for input.
- -B,
--capturebackground
- By default, when capturing a window, maim will ignore anything beneath the
specified window. This parameter overrides this and also captures elements
underneath the window.
- -d,
--delay=FLOAT
- Sets the time in seconds to wait before taking a screenshot. Prints a
simple message to show how many seconds are left before a screenshot is
taken. See --quiet for muting this message.
- -u,
--hidecursor
- By default maim super-imposes the cursor onto the image, you can disable
that behavior with this flag.
- -m, --quality
- An integer from 1 to 10 that determines the compression quality. 1 is the
highest (and lossiest) compression available for the provided format. For
example a setting of `1` with png (a lossless format) would increase
filesize and decrease decoding time. While a setting of `1` on a jpeg
would create a pixel mush.
- -s, --select
- Enables an interactive selection mode where you may select the desired
region or window before a screenshot is captured. Uses the settings below
to determine the visuals and settings of slop.
- -b,
--bordersize=FLOAT
- Sets the selection rectangle's thickness.
- -p,
--padding=FLOAT
- Sets the padding size for the selection, this can be negative.
- -t,
--tolerance=FLOAT
- How far in pixels the mouse can move after clicking, and still be detected
as a normal click instead of a click-and-drag. Setting this to 0 will
disable window selections. Alternatively setting it to 9999999 would force
a window selection.
- -c,
--color=FLOAT,FLOAT,FLOAT,FLOAT
- Sets the selection rectangle's color. Supports RGB or RGBA input.
Depending on the system's window manager/OpenGL support, the opacity may
be ignored.
- -r,
--shader=STRING
- This sets the vertex shader, and fragment shader combo to use when drawing
the final framebuffer to the screen. This obviously only works when OpenGL
is enabled. The shaders are loaded from ~/.config/maim. See
https://github.com/naelstrof/slop for more information on how to create
your own shaders.
- -n,
--nodecorations=INT
- Sets the level of aggressiveness when trying to remove window decorations.
`0' is off, `1' will try lightly to remove decorations, and `2' will
recursively descend into the root tree until it gets the deepest available
visible child under the mouse. Defaults to `0'.
- -l,
--highlight
- Instead of outlining a selection, maim will highlight it instead. This is
particularly useful if the color is set to an opacity lower than 1.
- -D, --nodrag
- Allows you to click twice to indicate a selection, rather than
click-dragging.
- -q, --quiet
- Disable any unnecessary cerr output. Any warnings or info simply won't
print.
- -k,
--nokeyboard
- Disables the ability to cancel selections with the keyboard.
- -o,
--noopengl
- Disables graphics hardware acceleration.
Screenshot the active window and save it to the clipboard for
quick pasting.
maim -i $(xdotool getactivewindow) | xclip -selection clipboard -t image/png
Save a desktop screenshot with a unique ordered timestamp in the
Pictures folder.
maim ~/Pictures/$(date +%s).png
Save screenshot to the Pictures folder and add it to the clipboard
at the same time.
maim | tee ~/Pictures/$(date +%s).png | xclip -selection clipboard -t image/png
Prompt for a region to screenshot. Add a fancy shadow to it, then
save it to shadow.png.
maim -s | convert - \( +clone -background black -shadow 80x3+5+5 \) +swap -background none -layers merge +repage shadow.png
Dalton Nell (naelstrof@gmail.com)