Giter VIP home page Giter VIP logo

astroidmail / astroid Goto Github PK

View Code? Open in Web Editor NEW
605.0 22.0 66.0 14.73 MB

A graphical threads-with-tags style, lightweight and fast, e-mail client for Notmuch

Home Page: http://astroidmail.github.io

License: Other

Python 0.39% Shell 0.22% C++ 85.14% HTML 0.35% C 7.16% CMake 4.07% Nix 0.12% SCSS 2.54%
notmuch mail email mua gui keyboard-navigation lightweight c-plus-plus gpg astroids

astroid's People

Contributors

bjesus avatar c-alpha avatar ff2000 avatar fnux avatar gauteh avatar gitter-badger avatar glacambre avatar hello71 avatar hugoroy avatar ibuclaw avatar joernchen avatar jorsn avatar kyrias avatar larskotthoff avatar liblor avatar marcinwieczorek avatar mrvdb avatar mxmehl avatar olynch avatar oreo639 avatar phlb avatar radvendii avatar rhn avatar rothn avatar stefanor avatar stephancb avatar suprdewd avatar tristancacqueray avatar yeled avatar yrashk avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

astroid's Issues

window receiving focus may not be the right one

When I open a new window with 'O', and use 'F' or 'L' in the first one, the text field opens itself in the second window, not in the first one as expected.

By the way, I've tested astroid for a few days, and I'm very pleased with it.

Hooks and user's own macros?

Related to issue #21 but this isn't stricly about keybindings but more about user-defined macros:

For instance, I'd like to reasign a to not only toggle the "inbox" tag but also to toggle an "archive" tag.

In mutt (the kz fork with notmuch support), the keybinding is actually a macro:
macro index,pager a "<modify-labels-then-hide>-unread -inbox +archive<enter><sync-mailbox>" "archive"

Is this something that can already be done by the user like keybindings?

failed to open DB

Hiya,
I just fired up astroid for the first time and it seems to have problems reading my notmuch database.

ls /home/pazz/mail/.notmuch                                        
dump-20141006T131340.gz  xapian
./astroid                       master 
[info ] (13:28:06): welcome to astroid! - v0.1
[info ] (13:28:06): utf8: 1, UTF-8
[debug] (13:28:06): loading gtk..

** (astroid:4828): WARNING **: Couldn't register with accessibility bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
[info ] (13:28:06): cf: loading: "/home/pazz/.config/astroid/config"
[warn ] (13:28:06): cf: making config dir..
[warn ] (13:28:06): cf: no config, using defaults.
[warn ] (13:28:06): cf: writing back config to: "/home/pazz/.config/astroid/config"
[info ] (13:28:06): date: init.
[info ] (13:28:06): ac: initializing accounts..
[info ] (13:28:06): ac: setup account: charlie for Charlie Root (default: 1)
[info ] (13:28:06): global actions: set up.
[info ] (13:28:06): poll: setting up.
[debug] (13:28:06): poll: interval: 60
[debug] (13:28:06): poll: requested..
[warn ] (13:28:06): astroid: starting a new window..
[info ] (13:28:06): poll: polling: /home/pazz/.config/astroid/poll.sh
[error] (13:28:06): poll: poll script does not exist or is not a regular file.
[info ] (13:28:07): db: opening db: "/home/pazz/.mail"
[info ] (13:28:07): db: open db read-only.
Error opening database at /home/pazz/.mail/.notmuch: No such file or directory
[error] (13:28:07): db: error: failed opening database.
terminate called after throwing an instance of 'Astroid::database_error'
  what():  failed to open database (read-only)
[1]    4828 abort      ./astroid

(question) Privacy and Gravatar

I was just thinking of the privacy implications of using Gravatar in light of the benefit.

I agree that it's nice to have the faces of people you're writing with. It make the experience more personal and pleasant. But I'm not sure Gravatar is the best way for this.

On the one hand, in my experience so far, very few of my contacts got a picture on Gravatar. So the benefit of Gravatar itself in that regard seems very limited.

On the other hand, I am wondering of the privacy implications of relying on Gravatar. Wouldn't that mean that they could find out whose email I'm reading or even all the people who participate in one thread? That seems like a big information leak about private social circles to me.

comments in `~/.config/astroid/keybindings`

I just starting putting together a keybind file to bring Astroid more in line with the years of muscle memory I have from using Sup, Vim, and Vimium (chromium extension).

My file is here: https://github.com/aliceriot/dotfiles/blob/master/astroid/keybindings

I put some comments in on lines starting with #, it seems (judging by the output if I start astroid in my shell) that astroid is sort of ignoring those lines? But not really? I get something like this:

[ERROR] (08:52:41): ky: user bindings: too many parts in: switching
[debug] (08:52:41): ky: parsing line: between
[ERROR] (08:52:41): ky: user bindings: too many parts in: between
[debug] (08:52:41): ky: parsing line: buffers
[ERROR] (08:52:41): ky: user bindings: too many parts in: buffers

when parsing a line that looks like # switching between buffers.

Is there an officially supported way to add comments? I've got 30-something keybinds already, so it would be nice to organize them a little bit by grouping and having comments for headers.

Thanks!

Non-existing E-Mail file crashes astroid

When the DB is out of sync with the harddisk (mutt moved E-Mail file, but didn't tell notmuch), as soon as you try to open that message, astroid segfaults.

Steps to reproduce:

  1. remove/move E-Mail file in your maildir.
  2. Try to open that particular Message in Astroid.
  3. Astroid crashes after printing in the console that the file does not exist.

cheers!

how to kill a thread?

Hi gauteh,
I was wondering if astroid allows to "kill" a thread with a shortcut (for instance, by adding a killed tag, in the sup or alot way) as it does for spam with the S key?

font size

HI,
Thank you for Astroid, which seems very promising!
A small question: is there some way to increase font size for the interface and the thread view?

edit the thread index query

Hi gauteh,
A mere feature suggestion: I really miss the ability to edit the current query in a given thread index (to fix an error in the query, or to specialize it, for instance).

Can't open HTML parts

Hi,

I've just started using Astroid but I really like it so far, so thanks!

I can't seem to open HTML parts though. I've tried pressing o or enter with the email selected but nothing happens. I have "open_html_part_external": "true", in my config and i've set "open_external_link" to point to Firefox (also tried it with the default xdg-open which is installed an I've tested from the command line). I also have the default "external_open_cmd": "xdg-open".

The text for the external part says "Alternative part (type: text/html) - potentially sketchy." but there doesn't seem to be any way to highlight or activate it.

I'm sure I'm missing something obvious but I've run out of ideas, sorry!

Crash when opening thread with mail containing forwarded email in attachment

Steps to reproduce

  1. Select an email with a forwarded attachment (message/rfc822)
  2. Crash
[debug] (13:07:10): ky: ThreadIndex mode, handling: j (thread_index.next_thread)
[info ] (13:07:10): poll: periodic poll..
[debug] (13:07:10): poll: requested..
[info ] (13:07:10): poll: emitted poll state: ling: j (thread/home/hugo/.config/astroid/poll.sh1
[info ] (13:07:10): 
[info ] (13:07:10): db: open db read-only.
[debug] (13:07:10): db: open time: 0.869 ms.
[debug] (13:07:10): poll: revision before poll: 202279
[ERROR] (13:07:10): poll: poll script does not exist or is not a regular file.
[info ] (13:07:10): db: closing db.
[info ] (13:07:10): poll: emitted poll state: 0
[debug] (13:07:10): ky: Mode,  unknown key: Return
[debug] (13:07:10): ky: ThreadIndex mode, handling: Return (thread_index.open_thread)
[debug] (13:07:10): ti: open thread: 000000000001f15d (1)
[info ] (13:07:10): tv: using user html file: /home/hugo/.config/astroid/ui/thread-view.html
[debug] (13:07:10): tv: testing version: 1
[info ] (13:07:10): tv: using user css file: /home/hugo/.config/astroid/ui/thread-view.css
[debug] (13:07:10): tv: testing version: 0
[ERROR] (13:07:10): tv: css file version does not match!
[debug] (13:07:10): key: registering key: thread_view.down: j
[debug] (13:07:10): key: registering key: thread_view.next_element: C-j
[debug] (13:07:10): key: registering key: thread_view.scroll_down: J
[debug] (13:07:10): key: alias: Down(65364)
[debug] (13:07:10): key: registering key: thread_view.page_down: C-J
[debug] (13:07:10): key: alias: C-Down(65364)
[debug] (13:07:10): key: alias: 65366(65366)
[debug] (13:07:10): key: registering key: thread_view.up: k
[debug] (13:07:10): key: registering key: thread_view.previous_element: C-k
[debug] (13:07:10): key: registering key: thread_view.scroll_up: K
[debug] (13:07:10): key: alias: Up(65362)
[debug] (13:07:10): key: registering key: thread_view.page_up: C-K
[debug] (13:07:10): key: alias: C-Up(65362)
[debug] (13:07:10): key: alias: 65365(65365)
[debug] (13:07:10): key: registering key: thread_view.home: 1
[debug] (13:07:10): key: alias: Home(65360)
[debug] (13:07:10): key: registering key: thread_view.end: 0
[debug] (13:07:10): key: alias: End(65367)
[debug] (13:07:10): key: registering key: thread_view.activate: Return
[debug] (13:07:10): key: alias: KP_Enter(65421)
[debug] (13:07:10): key: registering key: thread_view.save: s
[debug] (13:07:10): key: registering key: thread_view.delete: d
[debug] (13:07:10): key: registering key: thread_view.open: o
[debug] (13:07:10): key: registering key: thread_view.expand: e
[debug] (13:07:10): key: registering key: thread_view.toggle_expand_all: C-e
[debug] (13:07:10): key: registering key: thread_view.mark: t
[debug] (13:07:10): key: registering key: thread_view.toggle_mark_all: T
[debug] (13:07:10): key: registering key: thread_view.show_remote_images: C-i
[debug] (13:07:10): key: registering key: thread_view.save_all_attachments: S
[debug] (13:07:10): key: registering key: thread_view.next_message: n
[debug] (13:07:10): key: registering key: thread_view.next_message_expand: C-n
[debug] (13:07:10): key: registering key: thread_view.previous_message: p
[debug] (13:07:10): key: registering key: thread_view.previous_message_expand: C-p
[debug] (13:07:10): key: registering key: thread_view.reply: r
[debug] (13:07:10): key: registering key: thread_view.reply_all: G
[debug] (13:07:10): key: registering key: thread_view.forward: f
[debug] (13:07:10): key: registering key: thread_view.flat: C-f
[debug] (13:07:10): key: registering key: thread_view.view_raw: V
[debug] (13:07:10): key: registering key: thread_view.edit_draft: E
[debug] (13:07:10): key: registering key: thread_view.multi.toggle: t
[debug] (13:07:10): key: registering key: thread_view.multi.save: s
[debug] (13:07:10): key: registering key: therad_view.multi: +
[info ] (13:07:10): tv: load thread: 000000000001f15d
[info ] (13:07:10): db: open db read-only.
[debug] (13:07:10): db: open time: 0.257 ms.
[info ] (13:07:10): msg: loading mid: [email protected]
[info ] (13:07:10): msg: filename: /home/hugo/Mail/ampoliros/Envoyes/cur/1450217299_0.10145.xps,U=2135,FMD5=f390ab84202335e9b190e29a5c64daa4:2,S
[debug] (13:07:10): chunk: content-type: multipart/signed
[debug] (13:07:10): chunk: multi part
[debug] (13:07:10): chunk: alternative: 0
[debug] (13:07:10): chunk: content-type: multipart/mixed
[debug] (13:07:10): chunk: multi part
[debug] (13:07:10): chunk: alternative: 0
[debug] (13:07:10): chunk: content-type: text/plain
[debug] (13:07:10): chunk: preferred.
[debug] (13:07:10): chunk: is part (viewable: 1, attachment: 0) 
[debug] (13:07:10): chunk: content-type: message/rfc822
[debug] (13:07:10): chunk: message part

(astroid:28174): gmime-CRITICAL **: g_mime_content_type_to_string: assertion 'GMIME_IS_CONTENT_TYPE (mime_type)' failed
[debug] (13:07:10): chunk: content-type: 
[debug] (13:07:10): chunk: mime message
[debug] (13:07:10): chunk: multi part end
[debug] (13:07:10): chunk: content-type: application/pgp-signature
[debug] (13:07:10): chunk: is part (viewable: 0, attachment: 1) 
[debug] (13:07:10): chunk: multi part end
[info ] (13:07:10): render: loading html..
[info ] (13:07:10): tv: navigation action: 5
[info ] (13:07:10): tv: navigating to: /home/hugo/.config/astroid/rlzt44m9pmgig7xzuv2t0ebnfpxxgewcwdvd0xcckut0okd7jkdaefd9y2kpj8nzfytyuija9p0njd6lamhr8qobf4619hjklypfr13il8zx7dshq84833w9
[debug] (13:07:10): tv: on_load_changed: 0
[info ] (13:07:10): db: closing db.
[debug] (13:07:10): tv: on_load_changed: 1
[debug] (13:07:10): tv: on_load_changed: 3
[debug] (13:07:10): tv: on_load_changed: 2
[debug] (13:07:10): tv: load finished.
[debug] (13:07:10): tv: mathjax request: approved
[debug] (13:07:10): tv: code prettify request: approved
[debug] (13:07:10): render: html loaded, building messages..
[debug] (13:07:10): tv: adding message: [email protected]
[debug] (13:07:10): gravatar: for: XXXXXXXX, uri: http://www.gravatar.com/avatar/c2502eb125052a741348c3ae2eec036a?d=retro&s=48
[info ] (13:07:10): db: open db read-only.
[debug] (13:07:10): db: open time: 0.273 ms.
[info ] (13:07:10): db: closing db.
[debug] (13:07:10): create message part: 0 (siblings: 0) (kids: 2) (attachment: 0) (viewable: 0) (mimetype: multipart/signed)
[debug] (13:07:10): create message part: 1 (siblings: 0) (kids: 2) (attachment: 0) (viewable: 0) (mimetype: multipart/mixed)
[debug] (13:07:10): create message part: 2 (siblings: 0) (kids: 0) (attachment: 0) (viewable: 1) (mimetype: text/plain)
[debug] (13:07:10): create body part: 2
[debug] (13:07:10): chunk: body: part
[debug] (13:07:10): chunk: plain text (out html: 1)
[debug] (13:07:10): enc: quoted-printable
[debug] (13:07:10): charset: utf-8
[debug] (13:07:10): mq: quote filter done, time: 0 ms.
[debug] (13:07:10): tv: code filter done, time: 0 ms.
[debug] (13:07:10): create message part: 3 (siblings: 0) (kids: 1) (attachment: 0) (viewable: 0) (mimetype: message/rfc822)

(astroid:28174): gmime-CRITICAL **: g_mime_content_type_to_string: assertion 'GMIME_IS_CONTENT_TYPE (mime_type)' failed
terminate called after throwing an instance of 'std::logic_error'
  what():  basic_string::_M_construct null not valid
[1]    28174 abort (core dumped)  astroid

please support excluded tags

I was playing with astroid today, and noticed that all my tag:deleted messages show up. The support
for excluded tags is in libnotmuch, so it would be nice to use it in astroid as well.

Failed to send an email

I use msmtp for "sendmail" but I couldn't send an email, here's the debug output:

[debug] (22:30:39): ky: Edit mode, handling: y (edit_message.send)
[info ] (22:30:39): mode: Really send message?
[info ] (22:30:40): mode: yes-no: got yes!
[info ] (22:30:40): em: sending message..
[debug] (22:30:40): em: got tv ready.
[debug] (22:30:40): tv: set info: sending message..
[debug] (22:30:40): em: editor toggle: 0
[debug] (22:30:40): cm: initialize..
[info ] (22:30:40): msg: loading message from file (mid supplied): /home/hugo/.cache/astroid/1451856617-astroid-2-hddibaj89e-31968@xps
[debug] (22:30:40): chunk: content-type: text/plain
[debug] (22:30:40): chunk: preferred.
[debug] (22:30:40): chunk: is part (viewable: 1, attachment: 0) 
[debug] (22:30:40): chunk: body: part
[debug] (22:30:40): chunk: plain text (out html: 0)
[warn ] (22:30:40): charset: not defined.
[debug] (22:30:40): cm: build..
[info ] (22:30:40): cm: wrote tmp file: /tmp/astroid-compose-1OHaXF
[info ] (22:30:40): msg: loading message from file: /tmp/astroid-compose-1OHaXF
[debug] (22:30:40): chunk: content-type: text/plain
[debug] (22:30:40): chunk: preferred.
[debug] (22:30:40): chunk: is part (viewable: 1, attachment: 0) 
[info ] (22:30:40): render: loading html..
[info ] (22:30:40): tv: navigation action: 5
[info ] (22:30:40): tv: navigating to: /home/hugo/.config/astroid/5wnj4aipkia8we4pfsuxrdwkdmbv7ru6ibdd2zw9jpo2k2uakbjuwi99j27wlesgp41uaug9v0ydowy4aosgkepuikyl1p46kr0iaof6fcm5fvz2ptnse1yx
[debug] (22:30:40): tv: on_load_changed: 0
[debug] (22:30:40): cm: deinitialized.
[debug] (22:30:40): cm: initialize..
[info ] (22:30:40): msg: loading message from file (mid supplied): /home/hugo/.cache/astroid/1451856617-astroid-2-hddibaj89e-31968@xps
[debug] (22:30:40): chunk: content-type: text/plain
[debug] (22:30:40): chunk: preferred.
[debug] (22:30:40): chunk: is part (viewable: 1, attachment: 0) 
[debug] (22:30:40): chunk: body: part
[debug] (22:30:40): chunk: plain text (out html: 0)
[warn ] (22:30:40): charset: not defined.
[debug] (22:30:40): cm: build..

(astroid:31968): Gtk-CRITICAL **: gtk_box_pack: assertion '_gtk_widget_get_parent (child) == NULL' failed
[info ] (22:30:40): cm: sending (threaded)..
[warn ] (22:30:40): cm: sending message from account: Hugo Roy <XXXXXhugoroy.eu>
[debug] (22:30:40): tv: on_load_changed: 1
msmtp: no recipients found
[ERROR] (22:30:40): cm: could not send message!
[debug] (22:30:40): tv: on_load_changed: 3
[debug] (22:30:40): tv: on_load_changed: 2
[debug] (22:30:40): tv: load finished.
[debug] (22:30:40): tv: mathjax request: approved
[debug] (22:30:40): tv: code prettify request: approved
[debug] (22:30:40): render: html loaded, building messages..
[debug] (22:30:40): tv: adding message: 1451856565-astroid-0-ihzyf4l9wg-31968@xps
[debug] (22:30:40): gravatar: for: XXXXXXhugoroy.eu, uri: http://www.gravatar.com/avatar/19188dd148e4bb0163194085abd3d2a8?d=retro&s=48
[info ] (22:30:40): db: open db read-only.
[debug] (22:30:40): db: open time: 0.168 ms.
[info ] (22:30:40): db: closing db.
[debug] (22:30:40): create message part: 20 (siblings: 0) (kids: 0) (attachment: 0) (viewable: 1) (mimetype: text/plain)
[debug] (22:30:40): create body part: 20
[debug] (22:30:40): chunk: body: part
[debug] (22:30:40): chunk: plain text (out html: 1)
[debug] (22:30:40): enc: quoted-printable
[debug] (22:30:40): charset: utf-8
[debug] (22:30:40): mq: quote filter done, time: 0 ms.
[debug] (22:30:40): tv: code filter done, time: 0 ms.
[debug] (22:30:40): tv: make preview..
[debug] (22:30:40): chunk: body: part
[debug] (22:30:40): chunk: plain text (out html: 0)
[debug] (22:30:40): enc: quoted-printable
[debug] (22:30:40): charset: utf-8
[info ] (22:30:40): tv: ready emitted.
[debug] (22:30:40): em: got tv ready.
[debug] (22:30:40): tv: set info: sending message..
[info ] (22:30:40): em: message sending done.
[debug] (22:30:40): cm: deinitialized.
[debug] (22:30:40): em: got tv ready.
[debug] (22:30:40): tv: set warning: message could not be sent!
[debug] (22:30:40): tv: code prettify request: approved
[debug] (22:30:40): tv: request: denied: https://cdn.mathjax.org/mathjax/2.6-latest/jax/input/TeX/config.js?rev=2.6.0
[debug] (22:30:40): tv: request: denied: https://cdn.mathjax.org/mathjax/2.6-latest/jax/output/HTML-CSS/config.js?rev=2.6.0
[debug] (22:30:40): tv: request: denied: https://cdn.mathjax.org/mathjax/2.6-latest/extensions/tex2jax.js?rev=2.6.0
[debug] (22:30:41): ky: Edit mode,  unknown key: 65513
[debug] (22:30:41): ky: Thread View,  unknown key: 65513
[debug] (22:30:41): ky: Edit mode,  unknown key: 65513
[debug] (22:30:41): ky: MainWindow,  unknown key: 65513
[debug] (22:30:42): tv: request: denied: https://cdn.mathjax.org/mathjax/2.6-latest/extensions/MathMenu.js?rev=2.6.0
[debug] (22:30:43): tv: request: denied: https://cdn.mathjax.org/mathjax/2.6-latest/extensions/MathZoom.js?rev=2.6.0

Crash when refreshing the search while notmuch new is running

I know that notmuch doesnt' like it when the database changes while another action is running. But usually it will raise an exception. And not crash in talloc.
This is the backtrace I just got:

[debug] (13:34:37): ti: loaded 2100 threads.
[debug] (13:34:37): ti: loaded 2200 threads.
[debug] (13:34:37): ti: loaded 2300 threads.
[debug] (13:34:37): ti: loaded 2400 threads.
[ERROR] (13:34:37): nmt: got NULL for authors.

Program received signal SIGABRT, Aborted.
0x00007ffff3ffd477 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
55      ../sysdeps/unix/sysv/linux/raise.c: Datei oder Verzeichnis nicht gefunden.
(gdb) bt
#0  0x00007ffff3ffd477 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
#1  0x00007ffff3ffe8ca in __GI_abort () at abort.c:89
#2  0x00007ffff3fbae9c in talloc_abort (reason=0x7ffff3fc6ca8 "Bad talloc magic value - unknown value") at ../talloc.c:399
#3  0x00007ffff3fbcfcd in talloc_abort_unknown_value () at ../talloc.c:417
#4  talloc_chunk_from_ptr (ptr=0xb734b0) at ../talloc.c:436
#5  __talloc_with_prefix (prefix_len=0, size=24, context=0xb734b0) at ../talloc.c:648
#6  __talloc (size=24, context=0xb734b0) at ../talloc.c:708
#7  _talloc_named_const (name=0x7ffff7fc817a "notmuch_string_list_t", size=24, context=0xb734b0) at ../talloc.c:865
#8  talloc_named_const (context=<optimized out>, size=size@entry=24, name=name@entry=0x7ffff7fc817a "notmuch_string_list_t")
    at ../talloc.c:1606
#9  0x00007ffff7fb54b5 in _notmuch_string_list_create (ctx=<optimized out>) at lib/string-list.c:34
#10 0x00007ffff7fc60f2 in notmuch_thread_get_tags (thread=0xb734b0) at lib/thread.cc:605
#11 0x00000000004a883b in Astroid::NotmuchThread::get_tags (this=0xd4c7e0, nm_thread=0xb734b0) at src/db.cc:515
#12 0x00000000004a807b in Astroid::NotmuchThread::load (this=0xd4c7e0, nm_thread=0xb734b0) at src/db.cc:505
#13 0x00000000004a82b7 in Astroid::NotmuchThread::NotmuchThread (this=0xd4c7e0, t=0xb734b0) at src/db.cc:470
#14 0x0000000000511143 in Astroid::ThreadIndex::load_more_threads (this=0xa4cc00, all=false, count=3940, checked=true)
    at src/modes/thread_index/thread_index.cc:306
#15 0x0000000000513460 in Astroid::ThreadIndex::refresh (this=0xa4cc00, all=false, count=3940, checked=false)
    at src/modes/thread_index/thread_index.cc:233
#16 0x0000000000514562 in Astroid::ThreadIndex::ThreadIndex(Astroid::MainWindow*, Glib::ustring, Glib::ustring)::$_1::operator
()(Astroid::Key) const (this=0xab7b50) at src/modes/thread_index/thread_index.cc:83
#17 0x0000000000514372 in std::_Function_handler<bool (Astroid::Key), Astroid::ThreadIndex::ThreadIndex(Astroid::MainWindow*, 
Glib::ustring, Glib::ustring)::$_1>::_M_invoke(std::_Any_data const&, Astroid::Key) (__functor=..., __args=...)
    at /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/g++-v4/functional:2024
#18 0x00000000004f725b in std::function<bool (Astroid::Key)>::operator()(Astroid::Key) const (this=0xab73f8, __args=...)
    at /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/g++-v4/functional:2439
#19 0x00000000004f405b in Astroid::Keybindings::handle (this=0xa4cd20, event=0xa30390) at src/modes/keybindings.cc:345
#20 0x000000000050181b in Astroid::Mode::on_key_press_event (this=0xa4cc00, event=0xa30390) at src/modes/mode.cc:218
#21 0x00007ffff7c25e64 in Gtk::Widget_Class::key_press_event_callback (self=0xa078f0, p0=0xa30390)
    at /var/tmp/portage/dev-cpp/gtkmm-3.18.0-r1/work/gtkmm-3.18.0/gtk/gtkmm/widget.cc:4475
#22 0x00007ffff58f15c9 in _gtk_marshal_BOOLEAN__BOXEDv (closure=0x717d70, return_value=0x7fffffffc3e0, 
    instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, 
    param_types=0x717da0) at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkmarshalers.c:131
#23 0x00007ffff51f2ce2 in _g_closure_invoke_va (closure=closure@entry=0x717d70, 
    return_value=return_value@entry=0x7fffffffc3e0, instance=instance@entry=0xa078f0, args=args@entry=0x7fffffffc4e0, 
    n_params=1, param_types=0x717da0) at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gclosure.c:86
#24 0x00007ffff520ccf0 in g_signal_emit_valist (instance=0xa078f0, signal_id=<optimized out>, detail=<optimized out>,[0/29555]
    var_args=var_args@entry=0x7fffffffc4e0)
    at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gsignal.c:3292
#25 0x00007ffff520dbb7 in g_signal_emit (instance=instance@entry=0xa078f0, signal_id=<optimized out>, detail=detail@entry=0)
    at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gsignal.c:3439
#26 0x00007ffff5a2d6fc in gtk_widget_event_internal (widget=0xa078f0, event=0xa30390)
    at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkwidget.c:7692
#27 0x00007ffff5a4d66b in gtk_window_propagate_key_event (window=window@entry=0x8f2230, event=event@entry=0xa30390)
    at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkwindow.c:7775
#28 0x00007ffff5a5085b in gtk_window_key_press_event (widget=0x8f2230, event=0xa30390)
    at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkwindow.c:7808
#29 0x00007ffff7c23af4 in Gtk::Widget::on_key_press_event (this=0x7ecd60, key_event=0xa30390)
    at /var/tmp/portage/dev-cpp/gtkmm-3.18.0-r1/work/gtkmm-3.18.0/gtk/gtkmm/widget.cc:7825
#30 0x00007ffff7c25e64 in Gtk::Widget_Class::key_press_event_callback (self=0x8f2230, p0=0xa30390)
    at /var/tmp/portage/dev-cpp/gtkmm-3.18.0-r1/work/gtkmm-3.18.0/gtk/gtkmm/widget.cc:4475
#31 0x00007ffff58f14cf in _gtk_marshal_BOOLEAN__BOXED (closure=0x717d70, return_value=0x7fffffffc7e0, 
    n_param_values=<optimized out>, param_values=0x7fffffffc8a0, invocation_hint=<optimized out>, 
---Type <return> to continue, or q <return> to quit---
    marshal_data=0x7ffff7c25e10 <Gtk::Widget_Class::key_press_event_callback(_GtkWidget*, _GdkEventKey*)>)
    at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkmarshalers.c:86
#32 0x00007ffff51f2b65 in g_closure_invoke (closure=closure@entry=0x717d70, return_value=return_value@entry=0x7fffffffc7e0, 
    n_param_values=2, param_values=param_values@entry=0x7fffffffc8a0, invocation_hint=invocation_hint@entry=0x7fffffffc830)
    at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gclosure.c:801
#33 0x00007ffff5204daa in signal_emit_unlocked_R (node=node@entry=0x717dc0, detail=detail@entry=0, 
    instance=instance@entry=0x8f2230, emission_return=emission_return@entry=0x7fffffffc950, 
    instance_and_params=instance_and_params@entry=0x7fffffffc8a0)
    at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gsignal.c:3665
#34 0x00007ffff520d444 in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>, 
    var_args=var_args@entry=0x7fffffffca30)
    at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gsignal.c:3393
#35 0x00007ffff520dbb7 in g_signal_emit (instance=instance@entry=0x8f2230, signal_id=<optimized out>, detail=detail@entry=0)
    at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gsignal.c:3439
#36 0x00007ffff5a2d6fc in gtk_widget_event_internal (widget=0x8f2230, event=0xa30390)
    at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkwidget.c:7692
#37 0x00007ffff58ee9ee in propagate_event (widget=0x9dd2b0, event=0xa30390, captured=<optimized out>, topmost=0x0)
    at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkmain.c:2610
#38 0x00007ffff58f06e8 in gtk_main_do_event (event=0xa30390)
    at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkmain.c:1850
#39 0x00007ffff568ab42 in gdk_event_source_dispatch (source=<optimized out>, callback=<optimized out>, 
    user_data=<optimized out>) at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gdk/x11/gdkeventsource.c:364
#40 0x00007ffff4cba0ad in g_main_dispatch (context=0x65a5f0)
    at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/glib/gmain.c:3154
#41 g_main_context_dispatch (context=context@entry=0x65a5f0)
    at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/glib/gmain.c:3769
#42 0x00007ffff4cba390 in g_main_context_iterate (context=context@entry=0x65a5f0, block=block@entry=1, 
    dispatch=dispatch@entry=1, self=<optimized out>)
    at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/glib/gmain.c:3840
#43 0x00007ffff4cba43c in g_main_context_iteration (context=0x65a5f0, context@entry=0x0, may_block=may_block@entry=1)
    at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/glib/gmain.c:3901
#44 0x00007ffff52e050c in g_application_run (application=0x6cf0e0, argc=<optimized out>, argv=0x7fffffffd788)
    at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gio/gapplication.c:2311
#45 0x0000000000443212 in Astroid::Astroid::main (this=0x65c1d0, argc=1, argv=0x7fffffffd788) at src/astroid.cc:229
#46 0x0000000000432d3b in main (argc=1, argv=0x7fffffffd788) at src/main.cc:5

Handle not intialized notmuch database better

From a fresh install:

$ astroid
[info ] (12:35:25): welcome to astroid! - 0.4.r209.g9a1f7f8
[debug] (12:35:25): utf8: 1, UTF-8
[debug] (12:35:25): loading gtk..
[info ] (12:35:25): cf: loading: "/home/stefan/.config/astroid/config"
[info ] (12:35:25): cf: version: 2
[warn ] (12:35:25): cf: missing values in config have been updated with defaults (old version: 2, new: 2)
[warn ] (12:35:25): cf: writing back config to: "/home/stefan/.config/astroid/config"
[info ] (12:35:25): notmuch db: ~/.mail
[info ] (12:35:25): date: init.
[info ] (12:35:25): ac: initializing accounts..
[info ] (12:35:25): ac: setup account: charlie for Charlie Root (default: 1)
[info ] (12:35:25): global actions: set up.
[info ] (12:35:25): poll: setting up.
[debug] (12:35:25): poll: interval: 60
[debug] (12:35:25): poll: requested..
[warn ] (12:35:25): astroid: starting a new window..
[info ] (12:35:25): poll: polling: /home/stefan/.config/astroid/poll.sh
[info ] (12:35:25): db: open db read-only.
Error opening database at /home/stefan/.mail/.notmuch: No such file or directory
[ERROR] (12:35:25): db: error: failed opening database for reading, have you configured the notmuch database path correctly?

(astroid:24404): glibmm-ERROR **:
unhandled exception (type std::exception) in signal handler:
what: failed to open database (read-only)

[1]    24404 trace trap (core dumped)  astroid

Release v0.5

Hi, I will do a new release soon. I am waiting for:

  • #48
  • and some more on #34, the README needs to be adapted to the additional info in the wiki, get rid of duplicate information.
  • maybe #29.

lots of progress lately (with 200 commits since the last release before #48) so this will be great!

(documentation) how to "poll"?

I see keybindings for polling and I see a poll.sh in "examples/" but I don't get how to configure polling.

For me, polling is just about running offlineimap -o but where do I configure that?

Occasionnal crashes after sending an email

Sending an email and then crashing. It has happened a couple of times now. Here's the debug output for one:

[debug] (08:54:33): ky: Reply mode, handling: y (edit_message.send)
[info ] (08:54:33): mode: Really send message?
[info ] (08:54:34): mode: yes-no: got yes!
[info ] (08:54:34): em: sending message..
[debug] (08:54:34): em: got tv ready.
[debug] (08:54:34): tv: set info: sending message..
[debug] (08:54:34): em: editor toggle: 0
[debug] (08:54:34): cm: initialize..
[info ] (08:54:34): msg: loading message from file (mid supplied): /home/hugo/.cache/astroid/1452844320-astroid-3-nj9in50o5g-1659@xps
[debug] (08:54:34): chunk: content-type: text/plain
[debug] (08:54:34): chunk: preferred.
[debug] (08:54:34): chunk: is part (viewable: 1, attachment: 0) 
[debug] (08:54:34): chunk: body: part
[debug] (08:54:34): chunk: plain text (out html: 0)
[warn ] (08:54:34): charset: not defined.
[debug] (08:54:34): cm: build..
[info ] (08:54:34): cm: wrote tmp file: /tmp/astroid-compose-uIRaVl
[info ] (08:54:34): msg: loading message from file: /tmp/astroid-compose-uIRaVl
[debug] (08:54:34): chunk: content-type: text/plain
[debug] (08:54:34): chunk: preferred.
[debug] (08:54:34): chunk: is part (viewable: 1, attachment: 0) 
[info ] (08:54:34): render: loading html..
[info ] (08:54:34): tv: navigation action: 5
[info ] (08:54:34): tv: navigating to: /home/hugo/.config/astroid/zz51anip3fro6kirqfufk4r4dmyfzxne601pskcpps3cedzmmm2mha9q49ag08m644pteiwo22izzj6hmxddsfesh43vrhmcz4jymfm12ogm0thqlttbtsn2
[debug] (08:54:34): tv: on_load_changed: 0
[debug] (08:54:34): cm: deinitialized.
[debug] (08:54:34): cm: initialize..
[info ] (08:54:34): msg: loading message from file (mid supplied): /home/hugo/.cache/astroid/1452844320-astroid-3-nj9in50o5g-1659@xps
[debug] (08:54:34): chunk: content-type: text/plain
[debug] (08:54:34): chunk: preferred.
[debug] (08:54:34): chunk: is part (viewable: 1, attachment: 0) 
[debug] (08:54:34): chunk: body: part
[debug] (08:54:34): chunk: plain text (out html: 0)
[warn ] (08:54:34): charset: not defined.
[debug] (08:54:34): cm: build..
[info ] (08:54:34): cm: sending (threaded)..
[warn ] (08:54:34): cm: sending message from account: Hugo Roy <XXXXXXX>
[debug] (08:54:34): tv: on_load_changed: 1
[debug] (08:54:34): tv: on_load_changed: 3
[debug] (08:54:34): tv: on_load_changed: 2
[debug] (08:54:34): tv: load finished.
[debug] (08:54:34): tv: mathjax request: approved
[debug] (08:54:34): tv: code prettify request: approved
[debug] (08:54:34): render: html loaded, building messages..
[debug] (08:54:34): tv: adding message: 1452844320-astroid-3-nj9in50o5g-1659@xps
[debug] (08:54:34): gravatar: for: XXXXX@XXXX, uri: http://www.gravatar.com/avatar/c2502eb125052a741348c3ae2eec036a?d=retro&s=48
[info ] (08:54:34): db: open db read-only.
[debug] (08:54:34): db: open time: 0.25 ms.
[info ] (08:54:34): db: closing db.
[debug] (08:54:34): create message part: 137 (siblings: 0) (kids: 0) (attachment: 0) (viewable: 1) (mimetype: text/plain)
[debug] (08:54:34): create body part: 137
[debug] (08:54:34): chunk: body: part
[debug] (08:54:34): chunk: plain text (out html: 1)
[debug] (08:54:34): enc: quoted-printable
[debug] (08:54:34): charset: utf-8
[debug] (08:54:34): mq: quote filter done, time: 0 ms.
[debug] (08:54:34): tv: code filter done, time: 0 ms.
[debug] (08:54:34): tv: make preview..
[debug] (08:54:34): chunk: body: part
[debug] (08:54:34): chunk: plain text (out html: 0)
[debug] (08:54:34): enc: quoted-printable
[debug] (08:54:34): charset: utf-8
[info ] (08:54:34): tv: ready emitted.
[debug] (08:54:34): em: got tv ready.
[debug] (08:54:34): tv: set info: sending message..
[debug] (08:54:34): tv: code prettify request: approved
[debug] (08:54:34): tv: request: denied: https://cdn.mathjax.org/mathjax/2.6-latest/jax/input/TeX/config.js?rev=2.6.0
[debug] (08:54:34): tv: request: denied: https://cdn.mathjax.org/mathjax/2.6-latest/jax/output/HTML-CSS/config.js?rev=2.6.0
[debug] (08:54:34): tv: request: denied: https://cdn.mathjax.org/mathjax/2.6-latest/extensions/tex2jax.js?rev=2.6.0
[debug] (08:54:35): tv: request: denied: https://cdn.mathjax.org/mathjax/2.6-latest/extensions/MathMenu.js?rev=2.6.0
[warn ] (08:54:36): cm: message sent successfully!
[info ] (08:54:36): cm: saving message to: "/home/hugo/Mail/ampoliros/Envoyes/cur/1452844320-astroid-3-nj9in50o5g-1659@xps:2,"
[debug] (08:54:36): cm: wrote file: /home/hugo/Mail/ampoliros/Envoyes/cur/1452844320-astroid-3-nj9in50o5g-1659@xps:2,
[info ] (08:54:36): db: open db read-write.
[debug] (08:54:36): db: open time: 2.103 ms.
[info ] (08:54:36): db: adding sent message: /home/hugo/Mail/ampoliros/Envoyes/cur/1452844320-astroid-3-nj9in50o5g-1659@xps:2,
[info ] (08:54:36): actions: emitted updated signal for message: 1452844320-astroid-3-nj9in50o5g-1659@xps
[info ] (08:54:36): actions: emitted updated signal for thread: 000000000001f548
[info ] (08:54:36): til: got updated thread signal: 000000000001f548
[debug] (08:54:36): db: checking if thread: 000000000001f548 matches query: tag:inbox
[debug] (08:54:36): db: thread in query check: 1.04 ms.
[debug] (08:54:36): til: updated: found thread in: 1.379 ms.
[debug] (08:54:36): til: updated
[debug] (08:54:36): ti: refresh stats.

(astroid:1659): Gtk-CRITICAL **: gtktreeview.c:6600 (validate_visible_area): assertion `has_next' failed.
There is a disparity between the internal view of the GtkTreeView,
and the GtkTreeModel.  This generally means that the model has changed
without letting the view know.  Any display from now on is likely to
be incorrect.

[info ] (08:54:36): til: got updated thread signal: 000000000001f548
[debug] (08:54:36): db: checking if thread: 000000000001f548 matches query: tag:draft OR tag:waiting
[debug] (08:54:36): db: thread in query check: 0.635 ms.
[debug] (08:54:36): til: updated: did not find thread, time used: 0.991 ms.
[debug] (08:54:36): ti: refresh stats.
[info ] (08:54:36): til: got updated thread signal: 000000000001f548
[debug] (08:54:36): db: checking if thread: 000000000001f548 matches query: date:last_month..today NOT tag:inbox NOT tag:archives
[debug] (08:54:36): db: thread in query check: 1.247 ms.
[debug] (08:54:36): til: updated: found thread in: 1.526 ms.
[debug] (08:54:36): til: updated
[debug] (08:54:36): ti: refresh stats.
[info ] (08:54:36): til: got updated thread signal: 000000000001f548
[debug] (08:54:36): db: checking if thread: 000000000001f548 matches query: David Vaile
[debug] (08:54:36): db: thread in query check: 1.488 ms.
[debug] (08:54:36): til: updated: found thread in: 1.617 ms.
[debug] (08:54:36): til: updated

(astroid:1659): GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
[debug] (08:54:36): ti: refresh stats.
*** Error in `astroid': malloc(): memory corruption (fast): 0x0000000001345e20 ***
======= Backtrace: =========
/usr/lib/libc.so.6(+0x72055)[0x7f4a69ca4055]
/usr/lib/libc.so.6(+0x779a6)[0x7f4a69ca99a6]
/usr/lib/libc.so.6(+0x79f54)[0x7f4a69cabf54]
/usr/lib/libc.so.6(__libc_malloc+0x54)[0x7f4a69cad3d4]
/usr/lib/libglib-2.0.so.0(g_malloc+0x19)[0x7f4a6ae79329]
/usr/lib/libgtk-3.so.0(gtk_tree_path_copy+0x31)[0x7f4a6bcebe01]
/usr/lib/libgtkmm-3.0.so.1(_ZN3Gtk15TreeModel_Class23get_path_vfunc_callbackEP13_GtkTreeModelP12_GtkTreeIter+0xa0)[0x7f4a6fbcb880]
/usr/lib/libgtk-3.so.0(+0x1290ff)[0x7f4a6baff0ff]
/usr/lib/libgtk-3.so.0(+0x12e6f9)[0x7f4a6bb046f9]
/usr/lib/libgtk-3.so.0(+0x219903)[0x7f4a6bbef903]
/usr/lib/libgobject-2.0.so.0(+0x10244)[0x7f4a6b148244]
/usr/lib/libgobject-2.0.so.0(g_signal_emit_valist+0xc06)[0x7f4a6b162a46]
/usr/lib/libgobject-2.0.so.0(g_signal_emit+0x8f)[0x7f4a6b16312f]
/usr/lib/libgtk-3.so.0(gtk_cell_area_apply_attributes+0xb6)[0x7f4a6bb00c56]
/usr/lib/libgtk-3.so.0(+0x3300fd)[0x7f4a6bd060fd]
/usr/lib/libgtk-3.so.0(+0x3308da)[0x7f4a6bd068da]
/usr/lib/libgtk-3.so.0(+0x332d4e)[0x7f4a6bd08d4e]
/usr/lib/libgdk-3.so.0(+0x252c8)[0x7f4a6b72e2c8]
/usr/lib/libglib-2.0.so.0(g_main_context_dispatch+0x15a)[0x7f4a6ae73c7a]
/usr/lib/libglib-2.0.so.0(+0x4a020)[0x7f4a6ae74020]
/usr/lib/libglib-2.0.so.0(g_main_context_iteration+0x2c)[0x7f4a6ae740cc]
/usr/lib/libgio-2.0.so.0(g_application_run+0x1ec)[0x7f4a6b4338ec]
astroid[0x422b1b]
/usr/lib/libc.so.6(__libc_start_main+0xf0)[0x7f4a69c52610]
astroid[0x424059]
======= Memory map: ========
00400000-00525000 r-xp 00000000 fe:01 696534                             /usr/bin/astroid
00725000-00726000 r--p 00125000 fe:01 696534                             /usr/bin/astroid
00726000-00728000 rw-p 00126000 fe:01 696534                             /usr/bin/astroid
00728000-0072a000 rw-p 00000000 00:00 0 
00fa3000-0359c000 rw-p 00000000 00:00 0                                  [heap]
7f49db5fc000-7f49db5fe000 r-xp 00000000 fe:01 658656                     /usr/lib/gconv/CP1252.so
7f49db5fe000-7f49db7fd000 ---p 00002000 fe:01 658656                     /usr/lib/gconv/CP1252.so
7f49db7fd000-7f49db7fe000 r--p 00001000 fe:01 658656                     /usr/lib/gconv/CP1252.so
7f49db7fe000-7f49db7ff000 rw-p 00002000 fe:01 658656                     /usr/lib/gconv/CP1252.so
7f49db7ff000-7f49db800000 ---p 00000000 00:00 0 
7f49db800000-7f49dc000000 rw-p 00000000 00:00 0                          [stack:2766]
7f49dc000000-7f49dc022000 rw-p 00000000 00:00 0 
7f49dc022000-7f49e0000000 ---p 00000000 00:00 0 
7f49e0000000-7f49e0022000 rw-p 00000000 00:00 0 
7f49e0022000-7f49e4000000 ---p 00000000 00:00 0 
7f49e4000000-7f49e51a8000 rw-p 00000000 00:00 0 
7f49e51a8000-7f49e8000000 ---p 00000000 00:00 0 
7f49e8000000-7f49e806b000 rw-p 00000000 00:00 0 
7f49e806b000-7f49ec000000 ---p 00000000 00:00 0 
7f49ec000000-7f49ec021000 rw-p 00000000 00:00 0 
7f49ec021000-7f49f0000000 ---p 00000000 00:00 0 
7f49f0000000-7f49f0021000 rw-p 00000000 00:00 0 
7f49f0021000-7f49f4000000 ---p 00000000 00:00 0 
7f49f4000000-7f49f4021000 rw-p 00000000 00:00 0 
7f49f4021000-7f49f8000000 ---p 00000000 00:00 0 
7f49f8000000-7f49f8021000 rw-p 00000000 00:00 0 
7f49f8021000-7f49fc000000 ---p 00000000 00:00 0 
7f49fc000000-7f49fc037000 rw-p 00000000 00:00 0 
7f49fc037000-7f4a00000000 ---p 00000000 00:00 0 
7f4a00055000-7f4a00060000 ---p 00000000 00:00 0 
7f4a00060000-7f4a00070000 rw-p 00000000 00:00 0 
7f4a00070000-7f4a00080000 ---p 00000000 00:00 0 
7f4a00080000-7f4a00090000 rw-p 00000000 00:00 0 
7f4a00090000-7f4a00093000 ---p 00000000 00:00 0 
7f4a00093000-7f4a00094000 ---p 00000000 00:00 0 
7f4a00094000-7f4a00194000 rw-p 00000000 00:00 0 
7f4a00194000-7f4a00195000 ---p 00000000 00:00 0 
7f4a001b3000-7f4a001c0000 ---p 00000000 00:00 0 
7f4a001c0000-7f4a001d0000 rw-p 00000000 00:00 0 
7f4a001d0000-7f4a001d2000 ---p 00000000 00:00 0 
7f4a001d2000-7f4a001d3000 rw-p 00000000 00:00 0 
7f4a001d8000-7f4a001f2000 rw-p 00000000 00:00 0 
7f4a0020c000-7f4a0020f000 rw-p 00000000 00:00 0 
7f4a0020f000-7f4a00210000 ---p 00000000 00:00 0 
7f4a00210000-7f4a00220000 rw-p 00000000 00:00 0 
7f4a00220000-7f4a0022e000 ---p 00000000 00:00 0 
7f4a0022e000-7f4a00230000 rw-p 00000000 00:00 0 
7f4a00230000-7f4a00240000 rw-p 00000000 00:00 0 
7f4a00240000-7f4a00250000 ---p 00000000 00:00 0 
7f4a00250000-7f4a00260000 rw-p 00000000 00:00 0 
7f4a00260000-7f4a0026e000 ---p 00000000 00:00 0 
7f4a0028c000-7f4a0028d000 rw-p 00000000 00:00 0 
7f4a0028d000-7f4a00290000 ---p 00000000 00:00 0 
7f4a00290000-7f4a002a0000 rw-p 00000000 00:00 0 
7f4a002a0000-7f4a002b0000 ---p 00000000 00:00 0 
7f4a002b0000-7f4a002c0000 rw-p 00000000 00:00 0 
7f4a002c0000-7f4a002cb000 ---p 00000000 00:00 0 
7f4a002cb000-7f4a002d0000 rw-p 00000000 00:00 0 
7f4a002d0000-7f4a002ea000 r--p 00000000 fe:01 1203948                    /usr/share/fonts/inputSystemFont/InputSystem-Italic.ttf
7f4a002ea000-7f4a002f0000 ---p 00000000 00:00 0 
7f4a002f0000-7f4a00300000 rw-p 00000000 00:00 0 
7f4a00300000-7f4a00310000 ---p 00000000 00:00 0 
7f4a00310000-7f4a00320000 rw-p 00000000 00:00 0 
7f4a00320000-7f4a00330000 ---p 00000000 00:00 0 
7f4a00330000-7f4a00340000 rw-p 00000000 00:00 0 
7f4a00340000-7f4a00350000 ---p 00000000 00:00 0 
7f4a00350000-7f4a00360000 rw-p 00000000 00:00 0 
7f4a00360000-7f4a00370000 ---p 00000000 00:00 0 
7f4a00370000-7f4a00380000 rw-p 00000000 00:00 0 
7f4a00380000-7f4a00390000 ---p 00000000 00:00 0 
7f4a00390000-7f4a003a0000 rw-p 00000000 00:00 0 
7f4a003a0000-7f4a003b0000 ---p 00000000 00:00 0 
7f4a003b0000-7f4a003c0000 rw-p 00000000 00:00 0 
7f4a003c0000-7f4a003d0000 ---p 00000000 00:00 0 
7f4a003d0000-7f4a003e0000 rw-p 00000000 00:00 0 
7f4a003e0000-7f4a003e2000 ---p 00000000 00:00 0 
7f4a003e2000-7f4a003e3000 ---p 00000000 00:00 0 
7f4a003e3000-7f4a004e3000 rw-p 00000000 00:00 0 
7f4a004e3000-7f4a004e4000 ---p 00000000 00:00 0 
7f4a004e4000-7f4a004f0000 ---p 00000000 00:00 0 
7f4a004f0000-7f4a00500000 rw-p 00000000 00:00 0 
7f4a00500000-7f4a00510000 ---p 00000000 00:00 0 
7f4a00510000-7f4a00520000 rw-p 00000000 00:00 0 
7f4a00520000-7f4a00530000 ---p 00000000 00:00 0 
7f4a00530000-7f4a00540000 rw-p 00000000 00:00 0 
7f4a00540000-7f4a00541000 ---p 00000000 00:00 0 
7f4a00541000-7f4a00542000 ---p 00000000 00:00 0 
7f4a00542000-7f4a00642000 rw-p 00000000 00:00 0 
7f4a00642000-7f4a00643000 ---p 00000000 00:00 0 
7f4a00643000-7f4a00650000 ---p 00000000 00:00 0 
7f4a00650000-7f4a00660000 rw-p 00000000 00:00 0 
7f4a00660000-7f4a00670000 ---p 00000000 00:00 0 
7f4a00670000-7f4a00680000 rw-p 00000000 00:00 0 
7f4a00680000-7f4a00690000 ---p 00000000 00:00 0 
7f4a00690000-7f4a006b0000 rw-p 00000000 00:00 0 
7f4a006b0000-7f4a006bf000 ---p 00000000 00:00 0 
7f4a006bf000-7f4a006c0000 ---p 00000000 00:00 0 
7f4a006c0000-7f4a007c0000 rw-p 00000000 00:00 0 
7f4a007c0000-7f4a007c1000 ---p 00000000 00:00 0 
7f4a007c1000-7f4a007d0000 ---p 00000000 00:00 0 
7f4a007d0000-7f4a007f0000 rw-p 00000000 00:00 0 
7f4a007f0000-7f4a00800000 ---p 00000000 00:00 0 
7f4a00800000-7f4a00810000 rw-p 00000000 00:00 0 
7f4a00810000-7f4a00820000 ---p 00000000 00:00 0 
7f4a00820000-7f4a00830000 rw-p 00000000 00:00 0 
7f4a00830000-7f4a00840000 ---p 00000000 00:00 0 
7f4a00840000-7f4a00850000 rw-p 00000000 00:00 0 
7f4a00850000-7f4a00860000 ---p 00000000 00:00 0 
7f4a00860000-7f4a00870000 rw-p 00000000 00:00 0 
7f4a00870000-7f4a00880000 ---p 00000000 00:00 0 
7f4a00880000-7f4a00890000 rw-p 00000000 00:00 0 
7f4a00890000-7f4a008a0000 ---p 00000000 00:00 0 
7f4a008a0000-7f4a008b0000 rw-p 00000000 00:00 0 
7f4a008b0000-7f4a008c0000 ---p 00000000 00:00 0 
7f4a008c0000-7f4a008d0000 rw-p 00000000 00:00 0 
7f4a008d0000-7f4a008e0000 ---p 00000000 00:00 0 
7f4a008e0000-7f4a008f0000 rw-p 00000000 00:00 0 
7f4a008f0000-7f4a00900000 ---p 00000000 00:00 0 
7f4a00900000-7f4a00910000 rw-p 00000000 00:00 0 
7f4a00910000-7f4a00916000 ---p 00000000 00:00 0 
7f4a00916000-7f4a009a7000 r-xp 00000000 fe:01 661735                     /usr/lib/libgmp.so.10.3.0
7f4a009a7000-7f4a00ba7000 ---p 00091000 fe:01 661735                     /usr/lib/libgmp.so.10.3.0
7f4a00ba7000-7f4a00ba8000 r--p 00091000 fe:01 661735                     /usr/lib/libgmp.so.10.3.0
7f4a00ba8000-7f4a00ba9000 rw-p 00092000 fe:01 661735                     /usr/lib/libgmp.so.10.3.0
7f4a00ba9000-7f4a00bdb000 r-xp 00000000 fe:01 673885                     /usr/lib/libhogweed.so.4.1
7f4a00bdb000-7f4a00ddb000 ---p 00032000 fe:01 673885                     /usr/lib/libhogweed.so.4.1
7f4a00ddb000-7f4a00ddc000 r--p 00032000 fe:01 673885                     /usr/lib/libhogweed.so.4.1
7f4a00ddc000-7f4a00ddd000 rw-p 00033000 fe:01 673885                     /usr/lib/libhogweed.so.4.1
7f4a00ddd000-7f4a00e13000 r-xp 00000000 fe:01 673883                     /usr/lib/libnettle.so.6.1
7f4a00e13000-7f4a01012000 ---p 00036000 fe:01 673883                     /usr/lib/libnettle.so.6.1
7f4a01012000-7f4a01014000 r--p 00035000 fe:01 673883                     /usr/lib/libnettle.so.6.1
7f4a01014000-7f4a01015000 rw-p 00037000 fe:01 673883                     /usr/lib/libnettle.so.6.1
7f4a01015000-7f4a01027000 r-xp 00000000 fe:01 673285                     /usr/lib/libtasn1.so.6.5.1
7f4a01027000-7f4a01226000 ---p 00012000 fe:01 673285                     /usr/lib/libtasn1.so.6.5.1
7f4a01226000-7f4a01227000 r--p 00011000 fe:01 673285                     /usr/lib/libtasn1.so.6.5.1
7f4a01227000-7f4a01228000 rw-p 00012000 fe:01 673285                     /usr/lib/libtasn1.so.6.5.1
7f4a01228000-7f4a0134f000 r-xp 00000000 fe:01 673925                     /usr/lib/libgnutls.so.30.5.0
7f4a0134f000-7f4a0154f000 ---p 00127000 fe:01 673925                     /usr/lib/libgnutls.so.30.5.0
7f4a0154f000-7f4a0155a000 r--p 00127000 fe:01 673925                     /usr/lib/libgnutls.so.30.5.0
7f4a0155a000-7f4a0155d000 rw-p 00132000 fe:01 673925                     /usr/lib/libgnutls.so.30.5.0
7f4a0155d000-7f4a0155e000 rw-p 00000000 00:00 0 
7f4a0155e000-7f4a015b8000 r-xp 00000000 fe:01 673306                     /usr/lib/libp11-kit.so.0.1.0
7f4a015b8000-7f4a017b7000 ---p 0005a000 fe:01 673306                     /usr/lib/libp11-kit.so.0.1.0
7f4a017b7000-7f4a017c1000 r--p 00059000 fe:01 673306                     /usr/lib/libp11-kit.so.0.1.0
7f4a017c1000-7f4a017c3000 rw-p 00063000 fe:01 673306                     /usr/lib/libp11-kit.so.0.1.0
7f4a017c3000-7f4a017d3000 rw-p 00000000 00:00 0 
7f4a017d3000-7f4a017e0000 ---p 00000000 00:00 0 
7f4a017e0000-7f4a017f0000 rw-p 00000000 00:00 0 
7f4a017f0000-7f4a017f2000 ---p 00000000 00:00 0 
7f4a017f2000-7f4a0180c000 r-xp 00000000 fe:01 683877                     /usr/lib/gio/modules/libgiognutls.so
7f4a0180c000-7f4a01a0b000 ---p 0001a000 fe:01 683877                     /usr/lib/gio/modules/libgiognutls.so
7f4a01a0b000-7f4a01a0c000 r--p 00019000 fe:01 683877                     /usr/lib/gio/modules/libgiognutls.so
7f4a01a0c000-7f4a01a0d000 rw-p 0001a000 fe:01 683877                     /usr/lib/gio/modules/libgiognutls.so
7f4a01a0d000-7f4a01a0e000 ---p 00000000 00:00 0 
7f4a01a0e000-7f4a0220e000 rw-p 00000000 00:00 0                          [stack:2763]
7f4a0220e000-7f4a02213000 r-xp 00000000 fe:01 658627                     /usr/lib/libnss_dns-2.22.so
7f4a02213000-7f4a02412000 ---p 00005000 fe:01 658627                     /usr/lib/libnss_dns-2.22.so
7f4a02412000-7f4a02413000 r--p 00004000 fe:01 658627                     /usr/lib/libnss_dns-2.22.so
7f4a02413000-7f4a02414000 rw-p 00005000 fe:01 658627                     /usr/lib/libnss_dns-2.22.so
7f4a02414000-7f4a0241f000 r-xp 00000000 fe:01 658628                     /usr/lib/libnss_files-2.22.so
7f4a0241f000-7f4a0261e000 ---p 0000b000 fe:01 658628                     /usr/lib/libnss_files-2.22.so
7f4a0261e000-7f4a0261f000 r--p 0000a000 fe:01 658628                     /usr/lib/libnss_files-2.22.so
7f4a0261f000-7f4a02620000 rw-p 0000b000 fe:01 658628                     /usr/lib/libnss_files-2.22.so
7f4a02620000-7f4a0262c000 rw-p 00000000 00:00 0 
7f4a0262c000-7f4a0262d000 ---p 00000000 00:00 0 
7f4a0262d000-7f4a02635000 rw-p 00000000 00:00 0 
7f4a02635000-7f4a02636000 ---p 00000000 00:00 0 
7f4a02636000-7f4a02640000 ---p 00000000 00:00 0 
7f4a02640000-7f4a02650000 rw-p 00000000 00:00 0 
7f4a02650000-7f4a02655000 ---p 00000000 00:00 0 
7f4a02655000-7f4a02656000 ---p 00000000 00:00 0 
7f4a02656000-7f4a02e56000 rw-p 00000000 00:00 0 
7f4a02e56000-7f4a02e57000 ---p 00000000 00:00 0 
7f4a02e57000-7f4a03657000 rw-p 00000000 00:00 0 
7f4a03657000-7f4a03658000 ---p 00000000 00:00 0 
7f4a03658000-7f4a03e58000 rw-p 00000000 00:00 0 
7f4a03e58000-7f4a03e59000 ---p 00000000 00:00 0 
7f4a03e59000-7f4a03f59000 rw-p 00000000 00:00 0 
7f4a03f59000-7f4a03f5a000 ---p 00000000 00:00 0 
7f4a03f5a000-7f4a03fac000 r--p 00000000 fe:01 1312730                    /usr/share/fonts/TTF/DejaVuSansMono.ttf
7f4a03fac000-7f4a03fc0000 r--p 00000000 fe:01 1357129                    /usr/share/fonts/TTF/Inconsolata-Regular.ttf
7f4a03fc0000-7f4a03fd0000 rw-p 00000000 00:00 0 
7f4a03fd0000-7f4a03fe0000 ---p 00000000 00:00 0 
7f4a03fe0000-7f4a03ff0000 rw-p 00000000 00:00 0 
7f4a03ff0000-7f4a03fff000 ---p 00000000 00:00 0 
7f4a03fff000-7f4a04049000 rwxp 00000000 00:00 0 
7f4a04049000-7f4a04072000 ---p 00000000 00:00 0 
7f4a04072000-7f4a43ff9000 ---p 00000000 00:00 0 
7f4a43ff9000-7f4a43fff000 rwxp 00000000 00:00 0 
7f4a43fff000-7f4a44000000 ---p 00000000 00:00 0 
7f4a44000000-7f4a44023000 rw-p 00000000 00:00 0 
7f4a44023000-7f4a48000000 ---p 00000000 00:00 0 
7f4a48000000-7f4a48004000 rw-p 00000000 00:00 0 
7f4a48004000-7f4a48005000 r--p 00000000 fe:01 683931                     /usr/share/locale/fr/LC_MESSAGES/libsoup.mo
7f4a48005000-7f4a48006000 rw-p 00000000 00:00 0 
7f4a48006000-7f4a48010000 ---p 00000000 00:00 0 
7f4a48010000-7f4a48020000 rw-p 00000000 00:00 0 
7f4a48020000-7f4a48030000 ---p 00000000 00:00 0 
7f4a48030000-7f4a48040000 rw-p 00000000 00:00 0 
7f4a48040000-7f4a48050000 ---p 00000000 00:00 0 
7f4a48050000-7f4a48060000 rw-p 00000000 00:00 0 
7f4a48060000-7f4a48070000 ---p 00000000 00:00 0 
7f4a48070000-7f4a48080000 rw-p 00000000 00:00 0 
7f4a48080000-7f4a48090000 ---p 00000000 00:00 0 
7f4a48090000-7f4a480a0000 rw-p 00000000 00:00 0 
7f4a480a0000-7f4a480a1000 ---p 00000000 00:00 0 
7f4a480a1000-7f4a480a5000 r-xp 00000000 fe:01 683876                     /usr/lib/gio/modules/libgiognomeproxy.so
7f4a480a5000-7f4a482a4000 ---p 00004000 fe:01 683876                     /usr/lib/gio/modules/libgiognomeproxy.so
7f4a482a4000-7f4a482a5000 r--p 00003000 fe:01 683876                     /usr/lib/gio/modules/libgiognomeproxy.so
7f4a482a5000-7f4a482a6000 rw-p 00004000 fe:01 683876                     /usr/lib/gio/modules/libgiognomeproxy.so
7f4a482a6000-7f4a4835c000 r--p 00000000 fe:01 1312722                    /usr/share/fonts/TTF/DejaVuSans.ttf
7f4a4835c000-7f4a48758000 ---p 00000000 00:00 0 
7f4a48758000-7f4a4875c000 rw-p 00000000 00:00 0 
7f4a4875c000-7f4a4875d000 ---p 00000000 00:00 0 
7f4a4875d000-7f4a48f5d000 rw-p 00000000 00:00 0                          [stack:1700]
7f4a48f5d000-7f4a48f5e000 ---p 00000000 00:00 0 
7f4a48f5e000-7f4a4975e000 rw-p 00000000 00:00 0                          [stack:1699]
7f4a4975e000-7f4a4975f000 ---p 00000000 00:00 0 
7f4a4975f000-7f4a49f5f000 rw-p 00000000 00:00 0                          [stack:1698]
7f4a49f5f000-7f4a49f60000 ---p 00000000 00:00 0 
7f4a49f60000-7f4a4a760000 rw-p 00000000 00:00 0                          [stack:1697]
7f4a4a760000-7f4a4a762000 r-xp 00000000 fe:01 658841                     /usr/lib/gconv/ISO8859-1.so
7f4a4a762000-7f4a4a961000 ---p 00002000 fe:01 658841                     /usr/lib/gconv/ISO8859-1.so
7f4a4a961000-7f4a4a962000 r--p 00001000 fe:01 658841                     /usr/lib/gconv/ISO8859-1.so
7f4a4a962000-7f4a4a963000 rw-p 00002000 fe:01 658841                     /usr/lib/gconv/ISO8859-1.so
7f4a4a963000-7f4a4a987000 r-xp 00000000 fe:01 702956                     /usr/lib/libjson-glib-1.0.so.0.0.4
7f4a4a987000-7f4a4ab87000 ---p 00024000 fe:01 702956                     /usr/lib/libjson-glib-1.0.so.0.0.4
7f4a4ab87000-7f4a4ab88000 r--p 00024000 fe:01 702956                     /usr/lib/libjson-glib-1.0.so.0.0.4
7f4a4ab88000-7f4a4ab89000 rw-p 00025000 fe:01 702956                     /usr/lib/libjson-glib-1.0.so.0.0.4
7f4a4ab89000-7f4a4ab8d000 r-xp 00000000 fe:01 683180                     /usr/lib/mozilla/plugins/libgnome-shell-browser-plugin.so
7f4a4ab8d000-7f4a4ad8c000 ---p 00004000 fe:01 683180                     /usr/lib/mozilla/plugins/libgnome-shell-browser-plugin.so
7f4a4ad8c000-7f4a4ad8d000 r--p 00003000 fe:01 683180                     /usr/lib/mozilla/plugins/libgnome-shell-browser-plugin.so
7f4a4ad8d000-7f4a4ad8e000 rw-p 00004000 fe:01 683180                     /usr/lib/mozilla/plugins/libgnome-shell-browser-plugin.so
7f4a4ad8e000-7f4a4ad8f000 r-xp 00000000 fe:01 716841                     /usr/lib/mozilla/plugins/librhythmbox-itms-detection-plugin.so
7f4a4ad8f000-7f4a4af8e000 ---p 00001000 fe:01 716841                     /usr/lib/mozilla/plugins/librhythmbox-itms-detection-plugin.so
7f4a4af8e000-7f4a4af8f000 r--p 00000000 fe:01 716841                     /usr/lib/mozilla/plugins/librhythmbox-itms-detection-plugin.so
7f4a4af8f000-7f4a4af90000 rw-p 00001000 fe:01 716841                     /usr/lib/mozilla/plugins/librhythmbox-itms-detection-plugin.so
7f4a4af90000-7f4a4afe2000 r-xp 00000000 fe:01 685208                     /usr/lib/libhunspell-1.3.so.0.0.0
7f4a4afe2000-7f4a4b1e2000 ---p 00052000 fe:01 685208                     /usr/lib/libhunspell-1.3.so.0.0.0
7f4a4b1e2000-7f4a4b1e3000 r--p 00052000 fe:01 685208                     /usr/lib/libhunspell-1.3.so.0.0.0
7f4a4b1e3000-7f4a4b1e8000 rw-p 00053000 fe:01 685208                     /usr/lib/libhunspell-1.3.so.0.0.0
7f4a4b1e8000-7f4a4b1ed000 r-xp 00000000 fe:01 685255                     /usr/lib/enchant/libenchant_myspell.so
7f4a4b1ed000-7f4a4b3ec000 ---p 00005000 fe:01 685255                     /usr/lib/enchant/libenchant_myspell.so
7f4a4b3ec000-7f4a4b3ed000 r--p 00004000 fe:01 685255                     /usr/lib/enchant/libenchant_myspell.so
7f4a4b3ed000-7f4a4b3ee000 rw-p 00005000 fe:01 685255                     /usr/lib/enchant/libenchant_myspell.so
7f4a4b3ee000-7f4a4b3f9000 r-xp 00000000 fe:01 685237                     /usr/lib/libhspell.so.0
7f4a4b3f9000-7f4a4b5f8000 ---p 0000b000 fe:01 685237                     /usr/lib/libhspell.so.0
7f4a4b5f8000-7f4a4b5f9000 r--p 0000a000 fe:01 685237                     /usr/lib/libhspell.so.0
7f4a4b5f9000-7f4a4b5fc000 rw-p 0000b000 fe:01 685237                     /usr/lib/libhspell.so.0
7f4a4b5fc000-7f4a4b5fe000 r-xp 00000000 fe:01 685257                     /usr/lib/enchant/libenchant_hspell.so
7f4a4b5fe000-7f4a4b7fd000 ---p 00002000 fe:01 685257                     /usr/lib/enchant/libenchant_hspell.so
7f4a4b7fd000-7f4a4b7fe000 r--p 00001000 fe:01 685257                     /usr/lib/enchant/libenchant_hspell.so
7f4a4b7fe000-7f4a4b7ff000 rw-p 00002000 fe:01 685257                     /usr/lib/enchant/libenchant_hspell.so
7f4a4b7ff000-7f4a4b800000 ---p 00000000 00:00 0 
7f4a4b800000-7f4a4c000000 rw-p 00000000 00:00 0                          [stack:1696]
7f4a4c000000-7f4a4c022000 rw-p 00000000 00:00 0 
7f4a4c022000-7f4a50000000 ---p 00000000 00:00 0 
7f4a50000000-7f4a50001000 ---p 00000000 00:00 0 
7f4a50001000-7f4a50009000 rw-p 00000000 00:00 0 
7f4a50009000-7f4a5000a000 ---p 00000000 00:00 0 
7f4a5000a000-7f4a5000b000 r--p 00000000 fe:01 683900                     /usr/share/locale/fr/LC_MESSAGES/glib-networking.mo
7f4a5000b000-7f4a50010000 ---p 00000000 00:00 0 
7f4a50010000-7f4a50020000 rw-p 00000000 00:00 0 
7f4a50020000-7f4a50030000 ---p 00000000 00:00 0 
7f4a50030000-7f4a50040000 rw-p 00000000 00:00 0 
7f4a50040000-7f4a50050000 ---p 00000000 00:00 0 
7f4a50050000-7f4a50060000 rw-p 00000000 00:00 0 
7f4a50060000-7f4a50068000 ---p 00000000 00:00 0 
7f4a50068000-7f4a50087000 rw-p 00000000 00:00 0 
7f4a50087000-7f4a50090000 ---p 00000000 00:00 0 
7f4a50090000-7f4a500a0000 rw-p 00000000 00:00 0 
7f4a500a0000-7f4a500b0000 ---p 00000000 00:00 0 
7f4a500b0000-7f4a500c0000 rw-p 00000000 00:00 0 
7f4a500c0000-7f4a500d0000 ---p 00000000 00:00 0 
7f4a500d0000-7f4a500e0000 rw-p 00000000 00:00 0 
7f4a500e0000-7f4a500f0000 ---p 00000000 00:00 0 
7f4a500f0000-7f4a50100000 rw-p 00000000 00:00 0 
7f4a50100000-7f4a50103000 ---p 00000000 00:00 0 
7f4a50103000-7f4a501ab000 r-xp 00000000 fe:01 685101                     /usr/lib/libaspell.so.15.1.5
7f4a501ab000-7f4a503aa000 ---p 000a8000 fe:01 685101                     /usr/lib/libaspell.so.15.1.5
7f4a503aa000-7f4a503af000 r--p 000a7000 fe:01 685101                     /usr/lib/libaspell.so.15.1.5
7f4a503af000-7f4a503b1000 rw-p 000ac000 fe:01 685101                     /usr/lib/libaspell.so.15.1.5
7f4a503b1000-7f4a503b6000 r--p 00000000 fe:01 673937                     /usr/share/locale/fr/LC_MESSAGES/gnutls.mo
7f4a503b6000-7f4a503b7000 ---p 00000000 00:00 0 
7f4a503b7000-7f4a503bf000 rw-p 00000000 00:00 0 
7f4a503bf000-7f4a503c0000 ---p 00000000 00:00 0 
7f4a503c0000-7f4a503d0000 rw-p 00000000 00:00 0 
7f4a503d0000-7f4a503df000 ---p 00000000 00:00 0 
7f4a503df000-7f4a503e0000 rw-p 00000000 00:00 0 
7f4a503e0000-7f4a503e2000 r-xp 00000000 fe:01 685256                     /usr/lib/enchant/libenchant_aspell.so
7f4a503e2000-7f4a505e1000 ---p 00002000 fe:01 685256                     /usr/lib/enchant/libenchant_aspell.so
7f4a505e1000-7f4a505e2000 r--p 00001000 fe:01 685256                     /usr/lib/enchant/libenchant_aspell.so
7f4a505e2000-7f4a505e3000 rw-p 00002000 fe:01 685256                     /usr/lib/enchant/libenchant_aspell.so
7f4a505e3000-7f4a505ec000 r--p 00000000 fe:01 686726                     /usr/share/locale/fr/LC_MESSAGES/WebKitGTK-3.0.mo
7f4a505ec000-7f4a505ed000 ---p 00000000 00:00 0 
7f4a505ed000-7f4a505f5000 rw-p 00000000 00:00 0 
7f4a505f5000-7f4a505f7000 ---p 00000000 00:00 0 
7f4a505f7000-7f4a505ff000 rw-p 00000000 00:00 0 
7f4a505ff000-7f4a50601000 ---p 00000000 00:00 0 
7f4a50601000-7f4a50701000 rw-p 00000000 00:00 0 
7f4a50701000-7f4a50703000 ---p 00000000 00:00 0 
7f4a50703000-7f4a5070b000 rw-p 00000000 00:00 0 
7f4a5070b000-7f4a5070c000 ---p 00000000 00:00 0 
7f4a5070c000-7f4a5070d000 ---p 00000000 00:00 0 
7f4a5070d000-7f4a50f0d000 rw-p 00000000 00:00 0                          [stack:1695]
7f4a50f0d000-7f4a50f0e000 ---p 00000000 00:00 0 
7f4a50f0e000-7f4a50f16000 rw-p 00000000 00:00 0 
7f4a50f16000-7f4a50f18000 ---p 00000000 00:00 0 
7f4a50f18000-7f4a50f20000 rw-p 00000000 00:00 0 
7f4a50f20000-7f4a50f21000 ---p 00000000 00:00 0 
7f4a50f21000-7f4a50f3d000 r--p 00000000 fe:02 10356390                   /home/hugo/.fonts/nonfree/Input/Input_Fonts/InputMono/InputMono/InputMono-BoldItalic.ttf
7f4a50f3d000-7f4a50f58000 r--p 00000000 fe:02 10356379                   /home/hugo/.fonts/nonfree/Input/Input_Fonts/InputMono/InputMono/InputMono-Bold.ttf
7f4a50f58000-7f4a50f74000 r--p 00000000 fe:02 10356385                   /home/hugo/.fonts/nonfree/Input/Input_Fonts/InputMono/InputMono[1]    1659 abort (core dumped)  astroid
astroid  14,29s user 1,68s system 1% cpu 21:35,97 total

(feature) Integrate astroid: output email data and content to other tools

I think it would make sense to make astroid output email data and content to ther tools. Astroid just needs of a way to enable this so that users can come up with scripts to glue with other tools (like a task manager).

For instance, see this script that can be used with mutt http://git.upsilon.cc/?p=utils/org-mutt.git;a=blob_plain;f=remember-mail;hb=HEAD

Astroid can already "save" an email and it can already call scripts (like poll.sh) so it seems not far away from allowing this already.

Maybe also from the thread_index interface, we need a way to perform a user-defined action on the last email in the thread.

handling mailto: with the command line

Hi gauteh,
I tryto not bother you with tons of feature requests :-), but have you planned to allow triggering "Compose new mail" thanks to the command line?
Something like:
astroid "mailto:?subject=$1&body=$2"
It would be useful to handle "mailto:" link from a browser, for instance.
Best regards,

Scrolling up log output in tmux window freezes UI in some cases

I use tmux in urxvt.
I found one specific hint when the ui freezes: open threads that get scrolled completely to the bottom when opened. Look for threads that do and for some that don't scroll to the bottom, then try:

  1. scroll the log up
  2. open threads in astroid
  3. see it freeze/not freeze the UI depending on scrollbar position
    The UI will unfreeze as soon as you scroll down the log.
    I can't reproduce this without tmux.
    I also had freezes when opening a new search, but I couldn't find a reliable way to reproduce this issue.

Unread emails not marked as read in Maildir

I've noticed that reading an email in astroid removes the notmuch 'unread' tag but does not seem to affect the status of the email as 'new' in maildir.

Is there something wrong with my notmuch setup or should this be handled by astroid?

Edit: apparently, astroid does not synchronize tag changes back to maildir flags
with notmuch_message_tags_to_maildir_flags according to j4ni on #notmuch on IRC

cannot find html theme file

I managed to run astroid on arch linux (I'll have to send a few fixes for the PKGBUILD, though). When I want to view a thread I get this:

[ERROR] (15:15:05): tv: cannot find html theme file: ui/thread-view.html, using default..
[ERROR] (15:15:05): tv: cannot find default html theme file.

(AUR) failed to compile

==> Lancement de check()...
scons: Reading SConscript files ...
building release: v0.4.r205.gcdea3bb
debug flag enabled: False
Checking for pkg-config... (cached) yes
Checking for gtkmm-3.0 >= 3.10... (cached) yes
Checking for glibmm-2.4... (cached) yes
Checking for gmime-2.6 >= 2.6.18... (cached) yes
Checking for webkitgtk-3.0... (cached) yes
Checking for libsass... (cached) yes
Checking for C library notmuch... (cached) yes
Checking for C function notmuch_database_get_revision()..(cached) yes
Checking for C++ library boost_filesystem... (cached) yes
Checking for C++ library boost_system... (cached) yes
Checking for C++ library boost_program_options... (cached) yes
writing src/build_config.hh..
scons: done reading SConscript files.
scons: Building targets ...
Running tests in test/test_theme
Running 1 test case...
[info ] (00:01:35): welcome to astroid! - v0.4.r205.gcdea3bb
[debug] (00:01:35): utf8: 1, UTF-8
[info ] (00:01:35): cf: loading test config.
[TEST ] (00:01:35): cf: using home directory: /tmp/yaourt-tmp-hugo/aur-astroid/src/astroid/test/test_home
[info ] (00:01:35): cf: test config, loading defaults.
[info ] (00:01:35): date: init.
[info ] (00:01:35): ac: initializing accounts..
[info ] (00:01:35): ac: setup account: charlie for Charlie Root (default: 1)
[info ] (00:01:35): global actions: set up.
[info ] (00:01:35): poll: setting up.
[debug] (00:01:35): poll: interval: 0
[info ] (00:01:35): poll: periodic polling disabled.
[debug] (00:01:35): theme: loading..
[debug] (00:01:35): tv: testing version: 2
[debug] (00:01:35): tv: testing version: 2
[info ] (00:01:35): theme: processing: ui/thread-view.scss
unknown location(0): fatal error: in "Theme/loading_theme": memory access violation at address: 0x023ec970: no mapping at fault address
test/test_theme.cc(16): last checkpoint: "loading_theme" entry.

*** 1 failure is detected in the test module "TestTheme"
scons: *** [test/test_theme.passed] Error 1
scons: building terminated because of errors.

(feature) go to next unread thread in thread index

(Sorry for launching so many issues and feature requests at you, I'm posting them as they go when I use astroid and I just mean to record them)

In the thread index view, I don't see any keybinding that will take me to the next unread thread. I think that would be useful.

For instance in mutt's mail folder view (which is equivalent to an index view in astroid for the user), Tab will automatically highlight the next unread email. So Tab+Enter will usually be a quick combination to read all unread emails in a folder.

`No such node (additional_sent_tags)`

Hey folks,

I just built and installed Astroid on debian stretch. I had an Astroid config saved (here) from a while ago which I was trying to use again (I switched back to Sup, got frustrated with things constantly breaking, so I'm trying this again).

When I first tried to start up Astroid using this config file I got the following error:

[info ] (12:16:12): welcome to astroid! - v0.4-135-g293c6f4c
[debug] (12:16:12): utf8: 1, UTF-8
[debug] (12:16:12): loading gtk..
[info ] (12:16:12): cf: loading: "/home/alice/.config/astroid/config"
[info ] (12:16:12): notmuch db: ~/mail/.notmuch
[info ] (12:16:12): date: init.
[info ] (12:16:12): ac: initializing accounts..
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::property_tree::ptree_bad_path> >'
  what():  No such node (additional_sent_tags)

it's looking for a property called additional_sent_tags on each instance of account in the config file. By adding this (just additional_sent_tags: "") I was able to get the config to work.

I think maybe cleaning this up so that either the error message is more helpful, or so that Astroid just assumes that additional_sent_tags: "" if there isn't a specified value present would be great!

configuration: how to hide certain tags?

A lot of useful tags set by notmuch and/or astroid aren't necessarily useful to show all the time (e.g. replied, encrypted, signed, sent)

I think it makes sense to have a config variable thread_index.cell.hidden_tags.

crash when using "tab" to complete a tag

Hi gauteh,

Here is a small bug:

  • choose a thread with a sufficient number of tags;
  • press 'l';
  • type the beginning of an existing tag;
  • complete it with the "TAB" key (nice feature by the way, thanks for it!);
  • then, type "," to add another tag.

Result: astroid crashes with the following trace:

[debug] (16:21:37): cb: completion: taking next match
(astroid:21057): glibmm-ERROR **: 
unhandled exception (type std::exception) in signal handler:
what: basic_string::assign: __pos (which is 18446744073709551615) > this->size() (which is 24)

Crashing when applying action to marked threads

Steps to reproduce:

  1. Mark a few threads with t
  2. Hit + to apply an action to marked threads
  3. astroid crashes

Debug output:

[debug] (00:40:43): ky: ThreadIndex mode, handling: T (thread_index.toggle_marked_all)
[debug] (00:40:46): ky: Mode,  unknown key: 65505
[debug] (00:40:46): ky: ThreadIndex mode,  unknown key: 65505
[debug] (00:40:46): ky: MainWindow,  unknown key: 65505
[debug] (00:40:46): ky: Mode,  unknown key: +
[debug] (00:40:46): ky: ThreadIndex mode, handling: + (therad_index.multi)
[info ] (00:40:46): mode: starting multi key.

(astroid:7801): glibmm-ERROR **: 
unhandled exception (type std::exception) in signal handler:
what: std::bad_alloc

[1]    7801 trace trap (core dumped)  astroid

Port to WebKit2/webkitgtk-4.0

Do you plan to port astroid to WebKit2?
I could try it myself, but I have no idea about both WebKit1 and WebKit2 Apis. Do you have some hints where to start?

Create a compile database for YouCompleteMe

This is more of a little tip for hacking rather than an issue. But I could not find a "hacking" section or file, so I post it here - feel free to put it (modified) somewhere else everyone can find it:

First off the easiest solution is to use a compile_commands.json file. cmake could generate it itself, but astroid uses scons ;) So we need a handy little helper - called Bear.

cd ~/src
git clone https://github.com/rizsotto/Bear.git
cd Bear
mkdir build
cd build && cmake ..
make

You then can find a bear executable and a libear.so inside build/src. Furthermore there is an example config located at ~/src/Bear/src/bear.conf. You can copy them wherever you want, I simply left them where they are.

Now go over to your astroid src dir:

cd ~/src/astroid
scons --clean
~/src/Bear/build/src/bear -l ~/src/Bear/build/src/libear.so -c ~/src/Bear/src/bear.conf -- scons --verbose

and you have your compile_commands.json!

I put that long command into a small shell script - you might guess it, Bear is usable with ANY build script/system/... that actually can print the commands it runs.

$ cat ~/bin/run_bear 
#!/bin/sh

~/src/Bear/build/src/bear -l ~/src/Bear/build/src/libear.so -c ~/src/Bear/src/bear.conf "$@"

Now you need a .ycm_extra_conf.py inside /src/astroid. I tried the one shipped with neovim/contrib/YouCompleteMe, but that never worked.
The one that Valloric uses himself in YouCompleteMe works perfectly fine. It's located at YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py
On line 105 set
compilation_database_folder = '
/src/astroid'
and you are done! Completions everywhere :)

"cannot find ui file" with 'm'

The new theme is very nice, but I don't understand how the ui files need to be organized.

  1. When I run astroid with an empty ~/.config/astroid/ui, I get:
[debug] (13:45:11): theme: loading..
[ERROR] (13:45:11): tv: cannot find html theme file: /home/apm/.config/astroid/ui/ui/thread-view.html, using default..
[ERROR] (13:45:11): tv: cannot find default html theme file.
  1. Then, I copy all the ui files in the directory:
$ cp /usr/share/astroid/ui/* ~/.config/astroid/ui

as a result, astroid is running, but when I hit m, I get:

[debug] (13:46:48): ky: Mode,  unknown key: m
[debug] (13:46:48): ky: ThreadIndex mode,  unknown key: m
[debug] (13:46:48): ky: MainWindow, handling: m (main_window.new_mail)
[ERROR] (13:46:48): em: cannot find ui file.

crash on opening thread

Just built current master, when I try to open a thread I get:

[ERROR] (09:26:47): tv: cannot find html theme file: ui/thread-view.html, using default..
[ERROR] (09:26:47): tv: cannot find default html theme file.

config here.

(sorry for two issues in one morning!)

EDIT: I built it on Debian Unstable.

(feature) persistent history of search queries

When making a new query (with F by default), it doesn't seem to remember past queries. Making this persistent would be useful so that users can simply relaunch a recent query if it's complex enough to bother.

PgUp/PgDown does not change the active item

That way I can't page through the result and open a thread later search result. I need to use my mouse to activate an item - and go back to the keyboard again and press enter ;) (At least double-click in the search result should open the thread)

(feature) forwarding as attachment

It would be nice to deal with forwarding emails as attachment (opening them is bug #30).

For instance, right now, if I receive an HTML-only email and I try to forward it, the forwarded message will be empty except for a few headers.

Feature request: to be able to theme the general interface page (index) and other suggestions

It would be nice to be able to theme the index page -- especially the column colors (and widths). The defaults are nicely muted but perhaps a bit too much so for my vision!

I found the "issue" regarding being able to modify the CSS for the thread view and now astroid is very usable for me. With regards to that, allowing an override style sheet to reside in the .config/astroid directory would be nice and prevent changes from being overwritten by updates.

Once a sup user, I have for sometime now been using alot/notmuch. Being able to bind search filter actions (eg tags) to keys is a very nice feature of alot which I would love to see available with astroid.

Keep up the good work.
Regards,
Steven

Key bindings

Hi Gaute,

finally it's running on my system. Are the default key bindings listed somewhere?

Best regards
Joseph

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.