"many lines of code" = about 1,500
How do you create your html? If it is generated with print
and heredocs within the script, you probably can reduce its size by using a templating mechanism and moving the html to separate files.
Also, if you have such a big number of constants in your script, I would put them in some kind of configuration file, so you can change them without having to edit the script.
- reduced total code lines because common elements are not rerpoduced in separate scripts
- during development, a change to any common element only has to be made once instad of four times.
There is another way to achieve this. Put your common code into modules.