File: NEWS

package info (click to toggle)
fim 0.7.1-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 5,048 kB
  • sloc: cpp: 32,769; ansic: 4,507; makefile: 1,549; sh: 1,502; perl: 189; exp: 28; awk: 9
file content (540 lines) | stat: -rw-r--r-- 35,874 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
	
	FIM NEWS -- history of main user-visible changes in FIM.

                Version 0.7.1

A release with small fixes at build, test, and runtime:

 * Documentation and self-documentation improved and updated
 * Command  "help '/str'"  will also search on occurrences of 'str' among set variable identifiers and their help
 * Default binding of 'N' and 'P' changed to be more flexible: either page goto or category or directory goto
 * Fix: GTK (-o gtk) mode had mouse coordinates slightly wrong (were including the menu bar)
 * Fix: SDL mode (-o sdl) now allows fim (emergency) exit per windows quit button also in case no key is bound to 'quit'
 * Fix: now in 'goto "+1p" "+1f"' the page jump takes precedence over the file jump
 * Fix: had potential memory error after --sort and with absent files
 * Fix: Before testing PS pr PDF functionality, Makefile will check if respective sample files are there
 * Fix: --load-image-descriptions-file (-D)  was opening files in append mode for no reason
 * Fix: --mark-from-descriptions-file  was opening files in append mode for no reason
 * Fix: don't omit last Tab multiple autocompletion entry
 * Fix: alias command to complain if being provided with one argument which is no alias
 * Fix: more resilience on missing groff
 * More and better tests
 * Fix: SDL-1.2 compilation fix
 * Fix: 32-bit build fix for GTK3
 * Fix: pass CFLAGS, CPPFLAGS and LDFLAGS to helper programs
 * Fix: configure was disabling crop tests by mistake
 * Fix: configure now uses PKG_CONFIG to determine pkg-config
 * Fix: configure had mistake leading to a few wrong src/Makefile rules
 * Fix: configure poppler check: improved diagnostics, reflecting closer required headers, extend check to poppler-cpp
 * Fix: in configure and Makefile when building with emscripten (WebAssembly)
 * Fix: input of non-ASCII values to -k and -K was not being carried out correctly on systems with char being unsigned (e.g. aarch64)
 * Misc minor fixes (e.g.: in tests, djvu error verbosity, readline, configure, configuration ...)

                Version 0.7.0

A major release:

 * New graphical windowed output mode via GTK3 (similar to SDL, but with menus), selected with -o gtk
 * -o =OPTS / --output-device==OPTS / --output-device =OPTS will pass OPTS to the auto-selected output device
 * Key presses passed at startup via the -k and -K options are executed in the order the options appear
 * When auto-selecting the output device, also take in consideration environment variable  WAYLAND_DISPLAY
 * Closer behaviour of readline and history keys across the graphical modes
 * --slideshow option now accepts decimal values
 * Given string variables a and b, a-b is the value with all occurrences of regexp b removed from a (experimental)
 * Introduce expansion-only variable description syntax "#!fim:@var=VAL"
 * Support @-expansion of "@id" within "VAL" of "#!fim:var@=VAL" or "#!fim:@var@=VAL"
 * When loading via an external converter, keep track of it in i:_external_decoder_program
 * Load XCF (Gimp) files via the xcf2pnm utility
 * Files with name ending in .NEF are now viewable via wrapper call to dcraw (if present)
 * Support for reading QOI files via libqoi (experimental)
 * Support for reading AVIF images via libavif (experimental)
 * Support for reading WebP images via libwebp (experimental)
 * Searches via '/' or '?' are now replayable via "recording 'repeat_last'"
 * Simultaneous specification of file and page to 'goto' now possible
 * Enable descriptions to be searched in "goto /PATTERN/" by keeping the newly introduced 'D' in _re_search_opts
 * If there's only one file, passing a numeric argument to 'goto' will do a page jump
 * Fix with SDL2 (-o sdl): reduce chance of intercepting Tab key during window switch
 * Mouse scroll in SDL (-o sdl) and GTK (-o gtk) modes
 * Mouse click and help grid map support for -o ca
 * Move-trigged pan support for -o ca=w
 * Specify a dithering algorithm  DA  as string or numeric index in  -o ca=d:DA  (e.g. -o ca=d:0)
 * Scaling fix when starting with -o ca
 * Introduce variable _lastpageindex to allow jump to last page
 * Variable "_device_string" now contains the entire output device (graphical mode) specification
 * The expandos of the form %:VAR: will first check for i:VAR, and then for VAR (experimental)
 * Add configure option  --disable-mouse
 * Bugfix: in some cases the "#!fim:VAR=..." description syntax would not propagate VAR properly
 * Fixes in the configure script (remove bashisms by SDL version recognition)
 * Bugfix: configure --disable-system  was bogus
 * Bugfix: avoid terminal clutter after interruption of "endless_slideshow"
 * Bugfix: avoid memory leak while decoding PDF
 * Improve error handling when encountering corrupt or unsupported TIFF files
 * More tests
 * FIM requires a compiler supporting at least C++11
 * Documentation and self-documentation improved and updated

                Version 0.6-rc2

 * File dropping support in SDL2 mode and more responsive readline mode

                Version 0.6-rc1

 * Experimental support for SDL2.

                Version 0.6-rc0

A summary of major improvements:

 * Colour ASCII-Art output via libcaca, selected with -o ca
 * better mechanism to determine best output device
 * font magnification by integer factors, good for higher resolutions
 * runtime font selection
 * new options to commands "scale", "goto", "limit", "list", ...
 * 'limit' view to relevant image files based on properties (like in 'mutt')
 * pass key presses to be automated at startup with -k and -K options
 * pretty free from memory leaks
 * -X switch inhibits custom external converters
 * new powerful subcommand "list 'mark'"
 * new command-line switches (--sort..) to sort the initial files list
 * use mipmaps for faster scaling
 * open files from a files list with -L
 * load image description files with -D 
 * background recursive scan and load of files with -B
 * search files at startup based on description with -/ and --//
 * new verbosity and debug options
 * better error handling when encountering corrupt files
 * fast in-place switch to high-res file via --load-shadow-directory 
 * improvements in -o aa (ASCII-art output device with aalib)
 * more options for window size selection in -o sdl
 * Keys F1,F2,F3,F4,F5,F6,F7,F8,F9,F10,F11,F12 now usable with 'bind'

In detail, in no particular order:

 * Experimental support for SDL2.
 * More responsive readline mode.
 * Switch --resolution 'fullscreen' appends 'W' if in SDL mode.
 * If a "matrix market" file is loaded, its rows, columns and nnz are image variables, too.
 * Introduce special 'early' form  -C =var=val  where variable var is assigned to unquoted and non-interpreted value val immediately.
 * Variable i:__exif_orientation renamed into i:_exif_orientation
 * Fix: --cd-and-readdir was not jumping back to first file.
 * Fix: --device option not ignored anymore.
 * Rename --no-etc-rc-file switch to --no-etc-fimrc-file .
 * fimgs: bunzip2, wget, and xz are now optional.
 * Bugfix: fimgs to properly remove temporary directory after loading downloaded files.
 * Misc small improvements in documentation text output and reporting (no cursor in post-search output line; misc messages).
 * Key 'Z' now assigned to 'sleep 1'.
 * Key 'Del' now assigned to 'list "remove"'.
 * Add -= as short form of the --no-auto-scale option.
 * Experimental: add command "crop", also activated after selecting the area by holding Shift and clicking with left mouse button (if running with -o sdl).
 * Add command "pan 'vsteps%' 'hsteps%'" and "'pan 'vsteps' 'hsteps'".
 * Keys F1,F2,F3,F4,F5,F6,F7,F8,F9,F10,F11,F12 are now usable with 'bind' with modes -o aa, -o ca, -o dumb.
 * Fix for -o sdl: when flipped or mirrored, it used to draw a smaller box by mistake.
 * Only filenames matching "^[/A-Za-z0-9_.][/A-Za-z0-9_.-]*$" can occur in a conversion command involving an external program.
 * --pread-cmd=command  substitutes any occurrence of '{}' in command with the actual filename, executes the result and reads an image from its stdout.
 * -o fb=S will not tolerate running under screen.
 * Bugfix in --script-from-stdin now prevents possible crashes.
 * Removed configure options --enable-c++11 -- use CXXFLAGS instead.
 * Bugfix: 'autocmd_del' with no arguments would crash.
 * Bugfix: autocommand "PostHardcodedConfigLoading" now triggers even if --disable-fimrc .
 * Internals: considerably expanded 'make tests'.
 * Add command 'stderr', similar to 'stdout'.
 * This is the last FIM version supporting the C++03 standard.
 * Refresh configure and Makefile templates.
 * Build fixes for the MinGW environment.
 * man fim: improve manual contents (on ~/.fim_history, individual options, wording, etc.).
 * man fimrc: added a section with default aliases,
 * Where appropriate, 'make tests' uses 'timeout' to prevent possible hangs.
 * Switch  -K <chars>  aka  --chars-press <chars> simulates input of characters at startup.
 * Fix: slideshow function (e.g. `fim --slideshow=5 media/`) will now cycle forever, unless --once/-1 option specified (as in fbi).
 * Fix: after 'quit' no command shall execute anymore (unless in -F).
 * With SDL one can specify window size as percentage of allowed size (-o sdl=w55%), or draw a help grid map (-o sdl=h).
 * With SDL (-o sdl), center window by default.
 * Fix: now pressing keys "1n1n" will not execute 'n' 11 times, but twice.
 * configure --enable-debug is a developer option now.
 * libcaca (-o ca) mode is now complete and is the default ASCII Art mode.
 * Slideshow function (e.g `fim --slideshow=5 *.jpg`) now more responsive.
 * Arrow keys are now working in aalib (-o aa).
 * Bugfix with aalib (-o aa): don't truncate long lines.
 * Avoid memory leak in language parser.
 * Avoid console buffer memory corruption.
 * Eliminate a memory leak from file loading code. 
 * Eliminate memory leaks in PNG, JPG, TIFF, EXIF, and font decoding code.
 * Fix possibly broken `make -j` in rebuilding fimgs.man and fimrc.man.
 * Correct configure script check for regcomp() -- could lead to false negatives.
 * Don't break build on missing 'gs'.
 * Experimental: use --load-shadow-directory <dir> to add a "shadow directory".
   Then 'scale "shadow"' (bound to key '"') will substitute the current displayed image
   with that of the first same-named file located under a shadow directory.
 * When loading a directory, regular expression from default "_pushdir_re" variable now matches filenames with .webp extension.
 * Fix: `fim -c '/<pattern>'` was broken.
 * Add " INTEGER , INTEGER IDENTIFIER arguments" syntax to repeat a command 
   on each file in the interval and substitute its name to '{}' in the arguments
   to an iterated command IDENTIFIER.
 * If a key is bound to e.g. 'goto "+1F"', keep pressing it to accelerate (not if e.g. "+1f").
 * Internal fix: piping from external commands was using 0 instead of 'WNOHANG', leading to hanging.
 * Internal fix: error handling was missing.
 * fimgs now to handle tar.xz archives.
 * Reload automatically image on file change.
 * Command 'list' 'sort_var' 'var' to sort file list according to values of 'i:var'.
 * Command 'list' 'sort_comment' to sort file list according to 'i:_comment' value.
 * Add a --verbose-font-load switch to set '_fbfont_verbosity=1'.
 * Variable '_fbfont_verbosity' sets verbose font loading.
 * Fix: short options -b, -h, -R were not getting optional argument (e.g. -b1).
 * Key combination C-r now assigned to "reload ''".
 * Fix: symbol from fbi sources clashed with gcc-6 onwards, breaking compilation.
 * Key combination C-w assigned to setting auto-scaling to width.
 * Smoother scroll of large images.
 * If SSH_TTY set and no output device specified, give precedence to aalib, then libcaca.
 * Bugfix: in --as-text will avoid repeated reload of file.
 * Hardcoded font (if configured in) will serve as fallback font.
 * Add a --no-pipe-load / -X switch to _no_external_loader_programs=1;
 * Description variables beginning with '_' will not go into i: .
 * List variables in all i:* read from description file with "list 'vars|variables'".
 * Expansion of @variables and @# comments from description files.
 * The menu key in SDL mode shows a temporary mouse click actions menu.
 * Bugfix: description file reading was crashing due to wrong check.
 * Caption text of "_caption_over_image" takes at most half of the screen.
 * If _caption_over_image=3, image is possibly drawn below the caption.
 * The 'v' and 'S' keys now cause a redraw.
 * The description line can be of any length.
 * New configure option, defaulting to: --enable-paths-in-man; it generates man pages with configure specified paths (e.g. sysconfdir, docdir).
 * Fix: -s switch was broken.
 * Add a semicolon (;) to -C arguments if not present already.
 * Framebuffer console switch off while loading: configure with the 
   --enable-framebuffer-switch-while-loading switch to have it back.
 * Fix: configure would fail on --disable-aa and absent aalib.
 * Now configure has --enable-seek-magic by default. And is more verbose.
 * Command 'help' also shows key bindings, and give multiple answers if matching.
 * For each word following switch --help, an individual help message is shown.
 * Command 'goto' accepts multiple arguments; evaluating them until the first one triggering a jump.
 * Command goto {'-/'|'+/'}[C] jumps to a file based on character C (default 'S').
   If C is 's', to prev/next file with same directory name.
   If C is 'd', to prev/next file with directory name down the same hierarchy.
   If C is 'u', to prev/next file with directory name up the same hierarchy.
   If C is 'b', to prev/next file with same basename.
   If C is as above but uppercase, to the prev/next file not matching the criteria.
 * Accordingly, aliases 'next_file_dir_same', 'next_file_dir_other', 'next_file_dir_up',
   'next_file_dir_down', 'next_file_same_basename', 'prev_file_dir_same',
   'prev_file_dir_other', 'prev_file_dir_up' 'prev_file_dir_down' 'prev_file_same_basename'.
 * Fix: 'recording' command was not functioning properly.
 * Fix: don't pop back last command if "recording 'stop'" executed outside of recording mode.
 * Fix: won't clear recorded list if calling recording 'start' multiple times.
 * Specifying more than once any of -p -i - causes a warning.
 * New switch --verbose-interpreter to execute interpreter verbosely by setting adequately _debug_commands='ackC'.
 * Strings specified within single quotes have single quotes escaped, just as double quotes.
   So that e.g.: '\'hello\'' equals "'hello'" and "\"hello\"" equals '"hello"'.
 * Variable '_debug_commands' is now a string with several verbosity options.
 * Fix: misc fixes for --offset, e.g. avoiding probing for external loader programs.
 * Add --verbose-load option for verbose file loading.
 * -C '_seek_magic=..' probes whole range of specified signature when loading a file.
 * Fix in _seek_magic documentation.
 * Option --offset accepts numbers suffixed by one of K, M, and G for respectively kibi-, mebi-, and gibi- (2^10, 2^20 and 2^30) units.
 * Bugfix: --offset option was ignoring lower bytes-offset.
 * Fix: a check was missing in the PS decoder when reading from stdin.
 * Command 'pan' accepts '-' and '+' to jump to prev/next file if border is reached.
 * Command 'font' controls displayed font and scans font directories.
 * Keys '{' and '}' cycle through available consolefonts.
 * Variable _fbfont_magnify_factor scales text font at runtime.
 * Variable _fbfont_as_screen_fraction; if >0, font is scaled to exceed 1/_fbfont_as_screen_fraction of both width and height.  If _fbfont_as_screen_fraction<0, font scaling is fixed.
 * Keys '[' and ']' bound to new aliases "font_reduce" and "font_magnify".
 * Key '|' bound to new alias "toggle_font_auto_scale".
 * Switch -r {width:height} / --resolution {width:height} behaves as expected in SDL mode.
 * Variable _downscale_huge_at_load, if 1 (default), downscale automatically huge images at load time. To avoid loading images exceeding too much screen size.
 * Variable i:_buffered_in_tmpfile stores temporary decoding image filename, if any.
 * Internally load SVG files by invoking inkscape <file.svg> --without-gui --export-png <temp.png>. A file beginning with "<svg" is be considered an SVG (Scalable Vector Graphics).
 * Command 'scrollforward' skips a border if this is less than a fraction of the screen; this smoothes up documents reading. The fraction is one over '_scroll_skip_page_fraction', if >1; 1/16 if 1, no tolerance if <1.
 * Variable "_want_wm_mouse_ctrl" controls mouse click/movement behaviour in SDL mode.
 * Variable "_min_cached_images" is the minimum number of images to keep from eviction.
 * Commands  scale '<'  /  scale '>' shrinks/magnifies the image using cached mipmaps.
 * By default, show mouse cursor in full screen SDL mode.
 * Autocommand "PostInteractiveCommand" does not trigger anymore after 'quit' command.
 * In case of a CBZ,CBR,PDF,PS,DVI file, the fimgs script now uses '--autotop --autowidth'.
 * The fimgs script now probes for unrar-nonfree/rar/unrar-free (in this order).
 * Customize overlay text via variable '_caption_over_image_fmt'.
 * Command syntax 'goto {+|-}identifier[+]' (new) jumps to next file having a different value of i:identifier, also empty if without trailing `+'.
 * Command "limit '-set_union'" merges current limited list with the new one.
 * Command "limit '-merge'" merges current limited list with the new one.
 * Command "desc 'reload'" loads once again description files specified at the command line with --load-image-descriptions-file.
 * FIM only checks for filename duplicates if a sorting option is specified.
 * Switch -P/--text-reading fixed. Seems to be broken in version 0.5.
 * Command "color": "color 'negate'" and "color 'desaturate'" introduced.
 * Commands 'negate' and 'desaturate' deleted.
 * Command "color CVS" (CVS among 'protanopia', 'deuteranopia', 'tritanopia', 'p', 'd', 't') simulates a color vision deficiency; adding 'daltonize' applies a tentative color correction;  "color 'colorblind'" is short for "color 'deuteranopia'".
 * Command "color 'identity'": populate the image with 'RGB identity' pixels.
 * Introduce a "#!fim:/=dir" special description line to specify directory prepended to basename.
 * Introduce a "#!fim:\=dir" special description line to specify directory prepended to filepath.
 * Command limit '-list'      lists existing variables identifiers as set via 'desc'
 * Command limit '-list' 'id' lists existing values for instances of variable 'id' as set via 'desc'
 * Command "limit '~i' MINIDX[-MAXIDX]", with MINIDX and MAXIDX numbers (possibly with K as x 1000 multiplier) restricts filenames list to the specified interval.
 * Command "limit '~d'", limits to files having exact current file's modify date +- one day.
 * Command "limit '~z'" limits to files having same file size as the current.
 * Command "limit '~z' MINSIZE[-MAXSIZE]", with MINSIZE and MAXSIZE numbers with possibly K (x 1024) or M (x 1024 1024) multipliers, limits according to file size.
 * Command "limit '~d' MINTIME[-MAXTIME]", with MINTIME and MAXTIME numbers, limits files list according to file modify date (expressed as seconds since the epoch, see 'man 2 time').
 * Command "limit '~d' MINDATE[-MINDATE]", with MINDATE and MAXDATE dates as in DD/MM/YYYY, and after 1900.
 * Command "limit '-further' ..." makes 'limit' act on the current list, rather than on the full anew. 
 * Command "limit" uses new criteria:
   If invoked with '~!' it restricts to files with unique basename.
   If with '~=', to files with duplicate basename;
   if with '~^', to the first of the files with duplicate basename;
   if with '~$', to the last of the files with duplicate basename. 
 * Alias "unlimit" resets the limited list.
 * Add variable '_all_file_loaders': a space-separated list of hardcoded file loaders usable with '_file_loader'.
 * Switch -R/--recursive[=arg] has now an optional argument; overwrites (if set) or appends to (if beginning with + or |) the "_pushdir_re" variable (recursed filename extensions).
 * Introduce a "#!fim:+=" special description line to append to cached description.
 * Introduce a "#!fim:^=" special description line to prepend to cached description.
 * Introduce a "#!fim:!=" special description line to reset all variables of the cached namespace.
 * Command 'desc        "save"' functionality to save descriptions file data from the currently browsable images list.
 * Command 'desc "-append" "save"' works in append mode.
 * Command 'desc "-all" "save"' saves also all descriptions file variables.
 * Command 'desc "-nooverw" "save"' does not force overwrite.
 * To ease reproducible builds: imposing LC_ALL=C to $(YACC) and $(SORT), vim2html.pl reads SOURCE_DATE_EPOCH
 * New switch --mark-from-image-descriptions-file: read file names from a description file and use them to mark current list files.
 * Introduced alphanumeric restriction in the descriptions shebang variables: must begin with underscore or alphabetic, continue with underscore or alphanumeric.
 * Keys '(' and ')' are now bound respectively to "goto '^p'" and "goto '$p'"; that is jump to first or last page.
 * Available symkeys are now documented in a section of man fimrc.
 * Switch -k --keysym-press <keysym> to simulate press of keysym at startup.
   Keysym can be prefixed by a repetition count number.
 * New switch  -/  <pattern> as short form of of -c /<pattern>.
 * New switch --// <pattern> as short form of of -c /<pattern> with _re_search_opts='f'.
 * Tehe space key (' ') is now assigned to 'scrollforward' (earlier was 's').
 * Introduced context prepend/append shebang syntax "#!fim:^=" and "#!fim:+=" in description files.
 * Switch --read-from-stdin-elds supports now the ASCII NUL terminator (via '').
 * Switch -V (--version) prints to stdout (not anymore to stderr).
 * The -B switch is now shorthand for --background-recursive.
 * If compiled in pre-C++11 flags, -B / --background-recursive behaves as -R.
 * Switch -S is now short form of --image-descriptions-file-separator (not anymore for --sanity-check).
 * Switch -D is now short form of --load-image-descriptions-file (not anymore for --dump-default-fimrc).
 * Switch -L/--read-from-file: read an image list from file (similarly to the - switch).
 * Now caching of mipmaps is on by default; can be turned off with new variable '_cache_control'.
 * Variable "_push_pushes_dirs"; if it is 2, also push hidden files and directories; that is, ones whose names begin with a dot (.).
 * configure --with-font-magnifying-factor=FACTOR controls text magnification by an integer factor.
   If FACTOR is positive, this value is hardcoded and cannot be changed at runtime.
   If FACTOR is negative, -FACTOR is default, but can be changed at runtime.
   If FACTOR is 0 (default) a default of 1 applies, and can be changed at runtime.
   This option is meant to be used on configurations with high resolutions and small consolefonts.
 * configure --with-tmpfile specifies a new temporary directory. 
 * configure tries to detect curses/ncurses.
 * Fix: mouse movement under SDL used to trigger unnecessary screen redraws.
 * Fix: the last used image is to be evicted from the cache as last, after possibly prefetched images.
 * Fix: in configure script, the regex_t check was unnecessarily broken.
 * Fix: ./configure --disable-pcx was not properly disabling PCX format support
 * With C++11 flags, --background-recursive loads images in the background recursively (experimental, unfinished).
 * Use variable "i:_file_load_time" to store the time taken to load the file and decode the image.
 * Use variable "_use_mipmaps=2" to compute the mipmaps faster, using every fourth source pixel.  This can be a good solution for speeding up large photographs scaling.
 * Description files beginning with "#!fim:desc" (of whatever extension) can now be loaded as they were normal image files.
 * Add switch --reverse to reverse the file list.
 * Add switch --sort-mtime to sort file list according to modification time.
 * Add switch --sort-fsize to sort file list according to file size.
 * Command "list 'sort_mtime'" to sort file list according to modification time.
 * Command "list 'sort_fsize'" to sort file list according to file size.
 * Command "list 'mark' {args}" accepts now exactly what "limit {args}" does.
 * Command syntax 'list "markall"' introduced.
 * Command syntax 'list "dumpmarked"' and 'list "unmarkall"' introduced.
 * Command 'list "swap"' introduced.
 * New '_lastgotodirection' variable, with the last file goto direction.
 * Key 'Enter' now marks and goes forward or back according to variable '_lastgotodirection'.
 * Fix: the largest mipmap was not always being used.
 * Fix: -lfl linkage is not really necessary: removed it.
 * Fix: support for PPM files with 2 bytes per sample.
 * Fix: a few more checks when reading PCX files.
 * Fix: documented that switch --sanity-check terminates the program, rather than continuing.
 * Fix: when stdint.h is available use uint8_t, uint16_t, uint32_t instead of non-portable __u8, __u16, __u32
 * Fix: compilation was broken without framebuffer (FIM_WITH_NO_FRAMEBUFFER)
 * Fix: cleaned up the internal keysyms initialization code.
 * Fix: removed obsolete documentation for the "window" command, now disabled.
 * Bugfix: improve GIF error handling.
 * Bugfix: on certain framebuffer configurations part of the screen was not being redrawn.
 * Bugfix: conversion from external program was vulnerable to failure due to a missing check.
 * Bugfix: avoiding data corruption when handling %k expando.
 * Bugfix: repeating "recording 'repeat_last'" (default '.' key) by prepending a number now works.
 * Fix: configure uses `sdl-config --static-lib`.

                Version 0.5

 * -R / --recursive switch to turn on recursive push of command line specified directories
 * added --sort and --sort-basename to sort the images list
 * introduced mipmap mechanism (_use_mipmaps) for faster display/scaling of images
 * status bar customizable with _display_status_fmt and _info_fmt_str, which can be
   controlled by the use of special image variable specifiers ('expandos'):
    "%T" expando to get (and display) total memory used by the program 
    "%C" expando to get (and display) file/memory usage by image cache
    "%M" expando to get (and display) memory used by the current (displayed) image
    "%c" expando to get (and display) centering information
    "%m" expando to get (and display) current image mipmap occupation information
    "%k" expando to get (and display) current image i:_comment value
    "%?PRE?VAR?POST?" expando to get (and display) "PRE".i:VAR."POST"
    ...
 * search (and jump) on image descriptions via 'goto' and key '/'
 * when repeating search with 'repeat_last', will use last direction
 * '?' key is now assigned to backward search (goto '-//')
 * default 'C-p' key is now assigned to repeat last backward search (goto '-//')
 * image cache will remember alignment within viewport
 * jump back and forth from the last viewed image with the ' (single quote aka apostrophe)
   key and the _lastfileindex variable
 * added --load-image-descriptions-file (equivalent to 'desc' 'load') to populate 
   the i:_comment values of each loaded image file and set _caption_over_image=2
   (with it added also --image-descriptions-file-separator)
 * added the 'desc "load"' command to load a textual files comments description file
 * introduced a 'limit' command, with comment, file name, or marked file criteria
 * the '`' key is bound to toggle limit'ing to the marked files list
 * introduced 'list "mark"' and 'list "unmark"' subcommands styled as 'limit'
 * load i:_comment and i:var from description file, with forms:
   "filename comment" (to i:_comment),
   "#!fim:var=value" (to   set i:var=value on all all the files following)
   "#!fim:var="      (to unset i:var=value on all all the files following)
   "filename #!fim:=" (to i:_comment from the value read last)
   "filename #!fim:+comment" (similar, but will append the new comment)
   "filename #!fim:^comment" (similar, but will prepend the new comment)
   "filename #!fim:s/f/t" (similar, but replace string f with string t)
 * EXIF tags will be read with libexif and become i:EXIF_-prefixed variables
 * if _want_exif_orientation is set, images will be reoriented according to EXIF
   metadata (i:__exif_orientation, i:__exif_mirrored, i:__exif_flipped).
 * the 'help' command will search also in fim command options
 * will optionally use C++11 constructs with ./configure --enable-cxx11 (no user level impact)
 * scaling image code faster (thanks to __restrict__ pointers)
 * customizable SDL window caption line with _want_wm_caption_status
 * BMP format support is now optional
 * PCX format support (optional)
 * changed meaning of variable _ignorecase: now it affects autocommands
 * introduced variable _re_search_opts affecting regexp-based search
 * default key 'r' is bound to 'rotate90', key 'R' to 'rotate270'
 * can be invoked without stdin; e.g. from an X menu
 * added "display 'resize'" to resize the SDL window, optionally to the image size
 * default SDL mode is windowed now
 * by default, the 'C-w' key will resize the SDL window to the original image size
 * by default, the 'W' key will resize the SDL window to the image size,
   and added an --autowindow switch to adapt window size to picture size
 * the 'help' command will search in help items if argument starts with /
 * special variable i:* expanding to all the variable name/value pairs of the current image
 * opening image files in archives (e.g. CBZ,CBR,RAR,TAR,TGZ,TBZ,7Z,ISO,...)
   with libarchive (experimental)
 * JPEG-2000 file support via JasPer (experimental)
 * added a ':- INTEGER' syntax, so one can specify the file in the list counting from the end
 * added an _archive_files variable to specify which file name types specify archives
 * added a 'list "pushdirr"' command, working like "pushdir" but recursively
 * the _fbfont variable will contain the current console font file string
 * mirror/flip are now being applied with respect to the viewport borders
 * stat() checking of files on load can be disabled with _push_checks
 * added --no-stat-push to set _push_checks=0 before initialization
 * added the _caption_over_image variable (which is 0 unless --load-image-descriptions-file)
 * 'Pause' and 'Menu' keys are now available in SDL (-o sdl) mode
 * added  'list' 'marked'  to show the list of marked files
 * key 'Del' bound to pop (delete) the current image from the list
 * i:_file loader will store the used loader string
 * switch --offset accepts a range now (using the new _open_offset_retry variable)
 * if an image has been opened with an offset, i:_open_offset will be set accordingly
 * variable i:pagecount is now replaced by i:pages
 * put aside (disabled) the v: b: and w: namespaces until they make more sense
 * panning on mouse movement in SDL mode
 * `make fim' goal has been deleted
 * changed librsb library detection: now it's e.g.:
   LIBS="`librsb-config  --ldflags --extra_libs` " CXXFLAGS="`librsb-config --cflags` "\
   ./configure --enable-matrices-rendering
 * bugfix: in some situations fim -o fb was not clearing the screen before drawing the image
 * bugfix in the "list 'remove'" internals
 * --binary=1/--binary=24 will not pad tiny renderings to _preferred_rendering_width pixels
 * fix: corrected the quiet mode (-q) to be quieter
 * fix: no zlib.h build time dependency (this will be reintroduced in the future)

                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
 * key r is bound to 'rotate90', key R to 'rotate270'
 * bug fixes for the g: namespace, SDL/X mode, "list 'pop'" command, 
   the --offset option, 'ascale' and rotation, documentation.

                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 [changed meaning in v0.6]

               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]<command key> 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