From ad7cd28a3c88783b9f114615e859e61ab171569c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20DOUIN?= Date: Sun, 31 Oct 2021 19:30:53 +0100 Subject: [PATCH] init cargo workspace (#252) * init cargo workspaces * nix: fix assets path * doc: update rtp vim plugin * vim: add error message if loading vim plugin from vim/ --- .gitignore | 7 ++- CHANGELOG.md | 5 ++ Cargo.lock | 57 ++++++++++--------- Cargo.toml | 39 ++----------- README.md | 2 +- email-manager/Cargo.toml | 35 ++++++++++++ .../assets}/himalaya.desktop | 2 +- {src => email-manager/src}/compl/compl_arg.rs | 0 .../src}/compl/compl_handler.rs | 0 {src => email-manager/src}/compl/mod.rs | 0 .../src}/config/account_entity.rs | 0 .../src}/config/config_arg.rs | 0 .../src}/config/config_entity.rs | 0 {src => email-manager/src}/config/mod.rs | 0 .../src}/domain/imap/imap_arg.rs | 0 .../src}/domain/imap/imap_handler.rs | 0 .../src}/domain/imap/imap_service.rs | 0 {src => email-manager/src}/domain/imap/mod.rs | 0 .../src}/domain/mbox/attr_entity.rs | 0 .../src}/domain/mbox/attrs_entity.rs | 0 .../src}/domain/mbox/mbox_arg.rs | 0 .../src}/domain/mbox/mbox_entity.rs | 0 .../src}/domain/mbox/mbox_handler.rs | 0 .../src}/domain/mbox/mboxes_entity.rs | 0 {src => email-manager/src}/domain/mbox/mod.rs | 0 {src => email-manager/src}/domain/mod.rs | 0 .../src}/domain/msg/envelope_entity.rs | 0 .../src}/domain/msg/envelopes_entity.rs | 0 .../src}/domain/msg/flag_arg.rs | 0 .../src}/domain/msg/flag_entity.rs | 0 .../src}/domain/msg/flag_handler.rs | 0 .../src}/domain/msg/flags_entity.rs | 0 {src => email-manager/src}/domain/msg/mod.rs | 0 .../src}/domain/msg/msg_arg.rs | 0 .../src}/domain/msg/msg_entity.rs | 0 .../src}/domain/msg/msg_handler.rs | 0 .../src}/domain/msg/msg_utils.rs | 0 .../src}/domain/msg/parts_entity.rs | 0 .../src}/domain/msg/tpl_arg.rs | 0 .../src}/domain/msg/tpl_handler.rs | 0 {src => email-manager/src}/domain/smtp/mod.rs | 0 .../src}/domain/smtp/smtp_service.rs | 0 {src => email-manager/src}/main.rs | 0 {src => email-manager/src}/output/mod.rs | 0 .../src}/output/output_arg.rs | 0 .../src}/output/output_entity.rs | 0 .../src}/output/output_utils.rs | 0 {src => email-manager/src}/output/print.rs | 0 .../src}/output/print_table.rs | 0 .../src}/output/printer_service.rs | 0 {src => email-manager/src}/ui/choice.rs | 0 {src => email-manager/src}/ui/editor.rs | 0 {src => email-manager/src}/ui/mod.rs | 0 {src => email-manager/src}/ui/table.rs | 0 {src => email-manager/src}/ui/table_arg.rs | 0 {tests => email-manager/tests}/imap_test.rs | 0 {vim => email-manager/vim}/README.md | 2 +- .../vim}/autoload/himalaya/account.vim | 0 .../vim}/autoload/himalaya/mbox.vim | 0 .../vim}/autoload/himalaya/msg.vim | 0 .../vim}/autoload/himalaya/request.vim | 0 .../autoload/himalaya/shared/bindings.vim | 0 .../vim}/autoload/himalaya/shared/cli.vim | 0 .../vim}/autoload/himalaya/shared/log.vim | 0 .../vim}/autoload/himalaya/shared/thread.vim | 0 .../vim}/autoload/himalaya/shared/utils.vim | 0 {vim => email-manager/vim}/doc/himalaya.txt | 2 +- .../vim}/ftplugin/himalaya-msg-list.vim | 0 .../vim}/ftplugin/himalaya-msg-read.vim | 0 .../vim}/ftplugin/himalaya-msg-write.vim | 0 .../vim}/lua/himalaya/mbox.lua | 0 email-manager/vim/plugin/himalaya.vim | 19 +++++++ .../vim}/syntax/himalaya-msg-list.vim | 0 flake.nix | 2 +- vim/plugin/himalaya.vim | 20 +------ wiki | 2 +- 76 files changed, 105 insertions(+), 89 deletions(-) create mode 100644 email-manager/Cargo.toml rename {assets => email-manager/assets}/himalaya.desktop (95%) rename {src => email-manager/src}/compl/compl_arg.rs (100%) rename {src => email-manager/src}/compl/compl_handler.rs (100%) rename {src => email-manager/src}/compl/mod.rs (100%) rename {src => email-manager/src}/config/account_entity.rs (100%) rename {src => email-manager/src}/config/config_arg.rs (100%) rename {src => email-manager/src}/config/config_entity.rs (100%) rename {src => email-manager/src}/config/mod.rs (100%) rename {src => email-manager/src}/domain/imap/imap_arg.rs (100%) rename {src => email-manager/src}/domain/imap/imap_handler.rs (100%) rename {src => email-manager/src}/domain/imap/imap_service.rs (100%) rename {src => email-manager/src}/domain/imap/mod.rs (100%) rename {src => email-manager/src}/domain/mbox/attr_entity.rs (100%) rename {src => email-manager/src}/domain/mbox/attrs_entity.rs (100%) rename {src => email-manager/src}/domain/mbox/mbox_arg.rs (100%) rename {src => email-manager/src}/domain/mbox/mbox_entity.rs (100%) rename {src => email-manager/src}/domain/mbox/mbox_handler.rs (100%) rename {src => email-manager/src}/domain/mbox/mboxes_entity.rs (100%) rename {src => email-manager/src}/domain/mbox/mod.rs (100%) rename {src => email-manager/src}/domain/mod.rs (100%) rename {src => email-manager/src}/domain/msg/envelope_entity.rs (100%) rename {src => email-manager/src}/domain/msg/envelopes_entity.rs (100%) rename {src => email-manager/src}/domain/msg/flag_arg.rs (100%) rename {src => email-manager/src}/domain/msg/flag_entity.rs (100%) rename {src => email-manager/src}/domain/msg/flag_handler.rs (100%) rename {src => email-manager/src}/domain/msg/flags_entity.rs (100%) rename {src => email-manager/src}/domain/msg/mod.rs (100%) rename {src => email-manager/src}/domain/msg/msg_arg.rs (100%) rename {src => email-manager/src}/domain/msg/msg_entity.rs (100%) rename {src => email-manager/src}/domain/msg/msg_handler.rs (100%) rename {src => email-manager/src}/domain/msg/msg_utils.rs (100%) rename {src => email-manager/src}/domain/msg/parts_entity.rs (100%) rename {src => email-manager/src}/domain/msg/tpl_arg.rs (100%) rename {src => email-manager/src}/domain/msg/tpl_handler.rs (100%) rename {src => email-manager/src}/domain/smtp/mod.rs (100%) rename {src => email-manager/src}/domain/smtp/smtp_service.rs (100%) rename {src => email-manager/src}/main.rs (100%) rename {src => email-manager/src}/output/mod.rs (100%) rename {src => email-manager/src}/output/output_arg.rs (100%) rename {src => email-manager/src}/output/output_entity.rs (100%) rename {src => email-manager/src}/output/output_utils.rs (100%) rename {src => email-manager/src}/output/print.rs (100%) rename {src => email-manager/src}/output/print_table.rs (100%) rename {src => email-manager/src}/output/printer_service.rs (100%) rename {src => email-manager/src}/ui/choice.rs (100%) rename {src => email-manager/src}/ui/editor.rs (100%) rename {src => email-manager/src}/ui/mod.rs (100%) rename {src => email-manager/src}/ui/table.rs (100%) rename {src => email-manager/src}/ui/table_arg.rs (100%) rename {tests => email-manager/tests}/imap_test.rs (100%) rename {vim => email-manager/vim}/README.md (98%) rename {vim => email-manager/vim}/autoload/himalaya/account.vim (100%) rename {vim => email-manager/vim}/autoload/himalaya/mbox.vim (100%) rename {vim => email-manager/vim}/autoload/himalaya/msg.vim (100%) rename {vim => email-manager/vim}/autoload/himalaya/request.vim (100%) rename {vim => email-manager/vim}/autoload/himalaya/shared/bindings.vim (100%) rename {vim => email-manager/vim}/autoload/himalaya/shared/cli.vim (100%) rename {vim => email-manager/vim}/autoload/himalaya/shared/log.vim (100%) rename {vim => email-manager/vim}/autoload/himalaya/shared/thread.vim (100%) rename {vim => email-manager/vim}/autoload/himalaya/shared/utils.vim (100%) rename {vim => email-manager/vim}/doc/himalaya.txt (99%) rename {vim => email-manager/vim}/ftplugin/himalaya-msg-list.vim (100%) rename {vim => email-manager/vim}/ftplugin/himalaya-msg-read.vim (100%) rename {vim => email-manager/vim}/ftplugin/himalaya-msg-write.vim (100%) rename {vim => email-manager/vim}/lua/himalaya/mbox.lua (100%) create mode 100644 email-manager/vim/plugin/himalaya.vim rename {vim => email-manager/vim}/syntax/himalaya-msg-list.vim (100%) diff --git a/.gitignore b/.gitignore index 563e3ca..733b991 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,9 @@ +# Cargo build directory /target -/vim/doc/tags + +# Nix build directory /result /result-lib + +# Vim plugins doc tags file +/*/vim/doc/tags diff --git a/CHANGELOG.md b/CHANGELOG.md index 1cfa952..bc88b96 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Make use of cargo workspace feature +- [**BREAKING**] Because of workspace feature, the vim plugin is now accessible at `/email-manager/vim` instead of `/vim` + ### Fixed - Blur in list msg screenshot [#181] diff --git a/Cargo.lock b/Cargo.lock index 87def5a..29c119c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -169,9 +169,9 @@ dependencies = [ [[package]] name = "core-foundation" -version = "0.9.1" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a89e2ae426ea83155dccf10c0fa6b1463ef6d5fcb44cee0b224a408fa640a62" +checksum = "6888e10551bb93e424d8df1d07f1a8b4fceb0001a3a4b048bfc47554946f47b3" dependencies = [ "core-foundation-sys", "libc", @@ -179,9 +179,9 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea221b5284a47e40033bf9b66f35f984ec0ea2931eb03505246cd27a963f981b" +checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" [[package]] name = "dirs-next" @@ -206,9 +206,9 @@ dependencies = [ [[package]] name = "encoding_rs" -version = "0.8.28" +version = "0.8.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80df024fbc5ac80f87dfef0d9f5209a252f2a497f7f42944cff24d8253cac065" +checksum = "a74ea89a0a1b98f6332de42c95baff457ada66d1cb4030f9ff151b2041a1c746" dependencies = [ "cfg-if 1.0.0", ] @@ -484,9 +484,9 @@ dependencies = [ [[package]] name = "instant" -version = "0.1.11" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "716d3d89f35ac6a34fd0eed635395f4c3b76fa889338a4632e5231a8684216bd" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" dependencies = [ "cfg-if 1.0.0", ] @@ -526,9 +526,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.103" +version = "0.2.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd8f7255a17a627354f321ef0055d63b898c6fb27eff628af4d1b66b7331edf6" +checksum = "a60553f9a9e039a333b4e9b20573b9e9b9c0bb3a11e201ccc48ef4283456d673" [[package]] name = "lock_api" @@ -728,9 +728,9 @@ checksum = "692fcb63b64b1758029e0a96ee63e049ce8c5948587f2f7208df04625e5f6b56" [[package]] name = "openssl" -version = "0.10.36" +version = "0.10.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d9facdb76fec0b73c406f125d44d86fdad818d66fef0531eec9233ca425ff4a" +checksum = "2bc6b9e4403633698352880b22cbe2f0e45dd0177f6fabe4585536e56a3e4f75" dependencies = [ "bitflags", "cfg-if 1.0.0", @@ -748,9 +748,9 @@ checksum = "28988d872ab76095a6e6ac88d99b54fd267702734fd7ffe610ca27f533ddb95a" [[package]] name = "openssl-sys" -version = "0.9.67" +version = "0.9.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69df2d8dfc6ce3aaf44b40dec6f487d5a886516cf6879c49e98e0710f310a058" +checksum = "1c571f25d3f66dd427e417cebf73dbe2361d6125cf6e3a70d143fdf97c9f5150" dependencies = [ "autocfg", "cc", @@ -876,15 +876,15 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" -version = "0.3.20" +version = "0.3.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c9b1041b4387893b91ee6746cddfc28516aff326a3519fb2adf820932c5e6cb" +checksum = "12295df4f294471248581bc09bef3c38a5e46f1e36d6a37353621a0c6c357e1f" [[package]] name = "ppv-lite86" -version = "0.2.10" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857" +checksum = "ed0cfbc8191465bed66e1718596ee0b0b35d5ee1f41c5df2189d0fe8bde535ba" [[package]] name = "precomputed-hash" @@ -894,9 +894,9 @@ checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" [[package]] name = "proc-macro2" -version = "1.0.29" +version = "1.0.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9f5105d4fdaab20335ca9565e106a5d9b82b6219b5ba735731124ac6711d23d" +checksum = "ba508cc11742c0dc5c1659771673afbab7a0efab23aa17e854cbab0837ed0b43" dependencies = [ "unicode-xid", ] @@ -1188,9 +1188,9 @@ checksum = "533494a8f9b724d33625ab53c6c4800f7cc445895924a8ef649222dcb76e938b" [[package]] name = "slab" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c307a32c1c5c437f38c7fd45d753050587732ba8628319fbdf12a7e289ccc590" +checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5" [[package]] name = "smallvec" @@ -1200,12 +1200,13 @@ checksum = "1ecab6c735a6bb4139c0caafd0cc3635748bbb3acf4550e8138122099251f309" [[package]] name = "string_cache" -version = "0.8.1" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ddb1139b5353f96e429e1a5e19fbaf663bddedaa06d1dbd49f82e352601209a" +checksum = "923f0f39b6267d37d23ce71ae7235602134b250ace715dd2c90421998ddac0c6" dependencies = [ "lazy_static", "new_debug_unreachable", + "parking_lot 0.11.2", "phf_shared", "precomputed-hash", "serde", @@ -1231,9 +1232,9 @@ checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" [[package]] name = "syn" -version = "1.0.80" +version = "1.0.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d010a1623fbd906d51d650a9916aaefc05ffa0e4053ff7fe601167f3e715d194" +checksum = "f2afee18b8beb5a596ecb4a2dce128c719b4ba399d34126b9e4396e3f9860966" dependencies = [ "proc-macro2", "quote", @@ -1470,9 +1471,9 @@ checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214" [[package]] name = "xml5ever" -version = "0.16.1" +version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b1b52e6e8614d4a58b8e70cf51ec0cc21b256ad8206708bcff8139b5bbd6a59" +checksum = "9234163818fd8e2418fcde330655e757900d4236acd8cc70fef345ef91f6d865" dependencies = [ "log", "mac", diff --git a/Cargo.toml b/Cargo.toml index b2c7ebd..2d15d5c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,35 +1,4 @@ -[package] -name = "himalaya" -description = "CLI email client" -version = "0.5.1" -authors = ["soywod "] -edition = "2018" - -[dependencies] -ammonia = "3.1.2" -anyhow = "1.0.44" -atty = "0.2.14" -chrono = "0.4.19" -clap = { version = "2.33.3", default-features = false, features = ["suggestions", "color"] } -env_logger = "0.8.3" -html-escape = "0.2.9" -imap = "3.0.0-alpha.4" -imap-proto = "0.14.3" -# This commit includes the de/serialization of the ContentType -# lettre = { version = "0.10.0-rc.1", features = ["serde"] } -lettre = {git = "https://github.com/TornaxO7/lettre/", branch = "master", features = ["serde"] } -log = "0.4.14" -mailparse = "0.13.6" -native-tls = "0.2" -regex = "1.5.4" -rfc2047-decoder = "0.1.2" -serde = { version = "1.0.118", features = ["derive"] } -serde_json = "1.0.61" -shellexpand = "2.1.0" -termcolor = "1.1" -terminal_size = "0.1.15" -toml = "0.5.8" -tree_magic = "0.2.3" -unicode-width = "0.1.7" -url = "2.2.2" -uuid = { version = "0.8", features = ["v4"] } +[workspace] +members = [ + "email-manager", +] diff --git a/README.md b/README.md index 6e30a28..159854e 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ [![gh-actions](https://github.com/soywod/himalaya/workflows/nix-build/badge.svg)](https://github.com/soywod/himalaya/actions?query=workflow%3Anix-build) [![Homebrew](https://img.shields.io/badge/dynamic/json.svg?url=https://formulae.brew.sh/api/formula/himalaya.json&query=$.versions.stable&label=homebrew)](https://formulae.brew.sh/formula/himalaya) -CLI email client +CLI email manager *The project is under active development. Do not use in production before the `v1.0.0` (see the [roadmap](https://github.com/soywod/himalaya/milestone/5)).* diff --git a/email-manager/Cargo.toml b/email-manager/Cargo.toml new file mode 100644 index 0000000..9e19b97 --- /dev/null +++ b/email-manager/Cargo.toml @@ -0,0 +1,35 @@ +[package] +name = "himalaya" +description = "CLI email manager" +version = "0.5.1" +authors = ["soywod "] +edition = "2018" + +[dependencies] +ammonia = "3.1.2" +anyhow = "1.0.44" +atty = "0.2.14" +chrono = "0.4.19" +clap = { version = "2.33.3", default-features = false, features = ["suggestions", "color"] } +env_logger = "0.8.3" +html-escape = "0.2.9" +imap = "3.0.0-alpha.4" +imap-proto = "0.14.3" +# This commit includes the de/serialization of the ContentType +# lettre = { version = "0.10.0-rc.1", features = ["serde"] } +lettre = { git = "https://github.com/TornaxO7/lettre/", branch = "master", features = ["serde"] } +log = "0.4.14" +mailparse = "0.13.6" +native-tls = "0.2" +regex = "1.5.4" +rfc2047-decoder = "0.1.2" +serde = { version = "1.0.118", features = ["derive"] } +serde_json = "1.0.61" +shellexpand = "2.1.0" +termcolor = "1.1" +terminal_size = "0.1.15" +toml = "0.5.8" +tree_magic = "0.2.3" +unicode-width = "0.1.7" +url = "2.2.2" +uuid = { version = "0.8", features = ["v4"] } diff --git a/assets/himalaya.desktop b/email-manager/assets/himalaya.desktop similarity index 95% rename from assets/himalaya.desktop rename to email-manager/assets/himalaya.desktop index 3474b73..aead51e 100644 --- a/assets/himalaya.desktop +++ b/email-manager/assets/himalaya.desktop @@ -3,7 +3,7 @@ Type=Application Name=himalaya DesktopName=Himalaya GenericName=Mail Reader -Comment=CLI email client +Comment=CLI email manager Comment[lo]=CLI ອີເມວໄຄລແອນທີ່ຂຽນດ້ວຍພາສາRust Comment[th]=CLI อีเมล์ไคลแอนท์ที่เขียนด้วยภาษาRust Terminal=true diff --git a/src/compl/compl_arg.rs b/email-manager/src/compl/compl_arg.rs similarity index 100% rename from src/compl/compl_arg.rs rename to email-manager/src/compl/compl_arg.rs diff --git a/src/compl/compl_handler.rs b/email-manager/src/compl/compl_handler.rs similarity index 100% rename from src/compl/compl_handler.rs rename to email-manager/src/compl/compl_handler.rs diff --git a/src/compl/mod.rs b/email-manager/src/compl/mod.rs similarity index 100% rename from src/compl/mod.rs rename to email-manager/src/compl/mod.rs diff --git a/src/config/account_entity.rs b/email-manager/src/config/account_entity.rs similarity index 100% rename from src/config/account_entity.rs rename to email-manager/src/config/account_entity.rs diff --git a/src/config/config_arg.rs b/email-manager/src/config/config_arg.rs similarity index 100% rename from src/config/config_arg.rs rename to email-manager/src/config/config_arg.rs diff --git a/src/config/config_entity.rs b/email-manager/src/config/config_entity.rs similarity index 100% rename from src/config/config_entity.rs rename to email-manager/src/config/config_entity.rs diff --git a/src/config/mod.rs b/email-manager/src/config/mod.rs similarity index 100% rename from src/config/mod.rs rename to email-manager/src/config/mod.rs diff --git a/src/domain/imap/imap_arg.rs b/email-manager/src/domain/imap/imap_arg.rs similarity index 100% rename from src/domain/imap/imap_arg.rs rename to email-manager/src/domain/imap/imap_arg.rs diff --git a/src/domain/imap/imap_handler.rs b/email-manager/src/domain/imap/imap_handler.rs similarity index 100% rename from src/domain/imap/imap_handler.rs rename to email-manager/src/domain/imap/imap_handler.rs diff --git a/src/domain/imap/imap_service.rs b/email-manager/src/domain/imap/imap_service.rs similarity index 100% rename from src/domain/imap/imap_service.rs rename to email-manager/src/domain/imap/imap_service.rs diff --git a/src/domain/imap/mod.rs b/email-manager/src/domain/imap/mod.rs similarity index 100% rename from src/domain/imap/mod.rs rename to email-manager/src/domain/imap/mod.rs diff --git a/src/domain/mbox/attr_entity.rs b/email-manager/src/domain/mbox/attr_entity.rs similarity index 100% rename from src/domain/mbox/attr_entity.rs rename to email-manager/src/domain/mbox/attr_entity.rs diff --git a/src/domain/mbox/attrs_entity.rs b/email-manager/src/domain/mbox/attrs_entity.rs similarity index 100% rename from src/domain/mbox/attrs_entity.rs rename to email-manager/src/domain/mbox/attrs_entity.rs diff --git a/src/domain/mbox/mbox_arg.rs b/email-manager/src/domain/mbox/mbox_arg.rs similarity index 100% rename from src/domain/mbox/mbox_arg.rs rename to email-manager/src/domain/mbox/mbox_arg.rs diff --git a/src/domain/mbox/mbox_entity.rs b/email-manager/src/domain/mbox/mbox_entity.rs similarity index 100% rename from src/domain/mbox/mbox_entity.rs rename to email-manager/src/domain/mbox/mbox_entity.rs diff --git a/src/domain/mbox/mbox_handler.rs b/email-manager/src/domain/mbox/mbox_handler.rs similarity index 100% rename from src/domain/mbox/mbox_handler.rs rename to email-manager/src/domain/mbox/mbox_handler.rs diff --git a/src/domain/mbox/mboxes_entity.rs b/email-manager/src/domain/mbox/mboxes_entity.rs similarity index 100% rename from src/domain/mbox/mboxes_entity.rs rename to email-manager/src/domain/mbox/mboxes_entity.rs diff --git a/src/domain/mbox/mod.rs b/email-manager/src/domain/mbox/mod.rs similarity index 100% rename from src/domain/mbox/mod.rs rename to email-manager/src/domain/mbox/mod.rs diff --git a/src/domain/mod.rs b/email-manager/src/domain/mod.rs similarity index 100% rename from src/domain/mod.rs rename to email-manager/src/domain/mod.rs diff --git a/src/domain/msg/envelope_entity.rs b/email-manager/src/domain/msg/envelope_entity.rs similarity index 100% rename from src/domain/msg/envelope_entity.rs rename to email-manager/src/domain/msg/envelope_entity.rs diff --git a/src/domain/msg/envelopes_entity.rs b/email-manager/src/domain/msg/envelopes_entity.rs similarity index 100% rename from src/domain/msg/envelopes_entity.rs rename to email-manager/src/domain/msg/envelopes_entity.rs diff --git a/src/domain/msg/flag_arg.rs b/email-manager/src/domain/msg/flag_arg.rs similarity index 100% rename from src/domain/msg/flag_arg.rs rename to email-manager/src/domain/msg/flag_arg.rs diff --git a/src/domain/msg/flag_entity.rs b/email-manager/src/domain/msg/flag_entity.rs similarity index 100% rename from src/domain/msg/flag_entity.rs rename to email-manager/src/domain/msg/flag_entity.rs diff --git a/src/domain/msg/flag_handler.rs b/email-manager/src/domain/msg/flag_handler.rs similarity index 100% rename from src/domain/msg/flag_handler.rs rename to email-manager/src/domain/msg/flag_handler.rs diff --git a/src/domain/msg/flags_entity.rs b/email-manager/src/domain/msg/flags_entity.rs similarity index 100% rename from src/domain/msg/flags_entity.rs rename to email-manager/src/domain/msg/flags_entity.rs diff --git a/src/domain/msg/mod.rs b/email-manager/src/domain/msg/mod.rs similarity index 100% rename from src/domain/msg/mod.rs rename to email-manager/src/domain/msg/mod.rs diff --git a/src/domain/msg/msg_arg.rs b/email-manager/src/domain/msg/msg_arg.rs similarity index 100% rename from src/domain/msg/msg_arg.rs rename to email-manager/src/domain/msg/msg_arg.rs diff --git a/src/domain/msg/msg_entity.rs b/email-manager/src/domain/msg/msg_entity.rs similarity index 100% rename from src/domain/msg/msg_entity.rs rename to email-manager/src/domain/msg/msg_entity.rs diff --git a/src/domain/msg/msg_handler.rs b/email-manager/src/domain/msg/msg_handler.rs similarity index 100% rename from src/domain/msg/msg_handler.rs rename to email-manager/src/domain/msg/msg_handler.rs diff --git a/src/domain/msg/msg_utils.rs b/email-manager/src/domain/msg/msg_utils.rs similarity index 100% rename from src/domain/msg/msg_utils.rs rename to email-manager/src/domain/msg/msg_utils.rs diff --git a/src/domain/msg/parts_entity.rs b/email-manager/src/domain/msg/parts_entity.rs similarity index 100% rename from src/domain/msg/parts_entity.rs rename to email-manager/src/domain/msg/parts_entity.rs diff --git a/src/domain/msg/tpl_arg.rs b/email-manager/src/domain/msg/tpl_arg.rs similarity index 100% rename from src/domain/msg/tpl_arg.rs rename to email-manager/src/domain/msg/tpl_arg.rs diff --git a/src/domain/msg/tpl_handler.rs b/email-manager/src/domain/msg/tpl_handler.rs similarity index 100% rename from src/domain/msg/tpl_handler.rs rename to email-manager/src/domain/msg/tpl_handler.rs diff --git a/src/domain/smtp/mod.rs b/email-manager/src/domain/smtp/mod.rs similarity index 100% rename from src/domain/smtp/mod.rs rename to email-manager/src/domain/smtp/mod.rs diff --git a/src/domain/smtp/smtp_service.rs b/email-manager/src/domain/smtp/smtp_service.rs similarity index 100% rename from src/domain/smtp/smtp_service.rs rename to email-manager/src/domain/smtp/smtp_service.rs diff --git a/src/main.rs b/email-manager/src/main.rs similarity index 100% rename from src/main.rs rename to email-manager/src/main.rs diff --git a/src/output/mod.rs b/email-manager/src/output/mod.rs similarity index 100% rename from src/output/mod.rs rename to email-manager/src/output/mod.rs diff --git a/src/output/output_arg.rs b/email-manager/src/output/output_arg.rs similarity index 100% rename from src/output/output_arg.rs rename to email-manager/src/output/output_arg.rs diff --git a/src/output/output_entity.rs b/email-manager/src/output/output_entity.rs similarity index 100% rename from src/output/output_entity.rs rename to email-manager/src/output/output_entity.rs diff --git a/src/output/output_utils.rs b/email-manager/src/output/output_utils.rs similarity index 100% rename from src/output/output_utils.rs rename to email-manager/src/output/output_utils.rs diff --git a/src/output/print.rs b/email-manager/src/output/print.rs similarity index 100% rename from src/output/print.rs rename to email-manager/src/output/print.rs diff --git a/src/output/print_table.rs b/email-manager/src/output/print_table.rs similarity index 100% rename from src/output/print_table.rs rename to email-manager/src/output/print_table.rs diff --git a/src/output/printer_service.rs b/email-manager/src/output/printer_service.rs similarity index 100% rename from src/output/printer_service.rs rename to email-manager/src/output/printer_service.rs diff --git a/src/ui/choice.rs b/email-manager/src/ui/choice.rs similarity index 100% rename from src/ui/choice.rs rename to email-manager/src/ui/choice.rs diff --git a/src/ui/editor.rs b/email-manager/src/ui/editor.rs similarity index 100% rename from src/ui/editor.rs rename to email-manager/src/ui/editor.rs diff --git a/src/ui/mod.rs b/email-manager/src/ui/mod.rs similarity index 100% rename from src/ui/mod.rs rename to email-manager/src/ui/mod.rs diff --git a/src/ui/table.rs b/email-manager/src/ui/table.rs similarity index 100% rename from src/ui/table.rs rename to email-manager/src/ui/table.rs diff --git a/src/ui/table_arg.rs b/email-manager/src/ui/table_arg.rs similarity index 100% rename from src/ui/table_arg.rs rename to email-manager/src/ui/table_arg.rs diff --git a/tests/imap_test.rs b/email-manager/tests/imap_test.rs similarity index 100% rename from tests/imap_test.rs rename to email-manager/tests/imap_test.rs diff --git a/vim/README.md b/email-manager/vim/README.md similarity index 98% rename from vim/README.md rename to email-manager/vim/README.md index ec28778..4cf3503 100644 --- a/vim/README.md +++ b/email-manager/vim/README.md @@ -8,7 +8,7 @@ this plugin with your favorite plugin manager. For example with [vim-plug](https://github.com/junegunn/vim-plug), add to your `.vimrc`: ```viml -Plug 'soywod/himalaya', {'rtp': 'vim'} +Plug 'soywod/himalaya', {'rtp': 'email-manager/vim'} ``` Then: diff --git a/vim/autoload/himalaya/account.vim b/email-manager/vim/autoload/himalaya/account.vim similarity index 100% rename from vim/autoload/himalaya/account.vim rename to email-manager/vim/autoload/himalaya/account.vim diff --git a/vim/autoload/himalaya/mbox.vim b/email-manager/vim/autoload/himalaya/mbox.vim similarity index 100% rename from vim/autoload/himalaya/mbox.vim rename to email-manager/vim/autoload/himalaya/mbox.vim diff --git a/vim/autoload/himalaya/msg.vim b/email-manager/vim/autoload/himalaya/msg.vim similarity index 100% rename from vim/autoload/himalaya/msg.vim rename to email-manager/vim/autoload/himalaya/msg.vim diff --git a/vim/autoload/himalaya/request.vim b/email-manager/vim/autoload/himalaya/request.vim similarity index 100% rename from vim/autoload/himalaya/request.vim rename to email-manager/vim/autoload/himalaya/request.vim diff --git a/vim/autoload/himalaya/shared/bindings.vim b/email-manager/vim/autoload/himalaya/shared/bindings.vim similarity index 100% rename from vim/autoload/himalaya/shared/bindings.vim rename to email-manager/vim/autoload/himalaya/shared/bindings.vim diff --git a/vim/autoload/himalaya/shared/cli.vim b/email-manager/vim/autoload/himalaya/shared/cli.vim similarity index 100% rename from vim/autoload/himalaya/shared/cli.vim rename to email-manager/vim/autoload/himalaya/shared/cli.vim diff --git a/vim/autoload/himalaya/shared/log.vim b/email-manager/vim/autoload/himalaya/shared/log.vim similarity index 100% rename from vim/autoload/himalaya/shared/log.vim rename to email-manager/vim/autoload/himalaya/shared/log.vim diff --git a/vim/autoload/himalaya/shared/thread.vim b/email-manager/vim/autoload/himalaya/shared/thread.vim similarity index 100% rename from vim/autoload/himalaya/shared/thread.vim rename to email-manager/vim/autoload/himalaya/shared/thread.vim diff --git a/vim/autoload/himalaya/shared/utils.vim b/email-manager/vim/autoload/himalaya/shared/utils.vim similarity index 100% rename from vim/autoload/himalaya/shared/utils.vim rename to email-manager/vim/autoload/himalaya/shared/utils.vim diff --git a/vim/doc/himalaya.txt b/email-manager/vim/doc/himalaya.txt similarity index 99% rename from vim/doc/himalaya.txt rename to email-manager/vim/doc/himalaya.txt index de4a021..9754fb3 100644 --- a/vim/doc/himalaya.txt +++ b/email-manager/vim/doc/himalaya.txt @@ -1,4 +1,4 @@ -*himalaya.txt* - CLI email client +*himalaya.txt* - CLI email manager _/ _/ _/_/_/ _/ _/ _/_/ _/ _/_/ _/ _/ _/_/ _/ _/ _/ _/_/ _/_/ _/ _/ _/ _/ _/ _/ _/ _/ _/ diff --git a/vim/ftplugin/himalaya-msg-list.vim b/email-manager/vim/ftplugin/himalaya-msg-list.vim similarity index 100% rename from vim/ftplugin/himalaya-msg-list.vim rename to email-manager/vim/ftplugin/himalaya-msg-list.vim diff --git a/vim/ftplugin/himalaya-msg-read.vim b/email-manager/vim/ftplugin/himalaya-msg-read.vim similarity index 100% rename from vim/ftplugin/himalaya-msg-read.vim rename to email-manager/vim/ftplugin/himalaya-msg-read.vim diff --git a/vim/ftplugin/himalaya-msg-write.vim b/email-manager/vim/ftplugin/himalaya-msg-write.vim similarity index 100% rename from vim/ftplugin/himalaya-msg-write.vim rename to email-manager/vim/ftplugin/himalaya-msg-write.vim diff --git a/vim/lua/himalaya/mbox.lua b/email-manager/vim/lua/himalaya/mbox.lua similarity index 100% rename from vim/lua/himalaya/mbox.lua rename to email-manager/vim/lua/himalaya/mbox.lua diff --git a/email-manager/vim/plugin/himalaya.vim b/email-manager/vim/plugin/himalaya.vim new file mode 100644 index 0000000..5c0a85c --- /dev/null +++ b/email-manager/vim/plugin/himalaya.vim @@ -0,0 +1,19 @@ +if exists("g:loaded_himalaya") + finish +endif + +if !executable("himalaya") + throw "Himalaya CLI not found, see https://github.com/soywod/himalaya#installation" +endif + +" Backup cpo +let s:cpo_backup = &cpo +set cpo&vim + +command! -nargs=* Himalaya call himalaya#msg#list() + +" Restore cpo +let &cpo = s:cpo_backup +unlet s:cpo_backup + +let g:loaded_himalaya = 1 diff --git a/vim/syntax/himalaya-msg-list.vim b/email-manager/vim/syntax/himalaya-msg-list.vim similarity index 100% rename from vim/syntax/himalaya-msg-list.vim rename to email-manager/vim/syntax/himalaya-msg-list.vim diff --git a/flake.nix b/flake.nix index 671f3a2..f2a229f 100644 --- a/flake.nix +++ b/flake.nix @@ -1,5 +1,5 @@ { - description = "CLI email client"; + description = "CLI email manager"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; diff --git a/vim/plugin/himalaya.vim b/vim/plugin/himalaya.vim index 5c0a85c..a4523f0 100644 --- a/vim/plugin/himalaya.vim +++ b/vim/plugin/himalaya.vim @@ -1,19 +1 @@ -if exists("g:loaded_himalaya") - finish -endif - -if !executable("himalaya") - throw "Himalaya CLI not found, see https://github.com/soywod/himalaya#installation" -endif - -" Backup cpo -let s:cpo_backup = &cpo -set cpo&vim - -command! -nargs=* Himalaya call himalaya#msg#list() - -" Restore cpo -let &cpo = s:cpo_backup -unlet s:cpo_backup - -let g:loaded_himalaya = 1 +echoerr 'Cannot load himalaya: please change the rtp path from "vim" to "email-manager/vim" (https://github.com/soywod/himalaya/tree/development/email-manager/vim).' diff --git a/wiki b/wiki index 3c74b67..099cf9d 160000 --- a/wiki +++ b/wiki @@ -1 +1 @@ -Subproject commit 3c74b676f07f72c58c4107edef720c02b54c680e +Subproject commit 099cf9db0916df048af7d6bffd35cd1a7ac7d88d