# feh/cfg - "Build" settings for package #--------------------------------------------------------------------- [technotes] 1. Laclin "feh" assumes that a fully loaded copy of "imlib2" 1.12.6 (or above) has been built. If this is the case, Laclin "feh" should support image files with [at least] the following filename extensions (omitting the leading period): argb avif bmp gif heif ico j2k jp2 jpeg jpg jxl pam png pnm qoi raf raw tga tif tiff webp xbm xpm y4m In short, most [though not all] image-file formats. The most significant format that is missing is "xcf". Note: We haven't been able to make the "imlib2" "xcf" loader work. #--------------------------------------------------------------------- 2. Laclin "feh" is a hard, i.e., permanent fork of upstream "feh" 1.10.1. The Laclin and upstream versions of "feh" as they stand now are entirely separate. Laclin "feh" might be missing features relative to upstream "feh. How- ever, it attempts to add features of its own. #--------------------------------------------------------------------- 3 Laclin "feh" adds one new "sort" mode: --sort mtime The new "sort" mode displays images from oldest to newest, based on modification time. Note: Two related switches named "--oldest" and "--newest" have been added; see the following notes. Upstream "feh" now includes a similar mode. #--------------------------------------------------------------------- 4. Laclin "feh" also adds these "sort" alias switches: --oldest Same as --sort mtime --newest Same as --sort mtime --reverse --thinnest Same as --sort width --fattest Same as --sort width --reverse --widest Same as --widest --shortest Same as --sort height --tallest Same as --sort height --reverse --smallest Same as --sort size --biggest Same as --sort size --reverse --largest Same as --biggest #--------------------------------------------------------------------- 5. Laclin "feh" starts up in fullscreen mode, by default. Reason: If you viewed images of different sizes, upstream "feh" 1.10.1 didn't center the images properly in normal (non-fullscreen) mode. So, they "jumped" all over the place. It was possible to force a fixed geometry as a workaround, but full- screen mode is a simpler solution and there are other issues. #--------------------------------------------------------------------- 6. For upstream "feh" 1.10.1, the -F option meant "start in full- screen" mode. For Laclin "feh", -F means "_don't_ start in full-screen mode". #--------------------------------------------------------------------- 7. For many CLI image viewers, the PgUp and PgDn keys mean "previous image" and "next image". Upstream "feh" 1.10.1 interpreted these keys a little differently. Its rules made sense, but they were confusing if you tried to use "feh" in conjunction with other viewers. To reduce confusion, Laclin "feh" uses the standard PgUp/PgDn conven- tions. #--------------------------------------------------------------------- 8. When full-screen mode was used, upstream "feh" 1.10.1 scaled large images down to fit the screen. This is O.K. for photos, but it has a negative effect on images such as line drawings, stock charts, etc. Therefore, Laclin "feh" turns down-scaling off by default. Note: Down-scaling is still supported; it's just the default mode that's been changed. If the user turns Laclin "feh's" standard auto- zoom feature on, images will be downscaled using the original conven- tions. #--------------------------------------------------------------------- 9. Laclin "feh" adds a "z" (or "Z") keyboard command. The "z" (or "Z") key toggles the current "zoom" mode. #--------------------------------------------------------------------- 10. The "-d" option switch has been modified. In Laclin "feh", it's a toggle (of sorts). Details: By default, Laclin "feh" starts in full-screen mode and draws the current filename in the top-left corner of the display. If -F is specified, both features are disabled. To use non-fullscreen mode with filename drawing enabled, specify -F -d. To disable filename drawing without disabling fullscreen mode, specify -d without -F. Note: -d only affects the filename that's drawn in the output window. If fullscreen mode is disabled, filenames may be displayed in Laclin "feh's" title bar, whether or not -d is used. #--------------------------------------------------------------------- 11. As of mid-2007, "imlib2" supported "gif" input files, but it didn't support "gif" output files. Additionally, upstream "feh" 1.10.1 didn't check for errors when it saved files to disk. Due to these two issues, upstream "feh" 1.10.1 failed silently when "gif" output files were created. As a workaround, Laclin "feh" replaces "gif" output files with "png" output files. #--------------------------------------------------------------------- 12. Upstream "feh" 1.10.1 created "png" output files that, in some cases, were larger than necessary. As a workaround, Laclin "feh" uses "optipng" to shrink some "png" output files. This change isn't fully implemented. So, Laclin "feh" shrinks some "png" output files, but not others. #--------------------------------------------------------------------- [buildtimes] 00.00 hours (or 000.07 minutes) - HP EliteBook 8560w 32GB RAM 00.00 hours (or 000.12 minutes) - ThinkPad E540 i7 4x2 16GB RAM 00.00 hours (or 000.23 minutes) - Dell Inspiron 6400 2.0 GHz Intel Duo 7200 2GB RAM 00.01 hours (or 000.58 minutes) - Compaq 1.7 GHz Intel Pentium 4 512MB RAM #--------------------------------------------------------------------- [settings] build = default cflags64 = yes configure = none exepack = yes license = See "license.txt" under installed tree licfile = COPYING tmpsize = 5M unpack = relaxed setpaths = $PRODTREE/xorg imlib2 #--------------------------------------------------------------------- [depends] actools freetype2 giblib imlib2 jpeg libpng wget # Only needed at runtime xorg #--------------------------------------------------------------------- # Original URLs. These URLs were valid at one point, but may have died # since then. If you download newer versions of tarballs [etc.], don't # delete the original versions, as you may not be able to replace # them. [urls] url_debian = http://packages.debian.org/unstable/source/feh url_home = http://derf.homelinux.org/projects/feh/ url_lfs = n/a url_tarball = http://derf.homelinux.org/projects/feh/\ feh-1.10.1.tar.bz2 #--------------------------------------------------------------------- [about] Laclin "feh" is an image viewer, based on upstream "feh" 1.10.1, with a number of features. For example: * Supports both normal [window] mode and full-screen mode. * Displays multiple images either sequentially in one window or simul- taneously in multiple windows: feh -w FILE FILE ... * Can display all images in a given directory tree: feh -r DIR * Can save and load image-file lists. * Alternatively, can output an "ls"-style version of the current image list. The "ls"-style list includes attributes. This makes the program useful for scripts that need to process image directories or directory trees. * Can limit the current list to valid images or broken images. Scripts can combine this feature with the listing features to simplify direct- ory-cleanup operations. * Can sort image lists based on various parameters. * Can display Internet images and optionally save them to disk. Note: These features require "wget". * Can reload images periodically. This feature is useful for viewing Internet images that update over time. * Can create montages, collages, and thumbnails: ocfeh -m ... - Create a montage * Supports zoom-in/zoom-out. Note: This feature requires a three- button mouse (the middle button is used for zooming). * Supports zoom-in/zoom-out, pan, rotate, smooth, and sharpen: zoom-in/zoom-out - middle mouse button pan - left mouse button rotate - CTRL + middle mouse button smooth/sharpen - CTRL + left mouse button #--------------------------------------------------------------------- [history] 170619 Fixed keyboard operation in fullscreen mode. 260405 Updated documentation