+
+ struct ascii_driver *a = xmalloc (sizeof *a);
+ *a = (struct ascii_driver) {
+ .driver = {
+ .class = &ascii_driver_class,
+ .name = xstrdup (fh_get_file_name (fh)),
+ .device_type = device_type
+ },
+
+ .emphasis = parse_boolean (opt (o, "emphasis", "false")),
+ .chart_file_name = parse_chart_file_name (opt (o, "charts",
+ fh_get_file_name (fh))),
+
+ .fg = parse_color (opt (o, "foreground-color", "#000000000000")),
+ .bg = parse_color (opt (o, "background-color", "#FFFFFFFFFFFF")),
+
+ .width_mode = (width > 0 ? FIXED_WIDTH
+ : terminal ? TERMINAL_WIDTH
+ : VIEW_WIDTH),
+ .width = width,
+
+ .min_hbreak = parse_int (opt (o, "min-hbreak", "-1"), -1, INT_MAX),
+
+ .box = box == BOX_ASCII ? get_ascii_box () : get_unicode_box (),
+
+ .handle = fh,
+ .file = file,
+
+ .params = (struct render_params) {
+ .ops = &ascii_render_ops,
+ .aux = a,
+ .size = { [H] = a->width, [V] = INT_MAX },
+ .font_size = { [H] = 1, [V] = 1 },
+ .line_widths = ascii_line_widths,
+ .rtl = render_direction_rtl (),
+ .printing = true,
+ },
+ };