mirror of
https://github.com/pimalaya/himalaya.git
synced 2026-06-17 05:07:55 +08:00
### Added * Added `-s|--sanitize` flag for the `read` command. ### Changed * Changed the behaviour of the `-t|--mime-type` argument of the `read` command. It is less strict now: if no part is found for the given MIME type, it will fallback to the other one. For example, giving `-t html` will show in priority HTML parts, but if none of them are found it will show plain parts instead (and vice versa). * Sanitization is not done by default when using the `read` command, the flag `-s|--sanitize` needs to be explicitly provided. ### Fixed * Fixed empty text bodies when reading html part on plain text email [#352]. ## himalaya-lib [[v0.4.0](https://git.sr.ht/~soywod/himalaya-lib/log/2425269e6d4619ddfb7da37ffef8a6ab5ae1f670)] ### Added * Added pipe support for `(imap|smtp)-passwd-cmd` [#373]. * Added `imap-ssl` and `smtp-ssl` options to be able to disable encryption [#347]. * Implemented sendmail sender [#351]. * Fixed `process` module for `MINGW*` [#254]. ### Changed * Moved `Email::fold_text_plain_parts` to `Parts::to_readable`. It take now a `PartsReaderOptions` as parameter: * `plain_first`: shows plain texts first, switch to html if empty. * `sanitize`: sanitizes or not text bodies (both plain and html). ### Fixed * Fixed long subject decoding issue [#380]. * Fixed bad mailbox name encoding from UTF7-IMAP [#370].
📫 Himalaya
Command-line interface for email management based on the himalaya-lib.
The project is under active development. Do not use in production
before the v1.0.0.
Installation
curl -sSL https://raw.githubusercontent.com/soywod/himalaya/master/install.sh | PREFIX=~/.local sh
See the wiki for other installation methods.
Configuration
# ~/.config/himalaya/config.toml
display-name = "Test"
downloads-dir = "~/downloads"
signature = "Regards,"
[gmail]
default = true
email = "test@gmail.com"
backend = "imap" # imap, maildir or notmuch
imap-host = "imap.gmail.com"
imap-port = 993
imap-login = "test@gmail.com"
imap-passwd-cmd = "pass show gmail"
sender = "smtp" # smtp or sendmail
smtp-host = "smtp.gmail.com"
smtp-port = 465
smtp-login = "test@gmail.com"
smtp-passwd-cmd = "security find-internet-password -gs gmail -w"
See the wiki for all the options.
Features
- Folder listing
- Email listing and searching
- Email composition based on
$EDITOR - Email manipulation (copy/move/delete)
- Multi-accounting
- Account listing
- IMAP, Maildir and Notmuch support
- IMAP IDLE mode for real-time notifications
- PGP end-to-end encryption
- Vim and Emacs plugins
- Completions for various shells
- JSON output
- …
See the wiki for all the features.
Credits
- himalaya-lib
- IMAP RFC3501
- Iris, the himalaya predecessor
- isync, an email synchronizer for offline usage
- NeoMutt, an email terminal user interface
- Alpine, an other email terminal user interface
- mutt-wizard, a tool over NeoMutt and isync
- rust-imap, a rust IMAP lib
Sponsoring
Languages
Rust
98.9%
Nix
0.8%
Shell
0.3%
