| Back in the day there were a bunch of `x2y` programs[1], like html2pdf, xls2csv, rst2odt, jpg2png, png2jpg, etc... You could imagine something like `any2zip`, or `any2tgz` or `iso2mp4` or something. It seems like there could/should be some sort of virtual filesystem where you could say "cat inventory.xls.csv", or "wine.exe excel.exe inventory.csv.xls" (please bear with me on these examples). Effectively "$BLOB.format.format", where "." becomes a sort of "convert to this $TYPE". Imagine being able to say: `echo "# Hello\n\n * World" > README.md ; cat README.md.html"`
(effectively invoking `md2html`)
`printer README.md.html.pdf`
(eg: `cat README.md | md2html | html2pdf | printer`)
...if you requested `README.md.pdf`, maybe it could intuit the intermediate `md2html2pdf` (HTML) portion?I really wish local linux filesystems (for end-users) would at least match Apple's capabilities. eg: `$RECENT`, spotlight, auto-OCR. We've really regressed since the era of `locate`, but I'd _LOVE_ some sort of modern equivalent. Imagine: `inotify`, `auditd`, just anything that can avoid full-disk scans during "normal end user" daily operation... wired up to `llm-summary $FILE >> sqlite.db ; `llava-describe $IMAGE >> sqlite.db ; etc...` For bonus points, catch anything missed with some sort of full daily/weekly backup operation. We're on the cusp of a much more intimate "partnership" with the compute boxes underneath our desks, but so much is getting sucked into the void of "the network is the computer". [1]: compgen -c | grep 2 | grep -v '2$' | grep -v '\.2' | grep -v '2\.' [2]: https://en.wikipedia.org/wiki/Locate_(Unix) |
They're still around. A problem is loss of information on each conversion. For example, wav->mp3 loses info. Converting back (mp3->wav) won't get you the exact .wav you started with. Similar thing with file types supporting different resolution graphics, vector vs. bitmap, metadata being stripped, features in format A not supported in format B, etc.
Another problem is the explosion of M:N file format combinations. A possible fix would be a universal (?) in-between format, functioning as a container for [portions of a file] + whatever metadata was extracted from original. That way you can at least do conversions along the lines of video container formats, where container type is changed but video inside does not get decompressed/re-encoded. Or simular operations like extracting/shuffling pages in a pdf document.
All in all this is not an easy problem & therefore unlikely to be solved anytime soon.