Closed jhaisley closed 3 months ago
Hi @jhaisley ! I like the recursive option! That should come in useful for multiple usecases. However I'm thinking whether to solve this in the code, or include better documentation to explain CLI glob usage.
For example, with this directory structure:
$$ tree test_emails
test_emails
├── nested
│ └── test_email_2 copy.eml
├── test_email_1.eml
└── test_email_2.eml
1 directory, 3 files
... if we run:
eml-to-html test_emails/**/*.eml
... produces:
$$ tree test_emails
test_emails
├── nested
│ ├── test_email_2 copy.eml
│ └── test_email_2 copy.html
├── test_email_1.eml
├── test_email_1.html
├── test_email_2.eml
└── test_email_2.html
1 directory, 6 files
Does that also solve your usecase?
→ In that case, we can make sure to better document this usage in the README to assist with such usecases.
Additionally, about the db-to-html
tool. I'd like to keep this eml-to-html
tool very single-purpose. Such that it keeps doing 1 thing and 1 thing properly.
Perhaps that is an idea for a different micropackage?
My use case (converting from a GYB archive) could be solved with globing although not with your proposed command.
$ tree . . ├── 2023 │ ├── 11 │ │ ├── 14 │ │ │ ├── 18bd03b3cb9a7d54.eml │ │ │ ├── 18bd03b3d3153e8e.eml │ │ │ ├── 18bd03b4644c5576.eml │ │ │ └── 18bd03bb6dc534d7.eml │ │ ├── 15 │ │ │ ├── 18bd04b7f469a581.eml │ │ │ ├── 18bd04b81dc687c2.eml │ │ │ └── 18bd441249955d3c.eml │ │ ├── 16 │ │ │ ├── 18bd9422a8fbb1aa.eml │ │ │ ├── 18bd94332a9a6470.eml │ │ │ ├── 18bd948021852bf8.eml │ │ │ ├── 18bd9563fe2a11a6.eml │ │ │ ├── 18bd9568455932ac.eml │ │ │ ├── 18bd9568460ed04b.eml │ │ │ ├── 18bd9568552d2ca5.eml │ │ │ └── 18bd95a41cdca6ed.eml │ │ ├── 17 │ │ │ ├── 18bddd60780d84e9.eml │ │ │ ├── 18bddf6bac3c970c.eml │ │ │ └── 18bde67f3293fc51.eml │ │ ├── 19 │ │ │ └── 18be5fcbca239a53.eml │ │ ├── 20 │ │ │ ├── 18bece78360f7b9a.eml │ │ │ ├── 18bece7c1ed040eb.eml │ │ │ ├── 18bece80c8e1e210.eml │ │ │ ├── 18bece8685dca3c5.eml │ │ │ ├── 18bed5327f21d5dd.eml │ │ │ ├── 18bed5334d26a77b.eml │ │ │ ├── 18bed5e76942ad91.eml │ │ │ ├── 18bed5eb622eb1fb.eml │ │ │ ├── 18bed5eeefa1bbcc.eml │ │ │ ├── 18bed5f26201a027.eml │ │ │ ├── 18bed7189fc26afa.eml │ │ │ ├── 18bed8fc06c50d5f.eml │ │ │ ├── 18bed8fc683b76a6.eml │ │ │ ├── 18bed918bcec0dc1.eml │ │ │ ├── 18bed92e0109544b.eml │ │ │ ├── 18bed95971dc88e1.eml │ │ │ ├── 18bed96eac2aa658.eml │ │ │ ├── 18beda8236f15fca.eml │ │ │ ├── 18bedaaee4060038.eml │ │ │ ├── 18bedee5f9b55f8f.eml │ │ │ ├── 18bee177b89d32e7.eml │ │ │ ├── 18bee1eae3761913.eml │ │ │ ├── 18bee28e875474a2.eml │ │ │ └── 18bee2b86cd589ba.eml │ │ ├── 21 │ │ │ ├── 18bf369c9266230e.eml │ │ │ └── 18bf373ff399bb16.eml │ │ ├── 22 │ │ │ ├── 18bf74bb07926455.eml │ │ │ ├── 18bf7b066859fbe1.eml │ │ │ ├── 18bf7b6a7e3dabb1.eml │ │ │ ├── 18bf89ad77fc402d.eml │ │ │ └── 18bf8c1ff7d14b86.eml │ │ ├── 23 │ │ │ └── 18bfdc13956a142b.eml │ │ ├── 25 │ │ │ └── 18c042370975911a.eml │ │ ├── 26 │ │ │ ├── 18c0d346c536919f.eml │ │ │ └── 18c0d4dd7b9dde76.eml │ │ ├── 27 │ │ │ ├── 18c10fad8a50cf8f.eml │ │ │ ├── 18c110019bd318db.eml │ │ │ ├── 18c111f46f6ad9e1.eml │ │ │ ├── 18c11298dc221fb8.eml │ │ │ ├── 18c1140d01fb8a49.eml │ │ │ ├── 18c114bda2cdc7b1.eml │ │ │ ├── 18c1152a54018e5d.eml │ │ │ ├── 18c1157c4ff72639.eml │ │ │ ├── 18c117fa75a9d64d.eml │ │ │ ├── 18c11805136494df.eml │ │ │ └── 18c119715abc2a95.eml │ │ ├── 28 │ │ │ ├── 18c16185bfaa9ae1.eml │ │ │ ├── 18c162159be6ff65.eml │ │ │ ├── 18c1623ba5166faf.eml │ │ │ ├── 18c16254e608eab5.eml │ │ │ ├── 18c1626f998c1e80.eml │ │ │ ├── 18c1634cb58756e7.eml │ │ │ ├── 18c1662ad326d666.eml │ │ │ ├── 18c16a316c2e15f8.eml │ │ │ ├── 18c175cd04195062.eml │ │ │ └── 18c17d3b4d52b0ac.eml │ │ ├── 29 │ │ │ ├── 18c18a30dec307c4.eml │ │ │ ├── 18c1b36202630434.eml │ │ │ ├── 18c1cdc8ab684492.eml │ │ │ └── 18c1cebb205d391f.eml │ │ └── 30 │ │ ├── 18c2029bf3e3a675.eml │ │ ├── 18c20b3ec46d5b21.eml │ │ ├── 18c20f5b761b0352.eml │ │ └── 18c222d39af7f651.eml │ └── 12 │ ├── 1 │ │ ├── 18c24ae959e607ac.eml │ │ ├── 18c25b13652e8643.eml │ │ ├── 18c2600940884021.eml │ │ ├── 18c261c0da1006ae.eml │ │ ├── 18c261c349e0bd15.eml │ │ └── 18c2637abf4ecb36.eml │ ├── 11 │ │ ├── 18c58f571cd70c0c.eml │ │ ├── 18c59dafe123beee.eml │ │ ├── 18c5a782e8e337e5.eml │ │ ├── 18c5a79953c48fb6.eml │ │ ├── 18c5ad9056584ad0.eml │ │ ├── 18c5ae00fea16552.eml │ │ └── 18c5aeae7214efe6.eml │ ├── 12 │ │ ├── 18c5e178bc6317d9.eml │ │ └── 18c5e3ea3e5ffbaa.eml │ ├── 13 │ │ ├── 18c6348282bd526b.eml │ │ ├── 18c63801f78c3db6.eml │ │ ├── 18c64c98bed4e51a.eml │ │ └── 18c64ff05e1356d0.eml │ ├── 14 │ │ └── 18c689d29640b008.eml │ ├── 17 │ │ └── 18c7539502b943db.eml │ ├── 18 │ │ ├── 18c7cc9dd6192b84.eml │ │ ├── 18c7da65262a28b8.eml │ │ └── 18c7db19539a074f.eml │ ├── 19 │ │ ├── 18c82519042baecc.eml │ │ ├── 18c825bf27256ae9.eml │ │ ├── 18c82cb020b0058e.eml │ │ ├── 18c82eae7f3b6f5b.eml │ │ ├── 18c83efb69fadfef.eml │ │ └── 18c83f08594c21f4.eml │ ├── 20 │ │ ├── 18c87539090d3b9f.eml │ │ ├── 18c87d813ddee183.eml │ │ ├── 18c887c338cf9984.eml │ │ ├── 18c887d99a6c7e2c.eml │ │ ├── 18c88d5e77cfad55.eml │ │ ├── 18c88d7612106141.eml │ │ ├── 18c88eedb69ae0d7.eml │ │ └── 18c895f8610d9571.eml │ ├── 21 │ │ ├── 18c89d3c5533d6be.eml │ │ ├── 18c8c71b08fd109d.eml │ │ ├── 18c8cc296abf13f5.eml │ │ ├── 18c8df48e77efe44.eml │ │ ├── 18c8e002c9379956.eml │ │ ├── 18c8e33b40642466.eml │ │ └── 18c8e4c6e395a011.eml │ ├── 22 │ │ ├── 18c91a295cc29c37.eml │ │ ├── 18c91d3ba2220ff2.eml │ │ ├── 18c93015aef9c715.eml │ │ ├── 18c93b1ed291bbf3.eml │ │ ├── 18c93b1f3ed5575c.eml │ │ └── 18c93f2005c5d107.eml │ ├── 28 │ │ └── 18cb0b9d823bbdf2.eml │ ├── 4 │ │ ├── 18c352231b2891c5.eml │ │ ├── 18c358a4316779ec.eml │ │ ├── 18c36882c6203156.eml │ │ ├── 18c36df5c5ff6314.eml │ │ └── 18c36eabfe4b13d0.eml │ ├── 5 │ │ ├── 18c3a79a7a0b00bf.eml │ │ ├── 18c3af4fcafe5945.eml │ │ ├── 18c3b442bf475219.eml │ │ ├── 18c3bbe5d5e040c4.eml │ │ ├── 18c3c35caf68bf92.eml │ │ └── 18c3c3a6833ede1b.eml │ ├── 6 │ │ ├── 18c3fa21fa0fe35c.eml │ │ ├── 18c3fc9846260b69.eml │ │ ├── 18c410ebb43904dd.eml │ │ └── 18c4182b93bd24b2.eml │ ├── 7 │ │ ├── 18c44ef45af2a405.eml │ │ ├── 18c450766e232386.eml │ │ ├── 18c45100ee64f964.eml │ │ ├── 18c45131cfcd8182.eml │ │ ├── 18c45138d673e34f.eml │ │ ├── 18c4514961a370be.eml │ │ ├── 18c4515dc90da5d5.eml │ │ ├── 18c4516d2b5a6d6f.eml │ │ ├── 18c4518286be8f5a.eml │ │ ├── 18c45187b5e41a91.eml │ │ ├── 18c452daab923d0a.eml │ │ └── 18c45a6b0420040c.eml │ └── 8 │ ├── 18c49a2e86ca9567.eml │ └── 18c4a53d97c21771.eml ├── 2024 │ ├── 1 │ │ ├── 10 │ │ │ └── 18cf34bd7230f74b.eml │ │ ├── 11 │ │ │ ├── 18cf5e1f4eff5389.eml │ │ │ ├── 18cfa778bcf80b2c.eml │ │ │ └── 18cfaf3ebfdb700a.eml │ │ ├── 15 │ │ │ ├── 18d0f69b5da1ec94.eml │ │ │ └── 18d0f6aa7f71b519.eml │ │ ├── 16 │ │ │ ├── 18d121aa541fc5a7.eml │ │ │ └── 18d121c5ce15c3e8.eml │ │ ├── 17 │ │ │ ├── 18d14d26926a630f.eml │ │ │ ├── 18d14d432208747c.eml │ │ │ ├── 18d18391fd09e530.eml │ │ │ ├── 18d1926ead8b3d56.eml │ │ │ └── 18d192ed9c880565.eml │ │ ├── 18 │ │ │ ├── 18d1ce9ab92ab538.eml │ │ │ ├── 18d1cf250e04f1c4.eml │ │ │ ├── 18d1d0dce84cc4b2.eml │ │ │ ├── 18d1d10a36ddcefc.eml │ │ │ ├── 18d1d16af3af7699.eml │ │ │ ├── 18d1d3dc31848dd7.eml │ │ │ ├── 18d1d69b08bac675.eml │ │ │ └── 18d1d843dfa7e1ca.eml │ │ ├── 19 │ │ │ ├── 18d2153264fe7852.eml │ │ │ ├── 18d2156c83af24b6.eml │ │ │ ├── 18d218f126caf258.eml │ │ │ ├── 18d2190ec39c4c0b.eml │ │ │ └── 18d22c0b0320aa77.eml │ │ ├── 2 │ │ │ ├── 18ccad45fe9b5530.eml │ │ │ ├── 18ccaf30584de0a6.eml │ │ │ ├── 18ccaf3a7138fe99.eml │ │ │ ├── 18ccaf46f2ce175d.eml │ │ │ ├── 18ccaf64e0f476c4.eml │ │ │ ├── 18ccaf67f202e3ca.eml │ │ │ ├── 18ccaf789fe5e641.eml │ │ │ ├── 18ccba9868468875.eml │ │ │ ├── 18ccc1e458648891.eml │ │ │ └── 18ccc210b6a27986.eml │ │ ├── 22 │ │ │ └── 18d31022d6776b69.eml │ │ ├── 23 │ │ │ ├── 18d360a51f0b7187.eml │ │ │ ├── 18d361959ce531b9.eml │ │ │ ├── 18d361a99eed854c.eml │ │ │ ├── 18d36e852acdcaa4.eml │ │ │ ├── 18d36e96d27d3d3e.eml │ │ │ ├── 18d372942e662c20.eml │ │ │ ├── 18d372f27f45a4a4.eml │ │ │ └── 18d37a75a4ac0c63.eml │ │ ├── 24 │ │ │ ├── 18d38eefc486f135.eml │ │ │ ├── 18d38f2935d4dc76.eml │ │ │ ├── 18d3904aebf1c791.eml │ │ │ ├── 18d3be271de78592.eml │ │ │ ├── 18d3be6f775f9f84.eml │ │ │ ├── 18d3bf60c0ada109.eml │ │ │ ├── 18d3bf6dea3cf482.eml │ │ │ ├── 18d3bf7c5df61998.eml │ │ │ └── 18d3d7f9a99b6406.eml │ │ ├── 25 │ │ │ ├── 18d3e01ac3b1663a.eml │ │ │ ├── 18d4053c125ec6c2.eml │ │ │ ├── 18d405482bab570a.eml │ │ │ ├── 18d40ceb4a6deb19.eml │ │ │ ├── 18d416a5bcdb0aff.eml │ │ │ └── 18d41972ffb5737f.eml │ │ ├── 26 │ │ │ ├── 18d4730e2547abf2.eml │ │ │ └── 18d474165887aa26.eml │ │ ├── 29 │ │ │ ├── 18d556b98bb8aa48.eml │ │ │ ├── 18d568864401c8c1.eml │ │ │ ├── 18d568aed8d41190.eml │ │ │ └── 18d5794d5c9406bc.eml │ │ ├── 3 │ │ │ ├── 18ccfab276d593f7.eml │ │ │ ├── 18ccfacadef1ac03.eml │ │ │ ├── 18cd055ab17faedf.eml │ │ │ ├── 18cd0b9e17fdabb3.eml │ │ │ ├── 18cd165fe97938de.eml │ │ │ └── 18cd1ba6208c107e.eml │ │ ├── 30 │ │ │ ├── 18d5a5a5cfc3e240.eml │ │ │ ├── 18d5b00bdc4bf989.eml │ │ │ └── 18d5c3badb5ff218.eml │ │ ├── 31 │ │ │ ├── 18d61694f607a949.eml │ │ │ ├── 18d616aac4efe8ca.eml │ │ │ └── 18d617e5b9d1f75c.eml │ │ ├── 4 │ │ │ ├── 18cd237ac156f06a.eml │ │ │ ├── 18cd45c589231818.eml │ │ │ ├── 18cd516c7265d28f.eml │ │ │ ├── 18cd54fcf42218dc.eml │ │ │ ├── 18cd6d3c829dbc5b.eml │ │ │ └── 18cd6d49fbebe6c2.eml │ │ ├── 5 │ │ │ ├── 18cd97ff1eace5e9.eml │ │ │ ├── 18cda3f3dea9f2ad.eml │ │ │ ├── 18cda74ef89a0458.eml │ │ │ ├── 18cdb7ad40b6e195.eml │ │ │ └── 18cdb7bd4530df20.eml │ │ └── 8 │ │ ├── 18ce91b5d68fa8f5.eml │ │ ├── 18cea18729799d4a.eml │ │ ├── 18cea3c5317b754a.eml │ │ └── 18ceb02df154f7de.eml │ ├── 2 │ │ ├── 1 │ │ │ ├── 18d62ad599fb4904.eml │ │ │ ├── 18d64ee8ce75ee1c.eml │ │ │ ├── 18d669202499d731.eml │ │ │ └── 18d6696857d3bae4.eml │ │ ├── 13 │ │ │ ├── 18da31ab01386a31.eml │ │ │ ├── 18da327115237cd5.eml │ │ │ ├── 18da34a41b7160e9.eml │ │ │ ├── 18da34b0bcb0909b.eml │ │ │ ├── 18da34f4e12d5223.eml │ │ │ └── 18da47b7e3539cd9.eml │ │ ├── 14 │ │ │ ├── 18da7e8ad1f60d64.eml │ │ │ └── 18da8bf33a6f2490.eml │ │ ├── 15 │ │ │ ├── 18dadb14b30f51d0.eml │ │ │ └── 18daea16c3c7f7b8.eml │ │ ├── 16 │ │ │ ├── 18db20f3c021be61.eml │ │ │ ├── 18db2d7f0d7a063b.eml │ │ │ └── 18db3d0e5b040105.eml │ │ ├── 17 │ │ │ └── 18db761700045f63.eml │ │ ├── 19 │ │ │ ├── 18dc2594c2e74901.eml │ │ │ └── 18dc33bcdb9be782.eml │ │ ├── 2 │ │ │ ├── 18d67858e1261611.eml │ │ │ ├── 18d6792edb8c05a3.eml │ │ │ ├── 18d67a74e4cb71e8.eml │ │ │ ├── 18d6a712604c2cf6.eml │ │ │ ├── 18d6a8c9e24faea0.eml │ │ │ ├── 18d6a8cb868b55ba.eml │ │ │ ├── 18d6aa82c101e43a.eml │ │ │ └── 18d6c2c968e7b3ab.eml │ │ ├── 20 │ │ │ ├── 18dc7e55a3036d5a.eml │ │ │ ├── 18dc7e776f13a5b2.eml │ │ │ └── 18dc8240ba02284b.eml │ │ ├── 21 │ │ │ ├── 18dcc2bae48ae754.eml │ │ │ ├── 18dcca9906f9574a.eml │ │ │ ├── 18dccac1cad9d7e4.eml │ │ │ └── 18dcdcef1f4817e8.eml │ │ ├── 22 │ │ │ ├── 18dd0c9a1a084bd3.eml │ │ │ ├── 18dd327e6529556d.eml │ │ │ └── 18dd33973dff7b6d.eml │ │ ├── 23 │ │ │ ├── 18dd5cfec999bec7.eml │ │ │ └── 18dd69a822a07d33.eml │ │ ├── 28 │ │ │ └── 18df17a04f4f9852.eml │ │ ├── 29 │ │ │ ├── 18df5a9a7ff5e09b.eml │ │ │ ├── 18df5ac7eac49262.eml │ │ │ ├── 18df5b2ea31e68d8.eml │ │ │ └── 18df5c9b323f4471.eml │ │ ├── 3 │ │ │ └── 18d6cd0d6ef5a231.eml │ │ ├── 6 │ │ │ └── 18d7f809e8297d0f.eml │ │ └── 7 │ │ ├── 18d843a48d94745b.eml │ │ ├── 18d84635ed6d4f01.eml │ │ ├── 18d8524dd466ba7a.eml │ │ └── 18d8527aa66ecbd9.eml │ ├── 3 │ │ ├── 1 │ │ │ ├── 18dfabeb580a7745.eml │ │ │ ├── 18dfabef67bc4dfd.eml │ │ │ ├── 18dfada3e74854c6.eml │ │ │ └── 18dfadaa6684e791.eml │ │ ├── 12 │ │ │ ├── 18e33d0f201dfacc.eml │ │ │ └── 18e33dbe08ba9ba1.eml │ │ ├── 13 │ │ │ ├── 18e389a469f4c38f.eml │ │ │ ├── 18e389bcf87361c6.eml │ │ │ └── 18e38c81e68d2970.eml │ │ ├── 15 │ │ │ └── 18e3febac84c5ef4.eml │ │ ├── 18 │ │ │ ├── 18e527a0430781e1.eml │ │ │ └── 18e528d7404abd9f.eml │ │ ├── 19 │ │ │ └── 18e578cdc2fa255f.eml │ │ ├── 5 │ │ │ ├── 18e0f9f664ab574a.eml │ │ │ └── 18e109172f1d9b2e.eml │ │ ├── 7 │ │ │ ├── 18e19442bb410986.eml │ │ │ └── 18e1ad3558b46901.eml │ │ └── 8 │ │ ├── 18e1f3ca1a31b099.eml │ │ └── 18e1feb7fcf33add.eml │ └── 4 │ ├── 11 │ │ ├── 18eccb130bc035ce.eml │ │ └── 18ecd37896e863ef.eml │ ├── 18 │ │ ├── 18ef1774c8b0208b.eml │ │ └── 18ef1bd4b23a5315.eml │ ├── 22 │ │ └── 18f063ab56bf9f6c.eml │ ├── 3 │ │ └── 18ea4da310ec518f.eml │ ├── 4 │ │ ├── 18ea9dd99ac559cc.eml │ │ └── 18eab8997396c804.eml │ └── 8 │ ├── 18ebdfdcfc2a4de9.eml │ ├── 18ebedb3f11d317c.eml │ └── 18ebedfc31e0cf57.eml └── msg-db.sqlite
93 directories, 339 files
Additionally, about the
db-to-html
tool. I'd like to keep thiseml-to-html
tool very single-purpose. Such that it keeps doing 1 thing and 1 thing properly.Perhaps that is an idea for a different micropackage
I understand that perspective. My purpose is a bit different than yours I guess, in that my goal is to convert an entire archive of a gmail account to html so that it can be preserved off of Google's system.
Hi!
My use case (converting from a GYB archive) could be solved with globing although not with your proposed command.
Ah that's that's great. Did you end up globbing in the code or using the terminal/shell ?
Also, I see you're doing a great job integrating your desired additions/changes into a separate package. Shall we then close this PR?
This is a simple update which adds a recursion flag and a db-to-html option.