Content-type: text/html Manpage of fim

fim

Section: User Commands (1)
Updated: (c) 2007-2008 Michele Martone
Index Return to Main Contents
 

NAME

fim - fbi (linux framebuffer imageviewer) improved  

SYNOPSIS

fim [ options ] [--] files ...
... | fim [ options ] [--] [ files ] - ...
 

DESCRIPTION

fim displays the specified file(s) on the linux console using the framebuffer device. jpeg, ppm, gif, tiff, xwd, bmp and png are supported directly. For 'xcf' (Gimp's) images, fim will try to use 'xcftopnm'. For '.fig' vectorial images, fim will try to use 'fig2dev'. For '.dia' vectorial images, fim will try to use 'dia'. For '.svg' vectorial images, fim will try to use 'inkscape'. For other formats fim will try to use ImageMagick's 'convert'.

Please note that the full documentation of fim is in the FIM.TXT file distributed in the source package.  

OPTIONS

-d {device}, --device {device} framebuffer device to use. Default is the one your vc is mapped to.
-m {mode}, --mode {mode}
name of the video mode to use video mode (must be listed in /etc/fb.modes). Default is not to change the video mode.
-h, --help
display help and terminate the program
-V, --version
display version and terminate the program
-v, --verbose
be verbose: show status bar.
-P, --text-reading
Enable textreading mode. This has the effect that fim will display images scaled to the width of the screen, and aligned to the top. Useful if the images you are watching text pages, all you have to do to get the next piece of text is to press space (in the default key configuration, of course).
-s {n}, --scroll {n}
set scroll steps in pixels (default is 50).
-c {commands}, --execute-commands {commands}
The commands string will be executed before entering the interactive loop. Please note that if your commands are more complicated than a simple 'next' or 'pornview' command, they must be quoted and escaped in a manner suitable for your shell!!

For example, -c '*2;2pan_up;display;while(1){bottom_align;sleep "1" ; top_align}'

(with the single quotes) will tell fim to first double the displayed image size, then pan two times up, then display the image ; and then do an endless loop consisting of bottom and top aligning, alternated.

-F {commands}, --final-commands {commands}
The commands string will be executed after exiting the interactive loop of the program (right before terminating the program).
-f , --etc-fimrc
The /etc/fimrc file will be executed prior to any other configuration file. If not specified, it is *ignored*.
-T {terminal}, --vt {terminal}
The terminal will be used as virtual terminal device file.
-E {scriptfile}, --execute-script {scriptfile}
The scriptfile will be executed right after the default initialization file is executed.
-N, --no-rc-file
No initialization file will be read (default is ~/.fimrc) at startup.
-D, --dump-default-fimrc
The default fimrc file (the one hardcoded in the fim executable) is dumped on standard output and fim exits.
-a, --autozoom
Enable autozoom. fim will automagically pick a reasonable zoom factor when loading a new image.
-
Reads file list from stdin.

So, you can use fim in such a fashion: $ find /mnt/media/ -name *.jpg | fim -

 

COMMON KEYS

cursor keys     scroll large images
h,j,k,l         scroll large images left,down,up,right
+, -            zoom in/out
ESC, Q          quit
PgUp,p            previous image
PgDn,n, Space     next image
Return          next image, write the filename of the current
                image to stdout on exit from the program.
m               mirror
f               flip
r               rotate by 90  degrees
d,x,D.X         diagonal scroll
C-w             scale to the screen width
C-h             scale to the screen heigth
m               mark the current file for printing its name when terminating fim

:{number}       jump to {number}^th image in the list
:*{factor}      scale the image by {factor}
:{scale}%       scale the image to the desired {scale}
The Return vs. Space key thing can be used to create a file list while reviewing the images and use the list for batch processing later on.

All of the key bindings are reconfigurable; please see the default fimrc file for examples on this, or read the complete manual: the FIM.TXT file distributed with fim.  

AFFECTING ENVIRONMENT VARIABLES

FBFONT          (just like in fbi) a consolefont or a X11 (X Font Server - xfs) font file.
                        For instance,  /usr/share/consolefonts/LatArCyrHeb-08.psfu.gz is a Linux console file.
                        Consult 'man setfont' for your current font paths.
                        NOTE : Currently xfs is disabled.
FBGAMMA         (just like in fbi) gamma correction.
FRAMEBUFFER     (just like in fbi) if set, will override user set framebuffer device file.
 

COMMON PROBLEMS

fim needs read-write access to the framebuffer devices (/dev/fbN or /dev/fb/N), i.e you (our your admin) have to make sure fim can open the devices in rw mode. The IMHO most elegant way is to use pam_console (see /etc/security/console.perms) to chown the devices to the user logged in on the console. Another way is to create some group, chown the special files to that group and put the users which are allowed to use the framebuffer device into the group. You can also make the special files world writable, but be aware of the security implications this has. On a private box it might be fine to handle it this way through.

If using udev, you can edit : /etc/udev/permissions.d/50-udev.permissions and set these lines like here :
 # fb devices
 fb:root:root:0600
 fb[0-9]*:root:root:0600
 fb/*:root:root:0600

fim also needs access to the linux console (i.e. /dev/ttyN) for sane console switch handling. That is obviously no problem for console logins, but any kind of a pseudo tty (xterm, ssh, screen, ...) will not work.  

BUGS

fim has bugs. Please read the BUGS file shipped in the documentation directory to discover the known ones.  

SEE ALSO

fimgs(1), fbset(1), convert(1), vim(1), fb.modes(8), fbset(8), fbgrab(1), fbdev(4), setfont(8), xfs(1)  

AUTHOR

Michele Martone <dezperado _ GUESS _ autistici.org> is the author of fim, "fbi improved". 
Gerd Knorr <kraxel _ GUESS _ bytesex.org> is the original author of fbi, upon which this code is based. 
 

COPYRIGHT

Copyright (C) 2007-2008 Michele Martone <dezperado _ GUESS _ autistici.org>
Copyright (C) 1999-2000 Gerd Knorr <kraxel _ GUESS _ bytesex.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
 Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.


 

Index

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
COMMON KEYS
AFFECTING ENVIRONMENT VARIABLES
COMMON PROBLEMS
BUGS
SEE ALSO
AUTHOR
COPYRIGHT

This document was created by man2html, using the manual pages.
Time: 18:45:50 GMT, February 20, 2008