Newer
Older
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
.Ar C No for Control ,
.Ar S No for Shift and
Birte Kristina Friesel
committed
.Ar 1 , 4 No for Mod1 and Mod4 .
To match an uppercase letter like
.Qq S
instead of
.Qq s ,
the Shift modifier is not required.
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
Specifying an
.Ar action
without any keys unbinds it (i.e. the default bindings are removed).
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
.Em Note :
Do not use the same keybinding for multiple actions.
.Nm
does not check for conflicting bindings, so their behaviour is undefined.
.
Either unbind the unwanted action, or bind it to another unused key.
.
The order in which you bind / unbind does not matter, though.
.
.Pp
.
In an image window, the following keys may be used
.Pq The strings in Bo square brackets Bc are the config action names :
.
.
.It a Bq toggle_actions
Birte Kristina Friesel
committed
.
Toggle actions display
.Pq see Cm --draw-actions
Birte Kristina Friesel
committed
.It A Bq toggle_aliasing
.
Enable/Disable anti-aliasing
.
.It c Bq toggle_caption
Birte Kristina Friesel
committed
.
Caption entry mode. If
.Cm --caption-path
has been specified, then this enables caption editing. The caption at the
bottom of the screen will turn yellow and can be edited. Hit return to confirm
and save the caption, or escape to cancel editing. Note that you can insert
an actual newline into the caption using
.Aq CTRL+return .
.
.It d Bq toggle_filenames
Birte Kristina Friesel
committed
.
Toggle filename display
.Pq see Cm --draw-filename
.It e Bq toggle_exif
.
.Pq only if compiled with exif=1
Toggle EXIF tag display
.
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
Save the current filelist as
.Qq feh_PID_ID_filelist
.
.It h Bq toggle_pause
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
Pause/Continue the slideshow. When it is paused, it will not automatically
change slides based on
.Cm --slideshow-delay .
.It i Bq toggle_info
.
Toggle info display
.Pq see Cm --info
.
.It k Bq toggle_keep_vp
.
Toggle zoom and viewport keeping. When enabled,
.Nm
will keep zoom and X, Y offset when switching images.
.
Birte Kristina Friesel
committed
.
Show menu. Use the arrow keys and return to select items,
.Aq escape
to close the menu.
.
.It n , Ao Space Ac , Ao Right Ac Bq next_img
Birte Kristina Friesel
committed
.
.
.It o Bq toggle_pointer
Birte Kristina Friesel
committed
.
.
.It p , Ao Backspace Ac , Ao Left Ac Bq prev_img
Birte Kristina Friesel
committed
.
.
.It q , Ao Escape Ac Bq quit
Birte Kristina Friesel
committed
.
.
.It r Bq reload_image
Birte Kristina Friesel
committed
.
Reload current image. Useful for webcams
.
.It s Bq save_image
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
Save the current image as
.Qq feh_PID_ID_FILENAME
.
.It v Bq toggle_fullscreen
Birte Kristina Friesel
committed
.
.
.It w Bq size_to_image
Birte Kristina Friesel
committed
.
Change window size to fit current image size
Birte Kristina Friesel
committed
.
.
.It z Bq jump_random
Birte Kristina Friesel
committed
.
Jump to a random position in the current filelist
.
.It < , > Bq orient_3 , orient_1
Birte Kristina Friesel
committed
.
In place editing - rotate the images 90 degrees (counter)clockwise.
The rotation is lossless, but may create artifacts in some image corners when
used with JPEG images. Rotating in the reverse direction will make them go
away. See
.Xr jpegtran 1
for more about lossless JPEG rotation.
.Em Note:
jpegtran does not update EXIF orientation tags. However,
.Nm
assumes that you use the feature to normalize image orientation and want it to
be displayed this way everywhere. After every rotation, it will unconditionally
set the EXIF orientation to 1
.Pq Qq 0,0 is top left .
Should you need to reverse this, see
.Xr jpegexiforient 1 .
.
.It _ Bq flip
.
In place editing - vertical flip
.
.It | Bq mirror
.
In place editing - horizontal flip.
Again, see
.Xr jpegtran 1
for more information.
.
.It 0 .. 9 Bq action_0 .. action_9
Birte Kristina Friesel
committed
.
Execute the corresponding action
.Pq 0 = Cm --action , No 1 = Cm --action1 No etc.
.
.It Ao Return Ac Bq action_0
Birte Kristina Friesel
committed
.
Run the command defined by
.Cm --action
.
.It Ao home Ac Bq jump_first
Birte Kristina Friesel
committed
.
.
.It Ao end Ac Bq jump_last
Birte Kristina Friesel
committed
.
.
.It Ao page up Ac Bq jump_fwd
Birte Kristina Friesel
committed
.
Go forward ~5% of the filelist
.
.It Ao page down Ac Bq jump_back
Birte Kristina Friesel
committed
.
Go backward ~5% of the filelist
.
.It + Bq reload_plus
Birte Kristina Friesel
committed
.
Increase reload delay by 1 second
.
.It - Bq reload_minus
Birte Kristina Friesel
committed
.
Decrease reload delay by 1 second
.
.It Ao delete Ac Bq remove
Birte Kristina Friesel
committed
.
Remove current file from filelist
.
.It Ao CTRL+delete Ac Bq delete
Birte Kristina Friesel
committed
.
Remove current file from filelist and delete it
.
.It Ao keypad left Ac , Ao Ctrl+Left Ac Bq scroll_left
Birte Kristina Friesel
committed
.
.
.It Ao keypad right Ac , Ao Ctrl+Right Ac Bq scroll_right
Birte Kristina Friesel
committed
.
.
.It Ao keypad up Ac , Ao Ctrl+Up Ac Bq scroll_up
Birte Kristina Friesel
committed
.
.
.It Ao keypad down Ac , Ao Ctrl+Down Ac Bq scroll_down
Birte Kristina Friesel
committed
.
Scroll down.
Note that the scroll keys work without anti-aliasing for performance reasons,
hit the render key after scrolling to antialias the image.
.It Aq Alt+Right Bq scroll_right_page
.It R, Ao keypad begin Ac Bq render
Birte Kristina Friesel
committed
.
Antialias the image
.
.It Ao keypad + Ac , Ao Up Ac Bq zoom_in
Birte Kristina Friesel
committed
.
.
.It Ao keypad - Ac , Ao Down Ac Bq zoom_out
Birte Kristina Friesel
committed
.
.It *, Ao keypad * Ac Bq zoom_default
Birte Kristina Friesel
committed
.
.It /, Ao keypad / Ac Bq zoom_fit
Birte Kristina Friesel
committed
.
The following keys bindings are used for the
.Nm
menu:
.
.Bl -tag -width indent
.
.It Ao Escape Ac Bq menu_close
Birte Kristina Friesel
committed
.
Close the menu
.
.It Ao Up Ac Bq menu_up
Birte Kristina Friesel
committed
.
Highlight previous menu item
.
.It Ao Down Ac Bq menu_down
Birte Kristina Friesel
committed
.
Highlight next menu item
.
.It Ao Left Ac Bq menu_parent
Birte Kristina Friesel
committed
.
Highlight parent menu item
.
.It Ao Right Ac Bq menu_child
Birte Kristina Friesel
committed
.
Highlight child menu item
.
.It Ao Return Ac , Ao Space Ac Bq menu_select
Birte Kristina Friesel
committed
.
Select highlighted menu item
.
.El
Birte Kristina Friesel
committed
.
.Sh BUTTONS CONFIG SYNTAX
.
.Pa .config/feh/buttons .
This works like the keys config file: the entries are of the form
.Qq Ar action Op Ar binding .
.
.Pp
.
Each
.Ar binding
is a button name. It may optionally start with modifiers for things like
Control, in which case
.Ar binding
looks like
.Ar mod Ns No - Ns Ar button
.Pq for example "C-1" for Ctrl + Left button .
.
.Pp
.
.Em Note :
Do not use the same button for multiple actions.
.Nm
does not check for conflicting bindings, so their behaviour is undefined.
.
Either unbind the unwanted action, or bind it to another unused button.
.
The order in which you bind / unbind does not matter, though.
.
.Pp
.
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
For the available modifiers, see
.Sx KEYS CONFIGURATION SYNTAX .
.
.
.Ss BUTTONS
.
In an image window, the following buttons may be used
.Pq The strings in Bo square brackets Bc are the config action names :
.
.Bl -tag -width indent
.
.It Bq reload
.
Reload current image
.
.It 1 Ao left mouse button Ac Bq pan
.
pan the current image
.
.It 2 Ao middle mouse button Ac Bq zoom
.
Zoom the current image
.
.It 3 Ao right mouse button Ac Bq menu
.
Toggle menu
.
.It 4 Ao mousewheel down Ac Bq prev
.
Show previous image
.
.It 5 Ao mousewheel up Ac Bq next
.
Show next image
.
.It Ctrl+1 Bq blur
.
Blur current image
.
.It Ctrl+2 Bq rotate
.
Rotate current image
.
.It unbound Bq zoom_in
.
Zoom in
.
.It unbound Bq zoom_out
.
Zoom out
.
.
.El
.
.
Default Bindings:
When viewing an image, mouse button 1 pans the image
.Pq moves it around
or, when only clicked, moves to the next image
.Pq slideshow mode only .
Quick drags with less than 2px of movement per axis will be treated as clicks
.
Mouse button 2 zooms
.Po click and drag left->right to zoom in, right->left to zoom out, click once
to restore zoom to 100%
and mouse button 3 opens the menu.
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
CTRL+Button 1 blurs or sharpens the image
.Pq drag left to blur, right to sharpen ;
CTRL+Button 2 rotates the image around the center point.
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
A note about pan and zoom modes:
In pan mode, if you reach a window border but haven't yet panned to the end of
the image,
.Nm
will warp your cursor to the opposite border so you can continue panning.
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
When clicking the zoom button and immediately releasing it, the image will be
back at 100% zoom. When clicking it and moving the mouse while holding the
button down, the zoom will be continued at the previous zoom level. The zoom
will always happen so that the pixel on which you entered the zoom mode
remains stationary. So, to enlarge a specific part of an image, click the
zoom button on that part.
.Sh SIGNALS
In slideshow mode,
.Nm
handles the following signals:
Birte Kristina Friesel
committed
.
.Bl -tag -width indent
Birte Kristina Friesel
committed
.
.It Dv SIGUSR1
Birte Kristina Friesel
committed
.
Switch to next image
Birte Kristina Friesel
committed
.
.It Dv SIGUSR2
Birte Kristina Friesel
committed
.
Switch to previous image
Birte Kristina Friesel
committed
.
.El
.
Here are some examples of useful option combinations. See also:
.Aq http://feh.finalrewind.org/examples/
Birte Kristina Friesel
committed
.
.
.It feh /opt/images
Birte Kristina Friesel
committed
.
Show all images in /opt/images
.
Birte Kristina Friesel
committed
.
Recursively show all images found in /opt/images and subdirectories
.
.It feh -rSfilename /opt/images
Birte Kristina Friesel
committed
.
Same as above, but sort by filename. By default, feh will show files in the
order it finds them on the hard disk, which is usually somewhat random.
.
.It feh -t -Sfilename -E 128 -y 128 -W 1024 /opt/images
Birte Kristina Friesel
committed
.
Show 128x128 pixel thumbnails, limit window width to 1024 pixels.
.
.It feh -t -Sfilename -E 128 -y 128 -W 1024 -P -C /usr/share/fonts/truetype/ttf-dejavu/ -e DejaVuSans/8 /opt/images
Birte Kristina Friesel
committed
.
Same as above, but enable thumbnail caching in ~/.thumbnails and use a smaller
font.
.
.It feh -irFarial/14 -O index.jpg /opt/images
Birte Kristina Friesel
committed
.
Make an index print of /opt/images and all directories below it, using 14 point
Arial to write the image info under each thumbnail. Save the image as
index.jpg and don't display it, just exit. Note that this even works without
a running X server
.It feh --unloadable -r /opt/images
Birte Kristina Friesel
committed
.
Print all unloadable images in /opt/images, recursively
.It feh -f by_width -S width --reverse --list \&.
.
Write a list of all images in the directory to by_width, sorted by width
.Pq widest images first
.
.It feh -w /opt/images/holidays
Birte Kristina Friesel
committed
.
Open each image in /opt/images/holidays in its own window
.It feh -FD5 -Sname /opt/images/presentation
Birte Kristina Friesel
committed
.
Show the images in .../presentation, sorted by name, in fullscreen,
automatically change to the next image after 5 seconds
.It feh -rSwidth -A Qo mv %F ~/images/\&%N Qc /opt/images
Birte Kristina Friesel
committed
.
View all images in /opt/images and below, sorted by width, move an image to
~/image/image_name when enter is pressed
.It feh --start-at ./foo.jpg \&.
Birte Kristina Friesel
committed
.
View all images in the current directory, starting with foo.jpg. All other
images are still in the slideshow and can be viewed normally
.It feh --start-at foo.jpg *
Birte Kristina Friesel
committed
.
Same as above
.It feh --info \&"exifgrep '\&(Model\&|DateTimeOriginal\&|FNumber\&|ISO\&|Flash\&)' %F \&| cut -d \&. -f 4-\&" \&.
Birte Kristina Friesel
committed
.
Show some EXIF information, extracted by exifprobe/exifgrep
Birte Kristina Friesel
committed
.
.It feh --action 'rm %F' -rl --max-dim 1000x800
.
Resursively remove all images with dimensions below or equal to 1000x800 pixels
from the current directory.
.
.Sh TILING WINDOW MANAGERS
.
.Nm
was created with a floating window layout in mind. However, as of 2.0.1, it
has limited support for tiling window managers.
.
.Pp
.
Specifically, the
.Cm --scale-down No and Cm --auto-zoom
options will detect a tiling environment and scale the image up / down to the
current window size. Unfortunately, this causes every image to be rendered
twice: First in a normal fashion, and then
.Pq after noticing that the window is being tiled
again with the correct zoom level.
.
.Pp
.
This is a known bug and will hopefully get fixed some time. For now, it can be
avoided by using
.Cm --geometry 500x500 Pq or any other geometry .
This will have the same behaviour as
.Cm --scale-down ,
but without the flickering.
.Nm
requires the
.Cm jpegtran
and
.Cm jpegexiforient
binaries
.Pq usually distributed in Qo libjpeg-progs Qc or similar
for lossless rotation.
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
To view images from URLs such as http://, you need
.Nm
compiled with libcurl support (enabled by default). See the
.Sx VERSION
section.
Birte Kristina Friesel
committed
.
Thumbnail mode is somewhat inefficient, and because of that not nearly as fast
as it could be.
.Pp
.
.Cm --scale-down
does not take window decorations into account and may therefore make the
window slightly too large.
.
Birte Kristina Friesel
committed
.
.Aq derf+feh@finalrewind.org
.Aq http://github.com/derf/feh/issues .
You are also welcome to direct any feh-related comments/questions/... to #feh
on irc.oftc.net.
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
Please include the feh version
.Aq the output of Qq feh --version ,
steps to reproduce the bug and, if necessary, images to reproduce it.
Plans for the following releases:
Birte Kristina Friesel
committed
.
.Bl -bullet -compact
.
.It
Make zoom options more intuitive
.
.El
.
.
Copyright (C) 1999, 2000 by Tom Gilbert (and various contributors).
Copyright (C) 2010 by Daniel Friesel (and even more contributors).
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
The above copyright notice and this permission notice shall be included in
all copies of the Software and its documentation and acknowledgment shall be
given in the documentation and software packages that this Software was
used.
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.
Original author
.Pq no longer developing :
.Aq feh_sucks@linuxbrit.co.uk
Birte Kristina Friesel
committed
.
Birte Kristina Friesel
committed
.