themes: simplify empty macros, remove do { } while(0) - sfeed - RSS and Atom parser
 (HTM) git clone git://git.codemadness.org/sfeed
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 8737035999474283a28faa5780f43138f96ab82c
 (DIR) parent cc3dd4534bcbbc750d563992b93b1131410a2a76
 (HTM) Author: Hiltjo Posthuma <hiltjo@codemadness.org>
       Date:   Mon,  6 Jun 2022 11:00:26 +0200
       
       themes: simplify empty macros, remove do { } while(0)
       
       Multiple function calls should still be nested in a do { } while(0), but this
       is hopefully obvious looking at the other lines.
       
       While testing, gcc with -O0 created the same binary.
       clang added a single jmp instruction.
       
       Diffstat:
         M themes/mono.h                       |       8 ++++----
         M themes/mono_highlight.h             |       8 ++++----
         M themes/newsboat.h                   |       8 ++++----
       
       3 files changed, 12 insertions(+), 12 deletions(-)
       ---
 (DIR) diff --git a/themes/mono.h b/themes/mono.h
       @@ -1,13 +1,13 @@
        /* default mono theme */
       -#define THEME_ITEM_NORMAL()           do {                            } while(0)
       -#define THEME_ITEM_FOCUS()            do {                            } while(0)
       +#define THEME_ITEM_NORMAL()
       +#define THEME_ITEM_FOCUS()
        #define THEME_ITEM_BOLD()             do { attrmode(ATTR_BOLD_ON);    } while(0)
        #define THEME_ITEM_SELECTED()         do { if (p->focused) attrmode(ATTR_REVERSE_ON); } while(0)
       -#define THEME_SCROLLBAR_FOCUS()       do {                            } while(0)
       +#define THEME_SCROLLBAR_FOCUS()
        #define THEME_SCROLLBAR_NORMAL()      do { attrmode(ATTR_FAINT_ON);   } while(0)
        #define THEME_SCROLLBAR_TICK_FOCUS()  do { attrmode(ATTR_REVERSE_ON); } while(0)
        #define THEME_SCROLLBAR_TICK_NORMAL() do { attrmode(ATTR_REVERSE_ON); } while(0)
        #define THEME_LINEBAR()               do { attrmode(ATTR_FAINT_ON);   } while(0)
        #define THEME_STATUSBAR()             do { attrmode(ATTR_REVERSE_ON); } while(0)
        #define THEME_INPUT_LABEL()           do { attrmode(ATTR_REVERSE_ON); } while(0)
       -#define THEME_INPUT_NORMAL()          do {                            } while(0)
       +#define THEME_INPUT_NORMAL()
 (DIR) diff --git a/themes/mono_highlight.h b/themes/mono_highlight.h
       @@ -1,15 +1,15 @@
        /* mono theme with highlighting of the active panel.
           The faint attribute may not work on all terminals though.
           The combination bold with faint generally does not work either. */
       -#define THEME_ITEM_NORMAL()           do {                            } while(0)
       -#define THEME_ITEM_FOCUS()            do {                            } while(0)
       +#define THEME_ITEM_NORMAL()
       +#define THEME_ITEM_FOCUS()
        #define THEME_ITEM_BOLD()             do { if (p->focused || !selected) attrmode(ATTR_BOLD_ON); } while(0)
        #define THEME_ITEM_SELECTED()         do { attrmode(ATTR_REVERSE_ON); if (!p->focused) attrmode(ATTR_FAINT_ON); } while(0)
       -#define THEME_SCROLLBAR_FOCUS()       do {                            } while(0)
       +#define THEME_SCROLLBAR_FOCUS()
        #define THEME_SCROLLBAR_NORMAL()      do { attrmode(ATTR_FAINT_ON);   } while(0)
        #define THEME_SCROLLBAR_TICK_FOCUS()  do { attrmode(ATTR_REVERSE_ON); } while(0)
        #define THEME_SCROLLBAR_TICK_NORMAL() do { attrmode(ATTR_REVERSE_ON); } while(0)
        #define THEME_LINEBAR()               do { attrmode(ATTR_FAINT_ON);   } while(0)
        #define THEME_STATUSBAR()             do { attrmode(ATTR_REVERSE_ON); } while(0)
        #define THEME_INPUT_LABEL()           do { attrmode(ATTR_REVERSE_ON); } while(0)
       -#define THEME_INPUT_NORMAL()          do {                            } while(0)
       +#define THEME_INPUT_NORMAL()
 (DIR) diff --git a/themes/newsboat.h b/themes/newsboat.h
       @@ -1,6 +1,6 @@
        /* newsboat-like (blue, yellow) */
       -#define THEME_ITEM_NORMAL()           do {                          } while(0)
       -#define THEME_ITEM_FOCUS()            do {                          } while(0)
       +#define THEME_ITEM_NORMAL()
       +#define THEME_ITEM_FOCUS()
        #define THEME_ITEM_BOLD()             do { attrmode(ATTR_BOLD_ON);  } while(0)
        #define THEME_ITEM_SELECTED()         do { if (p->focused) ttywrite("\x1b[93;44m"); } while(0) /* bright yellow fg, blue bg */
        #define THEME_SCROLLBAR_FOCUS()       do { ttywrite("\x1b[34m");    } while(0) /* blue fg */
       @@ -9,5 +9,5 @@
        #define THEME_SCROLLBAR_TICK_NORMAL() do { ttywrite("\x1b[44m");    } while(0)
        #define THEME_LINEBAR()               do { ttywrite("\x1b[34m");    } while(0)
        #define THEME_STATUSBAR()             do { attrmode(ATTR_BOLD_ON); ttywrite("\x1b[93;44m"); } while(0)
       -#define THEME_INPUT_LABEL()           do {                          } while(0)
       -#define THEME_INPUT_NORMAL()          do {                          } while(0)
       +#define THEME_INPUT_LABEL()
       +#define THEME_INPUT_NORMAL()