move astroid config to separate folder
This commit is contained in:
3
astroid/.gitignore
vendored
Normal file
3
astroid/.gitignore
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
astroid.log
|
||||
hooks/hook.log
|
||||
scripts/move-tag.log
|
||||
125
astroid/config
Normal file
125
astroid/config
Normal file
@@ -0,0 +1,125 @@
|
||||
{
|
||||
"astroid": {
|
||||
"config": {
|
||||
"version": "7"
|
||||
},
|
||||
"notmuch_config": "\/home\/max\/.notmuch-config",
|
||||
"debug": {
|
||||
"dryrun_sending": "false"
|
||||
},
|
||||
"hints": {
|
||||
"level": "0"
|
||||
}
|
||||
},
|
||||
"thread_index": {
|
||||
"page_jump_rows": "6",
|
||||
"sort_order": "newest",
|
||||
"thread_load_step": "250",
|
||||
"cell": {
|
||||
"font_description": "default",
|
||||
"line_spacing": "2",
|
||||
"date_length": "12",
|
||||
"message_count_length": "4",
|
||||
"authors_length": "20",
|
||||
"subject_color": "#807d74",
|
||||
"subject_color_selected": "#000000",
|
||||
"background_color_selected": "",
|
||||
"tags_length": "80",
|
||||
"tags_upper_color": "#e5e5e5",
|
||||
"tags_lower_color": "#333333",
|
||||
"tags_alpha": "0.5",
|
||||
"hidden_tags": "attachment,unread,flagged,sent,signed,replied,encrypted,del"
|
||||
}
|
||||
},
|
||||
"general": {
|
||||
"time": {
|
||||
"clock_format": "year",
|
||||
"same_year": "%d.%m. %H:%M",
|
||||
"diff_year": "%x"
|
||||
}
|
||||
},
|
||||
"editor": {
|
||||
"cmd": "gvim +6 -f -c 'set ft=mail' '+set fileencoding=utf-8' '+set ff=unix' '+set enc=utf-8' %1",
|
||||
"external_editor": "true",
|
||||
"charset": "utf-8",
|
||||
"save_draft_on_force_quit": "true",
|
||||
"attachment_words": "attach,anbei,anhang,angehängt",
|
||||
"attachment_directory": "~"
|
||||
},
|
||||
"mail": {
|
||||
"reply": {
|
||||
"quote_line": "# %1 [%Y-%m-%d %H:%M %z]:",
|
||||
"mailinglist_reply_to_sender": "false"
|
||||
},
|
||||
"forward": {
|
||||
"quote_line": "# %1 [%Y-%m-%d %H:%M %z]:",
|
||||
"disposition": "attachment"
|
||||
},
|
||||
"sent_tags": "sent",
|
||||
"message_id_fqdn": "fsfe.org",
|
||||
"message_id_user": "max.mehl",
|
||||
"user_agent": "astroid",
|
||||
"send_delay": "2"
|
||||
},
|
||||
"poll": {
|
||||
"interval": "240"
|
||||
},
|
||||
"attachment": {
|
||||
"external_open_cmd": "xdg-open"
|
||||
},
|
||||
"thread_view": {
|
||||
"open_html_part_external": "false",
|
||||
"open_external_link": "xdg-open",
|
||||
"default_save_directory": "~",
|
||||
"indent_messages": "true",
|
||||
"code_prettify": {
|
||||
"enable": "false",
|
||||
"for_tags": "",
|
||||
"code_tag": "```",
|
||||
"enable_for_patches": "true"
|
||||
},
|
||||
"gravatar": {
|
||||
"enable": "false"
|
||||
},
|
||||
"mark_unread_delay": "0.5",
|
||||
"expand_flagged": "true",
|
||||
"mathjax": {
|
||||
"enable": "false",
|
||||
"uri_prefix": "https:\/\/cdn.mathjax.org\/mathjax\/2.6-latest\/",
|
||||
"for_tags": ""
|
||||
}
|
||||
},
|
||||
"crypto": {
|
||||
"gpg": {
|
||||
"path": "gpg2",
|
||||
"always_trust": "true",
|
||||
"auto_key_retrieve": "false"
|
||||
}
|
||||
},
|
||||
"saved_searches": {
|
||||
"show_on_startup": "true",
|
||||
"save_history": "true",
|
||||
"history_lines_to_show": "15",
|
||||
"history_lines": "1000"
|
||||
},
|
||||
"accounts": {
|
||||
"FSFE": {
|
||||
"name": "Max Mehl",
|
||||
"email": "max.mehl@fsfe.org",
|
||||
"gpgkey": "0x371E2E92",
|
||||
"sendmail": "msmtp-handler.sh -t --read-envelope-from -a fsfe",
|
||||
"default": "true",
|
||||
"save_sent": "true",
|
||||
"save_sent_to": "\/home\/max\/Mails\/FSFE\/Sent\/cur\/",
|
||||
"additional_sent_tags": "",
|
||||
"save_drafts_to": "\/home\/max\/Mails\/FSFE\/Drafts\/cur\/",
|
||||
"signature_file": "signature.txt",
|
||||
"signature_default_on": "true",
|
||||
"signature_attach": "false",
|
||||
"always_gpg_sign": "false"
|
||||
}
|
||||
},
|
||||
"startup": {
|
||||
"queries": ""
|
||||
}
|
||||
}
|
||||
26
astroid/hooks/unspam
Executable file
26
astroid/hooks/unspam
Executable file
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# $1 = message id
|
||||
#
|
||||
|
||||
DIR_JUNK="INBOX.Junk"
|
||||
DIR_INBOX="INBOX"
|
||||
LOG="/home/$USER/.config/astroid/hooks/hook.log"
|
||||
|
||||
ID=$1
|
||||
FILE=$(notmuch search --exclude=false --output=files "id:$ID") # get actual file path of MID
|
||||
|
||||
if [[ $(notmuch search "id:$ID" and tag:spam) ]]; then # only do something if mail is spam
|
||||
notmuch tag -spam -- "id:$ID" # unspam mail
|
||||
echo "spam removed from $ID" >> $LOG
|
||||
else
|
||||
echo "no spam $ID" >> $LOG
|
||||
fi
|
||||
|
||||
if $(echo $FILE | grep -q $DIR_JUNK); then # if mail is in spam dir
|
||||
FILE_NEW=$(echo $FILE | sed "s|$DIR_JUNK/|$DIR_INBOX/|")
|
||||
mv "$FILE" "$FILE_NEW" # move from spamdir to inbox
|
||||
echo "moved $FILE to $FILE_NEW" >> $LOG
|
||||
else
|
||||
echo "not in junk folder $FILE" >> $LOG
|
||||
fi
|
||||
42
astroid/keybindings
Normal file
42
astroid/keybindings
Normal file
@@ -0,0 +1,42 @@
|
||||
# GENERAL
|
||||
main_window.show_saved_searches=M-f # Show saved searches, default: C-f
|
||||
main_window.undo=M-u # Undo last action, default: u
|
||||
main_window.close_page=x # Close mode (or window if other windows are open), default: C-w
|
||||
thread_index.cycle_sort=M-s # "Cycle through sort options: 'oldest', default: C-s
|
||||
thread_view.flat=M-f # Toggle flat or indented view of messages, default: C-f
|
||||
|
||||
# MOVING AROUND
|
||||
pane.swap_focus=M-q # Swap focus to other pane if open, default: Key (false, true, (guint) GDK_KEY_Tab)
|
||||
thread_index.close_pane=x # Close thread view pane if open, default: C-w
|
||||
main_window.next_page=b # Next page, default: l, "b"
|
||||
main_window.previous_page=B # Previous page, default: h, "B"
|
||||
|
||||
# FLAGGING
|
||||
thread_index.multi=+ # Apply action to marked threads, default: Key (GDK_KEY_semicolon)
|
||||
thread_index.multi.flag=C-f # Toggle flagged, default: *
|
||||
thread_index.multi.archive=C-a # Toggle archive, default: a
|
||||
thread_index.multi.mark_spam=C-s # Toggle spam, default: S
|
||||
thread_index.spam=C-s # Toggle 'spam' tag on thread, default: S
|
||||
|
||||
# TAGGING
|
||||
thread_index.tag=l # Edit tags for thread, default: +
|
||||
thread_index.multi.tag=l # Tag, default: +
|
||||
thread_view.tag_message=l # Tag message, default: +
|
||||
|
||||
# REPLY
|
||||
thread_view.reply=R # Reply to current message, default: r
|
||||
thread_view.reply_all=C-r # Reply all to current message, default: G
|
||||
thread_view.reply_sender=M-r # Reply to sender of current message, default: R
|
||||
thread_view.reply_mailinglist=r # Reply to mailinglist of current message, default: M
|
||||
|
||||
# SEARCH
|
||||
main_window.search=O # Search, default: o
|
||||
thread_index.refine_query=o # Refine query, default: O
|
||||
|
||||
# UNREAD STATUS
|
||||
thread_index.multi.mark_unread=u # Toggle unread, default: N
|
||||
thread_index.unread=u # Toggle 'unread' tag on thread, default: N
|
||||
thread_view.toggle_unread=u # Toggle the unread tag on the message, default: N
|
||||
|
||||
# HOOKS
|
||||
thread_view.run(hooks::unspam %2 %1)=M-s
|
||||
174
astroid/keybindings.orig
Normal file
174
astroid/keybindings.orig
Normal file
@@ -0,0 +1,174 @@
|
||||
# main_window.quit_ask=q # Quit astroid, default: q
|
||||
# main_window.quit=Q # Quit astroid (without asking), default: Q
|
||||
# main_window.next_page=l # Next page, default: l, "b"
|
||||
# main_window.previous_page=h # Previous page, default: h, "B"
|
||||
# main_window.jump_to_page_1=M-1 # Jump to page 1, default: M-1
|
||||
# main_window.jump_to_page_2=M-2 # Jump to page 2, default: M-2
|
||||
# main_window.jump_to_page_3=M-3 # Jump to page 3, default: M-3
|
||||
# main_window.jump_to_page_4=M-4 # Jump to page 4, default: M-4
|
||||
# main_window.jump_to_page_5=M-5 # Jump to page 5, default: M-5
|
||||
# main_window.jump_to_page_6=M-6 # Jump to page 6, default: M-6
|
||||
# main_window.jump_to_page_7=M-7 # Jump to page 7, default: M-7
|
||||
# main_window.jump_to_page_8=M-8 # Jump to page 8, default: M-8
|
||||
# main_window.jump_to_page_9=M-9 # Jump to page 9, default: M-9
|
||||
# main_window.jump_to_page_0=M-0 # Jump to page 0, default: M-0
|
||||
# main_window.close_page=C-w # Close mode (or window if other windows are open), default: C-w
|
||||
# main_window.close_page_force=C-W # Force close mode (or window if other windows are open), default: C-W
|
||||
# main_window.search=o # Search, default: o
|
||||
# main_window.show_saved_searches=M-s # Show saved searches, default: M-s
|
||||
# main_window.search_tag=L # Search for tag:, default: L
|
||||
# main_window.show_help=Key (GDK_KEY_question) # Show help, default: Key (GDK_KEY_question)
|
||||
# main_window.show_log=z # Show log window, default: z
|
||||
# main_window.undo=u # Undo last action, default: u
|
||||
# main_window.new_mail=m # Compose new mail, default: m
|
||||
# main_window.poll=P # Start manual poll, default: P
|
||||
# main_window.toggle_auto_poll=M-p # Toggle auto poll, default: M-p
|
||||
# main_window.open_new_window=C-o # Open new main window, default: C-o
|
||||
# main_window.open_terminal=| # Open terminal, default: |
|
||||
# log.down=j # Move cursor down, default: j, Key (GDK_KEY_Down)
|
||||
# log.up=k # Move cursor up, default: k, Key (GDK_KEY_Up)
|
||||
# log.page_down=J # Page down, default: J
|
||||
# log.page_up=K # Page up, default: K
|
||||
# log.home=1 # Scroll home, default: 1, Key (GDK_KEY_Home)
|
||||
# log.end=0 # Scroll to end, default: 0, Key (GDK_KEY_End)
|
||||
# raw.down=j # Move down, default: j, Key (GDK_KEY_Down)
|
||||
# raw.page_down=J # Page down, default: J
|
||||
# raw.up=k # Move up, default: k, Key (GDK_KEY_Up)
|
||||
# raw.page_up=K # Page up, default: K
|
||||
# raw.home=1 # Scroll home, default: 1, Key (GDK_KEY_Home)
|
||||
# raw.end=0 # Scroll to end, default: 0, Key (GDK_KEY_End)
|
||||
# searches.down=j # Move cursor down, default: j, Key (GDK_KEY_Down)
|
||||
# searches.up=k # Move cursor up, default: k, Key (GDK_KEY_Up)
|
||||
# searches.save=s # Save recent query as saved search, default: s
|
||||
# searches.delete=d # Delete saved query, default: d
|
||||
# searches.clear_history=C # Clear search history, default: C
|
||||
# searches.page_down=J # Page down, default: J
|
||||
# searches.page_up=K # Page up, default: K
|
||||
# searches.home=1 # Scroll home, default: 1, Key (GDK_KEY_Home)
|
||||
# searches.end=0 # Scroll to end, default: 0, Key (GDK_KEY_End)
|
||||
# searches.open=Key (GDK_KEY_Return) # Open query, default: Key (GDK_KEY_Return), Key (GDK_KEY_KP_Enter)
|
||||
# searches.show_all_history=! # Show all history lines, default: !
|
||||
# reply.cycle_reply_to=r # Cycle through reply selector, default: r
|
||||
# reply.open_reply_to=R # Open reply selector, default: R
|
||||
# help.down=j # Scroll down, default: j, Key("C-j"), Key (true, false, (guint) GDK_KEY_Down), Key(GDK_KEY_Down)
|
||||
# help.up=k # Scroll up, default: k, Key ("C-k"), Key (true, false, (guint) GDK_KEY_Up), Key (GDK_KEY_Up)
|
||||
# help.page_up=K # Page up, default: K, Key (GDK_KEY_Page_Up)
|
||||
# help.page_down=J # Page down, default: J, Key (GDK_KEY_Page_Down)
|
||||
# help.page_top=1 # Scroll to top, default: 1, Key (GDK_KEY_Home)
|
||||
# help.page_end=0 # Scroll to end, default: 0, Key (GDK_KEY_End)
|
||||
# pane.swap_focus=Key (false, true, (guint) GDK_KEY_space) # Swap focus to other pane if open, default: Key (false, true, (guint) GDK_KEY_space)
|
||||
# edit_message.edit=Key (GDK_KEY_Return) # Edit message in editor, default: Key (GDK_KEY_Return), Key (GDK_KEY_KP_Enter)
|
||||
# edit_message.send=y # Send message, default: y
|
||||
# edit_message.cancel=C-c # Cancel sending message (unreliable), default: C-c
|
||||
# edit_message.view_raw=V # View raw message, default: V
|
||||
# edit_message.cycle_from=f # Cycle through From selector, default: f
|
||||
# edit_message.attach=a # Attach file, default: a
|
||||
# edit_message.save_draft=s # Save draft, default: s
|
||||
# edit_message.delete_draft=D # Delete draft, default: D
|
||||
# edit_message.toggle_signature=S # Toggle signature, default: S
|
||||
# edit_message.toggle_encrypt=E # Toggle encryption and signature, default: E
|
||||
# thread_index.close_pane=C-w # Close thread view pane if open, default: C-w
|
||||
# thread_index.refresh=Key((guint) GDK_KEY_dollar) # Refresh query, default: Key((guint) GDK_KEY_dollar)
|
||||
# thread_index.refine_query=O # Refine query, default: O
|
||||
# thread_index.duplicate_refine_query=C-v # Duplicate and refine query, default: C-v
|
||||
# thread_index.cycle_sort=C-s # "Cycle through sort options: 'oldest', default: C-s
|
||||
# thread_index.page_up=C-u # Page up, default: C-u, Key (true, false, (guint) GDK_KEY_Up), Key (GDK_KEY_Page_Up)
|
||||
# thread_index.page_down=C-d # Page down, default: C-d, Key (true, false, (guint) GDK_KEY_Down), Key (GDK_KEY_Page_Down)
|
||||
# thread_index.save_query=C-S # Save query, default: C-S
|
||||
# thread_index.next_thread=j # Next thread, default: j, Key(false, false, (guint) GDK_KEY_Down)
|
||||
# thread_index.next_unread=Key (GDK_KEY_Tab) # Jump to next unread thread, default: Key (GDK_KEY_Tab)
|
||||
# thread_index.previous_unread=Key (false, false, (guint) GDK_KEY_ISO_Left_Tab) # Jump to previous unread thread, default: Key (false, false, (guint) GDK_KEY_ISO_Left_Tab)
|
||||
# thread_index.prev_thread=k # Previous thread, default: k, Key(false, false, (guint) GDK_KEY_Up)
|
||||
# thread_index.filter=C-f # Filter rows, default: C-f
|
||||
# thread_index.filter_clear=Key (GDK_KEY_Escape) # Clear filter, default: Key (GDK_KEY_Escape)
|
||||
# thread_index.multi.mark_unread=N # Toggle unread, default: N
|
||||
# thread_index.multi.flag=* # Toggle flagged, default: *
|
||||
# thread_index.multi.archive=a # Toggle archive, default: a
|
||||
# thread_index.multi.mark_spam=S # Toggle spam, default: S
|
||||
# thread_index.multi.tag=+ # Tag, default: +
|
||||
# thread_index.multi.mute=C-m # Toggle mute, default: C-m
|
||||
# thread_index.multi.toggle=t # Toggle marked, default: t
|
||||
# thread_index.multi=Key (GDK_KEY_semicolon) # Apply action to marked threads, default: Key (GDK_KEY_semicolon)
|
||||
# thread_index.scroll_down=J # Scroll down, default: J
|
||||
# thread_index.scroll_up=K # Scroll up, default: K
|
||||
# thread_index.scroll_home=1 # Scroll to first line, default: 1, Key(GDK_KEY_Home)
|
||||
# thread_index.scroll_end=0 # Scroll to last line, default: 0, Key (GDK_KEY_End)
|
||||
# thread_index.open_thread=Key (GDK_KEY_Return) # Open thread, default: Key (GDK_KEY_Return), Key (GDK_KEY_KP_Enter)
|
||||
# thread_index.open_paned=Key (false, true, (guint) GDK_KEY_Return) # Open thread in pane, default: Key (false, true, (guint) GDK_KEY_Return), Key (false, true, (guint) GDK_KEY_KP_Enter)
|
||||
# thread_index.open_new_window=Key (true, false, (guint) GDK_KEY_Return) # Open thread in new window, default: Key (true, false, (guint) GDK_KEY_Return), Key (true, false, (guint) GDK_KEY_KP_Enter)
|
||||
# thread_index.reply=r # Reply to last message in thread, default: r
|
||||
# thread_index.reply_all=G # Reply all to last message in thread, default: G
|
||||
# thread_index.reply_sender=R # Reply to sender of last message in thread, default: R
|
||||
# thread_index.reply_mailinglist=M # Reply to mailinglist of last message in thread, default: M
|
||||
# thread_index.forward=f # Forward last message in thread, default: f
|
||||
# thread_index.forward_inline=UnboundKey () # Forward last message in thread inlined, no defaults.
|
||||
# thread_index.forward_attached=UnboundKey () # Forward last message in thread attached, no defaults.
|
||||
# thread_index.toggle_marked_next=t # Toggle mark thread and move to next, default: t
|
||||
# thread_index.toggle_marked=UnboundKey () # Toggle mark thread, no defaults.
|
||||
# thread_index.toggle_marked_previous=UnboundKey () # Toggle mark thread and move to previous, no defaults.
|
||||
# thread_index.toggle_marked_all=T # Toggle marked on all loaded threads, default: T
|
||||
# thread_index.archive=a # Toggle 'inbox' tag on thread, default: a
|
||||
# thread_index.flag=Key (GDK_KEY_asterisk) # Toggle 'flagged' tag on thread, default: Key (GDK_KEY_asterisk)
|
||||
# thread_index.unread=N # Toggle 'unread' tag on thread, default: N
|
||||
# thread_index.spam=S # Toggle 'spam' tag on thread, default: S
|
||||
# thread_index.mute=C-m # "Toggle 'muted' tag on thread, default: C-m
|
||||
# thread_index.tag=+ # Edit tags for thread, default: +
|
||||
# thread_index.edit_draft=E # Edit first message marked as draft or last message in thread as new, default: E
|
||||
# thread_view.down=j # Scroll down or move focus to next element, default: j
|
||||
# thread_view.next_element=C-j # Move focus to next element, default: C-j
|
||||
# thread_view.scroll_down=J # Scroll down, default: J, Key (GDK_KEY_Down)
|
||||
# thread_view.page_down=C-d # Page down, default: C-d, Key (true, false, (guint) GDK_KEY_Down), Key (GDK_KEY_Page_Down)
|
||||
# thread_view.up=k # Scroll up or move focus to previous element, default: k
|
||||
# thread_view.previous_element=C-k # Move focus to previous element, default: C-k
|
||||
# thread_view.scroll_up=K # Scroll up, default: K, Key (GDK_KEY_Up)
|
||||
# thread_view.page_up=C-u # Page up, default: C-u, Key (true, false, (guint) GDK_KEY_Up), Key (GDK_KEY_Page_Up)
|
||||
# thread_view.home=1 # Scroll home, default: 1, Key (GDK_KEY_Home)
|
||||
# thread_view.end=0 # Scroll to end, default: 0, Key (GDK_KEY_End)
|
||||
# thread_view.activate=Key (GDK_KEY_Return) # Open/expand/activate focused element, default: Key (GDK_KEY_Return), Key (GDK_KEY_KP_Enter)
|
||||
# thread_view.save=s # Save attachment or message, default: s
|
||||
# thread_view.delete=d # Delete attachment (if editing), default: d
|
||||
# thread_view.open=Key(GDK_KEY_space) # Open attachment or message, default: Key(GDK_KEY_space)
|
||||
# thread_view.expand=e # Toggle expand, default: e
|
||||
# thread_view.toggle_expand_all=C-e # Toggle expand on all messages, default: C-e
|
||||
# thread_view.mark=t # Mark or unmark message, default: t
|
||||
# thread_view.toggle_mark_all=T # Toggle mark on all messages, default: T
|
||||
# thread_view.show_remote_images=C-i # Show remote images (warning: approves all requests to remote content!), default: C-i
|
||||
# thread_view.save_all_attachments=S # Save all attachments, default: S
|
||||
# thread_view.next_message=n # Focus next message, default: n
|
||||
# thread_view.next_message_expand=C-n # Focus next message (and expand if necessary), default: C-n
|
||||
# thread_view.previous_message=p # Focus previous message, default: p
|
||||
# thread_view.previous_message_expand=C-p # Focus previous message (and expand if necessary), default: C-p
|
||||
# thread_view.next_unread=Key (GDK_KEY_Tab) # Focus the next unread message, default: Key (GDK_KEY_Tab)
|
||||
# thread_view.previous_unread=Key (false, false, (guint) GDK_KEY_ISO_Left_Tab) # Focus the previous unread message, default: Key (false, false, (guint) GDK_KEY_ISO_Left_Tab)
|
||||
# thread_view.compose_to_sender=c # Compose a new message to the sender of the message (or receiver if sender is you), default: c
|
||||
# thread_view.reply=r # Reply to current message, default: r
|
||||
# thread_view.reply_all=G # Reply all to current message, default: G
|
||||
# thread_view.reply_sender=R # Reply to sender of current message, default: R
|
||||
# thread_view.reply_mailinglist=M # Reply to mailinglist of current message, default: M
|
||||
# thread_view.forward=f # Forward current message, default: f
|
||||
# thread_view.forward_inline=UnboundKey () # Forward current message inlined, no defaults.
|
||||
# thread_view.forward_attached=UnboundKey () # Forward current message as attachment, no defaults.
|
||||
# thread_view.flat=C-F # Toggle flat or indented view of messages, default: C-F
|
||||
# thread_view.view_raw=V # View raw source for current message, default: V
|
||||
# thread_view.edit_draft=E # Edit currently focused message as new or draft, default: E
|
||||
# thread_view.delete_draft=D # Delete currently focused draft, default: D
|
||||
# thread_view.multi.toggle=t # Toggle marked, default: t
|
||||
# thread_view.multi.yank_mids=C-y # Yank message id's, default: C-y
|
||||
# thread_view.multi.yank=y # Yank, default: y
|
||||
# thread_view.multi.yank_raw=Y # Yank raw, default: Y
|
||||
# thread_view.multi.save=s # Save marked, default: s
|
||||
# thread_view.multi.print=p # Print marked messages, default: p
|
||||
# thread_view.multi=Key (GDK_KEY_semicolon) # Apply action to marked threads, default: Key (GDK_KEY_semicolon)
|
||||
# thread_view.toggle_unread=N # Toggle the unread tag on the message, default: N
|
||||
# thread_view.flag=* # Toggle the 'flagged' tag on the message, default: *
|
||||
# thread_index.archive_thread=a # Toggle 'inbox' tag on the whole thread, default: a
|
||||
# thread_view.print=C-P # Print focused message, default: C-P
|
||||
# thread_view.tag_message=+ # Tag message, default: +
|
||||
# thread_view.search.search_or_next=C-f # Search for text or go to next match, default: C-f
|
||||
# thread_view.search.search=UnboundKey () # Search for text, no defaults.
|
||||
# thread_view.search.cancel=GDK_KEY_Escape # Cancel current search, default: GDK_KEY_Escape
|
||||
# thread_view.search.next=UnboundKey () # Go to next match, no defaults.
|
||||
# thread_view.search.previous=P # Go to previous match, default: P
|
||||
# thread_view.yank=y # Yank current element or message text to primary clipboard, default: y
|
||||
# thread_view.yank_raw=Y # Yank raw content of current element or message to primary clipboard, default: Y
|
||||
# thread_view.yank_mid=C-y # Yank the Message-ID of the focused message to primary clipboard, default: C-y
|
||||
43
astroid/poll.sh
Executable file
43
astroid/poll.sh
Executable file
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
|
||||
CURDIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
|
||||
TMP=/tmp/status
|
||||
source "$TMP"
|
||||
|
||||
|
||||
# Move selectedly tagged mails to folders if they are only in INBOX
|
||||
bash $CURDIR/scripts/move-tag.sh
|
||||
|
||||
# If offline mode, do a quick sync
|
||||
if [ "$var_conn" == "off" ]; then
|
||||
echo "[INFO] Offline mode enabled. Do a quick sync"
|
||||
offlineimap -q
|
||||
else
|
||||
offlineimap
|
||||
fi
|
||||
notmuch new
|
||||
|
||||
|
||||
### Sort emails
|
||||
|
||||
# Trash mod requests, Junk, Trash
|
||||
notmuch tag +ignore -unread -- path:Lists.MOD.Trash/**
|
||||
notmuch tag +spam -- path:INBOX.Junk/**
|
||||
notmuch tag +del -unread -- path:Trash/**
|
||||
|
||||
# Moderation
|
||||
notmuch tag +mod -- path:Lists.MOD/**
|
||||
|
||||
# CVS
|
||||
notmuch tag +cvs -- path:Lists.Web.CVS-Notify/**
|
||||
|
||||
# Sent
|
||||
#notmuch tag +sent -unread -- path:Sent/**
|
||||
|
||||
# Archiv
|
||||
notmuch tag +archive -- path:ARCHIVE/**
|
||||
|
||||
|
||||
# Automatic tagging based on location of mails in folders
|
||||
bash $CURDIR/scripts/tag-folder.sh # generates commands from tag-folder.csv
|
||||
bash $CURDIR/scripts/tag-folder-rules.sh # executes generated commands
|
||||
103
astroid/scripts/move-tag.sh
Executable file
103
astroid/scripts/move-tag.sh
Executable file
@@ -0,0 +1,103 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Script moves tagged mails to their respective folders if they are still lying around in INBOX
|
||||
# It also moved mails tagged with "del" to the Trash folder, "archive" to Archive, and "spam" to Spam folder
|
||||
|
||||
CURDIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
|
||||
|
||||
CSV="$CURDIR"/tag-list.csv # Table of tags/folders
|
||||
MAILDIR="$HOME/Mails/FSFE" # Maildir
|
||||
TRASHTAG="del" # Tag of trashed mails
|
||||
TRASHFOL="Trash" # Trash bin folder
|
||||
SPAMTAG="spam" # Tag of spam mails
|
||||
SPAMFOL="INBOX.Junk" # Spam folder
|
||||
ARCHTAG="archive" # Archive tag
|
||||
ARCHFOL="ARCHIVE" # Archive folder
|
||||
LOG="$CURDIR"/move-tag.log # Location of logfile
|
||||
USETAGS="P\.[[:alnum:]]+?|org-de|staff|ticket|del|spam|archive" # List of tags which shall be moved
|
||||
THREADTAG="P\.[[:alnum:]]+?|org-de|staff|ticket" # List of tags for which single, but connected messages in INBOX shall be tagged
|
||||
|
||||
BLACKLIST=
|
||||
touch "$LOG" # Create logfile or update time stamp
|
||||
|
||||
|
||||
function pdate {
|
||||
DATE=$(date +%y-%m-%d_%H:%M:%S)
|
||||
echo "[$DATE]"
|
||||
}
|
||||
|
||||
function logrun {
|
||||
# Write command itself to log, and pipe errors to log
|
||||
echo "$(pdate) $@" >> "$LOG"
|
||||
eval "$@" 2>> "$LOG"
|
||||
}
|
||||
|
||||
while read line; do
|
||||
TAG=$(echo $line | cut -d";" -f1)
|
||||
FOL=$(echo $line | cut -d";" -f2)
|
||||
|
||||
if ! $(echo $BLACKLIST | grep -q "$TAG,") && $(echo $TAG | grep -qE "$USETAGS"); then
|
||||
BLACKLIST="$TAG,$BLACKLIST" # Add current tag to list of tags which do not have to be searched for another time
|
||||
|
||||
# TRASH tag "del"
|
||||
if [ "$TAG" = "$TRASHTAG" ]; then
|
||||
HITFILES=$(notmuch search --output=files --exclude=false tag:$TRASHTAG and not path:$TRASHFOL/**) # Files which are tagged with "del" but not in Trash bin
|
||||
FOL="$TRASHFOL" # Set destination folder to Trash
|
||||
|
||||
# SPAM tag "spam"
|
||||
elif [ "$TAG" = "$SPAMTAG" ]; then
|
||||
HITFILES=$(notmuch search --output=files --exclude=false tag:$SPAMTAG and not path:$SPAMFOL/**) # Files which are tagged with "spam" but not in Spam folder
|
||||
FOL="$SPAMFOL" # Set destination folder to INBOX.Junk
|
||||
|
||||
# ARCHIVE tag "archive"
|
||||
elif [ "$TAG" = "$ARCHTAG" ]; then
|
||||
HITFILES=$(notmuch search --output=files --exclude=false tag:$ARCHTAG and not path:$ARCHFOL/**) # Files which are tagged with "archive" but not in ARCHIVE folder
|
||||
# Folder will be derived from the current position later
|
||||
|
||||
# DEFAULT
|
||||
else
|
||||
# For some tags, also tag its threads
|
||||
if $(echo $TAG | grep -qE "$THREADTAG"); then
|
||||
# If one file is tagged (except del, spam, archive), also tag the other mails of its thread respectively, IF they are located in INBOX [TODO: is this the best approach?]. Only then they can be moved by this script
|
||||
|
||||
# 1. Get thread ids of all entries with the searched tag
|
||||
THREADS=$(notmuch search --exclude=false tag:$TAG and date:$(date -d "-2 months" +%Y-%m-%d)..$(date -d "+1 year" +%Y-%m-%d) | cut -d" " -f1 | cut -d":" -f2)
|
||||
|
||||
# 2. Get message ids of all messages in these threads
|
||||
MID=
|
||||
for t in $THREADS; do
|
||||
MID="$MID "$(notmuch search --output=messages --exclude=false thread:$t)
|
||||
# MID consists of many something like "id:5XXX0CD1.305516@fsfe.org"
|
||||
done
|
||||
|
||||
# 3. Tag all message ids of messages which are still in INBOX
|
||||
for m in $MID; do
|
||||
if $(notmuch search --exclude=false --output=files "$m" | grep -q "$MAILDIR/INBOX"); then
|
||||
logrun notmuch tag +"$TAG" -- "$m"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# Search for these lone messages in INBOX
|
||||
HITFILES=$(notmuch search --output=files --exclude=false path:INBOX/** and tag:$TAG | grep "$MAILDIR/INBOX")
|
||||
fi
|
||||
|
||||
# Move files to their destination folders
|
||||
for m in $HITFILES; do
|
||||
|
||||
# Destination folder is derived from the current location
|
||||
if [ "$TAG" = "$ARCHTAG" ]; then
|
||||
SUBFOL=$(echo $m | sed -E "s|($MAILDIR)/(.+?)/cur/.*|\2|g")
|
||||
FOL="$ARCHFOL/$SUBFOL"
|
||||
fi
|
||||
DESTFOL="$MAILDIR/$FOL/cur"
|
||||
if [ ! -e "$DESTFOL" ]; then
|
||||
logrun mkdir -p "$DESTFOL"
|
||||
#logrun echo "mkdir -p" "$DESTFOL"
|
||||
fi
|
||||
logrun mv "$m" "$DESTFOL"
|
||||
#logrun echo "mv" "$m" "$DESTFOL"
|
||||
done
|
||||
fi
|
||||
|
||||
done < "$CSV"
|
||||
40
astroid/scripts/tag-folder-rules.sh
Executable file
40
astroid/scripts/tag-folder-rules.sh
Executable file
@@ -0,0 +1,40 @@
|
||||
notmuch tag +P.clt -- path:Aktionen.CLT/**
|
||||
notmuch tag +P.rd -- path:Aktionen.Funkrichtlinie/**
|
||||
notmuch tag +P.rd -- path:Aktionen.FCC/**
|
||||
notmuch tag +ML -- path:Aktionen.FCC/**
|
||||
notmuch tag +P.rd -- path:Aktionen.Funkrichtlinie.Battlemesh/**
|
||||
notmuch tag +ML -- path:Aktionen.Funkrichtlinie.Battlemesh/**
|
||||
notmuch tag +P.froscon -- path:Aktionen.FrOSCon/**
|
||||
notmuch tag +P.fundraising -- path:Aktionen.Fundraising/**
|
||||
notmuch tag +P.ilovefs -- path:Aktionen.IloveFS/**
|
||||
notmuch tag +P.pm -- path:Aktionen.PublicMoney/**
|
||||
notmuch tag +P.rz -- path:Aktionen.Routerzwang/**
|
||||
notmuch tag +P.fosdem -- path:Aktionen.FOSDEM/**
|
||||
notmuch tag +P.ccc -- path:Aktionen.CCC/**
|
||||
notmuch tag +P.orr -- path:Aktionen.OpenRR/**
|
||||
notmuch tag +draft -- path:Drafts/**
|
||||
notmuch tag +android -- path:Lists.Android/**
|
||||
notmuch tag +coord -- path:Lists.Coordinators/**
|
||||
notmuch tag +de -- path:Lists.DACH/**
|
||||
notmuch tag +org-de -- path:Lists.DACH.Coord/**
|
||||
notmuch tag +de -- path:Lists.DACH.Coord/**
|
||||
notmuch tag +discuss -- path:Lists.Discussion/**
|
||||
notmuch tag +eufoss -- path:Lists.FOSS-Policy/**
|
||||
notmuch tag +fsfede -- path:Lists.FSFE-de/**
|
||||
notmuch tag +rheinland -- path:Lists.Rheinland/**
|
||||
notmuch tag +suedde -- path:Lists.Sueddeutschland/**
|
||||
notmuch tag +syshackers -- path:Lists.SystemHackers/**
|
||||
notmuch tag +team -- path:Lists.Team/**
|
||||
notmuch tag +trans -- path:Lists.Translators/**
|
||||
notmuch tag +web -- path:Lists.Web/**
|
||||
notmuch tag +legal-licence -- path:Lists.Legal.Licence/**
|
||||
notmuch tag +press -- path:Press-FSFE/**
|
||||
notmuch tag +press -- path:Press-FSFE.Draft/**
|
||||
notmuch tag +press -- path:Press-FSFE.Inquiry/**
|
||||
notmuch tag +staff -- path:Staff/**
|
||||
notmuch tag +ticket -- path:Staff.Tickets/**
|
||||
notmuch tag +git -- path:Git/**
|
||||
notmuch tag +spam -- path:INBOX.Junk/**
|
||||
notmuch tag +del -- path:Trash/**
|
||||
notmuch tag +archive -- path:ARCHIVE/**
|
||||
notmuch tag +de-outreach -- path:Lists.Outreach-de/**
|
||||
28
astroid/scripts/tag-folder.sh
Executable file
28
astroid/scripts/tag-folder.sh
Executable file
@@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
|
||||
CURDIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
|
||||
|
||||
CSV=$CURDIR/tag-list.csv
|
||||
OUT=$CURDIR/tag-folder-rules.sh
|
||||
|
||||
> $OUT # reset
|
||||
|
||||
function notmuch_rule {
|
||||
F_TAG=$1
|
||||
F_FOL=$2
|
||||
|
||||
echo "notmuch tag +${F_TAG} -- path:${F_FOL}/**"
|
||||
}
|
||||
|
||||
while read line; do
|
||||
|
||||
TAG=$(echo $line | cut -d";" -f1)
|
||||
FOL=$(echo $line | cut -d";" -f2)
|
||||
|
||||
NOTAG=$(echo $TAG | grep -o "," | wc -l)
|
||||
NOTAG=$(expr $NOTAG + 1)
|
||||
for ((i = 1; i <= $NOTAG; i++)); do
|
||||
notmuch_rule $(echo $TAG | cut -d"," -f${i}) $FOL >> $OUT
|
||||
done
|
||||
|
||||
done < "$CSV"
|
||||
37
astroid/scripts/tag-list.csv
Normal file
37
astroid/scripts/tag-list.csv
Normal file
@@ -0,0 +1,37 @@
|
||||
P.clt;Aktionen.CLT
|
||||
P.rd;Aktionen.Funkrichtlinie
|
||||
P.rd,ML;Aktionen.FCC
|
||||
P.rd,ML;Aktionen.Funkrichtlinie.Battlemesh
|
||||
P.froscon;Aktionen.FrOSCon
|
||||
P.fundraising;Aktionen.Fundraising
|
||||
P.ilovefs;Aktionen.IloveFS
|
||||
P.pm;Aktionen.PublicMoney
|
||||
P.rz;Aktionen.Routerzwang
|
||||
P.fosdem;Aktionen.FOSDEM
|
||||
P.ccc;Aktionen.CCC
|
||||
P.orr;Aktionen.OpenRR
|
||||
draft;Drafts
|
||||
android;Lists.Android
|
||||
coord;Lists.Coordinators
|
||||
de;Lists.DACH
|
||||
org-de,de;Lists.DACH.Coord
|
||||
discuss;Lists.Discussion
|
||||
eufoss;Lists.FOSS-Policy
|
||||
fsfede;Lists.FSFE-de
|
||||
rheinland;Lists.Rheinland
|
||||
suedde;Lists.Sueddeutschland
|
||||
syshackers;Lists.SystemHackers
|
||||
team;Lists.Team
|
||||
trans;Lists.Translators
|
||||
web;Lists.Web
|
||||
legal-licence;Lists.Legal.Licence
|
||||
press;Press-FSFE
|
||||
press;Press-FSFE.Draft
|
||||
press;Press-FSFE.Inquiry
|
||||
staff;Staff
|
||||
ticket;Staff.Tickets
|
||||
git;Git
|
||||
spam;INBOX.Junk
|
||||
del;Trash
|
||||
archive;ARCHIVE
|
||||
de-outreach;Lists.Outreach-de
|
||||
|
28
astroid/scripts/tag-thread.sh
Executable file
28
astroid/scripts/tag-thread.sh
Executable file
@@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
|
||||
CURDIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
|
||||
|
||||
CSV=$CURDIR/tag-list.csv
|
||||
OUT=$CURDIR/tag-thread-rules.sh
|
||||
|
||||
> $OUT # reset
|
||||
|
||||
function notmuch_rule {
|
||||
F_TAG=$1
|
||||
F_FOL=$2
|
||||
|
||||
echo "notmuch tag +${F_TAG} -- thread:${F_FOL}/**"
|
||||
}
|
||||
|
||||
while read line; do
|
||||
|
||||
TAG=$(echo $line | cut -d";" -f1)
|
||||
FOL=$(echo $line | cut -d";" -f2)
|
||||
|
||||
NOTAG=$(echo $TAG | grep -o "," | wc -l)
|
||||
NOTAG=$(expr $NOTAG + 1)
|
||||
for ((i = 1; i <= $NOTAG; i++)); do
|
||||
notmuch_rule $(echo $TAG | cut -d"," -f${i}) $FOL >> $OUT
|
||||
done
|
||||
|
||||
done < "$CSV"
|
||||
973
astroid/searches
Normal file
973
astroid/searches
Normal file
@@ -0,0 +1,973 @@
|
||||
{
|
||||
"saved": {
|
||||
"UNREAD": "tag:unread",
|
||||
"FLAGGED": "tag:flagged",
|
||||
"FOLLOWUP": "tag:followup",
|
||||
"MOD": "tag:mod and tag:unread",
|
||||
"CVS": "tag:cvs and tag:unread",
|
||||
"SENT": "tag:sent",
|
||||
"DRAFT": "tag:draft",
|
||||
"IGNORE": "tag:ignore",
|
||||
"SPAM": "tag:spam and tag:unread",
|
||||
"ALL": ""
|
||||
},
|
||||
"history": {
|
||||
"none": "tag:trash",
|
||||
"none": "tag:signed",
|
||||
"none": "tag:ignore",
|
||||
"none": "tag:trash",
|
||||
"none": "tag:ignore",
|
||||
"none": "tag:",
|
||||
"none": "tag:ignore",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:ignore",
|
||||
"none": "tag:ignore",
|
||||
"none": "tag:deleted",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:junk",
|
||||
"none": "tag:sent",
|
||||
"none": "germany@",
|
||||
"none": "germany\\@",
|
||||
"none": "tag:del",
|
||||
"none": "lieferando",
|
||||
"none": "'germany@'",
|
||||
"none": "'germany??'",
|
||||
"none": "to:germany@",
|
||||
"none": "tag:encrypted",
|
||||
"none": "'hier die adresse'",
|
||||
"none": "sascha",
|
||||
"none": "tag:mod",
|
||||
"none": "tag:mod",
|
||||
"none": "tag:mod",
|
||||
"none": "tag:dwq",
|
||||
"none": "tag:de",
|
||||
"none": "tag:de",
|
||||
"none": "from:linuxhotel",
|
||||
"none": "tag:de,unread",
|
||||
"none": "tag:unread",
|
||||
"none": "tag:unread,de",
|
||||
"none": "tag:unread, de",
|
||||
"none": "tag:unread, tag:de",
|
||||
"none": "unread,de",
|
||||
"none": "tag:de",
|
||||
"none": "tag:de AND tag:unread",
|
||||
"none": "tag:de",
|
||||
"none": "to:team@",
|
||||
"none": "tag:lieferando",
|
||||
"none": "tag:lieferando AND tag:del",
|
||||
"none": "tag:lieferando AND tag:deleted",
|
||||
"none": "lieferando AND tag:deleted",
|
||||
"none": "lieferando",
|
||||
"none": "lieferando tag:del",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:flagged",
|
||||
"none": "tag:de",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:",
|
||||
"none": "tag:*",
|
||||
"none": "tag:**",
|
||||
"none": "*",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:syshackers",
|
||||
"none": "teamtreffen",
|
||||
"none": "tag:de",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:P.pm",
|
||||
"none": "tag:del",
|
||||
"none": "tag:web",
|
||||
"none": "tag:web",
|
||||
"none": "tag:team",
|
||||
"none": "tag:Germany",
|
||||
"none": "tag:de",
|
||||
"none": "tag:P.rd",
|
||||
"none": "ISPA News",
|
||||
"none": "Gastbeitrag",
|
||||
"none": "tag:web",
|
||||
"none": "tag:press",
|
||||
"none": "path:Lists.DACH.Coord",
|
||||
"none": "path:Lists.DACH.Coord\/**",
|
||||
"none": "tag:org",
|
||||
"none": "tag:encryp",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:del and path:INBOX\/**",
|
||||
"none": "path:INBOX\/**",
|
||||
"none": "tag:org-de",
|
||||
"none": "they want you to",
|
||||
"none": "tag:tdwyt",
|
||||
"none": "theydontwantyouto",
|
||||
"none": "from:Silvain",
|
||||
"none": "from:Sylvain",
|
||||
"none": "connector",
|
||||
"none": "le bon",
|
||||
"none": "\"le bon\"",
|
||||
"none": "from:\"Sylvain\"",
|
||||
"none": "secretdeals",
|
||||
"none": "to:translators@",
|
||||
"none": "to:translators@ and tag:archive",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:team",
|
||||
"none": "tag:del and not path:Trash\/**",
|
||||
"none": "id:<CACLo=OzY8AcbvJE-54o55_d5y35pmiS=C=gzg=hZ=2kZ-o01iw@mail.gmail.com>",
|
||||
"none": "id:CACLo=OzY8AcbvJE-54o55_d5y35pmiS=C=gzg=hZ=2kZ-o01iw@mail.gmail.com",
|
||||
"none": "tag:del",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:signed",
|
||||
"none": "tag:del",
|
||||
"none": "tag:archive",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:sent and tag:del",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:signed",
|
||||
"none": "tag:team",
|
||||
"none": "vg wort",
|
||||
"none": "tag:signed",
|
||||
"none": "tag:signed",
|
||||
"none": "tag:signed and tag:sent",
|
||||
"none": "summit",
|
||||
"none": "tag:signed and tag:sent and tag:del",
|
||||
"none": "tag:signed and tag:sent and tag_del",
|
||||
"none": "tag:signed and tag:sent and tag:del",
|
||||
"none": "crypt and sign",
|
||||
"none": "tag:encrypted and tag:sent and tag:del",
|
||||
"none": "tag:attachment",
|
||||
"none": "tag:web",
|
||||
"none": "tag:web",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:cvs and tag_unread",
|
||||
"none": "tag:cvs and tag:unread",
|
||||
"none": "--exclude=false tag:unread",
|
||||
"none": "tag:froscon",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "froscon",
|
||||
"none": "tag:",
|
||||
"none": "tag:",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "froscon folien",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "signed",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:draft",
|
||||
"none": "gauteh",
|
||||
"none": "gaute",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:enc",
|
||||
"none": "tag:encry",
|
||||
"none": "tag:encryp",
|
||||
"none": "tag:en",
|
||||
"none": "tag:encrypt",
|
||||
"none": "tag:encrypt",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:signed",
|
||||
"none": "tag:signed and tag:attachment",
|
||||
"none": "tag:encrypted and tag:attachment",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:sent",
|
||||
"none": "paul brown",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:team",
|
||||
"none": "tag:web",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:flagged and tag:P.rd",
|
||||
"none": "wiki hackers",
|
||||
"none": "wiki care",
|
||||
"none": "wiki care and tag:sent",
|
||||
"none": "wiki and tag:sent",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:sent and translation status",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:del",
|
||||
"none": "gauteh",
|
||||
"none": "gaute",
|
||||
"none": "path:INBOX",
|
||||
"none": "path:INBOX\/**",
|
||||
"none": "tag:de",
|
||||
"none": "tag:de",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:signed",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:archive",
|
||||
"none": "tag:web",
|
||||
"none": "tag:syshackers",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:p.",
|
||||
"none": "tag:p",
|
||||
"none": "tag:p",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:sent",
|
||||
"none": "Ihre Nachricht",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:signed",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:syshackers",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:P.clt and er",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:P.froscon and essen",
|
||||
"none": "tag:P.froscon and verpflegung",
|
||||
"none": "tag:P.froscon and catering",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "plan",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "er",
|
||||
"none": "gaute",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:press",
|
||||
"none": "path:INBOX\/**",
|
||||
"none": "tag:P.pm",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:press",
|
||||
"none": "privacy",
|
||||
"none": "event",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:sent",
|
||||
"none": " ",
|
||||
"none": "tag:*",
|
||||
"none": "tag:**",
|
||||
"none": "tag:",
|
||||
"none": "tag:rz",
|
||||
"none": "tag:P.rz",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:P.rz",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:press",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:sent",
|
||||
"none": "can you help",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:spam and not path:.INBOX.Junk\/**",
|
||||
"none": "tag:spam and not path:INBOX.Junk\/**",
|
||||
"none": "--exclude=false tag:spam and not path:INBOX.Junk\/**",
|
||||
"none": "tag:spam and not path:INBOX.Junk\/**",
|
||||
"none": "tag:körfer",
|
||||
"none": "körfer",
|
||||
"none": "tag:P.rz",
|
||||
"none": "abwesen",
|
||||
"none": "koerfer",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:spam and tag:unread",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:clt",
|
||||
"none": "tag:P.clt",
|
||||
"none": "abrechnung",
|
||||
"none": "linuxtage",
|
||||
"none": "tag:sent",
|
||||
"none": "eulalio",
|
||||
"none": "jabber",
|
||||
"none": "jabber and tag:sys",
|
||||
"none": "jabber and tag:syshackers",
|
||||
"none": "tag:syshackers",
|
||||
"none": "gastbeitrag",
|
||||
"none": "300 euro",
|
||||
"none": "abrechnung",
|
||||
"none": "RC",
|
||||
"none": "ulrike",
|
||||
"none": "majesty",
|
||||
"none": "majestyx",
|
||||
"none": "abläufe mit den testgeräten",
|
||||
"none": "swap",
|
||||
"none": "tag:P.rz",
|
||||
"none": "netzpolitik",
|
||||
"none": "nocloud",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:press",
|
||||
"none": "tag:trans and from:Max",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:unread",
|
||||
"none": "tag:unread,del",
|
||||
"none": "tag:unread and tag:del",
|
||||
"none": "tag:discuss and welcome",
|
||||
"none": "tag:P.rd and welcome",
|
||||
"none": "tag:sent and tag:P.rz",
|
||||
"none": "kira",
|
||||
"none": "platen",
|
||||
"none": "kappes",
|
||||
"none": "nagel",
|
||||
"none": "kiefer",
|
||||
"none": "trebuth",
|
||||
"none": "dominik",
|
||||
"none": "tag:draft",
|
||||
"none": "david",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:P.rz",
|
||||
"none": "testgerät",
|
||||
"none": "tag:trans",
|
||||
"none": "path:INBOX\/**",
|
||||
"none": "tag:team",
|
||||
"none": "ispa",
|
||||
"none": "italy",
|
||||
"none": "trainee",
|
||||
"none": "intern",
|
||||
"none": "tag:team",
|
||||
"none": "timeline",
|
||||
"none": "tag:p",
|
||||
"none": "newsletter",
|
||||
"none": "tag:p",
|
||||
"none": "tag:cvs and tag:unread",
|
||||
"none": "tag:sent",
|
||||
"none": "summit",
|
||||
"none": "froscon",
|
||||
"none": "froscon",
|
||||
"none": "marcu",
|
||||
"none": "marcus",
|
||||
"none": "nagel",
|
||||
"none": "tag:team and supporter",
|
||||
"none": "tag:team and supporter and otto",
|
||||
"none": "tag:team and supporter",
|
||||
"none": "tag:team and supporters",
|
||||
"none": "tag:team and \/support",
|
||||
"none": "tag:team and from:otto",
|
||||
"none": "from:otto and supporters",
|
||||
"none": "marcus",
|
||||
"none": "pohl",
|
||||
"none": "moeller",
|
||||
"none": "pohl",
|
||||
"none": "from:mk@ and tag:P.froscon",
|
||||
"none": "tag:fsfede",
|
||||
"none": "tag:p",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "paul",
|
||||
"none": "kiefer",
|
||||
"none": "tag:P.rz",
|
||||
"none": "ulrike",
|
||||
"none": "ulrike",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:draft",
|
||||
"none": "list",
|
||||
"none": "list",
|
||||
"none": "link.fsfe",
|
||||
"none": "list",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tarin",
|
||||
"none": "tag:P.froscon and from:constantin",
|
||||
"none": "tag:p",
|
||||
"none": "tag:P.froscon",
|
||||
"none": "tag:flagged",
|
||||
"none": "tag:fsfe-de",
|
||||
"none": "tag:fsfede",
|
||||
"none": "tag:P.froscon and müller",
|
||||
"none": "gabriele",
|
||||
"none": "nicole faerber",
|
||||
"none": "encodings",
|
||||
"none": "migrated",
|
||||
"none": "discussion",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:sent",
|
||||
"none": "pohl",
|
||||
"none": "tag:sent",
|
||||
"none": "andre",
|
||||
"none": "ockers",
|
||||
"none": "mcpomm",
|
||||
"none": "tag:draft",
|
||||
"none": "constanze",
|
||||
"none": "tag:summit",
|
||||
"none": "test",
|
||||
"none": "test1",
|
||||
"none": "tag:summit",
|
||||
"none": "test1",
|
||||
"none": "tag:sent",
|
||||
"none": "tjaldur",
|
||||
"none": "tag:signed",
|
||||
"none": "tag:trans and timeline",
|
||||
"none": "penta",
|
||||
"none": "open",
|
||||
"none": "rhein",
|
||||
"none": "aktivieren",
|
||||
"none": "penta",
|
||||
"none": "tag:",
|
||||
"none": "",
|
||||
"none": " ",
|
||||
"none": "",
|
||||
"none": "tag:P.",
|
||||
"none": "tag:P.*",
|
||||
"none": "test",
|
||||
"none": "test1",
|
||||
"none": "test1",
|
||||
"none": "froscon",
|
||||
"none": "tag:de",
|
||||
"none": "tag:summit",
|
||||
"none": "kiefer",
|
||||
"none": "dominik",
|
||||
"none": "david",
|
||||
"none": "tobias",
|
||||
"none": "boris",
|
||||
"none": "david",
|
||||
"none": "tag:team",
|
||||
"none": "tag:team and tag:del",
|
||||
"none": "hugo",
|
||||
"none": "kappes",
|
||||
"none": "david",
|
||||
"none": "dominik",
|
||||
"none": "tag:attachment",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:signed",
|
||||
"none": "tag:attachment",
|
||||
"none": "tag:signed and tag:attachment",
|
||||
"none": "jonathan",
|
||||
"none": "fabian",
|
||||
"none": "david",
|
||||
"none": "tag:",
|
||||
"none": " ",
|
||||
"none": "",
|
||||
"none": "tag:summit",
|
||||
"none": "er",
|
||||
"none": "subject:er",
|
||||
"none": "tag:staff",
|
||||
"none": "tag:staff",
|
||||
"none": "general assembly",
|
||||
"none": "tag:draft",
|
||||
"none": "jonathan",
|
||||
"none": "testgerät",
|
||||
"none": "dominik",
|
||||
"none": "enrico",
|
||||
"none": "tag:summit",
|
||||
"none": "römermann",
|
||||
"none": "tag:fsfede",
|
||||
"none": "tag:summit",
|
||||
"none": "tag:flagged",
|
||||
"none": "tag:del",
|
||||
"none": "xmpp and from:albert",
|
||||
"none": "tag:weblate",
|
||||
"none": "weblate",
|
||||
"none": "tag:fsfede and hamburg",
|
||||
"none": "from:qtcon",
|
||||
"none": "from:attendees",
|
||||
"none": "tag:summit",
|
||||
"none": "to:qtcon-",
|
||||
"none": "tag:attachment",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:team",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:press",
|
||||
"none": "tag:press",
|
||||
"none": "tag:sent",
|
||||
"none": "internship",
|
||||
"none": "easyjet",
|
||||
"none": "flug",
|
||||
"none": "deutschland",
|
||||
"none": "from:deutschland",
|
||||
"none": "tag:dlf",
|
||||
"none": "dlf",
|
||||
"none": "tag:ga",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:sent and tag:P.rz",
|
||||
"none": "tag:sent",
|
||||
"none": "tim ffi",
|
||||
"none": "tim",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:de",
|
||||
"none": "tag:de",
|
||||
"none": "snow",
|
||||
"none": "tag:ccc",
|
||||
"none": "ccc",
|
||||
"none": "kira ",
|
||||
"none": "ccc",
|
||||
"none": "chaos",
|
||||
"none": "33c3",
|
||||
"none": "tag:followup",
|
||||
"none": "tag:sent",
|
||||
"none": "logo",
|
||||
"none": "tag:draft",
|
||||
"none": "schreib gelegenheit",
|
||||
"none": "from:eo-post",
|
||||
"none": "tag:sent",
|
||||
"none": "otrs",
|
||||
"none": "vanitas",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:P.rd",
|
||||
"none": "from:bro",
|
||||
"none": "from:paul brown",
|
||||
"none": "tag:cvs and from:zeh",
|
||||
"none": "translations",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:P.orr",
|
||||
"none": "hotel",
|
||||
"none": "buchung",
|
||||
"none": "city",
|
||||
"none": "tag:spam",
|
||||
"none": "enrico",
|
||||
"none": "otrs",
|
||||
"none": "vanitas",
|
||||
"none": "münster",
|
||||
"none": "dennis",
|
||||
"none": "ubuntuuser",
|
||||
"none": "tag:P.pm",
|
||||
"none": "tag:P.pm and tag:attachment",
|
||||
"none": "tag:L.licence",
|
||||
"none": "tag:legal-licence",
|
||||
"none": "tag:legal-licence",
|
||||
"none": "tag:legal-licence",
|
||||
"none": "guthausen",
|
||||
"none": "tag:flagged",
|
||||
"none": "from:stehmann and fdp",
|
||||
"none": "olejak",
|
||||
"none": "tag:del",
|
||||
"none": "tag:del and tag:unread",
|
||||
"none": "globalist",
|
||||
"none": "zürich",
|
||||
"none": "zurich",
|
||||
"none": "artikel",
|
||||
"none": "vanessa",
|
||||
"none": "tag:P.pm",
|
||||
"none": "frank guthausen",
|
||||
"none": "tag:mod",
|
||||
"none": "tag:trans",
|
||||
"none": "weblate",
|
||||
"none": "tag:press",
|
||||
"none": "johannes",
|
||||
"none": "tag:mod",
|
||||
"none": "tag:P.orr",
|
||||
"none": "maurice",
|
||||
"none": "niko",
|
||||
"none": "rikken",
|
||||
"none": "tag:de",
|
||||
"none": "globalist",
|
||||
"none": "vanessa",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:press",
|
||||
"none": "olga",
|
||||
"none": "p.ccc",
|
||||
"none": "tag:P.ccc",
|
||||
"none": "tag:P.ccc",
|
||||
"none": "fundraisig",
|
||||
"none": "fundraising",
|
||||
"none": "tag:del",
|
||||
"none": "tag:del and test",
|
||||
"none": "tag:del and maildrop",
|
||||
"none": "paris",
|
||||
"none": "bog",
|
||||
"none": "blog",
|
||||
"none": "no cloud",
|
||||
"none": "tag:P.fosdem",
|
||||
"none": "corporate",
|
||||
"none": "ulrike",
|
||||
"none": "fsfe-de",
|
||||
"none": "from:ulrike",
|
||||
"none": "from:usli",
|
||||
"none": "heiki",
|
||||
"none": "tag:P.fosdem",
|
||||
"none": "tag:P.ilovefs",
|
||||
"none": "tag:mod and tag_del",
|
||||
"none": "tag:mod and tag:del",
|
||||
"none": "tag:mod",
|
||||
"none": "tag:mod and tag:ignore",
|
||||
"none": "tag:ignore",
|
||||
"none": "tag:android",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:P.ilovefs",
|
||||
"none": "tag:draft",
|
||||
"none": "tag:P.rz and sent",
|
||||
"none": "tag:P.rz and tag:sent",
|
||||
"none": "marc",
|
||||
"none": "maik",
|
||||
"none": "anke",
|
||||
"none": "tag:team",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:P.ccc",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:P.ccc",
|
||||
"none": "tag:cvs and tag:spam",
|
||||
"none": "tag:cvs and tag:spam",
|
||||
"none": "tag:spam and tag:unread or tag:ignore",
|
||||
"none": "tag:spam and tag:unread and tag:ignore",
|
||||
"none": "stallman",
|
||||
"none": "köln",
|
||||
"none": "münster",
|
||||
"none": "tag:sent",
|
||||
"none": "pomada",
|
||||
"none": "ludger",
|
||||
"none": "porada",
|
||||
"none": "arbeitsmarkt",
|
||||
"none": "christopher",
|
||||
"none": "tag:P.ccc",
|
||||
"none": "tag:P.ccc",
|
||||
"none": "tag:P.ccc",
|
||||
"none": "tag:cvs and tag_unread",
|
||||
"none": "tag:cvs and tag:unread",
|
||||
"none": "tag:P.ccc",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:ticket",
|
||||
"none": "ludger",
|
||||
"none": "tag:staff",
|
||||
"none": "tag:eufoss",
|
||||
"none": "tag:signed",
|
||||
"none": "tag:P.ccc",
|
||||
"none": "tag:P.ccc",
|
||||
"none": "tag:flagged",
|
||||
"none": "tag:flagged",
|
||||
"none": "tag:P.fundraising",
|
||||
"none": "tag:P.ccc",
|
||||
"none": "tag:P.fundraising",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:P.fosdem",
|
||||
"none": "er.",
|
||||
"none": "fosdem",
|
||||
"none": "to:finance@",
|
||||
"none": "kleben",
|
||||
"none": "zettel ulrike",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:staff and vacation",
|
||||
"none": "tag:flagged",
|
||||
"none": "tag:P.rz",
|
||||
"none": "tag:P.rz",
|
||||
"none": "from:FSFE",
|
||||
"none": "tag:P.rd",
|
||||
"none": "guido",
|
||||
"none": "sebastian",
|
||||
"none": "tag:P.rd",
|
||||
"none": "monic",
|
||||
"none": "tag:P.fosdem",
|
||||
"none": "tag:cvs and tag:unread",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:P.clt",
|
||||
"none": "bitcoin",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:coord",
|
||||
"none": "tag:tag:cvs",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:press",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:del",
|
||||
"none": "tag:del",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:cvs and order.en",
|
||||
"none": "order",
|
||||
"none": "kategorien",
|
||||
"none": "to:coordinators@ and ilovefs",
|
||||
"none": "stallman",
|
||||
"none": "ebner",
|
||||
"none": "amateur",
|
||||
"none": "humboldt",
|
||||
"none": "matthias",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:mod",
|
||||
"none": "wet dream",
|
||||
"none": "tag:staff and pd",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:staff",
|
||||
"none": "websites locally",
|
||||
"none": "tag:sent and to:Florian",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:p.rd and journalist",
|
||||
"none": "tag:p.rd",
|
||||
"none": "tag:P.rd and journalist",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:P.rd",
|
||||
"none": "local",
|
||||
"none": "local build",
|
||||
"none": "subject:er",
|
||||
"none": "tag:P.ilovefs",
|
||||
"none": "tag:staff",
|
||||
"none": "2100004",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:cvs and subject:\/branches\/test",
|
||||
"none": "from:jonas and track",
|
||||
"none": "from:jonas and join",
|
||||
"none": "from:jonas and nls",
|
||||
"none": "from:jonas",
|
||||
"none": "from:jonas and join",
|
||||
"none": "tag:csv and pd",
|
||||
"none": "tag:csv and perdiem",
|
||||
"none": "tag:csv and per",
|
||||
"none": "tag:cvs and pd",
|
||||
"none": "tag:web",
|
||||
"none": "tag:web",
|
||||
"none": "from:erik",
|
||||
"none": "rms münster",
|
||||
"none": "from:olga",
|
||||
"none": "slogans",
|
||||
"none": "tag:P.ilovefs",
|
||||
"none": "tag:P.ilovefs",
|
||||
"none": "tag:P.ilovefs",
|
||||
"none": "from:olga",
|
||||
"none": "from:olga and slogan",
|
||||
"none": "tag:P.rd",
|
||||
"none": "wet dream",
|
||||
"none": "tag:P.rd and wether",
|
||||
"none": "tag:P.rd and weather",
|
||||
"none": "tag:p.fosdem",
|
||||
"none": "tag:P.fosdem",
|
||||
"none": "tag:P.fosdem",
|
||||
"none": "vpn",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:P.fosdem",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:P.ilovefs",
|
||||
"none": "tag:P.ilovefs",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:P.pm",
|
||||
"none": "expense request",
|
||||
"none": "officer and tag:P.rd",
|
||||
"none": "reda and tag:P.rd",
|
||||
"none": "rapporteur and tag:P.rd",
|
||||
"none": "standing and tag:P.rd",
|
||||
"none": "reda and tag:P.rd",
|
||||
"none": "reda standing",
|
||||
"none": "rapporteur",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:event.misc",
|
||||
"none": "rms",
|
||||
"none": "stallman",
|
||||
"none": "tag:de-outreach",
|
||||
"none": "tag:de-outreach",
|
||||
"none": "münchen",
|
||||
"none": "tag:de-outreach",
|
||||
"none": "tag:trans",
|
||||
"none": "alex",
|
||||
"none": "martin",
|
||||
"none": "martin",
|
||||
"none": "from:martin",
|
||||
"none": "martin krafft",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:sent",
|
||||
"none": "münchen",
|
||||
"none": "residenz",
|
||||
"none": "frankfurt",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:P.clt and expense",
|
||||
"none": "tag:P.clt",
|
||||
"none": "piallat",
|
||||
"none": "maass",
|
||||
"none": "expense",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:P.rd",
|
||||
"none": "cognitive",
|
||||
"none": "20170115212645.GA2",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:P.rz",
|
||||
"none": "tag:followup",
|
||||
"none": "tag:sent",
|
||||
"none": "kredit",
|
||||
"none": "from:usli",
|
||||
"none": "tag:cvs ",
|
||||
"none": "katta",
|
||||
"none": "frama",
|
||||
"none": "framasoft",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:P.rd",
|
||||
"none": "sammartino",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:de",
|
||||
"none": "nospy",
|
||||
"none": "no spy",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:de",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:cvs",
|
||||
"none": "fosdem",
|
||||
"none": "fosdem expense",
|
||||
"none": "staff",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:de",
|
||||
"none": "tag:staff",
|
||||
"none": "intern",
|
||||
"none": "tag:de",
|
||||
"none": "tag:de",
|
||||
"none": "tag:de-outreach",
|
||||
"none": "ifixit",
|
||||
"none": "tag:team",
|
||||
"none": "tag:team and to:team-decision",
|
||||
"none": "tag:team and to:team-decision",
|
||||
"none": "tag:team and to:team-decisions",
|
||||
"none": "tag:syshackers",
|
||||
"none": "tag:syshackers and social",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:cvs ",
|
||||
"none": "tag:team",
|
||||
"none": "tag:de",
|
||||
"none": "handbook",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:P.ilovefs",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:encrypted",
|
||||
"none": "tag:team",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:mod",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:spam",
|
||||
"none": "sabe",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:spam",
|
||||
"none": "tag:mod",
|
||||
"none": "tag:event.misc",
|
||||
"none": "tag:event.misc",
|
||||
"none": "tag:sent",
|
||||
"none": "yubikey",
|
||||
"none": "tag:de-outreach",
|
||||
"none": "tag:fsfede",
|
||||
"none": "tag:mod",
|
||||
"none": "tag:event.misc",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:p.l",
|
||||
"none": "tag:P.clt",
|
||||
"none": "maass",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:team",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:P.rd and fosdem",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:team",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:team",
|
||||
"none": "tag:pr",
|
||||
"none": "tag:press",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:syshackers",
|
||||
"none": "tag:P.clt",
|
||||
"none": "silke",
|
||||
"none": "silke meyer",
|
||||
"none": "tag:P.clt",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:event.misc",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:cvs and nl-201703",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:team",
|
||||
"none": "tag:P.pm",
|
||||
"none": "tag:P.pm",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:P.pm",
|
||||
"none": "tag:cvs",
|
||||
"none": "intern",
|
||||
"none": "tag:event.misc",
|
||||
"none": "tag:event.misc",
|
||||
"none": "website",
|
||||
"none": "tag:git",
|
||||
"none": "tag:git",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:del",
|
||||
"none": "tag:followup",
|
||||
"none": "tag:team",
|
||||
"none": "tag:de",
|
||||
"none": "tag:P.pm",
|
||||
"none": "tag:staff",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:sent",
|
||||
"none": "tag:syshackers",
|
||||
"none": "tag:press",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:staff",
|
||||
"none": "tag:web",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:P.ilovefs and referent",
|
||||
"none": "tag:ga",
|
||||
"none": "tag:P.pm and domain",
|
||||
"none": "publicmoneypubliccode",
|
||||
"none": "tag:P.pm",
|
||||
"none": "tag:followup",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:trans",
|
||||
"none": "tag:del",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:ga",
|
||||
"none": "tag:P.pm",
|
||||
"none": "military use",
|
||||
"none": "militärische klausel",
|
||||
"none": "militärisch",
|
||||
"none": "tag:ga",
|
||||
"none": "tag:cvs",
|
||||
"none": "piraten",
|
||||
"none": "tag:event.misc",
|
||||
"none": "piraten",
|
||||
"none": "piratencafe",
|
||||
"none": "tag:event.misc",
|
||||
"none": "tag:legal-llw",
|
||||
"none": "tag:legal-licence",
|
||||
"none": "tag:staff",
|
||||
"none": "ulrike",
|
||||
"none": "sammartino",
|
||||
"none": "from:monic",
|
||||
"none": "juni",
|
||||
"none": "berlin",
|
||||
"none": "in berlin",
|
||||
"none": "tag:web and social",
|
||||
"none": "tag:web and social",
|
||||
"none": "tag:archive",
|
||||
"none": "tag:archive",
|
||||
"none": "",
|
||||
"none": "tag:cvs",
|
||||
"none": "tag:cvs and test",
|
||||
"none": "tag:cvs and \/test",
|
||||
"none": "tag:cvs and branches\/test",
|
||||
"none": "tag:cvs and branches\/test and texts",
|
||||
"none": "tag:cvs and branches\/test and texts-en",
|
||||
"none": "tag:cvs and fsfe_mainsection.csl",
|
||||
"none": "tag:cvs and fsfe_mainsection.xsl",
|
||||
"none": "tag:web",
|
||||
"none": "hackert",
|
||||
"none": "tag:de",
|
||||
"none": "tag:dew",
|
||||
"none": "tag:de",
|
||||
"none": "tag:team",
|
||||
"none": "tag:P.rd",
|
||||
"none": "tag:syshackers",
|
||||
"none": "tag:legal-llw",
|
||||
"none": "tag:event.misc",
|
||||
"none": "tag:sent",
|
||||
"none": "gaute",
|
||||
"none": "tag:discuss",
|
||||
"none": "tag:discuss",
|
||||
"none": "tag:spam"
|
||||
}
|
||||
}
|
||||
6
astroid/signature.txt
Normal file
6
astroid/signature.txt
Normal file
@@ -0,0 +1,6 @@
|
||||
|
||||
--
|
||||
Max Mehl - Free Software Foundation Europe - Program Manager
|
||||
Contact and further information: https://fsfe.org/about/mehl
|
||||
Private weblog: (blog.mehl.mx) | Private homepage: (mehl.mx)
|
||||
Support advocacy for Free Software: https://fsfe.org/donate
|
||||
4
astroid/ui/.gitignore
vendored
Normal file
4
astroid/ui/.gitignore
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
.sass-cache*
|
||||
*.css.map
|
||||
thread-view.css
|
||||
|
||||
53
astroid/ui/thread-view.scss
Normal file
53
astroid/ui/thread-view.scss
Normal file
@@ -0,0 +1,53 @@
|
||||
/* ui-version: 3 (do not change when modifying theme for yourself) */
|
||||
|
||||
/* Variables */
|
||||
|
||||
/* FONTS */
|
||||
$font-mono: "Input Mono", "Inconsolata", monospace;
|
||||
$font-sans: "Input Sans", "Roboto", sans-serif;
|
||||
$font-family-default: $font-mono;
|
||||
|
||||
/* COLOURS */
|
||||
$signed: #BFBF00 !global;
|
||||
$encrypted: #99cc66 !global;
|
||||
|
||||
/* GPG STUFF */
|
||||
.body_part.encrypted, .body_part.encrypted.signed {
|
||||
border-left: 2px dashed $encrypted !important;
|
||||
}
|
||||
.body_part.signed {
|
||||
border-left: 2px dashed $signed !important;
|
||||
}
|
||||
|
||||
/* SMALLER THREAD_VIEW */
|
||||
body:not(.nohide) .email.hide .header_container .preview {
|
||||
display: none !important;
|
||||
}
|
||||
body:not(.nohide) .email.hide .header_container {
|
||||
padding: 2px !important;
|
||||
}
|
||||
body:not(.nohide) .email.hide .header_container .attachment.icon {
|
||||
float: left;
|
||||
height: 12px;
|
||||
}
|
||||
body:not(.nohide) .email.hide .header_container .subject, body:not(.nohide) .email.hide .header_container .tags {
|
||||
float: left;
|
||||
}
|
||||
|
||||
/* TV: MARK FLAGGED HIDDEN MAILS */
|
||||
body:not(.nohide) .email.hide.nm-flagged {
|
||||
background-color: #ffe2de !important;
|
||||
}
|
||||
body:not(.nohide) .email.hide.nm-flagged .header_container .subject {
|
||||
font-weight: 700;
|
||||
}
|
||||
/* TV: MARK UNREAD HIDDEN MAILS */
|
||||
body:not(.nohide) .email.hide.nm-unread {
|
||||
background-color: #dedfff !important;
|
||||
}
|
||||
body:not(.nohide) .email.hide.nm-unread .header_container .subject {
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
@import '/home/max/bin/astroid/ui/thread-view.scss';
|
||||
|
||||
1
astroid/ui/ui-master
Symbolic link
1
astroid/ui/ui-master
Symbolic link
@@ -0,0 +1 @@
|
||||
/home/max/bin/astroid/ui/
|
||||
Reference in New Issue
Block a user