Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath> — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@git.madduck.net.
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
+**Please be warned**: this is a temporary solution, since it works fine in normal situations but causes little freezes if connection is sobbing. I am working on something much more solid.
-- Python3
+---
+
+Shows mail status in a textbox over IMAP protocol.
New mails are notified through a notification like this:
New mails are notified through a notification like this:
@@ -24,27+26,22 @@ Text will be cut if the mail is too long.
The function takes a table as argument. Required table parameters are:
The function takes a table as argument. Required table parameters are:
-Variable | Type
---- | ---
-`server` | string
-`mail` | string
-`password` | string
+Variable | Meaning | Type
+--- | --- | ---
+`server` | Mail server | string
+`mail` | User mail | string
+`password` | User password | string
while the optional are:
Variable | Meaning | Type | Default
--- | --- | --- | ---
`port` | IMAP port | int | 993
while the optional are:
Variable | Meaning | Type | Default
--- | --- | --- | ---
`port` | IMAP port | int | 993
-`refresh_timeout` | Refresh timeout seconds | int | 60
-`header` | Text to show before value | string | " Mail "
-`header_color` | Header color | string | `beautiful.fg_normal` or "#FFFFFF"
-`color_newmail` | New mail value color | string | `beautiful.fg_focus` or "#FFFFFF"
-`color_nomail` | No mail value color | string | `beautiful.fg_normal` or "#FFFFFF"
-`mail_encoding` | Mail character encoding | string | autodetected
+`timeout` | Refresh timeout seconds | int | 60
+`encoding` | Mail character encoding | string | autodetected
`maxlen` | Maximum chars to display in notification | int | 200
`maxlen` | Maximum chars to display in notification | int | 200
-`app` | Mail program to spawn on click | string | "mutt"
-`shadow` | Hide widget when there are no mails | boolean | false
`is_plain` | Define whether `password` is a plain password (true) or a function that retrieves it (false) | boolean | false
`is_plain` | Define whether `password` is a plain password (true) or a function that retrieves it (false) | boolean | false
+`settings` | User settings | function
Let's focus better on `is_plain`.
Let's focus better on `is_plain`.
@@ -53,7+50,7 @@ You can just set your password like this:
args.is_plain = false
args.password = "mypassword"
args.is_plain = false
args.password = "mypassword"
-and you'll have the same security provided by `~/.netrc`
+and you'll have the same security provided by `~/.netrc`.
**Or** you can use a keyring, like [python keyring](https://pypi.python.org/pypi/keyring):
**Or** you can use a keyring, like [python keyring](https://pypi.python.org/pypi/keyring):
@@ -61,4+58,20 @@ and you'll have the same security provided by `~/.netrc`
When `is_plain == false`, it *executes* `password` before using it, so you can also use whatever password fetching solution you want.
When `is_plain == false`, it *executes* `password` before using it, so you can also use whatever password fetching solution you want.
-You can also define your custom icon for the naughty notification. Just set `lain_mail_notify` into `theme.lua`.
\ No newline at end of file
+`settings` can use the string `mailcount`, whose possible values are:
+
+- "0"
+- "invalid credentials"
+- string number
+
+and can modify `notification_preset` table, which will be the preset for the naughty notifications. Check [here](http://awesome.naquadah.org/doc/api/modules/naughty.html#notify) for the list of variables it can contain. Default definition: