sections: top news documentation screenshots download bugs

Welcome to the FIM (Fbi IMproved) image viewer homepage

FIM aims to be a highly customizable and scriptable image viewer targeted at users who are comfortable with software like the Vim text editor or the Mutt mail user agent.
It is based on the Fbi image viewer, by Gerd Hoffmann, and works in the Linux framebuffer console mode, as well as under X/Xorg, using the SDL library. The right video mode gets auto-detected at runtime, and may be configured out at build time, if necessary.
FIM is free software, and it ships under the GPL software license, complete with documentation, in form of a README.TXT file, doc/FIM.TXT documentation file, man pages for fim, for fim's language, and the fimgs script ,lots of comments in the code, and some text files.
Fim's official web page is hosted on Savannah:
Fim's official mirror for stable releases is located on Savannah mirror network:
Fim's official mailing list is at :
Fim is an idea by dezperado, although this software was inspired by the other, forementioned marvelous programs, and some science fiction movies.  

You can support Fim by supporting the A/I collective, whom network kindly hosts Fim repositories.

sections: top news documentation screenshots download bugs


(last update : 13/10/2013)
	FIM NEWS -- history of (main) user-visible changes in FIM.

                Version 0.4

 * changed --random semantics and introduced --random-no-seed switch
 * customizable status bar file info string
 * introduced --as-text to render printable bytes as text

                Version 0.4-beta

 * interface to the GraphicsMagic library (more graphics formats supported)
 * introduced bitwise AND and OR operators
 * support for rendering "matrix market" numerical matrix files (with librsb)
 * X mode not anymore default in aalib, available at option 
 * libjpeg usage fixes
 * libpng usage fixes (support for PNG_LIBPNG_VER>=10209)
 * documentation improvements (e.g.: fim man page is auto-generated)
 * "imlib2" X-based output device support 
 * "sdl" output device improvements (fullscreen/mouse/windowed options, I/O, ..)
 * more default consolefont options (e.g.: hardcoded consolefonts support)
 * configure option to disable the fim history file
 * improvements to scale, goto, other commands
 * improved directories reading
 * introduced --no-commandline, --no-internal-config switches
 * aggregated some commands for clarity
 * output console can be disabled at configure time
 * important fbdev bug fixes 
 * autocompletion of variable identifiers

        	Version 0.3

 * minor strchr compilation problem on some systems
 * better consolefonts support  
 * much better SDL support (different color modes)
 * 'negate' feature
 * -S, or 'sanity-check' switch 

               Version 0.3-beta-prerelease

 * auto-generated documentation: more consistency 
 * grammar specification, in man fimrc
 * internal commands,variables,autocommands  reference man page, in man fimrc
 * better internal help mechanisms
 * more control (resolution change,windowed mode) in experimental sdl mode
 * new commands (pread,reverse,shuffle,...) 
 * (temporarily) disabled internal windows splitting 
 * pushing files from a directory
 * several minor and major bugfixes

        	Version 0.3-beta

 * full         support for AAlib (Ascii Art rendering) (-o aa)
 * experimental support for SDLlib (Simple Directmedia Layer) (-o sdl) (X!)
 * experimental PDF, PS, DJVU file support
 * history file support (~/.fim_history)
 * seamless caching and prefetching integration
 * viewing of any type files as bitmaps (unset bits black, set bits white)
 * viewing of any type files as pixmaps (as RGB triples)
 * framebuffer driver now can be disabled at compile time
 * colors inversion: saves a significant fraction of power when viewing documents 

        	Version 0.3-alpha

 * experimental support for AAlib (Ascii Art rendering) (-t)
 * reading image files (-i) and scripts (-p) from stdin
 * runs on the powerpc architecure
 * rewritten from scratch the debug console, now buffered and with scrolling
 * achieved speedup in magnifying pictures
 * achieved speedup in displaying dithered images
 * smarter quoting rules (looser quote checking) when "push"ing files
 * dumping to file execution logs as executable scripts (-W/--write-scriptout)
 * implemented regular expressions matching operator (=~)
 * new default key bindings for split windows control
 * could be compiled with no readline library (--disable-readline)

        	Version 0.2
 * internal windowing (with splitting, resizing, swapping) support
 * .xcf, .fig, .dia, .svg files now viewable via wrapper calls
 * introduced interactive command iteration ( in the [n] form )
 * fim will try to run under screen and over ssh now
 * custom framebuffer device, fonts and gamma are supported
 * enriched compile-time options via the ./configure script
 * vim-styled variable scoping g:,i:,v:,w: (local variables)
 * eradicated some bugs
 * introduced new variables, commands

        	Version 0.2-alpha
 * first windowing functionalities
 * bugs and subtle flaws handling
 * introduced new variables, commands

            	Version 0.1

 * regular expressions for filtering the viewed image list
 * vim-like autocommands
 * command line autocompletion
 * command line history
 * completely customizable key bindings
 * external/internal scriptability


sections: top news documentation screenshots download bugs


A screenshot of a regular (framebuffer) Fim run:
A screenshot of an Ascii Art Fim run:

sections: top news documentation screenshots download bugs


README file (the first document you should read, with compilation info): README.html, README.
Fim man pages:,,
NEWS file: NEWS.html, NEWS, BUGS.html, BUGS.
FIM.TXT file: FIM.html, FIM.TXT (an obsolete guide --- man pages are up to date).
From the guide:
information to perform your first steps in Fim,
information about bug reporting,
information about the Linux Framebuffer in the docs,
From the manual pages:
information about Fim usage examples,
information about the Fim language grammar,
information about the Fim commands reference,
information about the Fim variables reference,
information about Fim language usage examples,
the Frequently Asked Questions (FAQ).
Fim introduction (in italian) slides, from ground-up (a slideshow presented at the italian Hackmeeting 2011).
Fim introduction (in italian) slides, from ground-up (a slideshow presented at the italian Hackmeeting 2007).
Fim introduction (in italian) slides, from ground-up (a slideshow presented at the Metro Olografix Hacking Party 2007).

sections: top news documentation screenshots download bugs


You are welcome to download the latest (prerelease, dated 13/10/2013) snapshot of Fim :
fim-0.4-rc0.tar.gz ( 622615 bytes )
and the signature file:
fim-0.4-rc0.tar.gz.sig .
If you want to be sure of downloaded files authenticity, you should at least follow these steps:
gpg --search 'dezperado autistici org'
# import the key from a trusted keyserver by following on screen instructions
gpg --verify fim-0.4-rc0.tar.gz.sig

The typical sequence of actions to build Fim, which should suffice is :
tar xzf fim-0.4-rc0.tar.gz 
cd fim-0.4-rc0 
./configure --help=short 
# read the ./configure --help=short output : you can give options to ./configure
su -c "make install"

Read the documentation in order to properly install the dependencies.

If you are interested in compiling the freshest repository version, typing :
svn export
at the command prompt will export the freshest (possibly unstable) version of Fim in a directory named 'fim', and ready for compilation (see the documentation for details).


sections: top news documentation screenshots download bugs


Fim has some bugs. They are documented in the BUGS file: BUGS.html, BUGS.
You are welcome to report bugs and propose patches only after reading the documentation.

sections: top news documentation screenshots download bugs