Canop / broot

A new way to see and navigate directory trees : https://dystroy.org/broot
MIT License
10.78k stars 237 forks source link

Rendering Office files as images #944

Open andrej1919 opened 2 months ago

andrej1919 commented 2 months ago

I used your example of preview_transformers for PDF files succesfully. However, the part of configuration that should render Office files does not work. Is this a bug or I need to setup something else besides this:

preview_transformers: [
     # Use mutool to render any PDF file as an image
     # In this example we use placeholders for the input and output files
     {
         input_extensions: [ "pdf" ] // case doesn't matter
         output_extension: png
         mode: image
         command: [ "mutool", "draw", "-w", "1000", "-o", "{output-path}", "{input-path}" ]
     }

     # Use LibreOffice to render Office files as images
     # In this example, {output-dir} is used to specify where LibreOffice must write the result
     {
         input_extensions: [ "xls", "xlsx", "doc", "docx", "ppt", "pptx", "ods", "odt", "odp" ]
         output_extension: png
         mode: image
         command: [
             "libreoffice", "--headless",
             "--convert-to", "png",
             "--outdir", "{output-dir}",
             "{input-path}"
         ]
     }
Canop commented 2 months ago

Can you please output here the debug log to see what happens ?

andrej1919 commented 2 months ago

Thanks. Just one more observation. This is the contents of my test directory:

broot.log
test.csv
test.doc
test.docx
test.html
test.pdf
test.txt
test.xlsx

Since I noticed that test.html is not rendered as well I checked broot.log but I could not find an entry that would show what happens when I move to this file.

Below is the output of broot.log . Looks like something is wrong with directory with "Office" files.

08:24:47.370 [INFO] cli_log::init: Starting broot v1.42.0 with log level DEBUG
08:24:47.370 [DEBUG] broot: env::args(): [
    "broot",
    "--outcmd",
    "/tmp/tmp.j3kshbmtEv",
]
08:24:47.371 [INFO] broot::shell_install: Shell installation state: UpToDate
08:24:47.371 [DEBUG] broot::conf::conf: reading conf file: "/home/hal/.config/broot/conf.hjson"
08:24:47.372 [DEBUG] broot::conf::conf: reading conf file: "/home/hal/.config/broot/verbs.hjson"
08:24:47.381 [DEBUG] broot::display::luma: terminal_light::luma() took 9.674123ms
08:24:47.382 [INFO] broot::display::luma: terminal's luma: Ok(0.0)
08:24:47.382 [DEBUG] broot::conf::conf: reading conf file: "/home/hal/.config/broot/skins/dark-blue.hjson"
08:24:47.393 [DEBUG] broot::conf::conf: skipping not applying conf file : "skins/white.hjson"
08:24:47.393 [DEBUG] broot::cli: Conf::from_default_location() took 21.938529ms
08:24:47.393 [DEBUG] broot::cli: config: Conf {
    capture_mouse: None,
    cols_order: None,
    content_search_max_file_size: Some(
        10000000,
    ),
    date_time_format: None,
    default_flags: None,
    disable_mouse_capture: None,
    enable_kitty_keyboard: Some(
        false,
    ),
    ext_colors: {},
    file_sum_threads_count: None,
    files: [
        "/home/hal/.config/broot/conf.hjson",
        "/home/hal/.config/broot/verbs.hjson",
        "/home/hal/.config/broot/skins/dark-blue.hjson",
    ],
    icon_theme: None,
    imports: [],
    initial_mode: None,
    kitty_graphics_transmission: None,
    preview_transformers: [
        PreviewTransformerConf {
            input_extensions: [
                "pdf",
            ],
            output_extension: "png",
            command: [
                "mutool",
                "draw",
                "-w",
                "1000",
                "-o",
                "{output-path}",
                "{input-path}",
            ],
            mode: Image,
        },
        PreviewTransformerConf {
            input_extensions: [
                "xls",
                "xlsx",
                "doc",
                "docx",
                "ppt",
                "pptx",
                "ods",
                "odt",
                "odp",
            ],
            output_extension: "png",
            command: [
                "libreoffice",
                "--headless",
                "--convert-to",
                "png",
                "--outdir",
                "{output-dir}",
                "{input-path}",
            ],
            mode: Image,
        },
        PreviewTransformerConf {
            input_extensions: [
                "json",
            ],
            output_extension: "json",
            command: [
                "jq",
            ],
            mode: Text,
        },
    ],
    lines_after_match_in_preview: Some(
        1,
    ),
    lines_before_match_in_preview: Some(
        1,
    ),
    max_panels_count: None,
    max_staged_count: None,
    modal: None,
    quit_on_last_cancel: None,
    search_modes: None,
    show_matching_characters_on_path_searches: None,
    show_selection_mark: Some(
        true,
    ),
    skin: Some(
        {
            "dates": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                66,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "file_error": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            Red,
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "tree": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                240,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    236,
                                ),
                            ),
                            background_color: None,
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "flag_label": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                247,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                234,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "scrollbar_thumb": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                254,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    246,
                                ),
                            ),
                            background_color: None,
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "help_paragraph": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                252,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "pruning": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                244,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            16,
                        ),
                    },
                },
                unfocused: None,
            },
            "content_extract": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                29,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "good_to_bad_6": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                136,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "good_to_bad_8": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                166,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "sparse": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                214,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "device_id_sep": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                102,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "good_to_bad_9": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                196,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "purpose_normal": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                252,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                234,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "help_code": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                253,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                235,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "git_deletions": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                160,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "perm_r": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                94,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "selected_line": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: None,
                        background_color: Some(
                            AnsiValue(
                                238,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: None,
                            background_color: Some(
                                AnsiValue(
                                    236,
                                ),
                            ),
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "link": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            Magenta,
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "owner": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                138,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "help_headers": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                178,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "file": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                254,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    247,
                                ),
                            ),
                            background_color: None,
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "perm_w": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                132,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "status_italic": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                178,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                236,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    234,
                                ),
                            ),
                            background_color: Some(
                                AnsiValue(
                                    234,
                                ),
                            ),
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "hex_ascii_graphic": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                250,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "good_to_bad_7": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                172,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "exe": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            Cyan,
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "preview": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                252,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                233,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    250,
                                ),
                            ),
                            background_color: Some(
                                AnsiValue(
                                    234,
                                ),
                            ),
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "directory": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                110,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            4,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    110,
                                ),
                            ),
                            background_color: None,
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "help_bold": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                178,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            4,
                        ),
                    },
                },
                unfocused: None,
            },
            "hex_ascii_whitespace": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                143,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "status_error": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                254,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                124,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "help_table_border": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                239,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "preview_match": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: None,
                        background_color: Some(
                            AnsiValue(
                                29,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "git_status_new": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                94,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            4,
                        ),
                    },
                },
                unfocused: None,
            },
            "purpose_italic": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                178,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                234,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "purpose_ellipsis": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                252,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                234,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "flag_value": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                178,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                234,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            4,
                        ),
                    },
                },
                unfocused: None,
            },
            "char_match": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            Green,
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "device_id_minor": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                138,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "status_job": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                220,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                237,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "device_id_major": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                138,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "good_to_bad_4": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                29,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "good_to_bad_2": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                29,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "help_italic": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                229,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "status_ellipsis": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                251,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                233,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    234,
                                ),
                            ),
                            background_color: Some(
                                AnsiValue(
                                    234,
                                ),
                            ),
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "count": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                138,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                236,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "parent": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                250,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    245,
                                ),
                            ),
                            background_color: None,
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "git_insertions": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                28,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "staging_area_title": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                254,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                234,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    252,
                                ),
                            ),
                            background_color: Some(
                                AnsiValue(
                                    235,
                                ),
                            ),
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "status_normal": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                252,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                236,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    234,
                                ),
                            ),
                            background_color: Some(
                                AnsiValue(
                                    234,
                                ),
                            ),
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "good_to_bad_0": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                28,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "preview_title": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                255,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                234,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    253,
                                ),
                            ),
                            background_color: Some(
                                AnsiValue(
                                    234,
                                ),
                            ),
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "purpose_bold": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                178,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                234,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            4,
                        ),
                    },
                },
                unfocused: None,
            },
            "status_bold": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                178,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                236,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            4,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    234,
                                ),
                            ),
                            background_color: Some(
                                AnsiValue(
                                    234,
                                ),
                            ),
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "good_to_bad_3": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                29,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "good_to_bad_5": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                100,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "hex_non_ascii": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                167,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "default": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                254,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    252,
                                ),
                            ),
                            background_color: None,
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "content_match": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                34,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "git_status_conflicted": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                88,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "hex_null": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                240,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "git_status_other": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                88,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "perm__": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                237,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "git_branch": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                178,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "git_status_modified": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                28,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "mode_command_mark": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                237,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                204,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            4,
                        ),
                    },
                },
                unfocused: None,
            },
            "scrollbar_track": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                239,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    236,
                                ),
                            ),
                            background_color: None,
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "hex_ascii_other": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                215,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "git_status_ignored": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                249,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "perm_x": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                65,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "preview_line_number": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                244,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                235,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "good_to_bad_1": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                29,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "git_status_current": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                237,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "input": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                231,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                234,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    247,
                                ),
                            ),
                            background_color: None,
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
            "group": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                131,
                            ),
                        ),
                        background_color: None,
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: None,
            },
            "status_code": SkinEntry {
                focused: CompoundStyle {
                    object_style: ContentStyle {
                        foreground_color: Some(
                            AnsiValue(
                                229,
                            ),
                        ),
                        background_color: Some(
                            AnsiValue(
                                236,
                            ),
                        ),
                        underline_color: None,
                        attributes: Attributes(
                            0,
                        ),
                    },
                },
                unfocused: Some(
                    CompoundStyle {
                        object_style: ContentStyle {
                            foreground_color: Some(
                                AnsiValue(
                                    234,
                                ),
                            ),
                            background_color: Some(
                                AnsiValue(
                                    234,
                                ),
                            ),
                            underline_color: None,
                            attributes: Attributes(
                                0,
                            ),
                        },
                    },
                ),
            },
        },
    ),
    special_paths: {
        GlobConf {
            pattern: "/media",
        }: Detailed(
            SpecialHandling {
                show: Default,
                list: Never,
                sum: Never,
            },
        ),
        GlobConf {
            pattern: "trav",
        }: Detailed(
            SpecialHandling {
                show: Always,
                list: Always,
                sum: Never,
            },
        ),
        GlobConf {
            pattern: "~/.config",
        }: Detailed(
            SpecialHandling {
                show: Always,
                list: Default,
                sum: Default,
            },
        ),
    },
    syntax_theme: Some(
        MochaDark,
    ),
    terminal_title: None,
    true_colors: None,
    update_work_dir: None,
    verbs: [
        VerbConf {
            invocation: Some(
                "edit",
            ),
            internal: None,
            external: None,
            execution: Some(
                String(
                    "$EDITOR {file}",
                ),
            ),
            cmd: None,
            cmd_separator: None,
            key: Some(
                "ctrl-e",
            ),
            keys: [],
            extensions: [],
            shortcut: Some(
                "e",
            ),
            leave_broot: Some(
                false,
            ),
            from_shell: None,
            apply_to: TextFile,
            set_working_dir: None,
            working_dir: None,
            description: None,
            auto_exec: None,
            switch_terminal: None,
            panels: [],
        },
        VerbConf {
            invocation: Some(
                "create {subpath}",
            ),
            internal: None,
            external: None,
            execution: Some(
                String(
                    "$EDITOR {directory}/{subpath}",
                ),
            ),
            cmd: None,
            cmd_separator: None,
            key: None,
            keys: [],
            extensions: [],
            shortcut: None,
            leave_broot: Some(
                false,
            ),
            from_shell: None,
            apply_to: Any,
            set_working_dir: None,
            working_dir: None,
            description: None,
            auto_exec: None,
            switch_terminal: None,
            panels: [],
        },
        VerbConf {
            invocation: Some(
                "git_diff",
            ),
            internal: None,
            external: None,
            execution: Some(
                String(
                    "git difftool -y {file}",
                ),
            ),
            cmd: None,
            cmd_separator: None,
            key: None,
            keys: [],
            extensions: [],
            shortcut: Some(
                "gd",
            ),
            leave_broot: Some(
                false,
            ),
            from_shell: None,
            apply_to: Any,
            set_working_dir: None,
            working_dir: None,
            description: None,
            auto_exec: None,
            switch_terminal: None,
            panels: [],
        },
        VerbConf {
            invocation: Some(
                "backup {version}",
            ),
            internal: None,
            external: None,
            execution: Some(
                String(
                    "cp -r {file} {parent}/{file-stem}-{version}{file-dot-extension}",
                ),
            ),
            cmd: None,
            cmd_separator: None,
            key: Some(
                "ctrl-b",
            ),
            keys: [],
            extensions: [],
            shortcut: None,
            leave_broot: Some(
                false,
            ),
            from_shell: None,
            apply_to: Any,
            set_working_dir: None,
            working_dir: None,
            description: None,
            auto_exec: Some(
                false,
            ),
            switch_terminal: None,
            panels: [],
        },
        VerbConf {
            invocation: Some(
                "terminal",
            ),
            internal: None,
            external: None,
            execution: Some(
                String(
                    "$SHELL",
                ),
            ),
            cmd: None,
            cmd_separator: None,
            key: Some(
                "ctrl-t",
            ),
            keys: [],
            extensions: [],
            shortcut: None,
            leave_broot: Some(
                false,
            ),
            from_shell: None,
            apply_to: Any,
            set_working_dir: Some(
                true,
            ),
            working_dir: None,
            description: None,
            auto_exec: None,
            switch_terminal: None,
            panels: [],
        },
    ],
    layout_instructions: None,
}
08:24:47.495 [DEBUG] broot::app::app_context: COLORTERM env variable = "truecolor"
08:24:47.495 [DEBUG] broot::app::app_context: true colors are available
08:24:47.496 [DEBUG] broot::tree_build::builder: GitIgnorer::default() took 80ns
08:24:47.496 [DEBUG] broot::tree_build::builder: blines before trimming: 9
08:24:47.601 [DEBUG] broot::app::app: Clipboard backend: "X11"
08:24:47.601 [INFO] broot::app::app: event source is combining: false
08:24:47.602 [DEBUG] broot::app::app: display panel took 495.628µs
08:24:47.602 [DEBUG] broot::app::app: pending_tasks took 351ns
08:24:53.064 [INFO] broot::app::app: key combination: Down
08:24:53.064 [DEBUG] broot::command::panel_input: verb for key: :line_down
08:24:53.064 [DEBUG] broot::app::app: command after add_event: VerbTrigger { verb_id: 19, input_invocation: None }
08:24:53.064 [DEBUG] broot::app::app: cmd_result: Keep
08:24:53.064 [DEBUG] broot::app::app: display panel took 368.217µs
08:24:53.065 [DEBUG] broot::app::app: pending_tasks took 788ns
08:24:56.537 [INFO] broot::app::app: key combination: Down
08:24:56.537 [DEBUG] broot::command::panel_input: verb for key: :line_down
08:24:56.537 [DEBUG] broot::app::app: command after add_event: VerbTrigger { verb_id: 19, input_invocation: None }
08:24:56.537 [DEBUG] broot::app::app: cmd_result: Keep
08:24:56.538 [DEBUG] broot::app::app: display panel took 804.756µs
08:24:56.538 [DEBUG] broot::app::app: pending_tasks took 963ns
08:24:57.609 [INFO] broot::app::app: key combination: Ctrl-Right
08:24:57.610 [DEBUG] broot::command::panel_input: verb for key: :panel_right
08:24:57.610 [DEBUG] broot::app::app: command after add_event: VerbTrigger { verb_id: 60, input_invocation: None }
08:24:57.671 [DEBUG] broot::syntactic::syntaxer: syntect::dumps::from_binary(SYNTAXES) took 61.241498ms
08:24:57.894 [DEBUG] broot::app::app: cmd_result: NewPanel
08:24:57.894 [DEBUG] broot::app::app: display panel took 121.518µs
08:24:57.895 [DEBUG] broot::app::app: display panel took 1.067679ms
08:24:57.895 [DEBUG] broot::app::app: pending_tasks took 1.047µs
08:25:00.363 [INFO] broot::app::app: key combination: Down
08:25:00.363 [DEBUG] broot::command::panel_input: verb for key: :line_down
08:25:00.363 [DEBUG] broot::app::app: command after add_event: VerbTrigger { verb_id: 19, input_invocation: None }
08:25:00.363 [DEBUG] broot::app::app: cmd_result: Keep
08:25:00.363 [INFO] broot::preview::preview_transformer: transforming "/home/hal/temp/test.doc" to "/tmp/broot-conversionsG7o5ko/7a9fce0c538ab339/test.png"
08:25:00.364 [ERROR] broot::preview::preview_transformer: conversion failed using ["libreoffice", "--headless", "--convert-to", "png", "--outdir", "{output-dir}", "{input-path}"]
08:25:00.364 [ERROR] broot::preview::preview_transformer: conversion error: Io { source: Os { code: 2, kind: NotFound, message: "No such file or directory" } }
08:25:00.366 [DEBUG] broot::app::app: display panel took 250.934µs
08:25:00.369 [DEBUG] broot::app::app: display panel took 2.638407ms
08:25:00.369 [DEBUG] broot::app::app: pending_tasks took 1.052µs
08:25:01.767 [INFO] broot::app::app: key combination: Down
08:25:01.767 [DEBUG] broot::command::panel_input: verb for key: :line_down
08:25:01.767 [DEBUG] broot::app::app: command after add_event: VerbTrigger { verb_id: 19, input_invocation: None }
08:25:01.767 [DEBUG] broot::app::app: cmd_result: Keep
08:25:01.767 [INFO] broot::preview::preview_transformer: transforming "/home/hal/temp/test.docx" to "/tmp/broot-conversionsG7o5ko/872d62264ac03b7b/test.png"
08:25:01.769 [ERROR] broot::preview::preview_transformer: conversion failed using ["libreoffice", "--headless", "--convert-to", "png", "--outdir", "{output-dir}", "{input-path}"]
08:25:01.769 [ERROR] broot::preview::preview_transformer: conversion error: Io { source: Os { code: 2, kind: NotFound, message: "No such file or directory" } }
08:25:01.770 [DEBUG] broot::app::app: display panel took 490.323µs
08:25:01.772 [DEBUG] broot::app::app: display panel took 1.741579ms
08:25:01.772 [DEBUG] broot::app::app: pending_tasks took 1.558µs
08:25:03.087 [INFO] broot::app::app: key combination: Down
08:25:03.087 [DEBUG] broot::command::panel_input: verb for key: :line_down
08:25:03.087 [DEBUG] broot::app::app: command after add_event: VerbTrigger { verb_id: 19, input_invocation: None }
08:25:03.087 [DEBUG] broot::app::app: cmd_result: Keep
08:25:03.092 [DEBUG] broot::app::app: display panel took 341.74µs
08:25:03.093 [DEBUG] broot::app::app: display panel took 605.284µs
08:25:03.093 [DEBUG] broot::app::app: pending_tasks took 957ns
08:25:07.893 [INFO] broot::app::app: key combination: Down
08:25:07.893 [DEBUG] broot::command::panel_input: verb for key: :line_down
08:25:07.893 [DEBUG] broot::app::app: command after add_event: VerbTrigger { verb_id: 19, input_invocation: None }
08:25:07.893 [DEBUG] broot::app::app: cmd_result: Keep
08:25:07.893 [INFO] broot::preview::preview_transformer: transforming "/home/hal/temp/test.pdf" to "/tmp/broot-conversionsG7o5ko/b28d68dcff111ca0/test.png"
08:25:08.014 [DEBUG] broot::image::image_view: decode image on "/tmp/broot-conversionsG7o5ko/b28d68dcff111ca0/test.png" took 5.472418ms
08:25:08.015 [DEBUG] broot::app::app: display panel took 327.994µs
08:25:08.015 [DEBUG] broot::image::image_view: image_view must be cleared
08:25:08.015 [DEBUG] broot::kitty::detect_support: is_kitty_graphics_protocol_supported ?
08:25:08.015 [DEBUG] broot::kitty::detect_support: $TERM = "xterm-kitty"
08:25:08.015 [DEBUG] broot::kitty::detect_support:  -> this terminal seems to be Kitty
08:25:08.015 [DEBUG] broot::kitty::image_renderer: area: (157, 65)
08:25:08.015 [DEBUG] broot::kitty::image_renderer: optimal: (112, 71)
08:25:08.015 [DEBUG] broot::kitty::image_renderer: constrained in height
08:25:08.015 [DEBUG] broot::kitty::image_renderer: using rgb
08:25:08.015 [DEBUG] broot::kitty::image_renderer: transmission medium: TempFile
08:25:08.017 [DEBUG] broot::kitty::image_renderer: temp file written: "/tmp/broot-img-previewnDTJme"
08:25:08.017 [DEBUG] broot::kitty::image_renderer: file len: 4212000
08:25:08.017 [DEBUG] broot::app::app: display panel took 2.353226ms
08:25:08.017 [DEBUG] broot::app::app: pending_tasks took 1.26µs
08:25:09.911 [INFO] broot::app::app: key combination: Down
08:25:09.912 [DEBUG] broot::command::panel_input: verb for key: :line_down
08:25:09.912 [DEBUG] broot::app::app: command after add_event: VerbTrigger { verb_id: 19, input_invocation: None }
08:25:09.912 [DEBUG] broot::app::app: cmd_result: Keep
08:25:09.913 [DEBUG] broot::app::app: display panel took 416.554µs
08:25:09.913 [DEBUG] broot::app::app: display panel took 422.133µs
08:25:09.914 [DEBUG] broot::kitty: erase kitty image 1
08:25:09.914 [DEBUG] broot::app::app: pending_tasks took 1.447µs
08:25:11.815 [INFO] broot::app::app: key combination: Down
08:25:11.815 [DEBUG] broot::command::panel_input: verb for key: :line_down
08:25:11.815 [DEBUG] broot::app::app: command after add_event: VerbTrigger { verb_id: 19, input_invocation: None }
08:25:11.815 [DEBUG] broot::app::app: cmd_result: Keep
08:25:11.815 [INFO] broot::preview::preview_transformer: transforming "/home/hal/temp/test.xlsx" to "/tmp/broot-conversionsG7o5ko/ef83badb013c230b/test.png"
08:25:11.817 [ERROR] broot::preview::preview_transformer: conversion failed using ["libreoffice", "--headless", "--convert-to", "png", "--outdir", "{output-dir}", "{input-path}"]
08:25:11.817 [ERROR] broot::preview::preview_transformer: conversion error: Io { source: Os { code: 2, kind: NotFound, message: "No such file or directory" } }
08:25:11.817 [DEBUG] broot::app::app: display panel took 180.141µs
08:25:11.819 [DEBUG] broot::app::app: display panel took 1.357696ms
08:25:11.819 [DEBUG] broot::app::app: pending_tasks took 1.666µs
08:25:14.878 [INFO] broot::app::app: key combination: :
08:25:14.878 [DEBUG] broot::app::app: command after add_event: VerbEdit(VerbInvocation { name: "", args: None, bang: false })
08:25:14.878 [DEBUG] broot::app::app: cmd_result: Keep
08:25:14.878 [DEBUG] broot::app::app: display panel took 341.67µs
08:25:14.879 [DEBUG] broot::app::app: display panel took 1.070299ms
08:25:14.880 [DEBUG] broot::app::app: pending_tasks took 1.214µs
08:25:15.090 [INFO] broot::app::app: key combination: q
08:25:15.091 [DEBUG] broot::app::app: command after add_event: VerbEdit(VerbInvocation { name: "q", args: None, bang: false })
08:25:15.091 [DEBUG] broot::app::app: cmd_result: Keep
08:25:15.091 [DEBUG] broot::app::app: display panel took 349.013µs
08:25:15.092 [DEBUG] broot::app::app: display panel took 731.245µs
08:25:15.092 [DEBUG] broot::app::app: pending_tasks took 886ns
08:25:15.733 [INFO] broot::app::app: key combination: Enter
08:25:15.733 [DEBUG] broot::command::panel_input: verb for key: :open_stay
08:25:15.733 [DEBUG] broot::app::app: command after add_event: VerbInvocate(VerbInvocation { name: "q", args: None, bang: false })
08:25:15.733 [DEBUG] broot::app::app: cmd_result: Quit
08:25:15.733 [DEBUG] broot::task_sync: dead dam
08:25:15.734 [INFO] cli_log::mem: Physical mem usage: current=32M, peak=231M
08:25:15.734 [INFO] broot: bye
Canop commented 2 months ago
08:25:11.815 [INFO] broot::preview::preview_transformer: transforming "/home/hal/temp/test.xlsx" to "/tmp/broot-conversionsG7o5ko/ef83badb013c230b/test.png"
08:25:11.817 [ERROR] broot::preview::preview_transformer: conversion failed using ["libreoffice", "--headless", "--convert-to", "png", "--outdir", "{output-dir}", "{input-path}"]
08:25:11.817 [ERROR] broot::preview::preview_transformer: conversion error: Io { source: Os { code: 2, kind: NotFound, message: "No such file or directory" } }

It looks like libreoffice wasn't found. Can you check it launches when you run it at the command line ? Maybe it's not in the PATH ?

andrej1919 commented 2 months ago

I dicsovered libreoffice does not work at the command line. It needs to be invoked like this: flatpak run org.libreoffice.LibreOffice

Canop commented 2 months ago

So it's installed with flatpak on your system.

Does it work headless this way ? Can you try with an adapted configuration, eg

     {
         input_extensions: [ "xls", "xlsx", "doc", "docx", "ppt", "pptx", "ods", "odt", "odp" ]
         output_extension: png
         mode: image
         command: [
             "flatpak", "run", "libreoffice",
             "--headless",
             "--convert-to", "png",
             "--outdir", "{output-dir}",
             "{input-path}"
         ]
     }
andrej1919 commented 2 months ago

Thanks, but it does not work with this adapted configuration. Relevant line from log file: [ERROR] broot::preview::preview_transformer: conversion failed using ["flatpak", "run", "libreoffice", "--headless", "--convert-to", "png", "--outdir", "{output-dir}", "{input-path}"]

Canop commented 2 months ago

Can you try the command directly on the command line ? ie

flatpak run libreoffice --headless --convert-to png --outdir . path/to/officefile
Canop commented 2 months ago

Other people seem to have managed to run the flatpak version headless: https://askubuntu.com/a/1222834

andrej1919 commented 2 months ago

flatpak run libreoffice --headless --convert-to png --outdir . path/to/officefile

I tried this: flatpak run org.libreoffice.LibreOffice --headless --convert-to png --outdir . test.doc

Output: convert /home/hal/temp/test.doc as a Writer document -> /home/hal/temp/test.png using filter : writer_png_Export

Am I missing something?

Canop commented 2 months ago

This output is normal. This should have generated a test.png file.

Canop commented 2 months ago

I'll add more traces to help understand where exactly the process fails.

andrej1919 commented 2 months ago

This output is normal. This should have generated a test.png file.

It does nothing, But after restart the output is a bit different:

$ flatpak run org.libreoffice.LibreOffice --headless --convert-to png --outdir . test.doc
convert /home/hal/temp/test.doc as a Writer document -> /home/hal/temp/test.png using filter : writer_png_Export
Overwriting: /home/hal/temp/test.png