-/* Return true if the terminal device is not suspended. */
-#define TERMINAL_ACTIVE_P(d) (((d)->type != output_termcap && (d)->type !=output_msdos_raw) || (d)->display_info.tty->input)
+/* Return true if the terminal device is not suspended. */
+#define TERMINAL_ACTIVE_P(d) \
+ (((d)->type != output_termcap && (d)->type != output_msdos_raw) \
+ || (d)->display_info.tty->input)
+
+/* Return font cache data for the specified terminal. The historical
+ name is grossly misleading, actually it is (NAME . FONT-LIST-CACHE). */
+#if defined (HAVE_X_WINDOWS)
+#define TERMINAL_FONT_CACHE(t) \
+ (t->type == output_x_window ? t->display_info.x->name_list_element : Qnil)
+#elif defined (HAVE_NTGUI)
+#define TERMINAL_FONT_CACHE(t) \
+ (t->type == output_w32 ? t->display_info.w32->name_list_element : Qnil)
+#elif defined (HAVE_NS)
+#define TERMINAL_FONT_CACHE(t) \
+ (t->type == output_ns ? t->display_info.ns->name_list_element : Qnil)
+#endif