mirror of https://github.com/deuill/dotfiles.git
Add configuration for Aerc and Calcurse
This commit is contained in:
parent
3e70f5cb5e
commit
e85e140f42
|
@ -0,0 +1,8 @@
|
|||
[[email protected]]
|
||||
source = imaps://example%[email protected]:993
|
||||
source-cred-cmd = secret-tool lookup hostname mail.example.com username [email protected]
|
||||
outgoing = smtp://example%[email protected]:587
|
||||
outgoing-cred-cmd = secret-tool lookup hostname mail.example.com username [email protected]
|
||||
default = INBOX
|
||||
from = Example Name <[email protected]>
|
||||
copy-to = Sent
|
|
@ -0,0 +1,114 @@
|
|||
#
|
||||
# Configuration for Aerc.
|
||||
#
|
||||
|
||||
[general]
|
||||
|
||||
# Enable the embedded terminal to output OSC 8 (hyperlinks) escape sequences. Not all terminal
|
||||
# emulators handle OSC 8 sequences properly and can produce confusing results, disable this setting
|
||||
# if that occurs.
|
||||
enable-osc8 = true
|
||||
|
||||
[ui]
|
||||
|
||||
# Enable mouse events in the ui, e.g. clicking and scrolling with the mousewheel
|
||||
mouse-enabled = true
|
||||
|
||||
# Display the directory list as a foldable tree.
|
||||
dirlist-tree = true
|
||||
|
||||
# Uncomment to use box-drawing characters for vertical and horizontal borders.
|
||||
border-char-vertical = "│"
|
||||
border-char-horizontal = "─"
|
||||
|
||||
# Sets the styleset to use for the aerc UI elements.
|
||||
styleset-name = base16-default
|
||||
|
||||
# Activates fuzzy search in commands and their arguments: the typed string is
|
||||
# searched in the command or option in any position, and need not be
|
||||
# consecutive characters in the command or option.
|
||||
fuzzy-complete = true
|
||||
|
||||
# Uncomment to use UTF-8 symbols to indicate PGP status of messages
|
||||
icon-unencrypted=
|
||||
icon-encrypted = ✔
|
||||
icon-signed = ✔
|
||||
icon-signed-encrypted = ✔
|
||||
icon-unknown = ✘
|
||||
icon-invalid = ⚠
|
||||
|
||||
# Enable a threaded view of messages. If this is not supported by the backend (IMAP server or
|
||||
# notmuch), threads will be built by the client.
|
||||
threading-enabled = true
|
||||
|
||||
[compose]
|
||||
|
||||
# Specifies the command to run the editor with. It will be shown in an embedded
|
||||
# terminal, though it may also launch a graphical window if the environment
|
||||
# supports it. Defaults to $EDITOR, or vi.
|
||||
editor = nano --syntax markdown --zero --breaklonglines --saveonexit
|
||||
|
||||
# When set, aerc will generate "format = flowed" bodies with a content type of
|
||||
# "text/plain; format = flowed" as described in RFC3676. This format is easier to
|
||||
# handle for some mailing software, and generally just looks like ordinary
|
||||
# text. To actually make use of this format's features, you'll need support in
|
||||
# your editor.
|
||||
#format-flowed = false
|
||||
|
||||
[multipart-converters]
|
||||
|
||||
# Converters allow to generate multipart/alternative messages by converting the
|
||||
# main text/plain part into any other MIME type. Only exact MIME types are
|
||||
# accepted. The commands are invoked with sh -c and are expected to output
|
||||
# valid UTF-8 text.
|
||||
#
|
||||
# Example (obviously, this requires that you write your main text/plain body
|
||||
# using the markdown syntax):
|
||||
text/html = pandoc -f markdown -t html --standalone
|
||||
|
||||
[filters]
|
||||
|
||||
# Filters allow you to pipe an email body through a shell command to render
|
||||
# certain emails differently, e.g. highlighting them with ANSI escape codes.
|
||||
#
|
||||
# The commands are invoked with sh -c. The following folders are appended to
|
||||
# the system $PATH to allow referencing filters from their name only:
|
||||
#
|
||||
# ${XDG_CONFIG_HOME:-~/.config}/aerc/filters
|
||||
# ${XDG_DATA_HOME:-~/.local/share}/aerc/filters
|
||||
# $PREFIX/share/aerc/filters
|
||||
# /usr/share/aerc/filters
|
||||
#
|
||||
# The following variables are defined in the filter command environment:
|
||||
#
|
||||
# AERC_MIME_TYPE the part MIME type/subtype
|
||||
# AERC_FORMAT the part content type format = parameter
|
||||
# AERC_FILENAME the attachment filename (if any)
|
||||
# AERC_SUBJECT the message Subject header value
|
||||
# AERC_FROM the message From header value
|
||||
#
|
||||
# The first filter which matches the email's mimetype will be used, so order
|
||||
# them from most to least specific.
|
||||
#
|
||||
# You can also match on non-mimetypes, by prefixing with the header to match
|
||||
# against (non-case-sensitive) and a comma, e.g. subject,text will match a
|
||||
# subject which contains "text". Use header,~regex to match against a regex.
|
||||
text/plain = colorize
|
||||
text/calendar = calendar
|
||||
message/delivery-status = colorize
|
||||
message/rfc822 = colorize
|
||||
text/html = pandoc -f html -t plain | colorize
|
||||
image/*=catimg -w $(tput cols) -
|
||||
|
||||
# This special filter is only used to post-process email headers when
|
||||
# [viewer].show-headers = true
|
||||
# By default, headers are piped directly into the pager.
|
||||
.headers = colorize
|
||||
|
||||
[hooks]
|
||||
|
||||
# Executed when Aerc starts up.
|
||||
aerc-startup = aerc :terminal calcurse && aerc :prev-tab
|
||||
|
||||
# Executed when a new email arrives in the selected folder
|
||||
mail-received = notify-send "New mail from $AERC_FROM_NAME" "$AERC_SUBJECT"
|
|
@ -0,0 +1,135 @@
|
|||
# Binds are of the form <key sequence> = <command to run>
|
||||
# To use '=' in a key sequence, substitute it with "Eq": "<Ctrl+Eq>"
|
||||
# If you wish to bind #, you can wrap the key sequence in quotes: "#" = quit
|
||||
<C-p> = :prev-tab<Enter>
|
||||
<C-n> = :next-tab<Enter>
|
||||
<C-t> = :term<Enter>
|
||||
? = :help keys<Enter>
|
||||
|
||||
[messages]
|
||||
q = :quit<Enter>
|
||||
|
||||
j = :next<Enter>
|
||||
<Down> = :next<Enter>
|
||||
<C-d> = :next 50%<Enter>
|
||||
<C-f> = :next 100%<Enter>
|
||||
<PgDn> = :next 100%<Enter>
|
||||
|
||||
k = :prev<Enter>
|
||||
<Up> = :prev<Enter>
|
||||
<C-u> = :prev 50%<Enter>
|
||||
<C-b> = :prev 100%<Enter>
|
||||
<PgUp> = :prev 100%<Enter>
|
||||
g = :select 0<Enter>
|
||||
G = :select -1<Enter>
|
||||
|
||||
<C-j> = :next-folder<Enter>
|
||||
<C-k> = :prev-folder<Enter>
|
||||
<C-h> = :collapse-folder<Enter>
|
||||
<C-l> = :expand-folder<Enter>
|
||||
|
||||
J = :next-folder<Enter>
|
||||
K = :prev-folder<Enter>
|
||||
H = :collapse-folder<Enter>
|
||||
L = :expand-folder<Enter>
|
||||
|
||||
v = :mark -t<Enter>
|
||||
V = :mark -v<Enter>
|
||||
|
||||
T = :toggle-threads<Enter>
|
||||
|
||||
<Enter> = :view<Enter>
|
||||
d = :prompt 'Really delete this message?' 'delete-message'<Enter>
|
||||
D = :delete<Enter>
|
||||
A = :archive flat<Enter>
|
||||
|
||||
C = :compose<Enter>
|
||||
|
||||
rr = :reply -a<Enter>
|
||||
rq = :reply -aq<Enter>
|
||||
Rr = :reply<Enter>
|
||||
Rq = :reply -q<Enter>
|
||||
|
||||
c = :cf<space>
|
||||
$ = :term<space>
|
||||
! = :term<space>
|
||||
| = :pipe<space>
|
||||
|
||||
/ = :search<space>
|
||||
\ = :filter<space>
|
||||
n = :next-result<Enter>
|
||||
N = :prev-result<Enter>
|
||||
<Esc> = :clear<Enter>
|
||||
|
||||
[messages:folder=Drafts]
|
||||
<Enter> = :recall<Enter>
|
||||
|
||||
[view]
|
||||
/ = :toggle-key-passthrough<Enter>/
|
||||
q = :close<Enter>
|
||||
O = :open<Enter>
|
||||
S = :save<space>
|
||||
| = :pipe<space>
|
||||
D = :delete<Enter>
|
||||
A = :archive flat<Enter>
|
||||
|
||||
<C-l> = :open-link <space>
|
||||
|
||||
f = :forward<Enter>
|
||||
rr = :reply -a<Enter>
|
||||
rq = :reply -aq<Enter>
|
||||
Rr = :reply<Enter>
|
||||
Rq = :reply -q<Enter>
|
||||
|
||||
H = :toggle-headers<Enter>
|
||||
<C-k> = :prev-part<Enter>
|
||||
<C-j> = :next-part<Enter>
|
||||
J = :next<Enter>
|
||||
K = :prev<Enter>
|
||||
|
||||
[view::passthrough]
|
||||
$noinherit = true
|
||||
$ex = <C-x>
|
||||
<Esc> = :toggle-key-passthrough<Enter>
|
||||
|
||||
[compose]
|
||||
# Keybindings used when the embedded terminal is not selected in the compose
|
||||
# view
|
||||
$noinherit = true
|
||||
$ex = <C-x>
|
||||
<C-d> = :abort<Enter>
|
||||
<C-k> = :prev-field<Enter>
|
||||
<C-j> = :next-field<Enter>
|
||||
<A-p> = :switch-account -p<Enter>
|
||||
<A-n> = :switch-account -n<Enter>
|
||||
<tab> = :next-field<Enter>
|
||||
<backtab> = :prev-field<Enter>
|
||||
<C-p> = :prev-tab<Enter>
|
||||
<C-n> = :next-tab<Enter>
|
||||
|
||||
[compose::editor]
|
||||
# Keybindings used when the embedded terminal is selected in the compose view
|
||||
$noinherit = true
|
||||
$ex = <C-x>
|
||||
<C-k> = :prev-field<Enter>
|
||||
<C-j> = :next-field<Enter>
|
||||
<C-p> = :prev-tab<Enter>
|
||||
<C-n> = :next-tab<Enter>
|
||||
|
||||
[compose::review]
|
||||
# Keybindings used when reviewing a message to be sent
|
||||
y = :send<Enter>
|
||||
n = :abort<Enter>
|
||||
v = :preview<Enter>
|
||||
p = :postpone<Enter>
|
||||
q = :choose -o d discard abort -o p postpone postpone<Enter>
|
||||
e = :edit<Enter>
|
||||
a = :attach<space>
|
||||
d = :detach<space>
|
||||
|
||||
[terminal]
|
||||
$noinherit = true
|
||||
$ex = <C-x>
|
||||
|
||||
<C-p> = :prev-tab<Enter>
|
||||
<C-n> = :next-tab<Enter>
|
|
@ -0,0 +1,50 @@
|
|||
#
|
||||
# Base16 style-set for Aerc.
|
||||
#
|
||||
|
||||
*.default=true
|
||||
*.selected.reverse=true
|
||||
*.bg="#2d2d2d"
|
||||
|
||||
title.bold=true
|
||||
header.italic=true
|
||||
|
||||
*error.bold=true
|
||||
error.fg="#ab4642"
|
||||
warning.fg="#dc9656"
|
||||
success.fg="#a1b56c"
|
||||
|
||||
statusline_default.reverse=false
|
||||
statusline*.bg="#282828"
|
||||
statusline_default.fg="#b8b8b8"
|
||||
statusline_error.fg="#ab4642"
|
||||
statusline_error.reverse=true
|
||||
|
||||
msglist_unread.bold=true
|
||||
msglist_unread.fg="#e8e8e8"
|
||||
msglist_deleted.fg="#585858"
|
||||
msglist_marked.bg="#383838"
|
||||
msglist_flagged.fg="#f7ca88"
|
||||
|
||||
dirlist*.fg="#b8b8b8"
|
||||
dirlist_unread.fg="#d8d8d8"
|
||||
dirlist*.bg="#2d2d2d"
|
||||
dirlist*.selected.bg="#383838"
|
||||
dirlist*.selected.fg="#d8d8d8"
|
||||
dirlist*.selected.bold=true
|
||||
dirlist_recent.italic=true
|
||||
|
||||
completion*.selected.reverse=true
|
||||
completion*.selected.bold=true
|
||||
completion*.bg="#282828"
|
||||
completion*.fg="#d8d8d8"
|
||||
|
||||
tab.bg="#2d2d2d"
|
||||
tab.fg="#b8b8b8"
|
||||
|
||||
border.bg="#282828"
|
||||
border.fg="#2d2d2d"
|
||||
spinner.fg="#585858"
|
||||
|
||||
selector_focused.reverse=true
|
||||
selector_chooser.bold=true
|
|
@ -0,0 +1,47 @@
|
|||
[General]
|
||||
# Path to the calcurse binary that is used for importing/exporting items.
|
||||
Binary = calcurse
|
||||
|
||||
# Host name of the server that hosts CalDAV. Do NOT prepend a protocol prefix,
|
||||
# such as http:// or https://. Append :<port> for a port other than 80.
|
||||
Hostname = example.com
|
||||
|
||||
# Path to the CalDAV calendar on the host specified above. This is the base
|
||||
# path following your host name in the URL.
|
||||
Path = /[email protected]
|
||||
|
||||
# Type of authentication to use. Must be "basic" or "oauth2"
|
||||
AuthMethod = basic
|
||||
|
||||
# Enable this if you want to skip SSL certificate checks.
|
||||
InsecureSSL = No
|
||||
|
||||
# Disable this if you want to use HTTP instead of HTTPS.
|
||||
# Using plain HTTP is highly discouraged.
|
||||
HTTPS = Yes
|
||||
|
||||
# This option allows you to filter the types of tasks synced. To this end, the
|
||||
# value of this option should be a comma-separated list of item types, where
|
||||
# each item type is either "event", "apt", "recur-event", "recur-apt", "todo",
|
||||
# "recur" or "cal". Note that the comma-separated list must not contain any
|
||||
# spaces. Refer to the documentation of the --filter-type command line argument
|
||||
# of calcurse for more details. Set this option to "cal" if the configured
|
||||
# CalDAV server doesn't support tasks, such as is the case with Google
|
||||
# Calendar.
|
||||
SyncFilter = cal,todo
|
||||
|
||||
# Disable this option to actually enable synchronization. If it is enabled,
|
||||
# nothing is actually written to the server or to the local data files. If you
|
||||
# combine DryRun = Yes with Verbose = Yes, you get a log of what would have
|
||||
# happened with this option disabled.
|
||||
DryRun = No
|
||||
|
||||
# Enable this if you want detailed logs written to stdout.
|
||||
Verbose = Yes
|
||||
|
||||
# Credentials for HTTP Basic Authentication (if required).
|
||||
# Set `Password` to your password in plaintext (unsafe),
|
||||
# or `PasswordCommand` to a shell command that retrieves it (recommended).
|
||||
[Auth]
|
||||
Username = [email protected]
|
||||
PasswordCommand = secret-tool lookup hostname mail.example.com username [email protected]
|
|
@ -0,0 +1,33 @@
|
|||
appearance.calendarview=monthly
|
||||
appearance.compactpanels=no
|
||||
appearance.defaultpanel=calendar
|
||||
appearance.layout=3
|
||||
appearance.headerline=yes
|
||||
appearance.eventseparator=yes
|
||||
appearance.dayseparator=yes
|
||||
appearance.emptyline=yes
|
||||
appearance.emptyday=
|
||||
appearance.notifybar=yes
|
||||
appearance.sidebarwidth=39
|
||||
appearance.theme=cyan on default
|
||||
appearance.todoview=hide-completed
|
||||
appearance.headingpos=right-justified
|
||||
daemon.enable=no
|
||||
daemon.log=no
|
||||
format.inputdate=2
|
||||
format.notifydate=%a %F
|
||||
format.notifytime=%T
|
||||
format.appointmenttime=%H:%M
|
||||
format.outputdate=%D
|
||||
format.dayheading=%B %e, %Y
|
||||
general.autogc=no
|
||||
general.autosave=yes
|
||||
general.confirmdelete=yes
|
||||
general.confirmquit=no
|
||||
general.firstdayofweek=monday
|
||||
general.multipledays=yes
|
||||
general.periodicsave=0
|
||||
general.systemevents=yes
|
||||
notification.notifyall=flagged-only
|
||||
notification.command=calcurse --next | xargs -0 notify-send "Appointment"
|
||||
notification.warning=300
|
|
@ -0,0 +1,14 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -eu -o pipefail
|
||||
|
||||
DATA_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/calcurse"
|
||||
|
||||
# Do not do anything when synchronizing with a CalDAV server.
|
||||
test -f "$DATA_DIR/caldav/lock" && exit
|
||||
|
||||
# Run the CalDAV synchronization script in the background.
|
||||
if test -d "$DATA_DIR/caldav" && command -v calcurse-caldav >/dev/null; then
|
||||
cd "$DATA_DIR"
|
||||
exec systemd-cat --identifier=calcurse-caldav calcurse-caldav
|
||||
fi
|
|
@ -0,0 +1,56 @@
|
|||
#
|
||||
# Calcurse keys configuration file
|
||||
#
|
||||
# In this file the keybindings used by Calcurse are defined.
|
||||
# It is generated automatically by Calcurse and is maintained
|
||||
# via the key configuration menu of the interactive user
|
||||
# interface. It should not be edited directly.
|
||||
|
||||
generic-cancel ESC
|
||||
generic-select SPC
|
||||
generic-credits @
|
||||
generic-help ?
|
||||
generic-quit q Q
|
||||
generic-save s S ^S
|
||||
generic-reload R
|
||||
generic-copy c
|
||||
generic-paste p ^V
|
||||
generic-change-view TAB
|
||||
generic-prev-view KEY_BTAB
|
||||
generic-import i I
|
||||
generic-export x X
|
||||
generic-goto g G
|
||||
generic-other-cmd o O
|
||||
generic-config-menu C
|
||||
generic-redraw ^R
|
||||
generic-add-appt ^A
|
||||
generic-add-todo ^T
|
||||
generic-prev-day T ^H
|
||||
generic-next-day t ^L
|
||||
generic-prev-week W ^K
|
||||
generic-next-week w
|
||||
generic-prev-month M
|
||||
generic-next-month m
|
||||
generic-prev-year Y
|
||||
generic-next-year y
|
||||
generic-scroll-down ^N
|
||||
generic-scroll-up ^P
|
||||
generic-goto-today ^G
|
||||
generic-command :
|
||||
move-right l L RGT
|
||||
move-left h H LFT
|
||||
move-down j J DWN
|
||||
move-up k K UP
|
||||
start-of-week 0
|
||||
end-of-week $
|
||||
add-item a A
|
||||
del-item d D
|
||||
edit-item e E
|
||||
view-item v V RET
|
||||
pipe-item |
|
||||
flag-item !
|
||||
repeat r
|
||||
edit-note n N
|
||||
view-note >
|
||||
raise-priority +
|
||||
lower-priority -
|
Loading…
Reference in New Issue