Control: tags -1 + confirmed patch Moritz Muehlenhoff wrote on Sat, Dec 05, 2015 at 12:21:12 +0100: > On Sat, Dec 05, 2015 at 10:13:14AM +0000, Daniel Shahaf wrote: > > fbi prints messages to stderr in successful operation: > > > > % fbi foo.jpg >/dev/null > > using "Inconsolata-16", pixelsize=16.67 > > file=/usr/share/fonts/truetype/inconsolata/Inconsolata.otf > > map: vt05 => fb0 > > % fbi --noverbose foo.jpg >/dev/null > > using "Inconsolata-16", pixelsize=16.67 > > file=/usr/share/fonts/truetype/inconsolata/Inconsolata.otf > > map: vt05 => fb0 > > > > Please disable such output (at least via an option). There is already > > a --verbose flag; perhaps the messages could be displayed in --verbose > > mode only. > > Patch welcome :-) > > Cheers, > Moritz
Here you go. :-) Thanks for your work! Daniel (patch written against 2.10-2) --- a/fb-gui.c +++ b/fb-gui.c @@ -14,6 +14,7 @@ #include "fbtools.h" #include "dither.h" #include "fb-gui.h" +#include "fbiconfig.h" /* public */ int visible = 1; @@ -648,7 +649,8 @@ /* try get the face directly */ result = FcPatternGetFTFace(match, FC_FT_FACE, 0, &face); if (FcResultMatch == result) { - fprintf(stderr,"using \"%s\", face=%p\n",fontname,face); + if (GET_DEBUG()) + fprintf(stderr,"using \"%s\", face=%p\n",fontname,face); return face; } @@ -658,8 +660,9 @@ result = FcPatternGetDouble(match, FC_PIXEL_SIZE, 0, &pixelsize); if (FcResultMatch != result) pixelsize = 16; - fprintf(stderr,"using \"%s\", pixelsize=%.2lf file=%s\n", - fontname,pixelsize,filename); + if (GET_DEBUG()) + fprintf(stderr,"using \"%s\", pixelsize=%.2lf file=%s\n", + fontname,pixelsize,filename); rc = FT_New_Face (freetype, filename, 0, &face); if (rc) return NULL; --- a/fbtools.c +++ b/fbtools.c @@ -23,6 +23,7 @@ #include <linux/fb.h> #include "fbtools.h" +#include "fbiconfig.h" #ifndef HAVE_STRSIGNAL static const char *strsignal(int signr) @@ -357,8 +358,9 @@ exit(1); } close(fb); - fprintf(stderr,"map: vt%02d => fb%d\n", - c2m.console, c2m.framebuffer); + if (GET_DEBUG()) + fprintf(stderr,"map: vt%02d => fb%d\n", + c2m.console, c2m.framebuffer); sprintf(fbdev,devices->fbnr,c2m.framebuffer); device = fbdev; } --- a/fbiconfig.h +++ b/fbiconfig.h @@ -15,6 +15,7 @@ #define O_FIT_WIDTH O_OPTIONS, "fit-width" #define O_QUIET O_OPTIONS, "quiet" #define O_VERBOSE O_OPTIONS, "verbose" +#define O_DEBUG O_OPTIONS, "debug" #define O_RANDOM O_OPTIONS, "random" #define O_ONCE O_OPTIONS, "once" #define O_COMMENTS O_OPTIONS, "comments" @@ -47,6 +48,7 @@ #define GET_FIT_WIDTH() cfg_get_bool(O_FIT_WIDTH, 0) #define GET_QUIET() cfg_get_bool(O_QUIET, 0) #define GET_VERBOSE() cfg_get_bool(O_VERBOSE, 1) +#define GET_DEBUG() cfg_get_bool(O_DEBUG, 0) #define GET_RANDOM() cfg_get_bool(O_RANDOM, 0) #define GET_ONCE() cfg_get_bool(O_ONCE, 0) #define GET_COMMENTS() cfg_get_bool(O_COMMENTS, 0) --- a/fbiconfig.c +++ b/fbiconfig.c @@ -74,6 +74,11 @@ .yesno = 1, .desc = "show filenames all the time", },{ + .cmdline = "debug", + .option = { O_DEBUG }, + .yesno = 1, + .desc = "show debugging information on stderr", + },{ .letter = 'u', .cmdline = "random", .option = { O_RANDOM }, --- a/fbi.man +++ b/fbi.man @@ -61,6 +61,9 @@ Be verbose: enable status line on the bottom of the screen (enabled by default). .TP +.B --(no)debug +Print debug messages to stderr (disabled by default). +.TP .B -u, --(no)random Randomize the order of the filenames. .TP