#!/bin/bash cat << EOF > ui_index.c // This file was generated by ui_index.gen.sh, do not edit it manually #include "ui_index.h" ui_obj_map ui_objects[] = { $(grep -h "lv_obj_t \*" ui/screens.h | sed 's/lv_obj_t \*//g' | sed 's/;//g' | while read -r line; do echo " {\"$line\", &(objects.$line)}," done) }; const int ui_objects_size = sizeof(ui_objects) / sizeof(ui_objects[0]); ui_img_map ui_images[] = { $(grep "extern const lv_img_dsc_t " ui/images.h | sed 's/extern const lv_img_dsc_t //g' | sed 's/;//g' | while read -r line; do echo " {\"$line\", &$line}," done) }; const int ui_images_size = sizeof(ui_images) / sizeof(ui_images[0]); EOF echo "ui_index.c has been generated successfully."