Browse Source

add neomutt

main
lelgenio 1 month ago
parent
commit
16ca3dd323
5 changed files with 278 additions and 1 deletions
  1. +7
    -0
      config.yaml
  2. +1
    -0
      dotfiles/neomutt/mailcap
  3. +25
    -0
      dotfiles/neomutt/mbsyncrc
  4. +245
    -0
      dotfiles/neomutt/neomuttrc
  5. +0
    -1
      dotfiles/waybar/config

+ 7
- 0
config.yaml View File

@@ -29,6 +29,7 @@ profiles:
- alacritty
- mpd
- dav
- mutt
variables:
key:
left: h
@@ -82,6 +83,9 @@ dotfiles:
waybar:
src: waybar
dst: ~/.config/waybar
actions:
- reload_sway
- notify
kitty:
src: kitty.conf
dst: ~/.config/kitty/kitty.conf
@@ -124,6 +128,9 @@ dotfiles:
dav:
src: dav/
dst: ~/.config
mutt:
src: neomutt/
dst: ~/.config/neomutt/
actions:
notify: notify-send "Updating dotfiles"
makoreload: makoctl reload


+ 1
- 0
dotfiles/neomutt/mailcap View File

@@ -0,0 +1 @@
text/html; lynx -assume_charset=%{charset} -display_charset=utf-8 -collapse_br_tags -dump %s; nametemplate=%s.html; copiousoutput

+ 25
- 0
dotfiles/neomutt/mbsyncrc View File

@@ -0,0 +1,25 @@
IMAPStore disroot-remote
Host disroot.org
Port 993
User lelgenio@disroot.org
PassCmd "pass Disroot | head -n1"
SSLType IMAPS
CertificateFile /etc/ssl/certs/ca-certificates.crt

MaildirStore disroot-local
Subfolders Verbatim
Path ~/.local/share/mail/
Inbox ~/.local/share/mail/INBOX
Flatten .

Channel disroot-remote
Expunge Both
Master :disroot-remote:
Slave :disroot-local:
Patterns * !"[Gmail]/All Mail"
Create Both
SyncState *
# MaxMessages 0
# End profile

# vim: ft=sh

+ 245
- 0
dotfiles/neomutt/neomuttrc View File

@@ -0,0 +1,245 @@
#
# LEL
# _ _
# _ __ ___ ___ _ __ ___ _ _| |_| |_
# | '_ \ / _ \/ _ \| '_ ` _ \| | | | __| __|
# | | | | __/ (_) | | | | | | |_| | |_| |_
# |_| |_|\___|\___/|_| |_| |_|\__,_|\__|\__|


set my_user='lelgenio'
set my_host='disroot.org'
set my_pass=`pass show Disroot | head -n1`

# Main settings{{{

set realname = "Leonardo da Rosa Eugenio"
set from = "lelgenio@disroot.org"
#alias me Leonardo da Rosa Eugenio <lelgenio@disroot.org>

# Set MailDir
set mbox_type = Maildir
set folder = ~/.local/share/mail
set header_cache = ~/.cache/mutt/

# set Mailboxes
set spoolfile = "+INBOX"
set postponed = "+Drafts"
set trash = "+Trash"
mailboxes \
"=INBOX" \
"=INBOX.Faculdade"\
"=INBOX.Trabalhos" \
"=INBOX.Contas"\
"=INBOX.Git" \
"=INBOX.Duolingo" \
"=INBOX.LBRY"\
"=Sent" \
"=Drafts" \
"=Trash" \
"=Junk"

set record = "+Sent"
set use_from = yes
set smtp_url=smtps://$my_user:$my_pass@$my_host
set ssl_force_tls = yes
#
set date_format="%y/%m/%d %I:%M%p"
set index_format="%2C %zs %?X?A& ? %D %-15.15F %s (%-4.4c)"
set sort = 'reverse-date'
#set smtp_authenticators = 'gssapi:login'
#set query_command = "abook --mutt-query '%s'"
#set rfc2047_parameters = yes
#set sleep_time = 0 # Pause 0 seconds for informational messages
#set markers = no # Disables the `+` displayed at line wraps
#set mark_old = no # Unread mail stay unread until read
#set mime_forward = yes # attachments are forwarded with mail
#set wait_key = no # mutt won't ask "press key to continue"
#set fast_reply # skip to compose when replying
#set fcc_attach # save attachments with the body
#set forward_format = "Fwd: %s" # format of subject when forwarding
#set forward_quote # include message in forwards
#set reverse_name # reply as whomever it was to
#set include # include message in replies
#set mail_check=60 # to avoid lags using IMAP with some email providers (yahoo for example)

set mailcap_path = ~/.config/neomutt/mailcap
auto_view text/html # automatically show html (mailcap uses w3m)
auto_view application/pgp-encrypted
alternative_order text/plain text/enriched text/html

set query_command= "khard email --parsable %s"

bind index,pager i noop
bind index,pager g noop
bind index \Cf noop

# }}}
# General rebindings{{{

# index
#
bind index {{@@ key.left @@}} noop
bind index {{@@ key.down @@}} next-entry
bind index {{@@ key.up @@}} previous-entry
bind index {{@@ key.right @@}} display-message

bind index G last-entry
bind index gg first-entry

bind index D delete-message
bind index U undelete-message

bind index L limit
bind index <space> tag-entry


bind attach <return> view-mailcap
bind attach l view-mailcap
bind editor <space> noop
bind pager,attach h exit
bind pager t next-line
bind pager n previous-line
bind pager s view-attachments
bind browser h goto-parent
macro browser h '<change-dir><kill-line>..<enter>' "Go to parent folder"
bind index,pager H view-raw-message
bind browser l select-entry
bind pager,browser gg top-page
bind pager,browser G bottom-page
bind index,pager,browser d half-down
bind index,pager,browser u half-up
bind index,pager S sync-mailbox
bind index,pager R group-reply
bind index \031 previous-undeleted # Mouse wheel
bind index \005 next-undeleted # Mouse wheel
bind pager \031 previous-line # Mouse wheel
bind pager \005 next-line # Mouse wheel
bind editor <Tab> complete-query

macro index,pager a "<enter-command>set my_pipe_decode=\$pipe_decode pipe_decode<return><pipe-message>abook --add-email<return><enter-command>set pipe_decode=\$my_pipe_decode; unset my_pipe_decode<return>" "add the sender address to abook"
macro index \Cr "T~U<enter><tag-prefix><clear-flag>N<untag-pattern>.<enter>" "mark all messages as read"
macro index O "<shell-escape>mbsync -a<enter>" "run mbsync to sync all mail"
#macro index \Cf "<enter-command>unset wait_key<enter><shell-escape>read -p 'Enter a search term to find with notmuch: ' x; echo \$x >~/.cache/mutt_terms<enter><limit>~i \"\`notmuch search --output=messages \$(cat ~/.cache/mutt_terms) | head -n 600 | perl -le '@a=<>;s/\^id:// for@a;$,=\"|\";print@a' | perl -le '@a=<>; chomp@a; s/\\+/\\\\+/ for@a;print@a' \`\"<enter>" "show only messages matching a notmuch pattern"
#macro index A "<limit>all\n" "show all messages (undo limit)"

# }}}
# Sidebar mappings{{{

set sidebar_visible = yes
set sidebar_width = 20
set sidebar_short_path = yes
set sidebar_next_new_wrap = yes
# set mail_check_stats
set sidebar_format = '%B%?F? [%F]?%* %?N?%N/? %?S?%S?'
bind index,pager \Ct sidebar-next
bind index,pager \Cn sidebar-prev
bind index,pager \Cs sidebar-open
# bind index,pager \Cp sidebar-prev-new
# bind index,pager \Cn sidebar-next-new
bind index,pager B sidebar-toggle-visible

# }}}
# colors{{{
# {{{

# # Default index colors:
color index yellow default '.*'
color index_author red default '.*'
color index_number blue default
color index_subject cyan default '.*'
#
# # New mail is boldened:
color index brightyellow black "~N"
color index_author brightred black "~N"
color index_subject brightcyan black "~N"
#
# # Tagged mail is highlighted:
# color index brightyellow blue "~T"
# color index_author brightred blue "~T"
# color index_subject brightcyan blue "~T"
#
# # Other colors and aesthetic settings:
mono bold bold
mono underline underline
mono indicator reverse
mono error bold
color normal default default
color indicator brightblack white
color sidebar_highlight red default
# color sidebar_divider black black
color sidebar_flagged red black
color sidebar_new green black
color normal brightyellow default
color error red default
color tilde black default
color message cyan default
color markers red white
color attachment white default
color search brightmagenta default
color status brightyellow black
color hdrdefault brightgreen default
color quoted green default
color quoted1 blue default
color quoted2 cyan default
color quoted3 yellow default
color quoted4 red default
color quoted5 brightred default
color signature brightgreen default
color bold black default
color underline black default
color normal default default
#
# # Regex highlighting:
color header blue default ".*"
color header brightmagenta default "^(From)"
color header brightcyan default "^(Subject)"
color header brightwhite default "^(CC|BCC)"
color body brightred default "[\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+" # Email addresses
color body brightblue default "(https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+" # URL
color body green default "\`[^\`]*\`" # Green text between ` and `
color body brightblue default "^# \.*" # Headings as bold blue
color body brightcyan default "^## \.*" # Subheadings as bold cyan
color body brightgreen default "^### \.*" # Subsubheadings as bold green
color body yellow default "^(\t| )*(-|\\*) \.*" # List items as yellow
color body brightcyan default "[;:][-o][)/(|]" # emoticons
color body brightcyan default "[;:][)(|]" # emoticons
color body brightcyan default "[ ][*][^*]*[*][ ]?" # more emoticon?
color body brightcyan default "[ ]?[*][^*]*[*][ ]" # more emoticon?
color body red default "(BAD signature)"
color body cyan default "(Good signature)"
color body brightblack default "^gpg: Good signature .*"
color body brightyellow default "^gpg: "
color body brightyellow red "^gpg: BAD signature from.*"
mono body bold "^gpg: Good signature"
mono body bold "^gpg: BAD signature from.*"
color body red default "([a-z][a-z0-9+-]*://(((([a-z0-9_.!~*'();:&=+$,-]|%[0-9a-f][0-9a-f])*@)?((([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?|[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)(:[0-9]+)?)|([a-z0-9_.!~*'()$,;:@&=+-]|%[0-9a-f][0-9a-f])+)(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*(/([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*(;([a-z0-9_.!~*'():@&=+$,-]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?(#([a-z0-9_.!~*'();/?:@&=+$,-]|%[0-9a-f][0-9a-f])*)?|(www|ftp)\\.(([a-z0-9]([a-z0-9-]*[a-z0-9])?)\\.)*([a-z]([a-z0-9-]*[a-z0-9])?)\\.?(:[0-9]+)?(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*(/([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*(;([-a-z0-9_.!~*'():@&=+$,]|%[0-9a-f][0-9a-f])*)*)*)?(\\?([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?(#([-a-z0-9_.!~*'();/?:@&=+$,]|%[0-9a-f][0-9a-f])*)?)[^].,:;!)? \t\r\n<>\"]"

# }}}
# color normal white default
# color hdrdefault blue default
# color quoted blue white
# color signature red white
# color attachment red white
# color prompt brightmagenta default
# color message brightred default
# color error brightwhite brightred
color indicator brightwhite red
# prompt
color status brightwhite default
# color tree black white
# color markers red white
# color search white black
# color tilde brightmagenta default
color index blue white "~F"
# new messages
color index brightgreen default "~N|~O"
color index_author brightred default "~N"
color index_subject brightcyan default "~N"
#sidebar
color sidebar_new green default
color sidebar_highlight default brightred
color sidebar_indicator default red

# }}}
# vim: filetype=neomuttrc:foldmethod=marker

+ 0
- 1
dotfiles/waybar/config View File

@@ -14,7 +14,6 @@
"modules-right": [
"mpd",
"custom/recording",
"custom/spigot",
"tray",
"custom/mail",
"custom/torrentD",


Loading…
Cancel
Save