Compare commits
30 Commits
b681202482
...
arch-deskt
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
66391c3e4d | ||
|
|
7cd118b1a1 | ||
|
|
6b6ec87c90 | ||
|
|
3ffd41b042 | ||
|
|
450950ffb5 | ||
|
|
d9c2fc0dd5 | ||
|
|
f3817cf484 | ||
|
|
0c4779db6c | ||
|
|
e917fee38e | ||
|
|
facda5d25c | ||
|
|
ddd4493d6d | ||
|
|
20ef60b19e | ||
|
|
6dc71d4ae9 | ||
|
|
6d26754462 | ||
|
|
b6fe1d9f38 | ||
|
|
6650ab1d5c | ||
|
|
cb21d62153 | ||
|
|
e104c9b8ce | ||
|
|
e99901146d | ||
|
|
dc51e2b8d8 | ||
|
|
9fd41c75ef | ||
|
|
adcecd9d62 | ||
|
|
ade4c9f47c | ||
|
|
82c55b55c7 | ||
|
|
8ba5349c5d | ||
|
|
c16dc3b450 | ||
|
|
924c01282d | ||
|
|
7a7b0e3f1c | ||
|
|
cfb88473fc | ||
|
|
32760db44f |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -12,6 +12,7 @@ config/.config/kak/plugins/*
|
||||
config/.config/mutt/chalupmc@rose-hulman
|
||||
config/.config/mutt/mikecchalupiak@outlook
|
||||
config/.config/mutt/spamreciver1@outlook
|
||||
config/.config/nvim/lazy-lock.json
|
||||
config/.config/qt5ct/colors/*
|
||||
config/.config/qutebrowser/autoconfig.yml
|
||||
config/.config/qutebrowser/rosepine/*
|
||||
|
||||
@@ -18,11 +18,5 @@ test -r '/home/mikec/.opam/opam-init/init.sh' && . '/home/mikec/.opam/opam-init/
|
||||
if [ -z "$DISPLAY" ] && [ "$(tty)" = "/dev/tty1" ]; then
|
||||
exec river
|
||||
fi
|
||||
HOMEBREW_PREFIX=/opt/homebrew
|
||||
export PATH="/opt/homebrew/opt/llvm/bin:$PATH"
|
||||
export CPATH="$HOMEBREW_PREFIX/include:$CPATH"
|
||||
export LIBRARY_PATH="$HOMEBREW_PREFIX/lib:$LIBRARY_PATH"
|
||||
. "/Users/mikec/.local/share/bob/env/env.sh"
|
||||
|
||||
test -e "${HOME}/.iterm2_shell_integration.bash" && source "${HOME}/.iterm2_shell_integration.bash"
|
||||
|
||||
. "/home/mikec/.local/share/bob/env/env.sh"
|
||||
|
||||
35
config/.config/aerc/accounts.conf
Normal file
35
config/.config/aerc/accounts.conf
Normal file
@@ -0,0 +1,35 @@
|
||||
[mchalupiak]
|
||||
source = imaps://mikec@mail.mchalupiak.com
|
||||
outgoing = smtp://mikec%40mchalupiak.com@www.mchalupiak.com
|
||||
default = INBOX
|
||||
from = Michael Chalupiak <mikec@mchalupiak.com>
|
||||
cache-headers = true
|
||||
source-cred-cmd = pass mikec@mchalupiak.com
|
||||
outgoing-cred-cmd = pass mikec@mchalupiak.com
|
||||
|
||||
[mikecchalupiak]
|
||||
source = imaps+xoauth2://mikecchalupiak%40outlook.com@outlook.office365.com?
|
||||
outgoing = smtp+xoauth2://mikecchalupiak%40outlook.com@outlook.office365.com:587
|
||||
from = "Michael Chalupiak" <mikecchalupiak@outlook.com>
|
||||
default = INBOX
|
||||
cache-headers = true
|
||||
source-cred-cmd = oama access mikecchalupiak@outlook.com
|
||||
outgoing-cred-cmd = oama access mikecchalupiak@outlook.com
|
||||
|
||||
[spamreciver1]
|
||||
source = imaps+xoauth2://spamreciver1%40outlook.com@outlook.office365.com?
|
||||
outgoing = smtp+xoauth2://spamreciver1%40outlook.com@outlook.office365.com:587
|
||||
from = "Mike Jeff" <spamreciver1@outlook.com>
|
||||
default = INBOX
|
||||
cache-headers = true
|
||||
source-cred-cmd = oama access spamreciver1@outlook.com
|
||||
outgoing-cred-cmd = oama access spamreciver1@outlook.com
|
||||
|
||||
[chalupmc]
|
||||
source = imaps+xoauth2://chalupmc%40rose-hulman.edu@outlook.office365.com?
|
||||
outgoing = smtp+xoauth2://chalupmc%40rose-hulman.edu@outlook.office365.com:587
|
||||
from = "Michael Chalupiak" <chalupmc@rose-hulman.edu>
|
||||
default = INBOX
|
||||
cache-headers = true
|
||||
source-cred-cmd = oama access chalupmc@rose-hulman.edu
|
||||
outgoing-cred-cmd = oama access chalupmc@rose-hulman.edu
|
||||
862
config/.config/aerc/aerc.conf
Normal file
862
config/.config/aerc/aerc.conf
Normal file
@@ -0,0 +1,862 @@
|
||||
#
|
||||
# aerc main configuration
|
||||
|
||||
[general]
|
||||
#
|
||||
# Used as a default path for save operations if no other path is specified.
|
||||
# ~ is expanded to the current user home dir.
|
||||
#
|
||||
#default-save-path=
|
||||
|
||||
# If set to "gpg", aerc will use system gpg binary and keystore for all crypto
|
||||
# operations. If set to "internal", the internal openpgp keyring will be used.
|
||||
# If set to "auto", the system gpg will be preferred unless the internal
|
||||
# keyring already exists, in which case the latter will be used.
|
||||
#
|
||||
# Default: auto
|
||||
#pgp-provider=auto
|
||||
|
||||
# By default, the file permissions of accounts.conf must be restrictive and
|
||||
# only allow reading by the file owner (0600). Set this option to true to
|
||||
# ignore this permission check. Use this with care as it may expose your
|
||||
# credentials.
|
||||
#
|
||||
# Default: false
|
||||
#unsafe-accounts-conf=false
|
||||
|
||||
# Output log messages to specified file. A path starting with ~/ is expanded to
|
||||
# the user home dir. When redirecting aerc's output to a file using > shell
|
||||
# redirection, this setting is ignored and log messages are printed to stdout.
|
||||
#
|
||||
#log-file=
|
||||
|
||||
# Only log messages above the specified level to log-file. Supported levels
|
||||
# are: trace, debug, info, warn and error. When redirecting aerc's output to
|
||||
# a file using > shell redirection, this setting is ignored and the log level
|
||||
# is forced to trace.
|
||||
#
|
||||
# Default: info
|
||||
#log-level=info
|
||||
|
||||
# Disable IPC entirely. Don't run commands (including mailto:... and mbox:...)
|
||||
# in an existing aerc instance, and don't start an IPC server to allow
|
||||
# subsequent aerc instances to run commands in the current one.
|
||||
#
|
||||
# Default: false
|
||||
#disable-ipc=false
|
||||
|
||||
# Don't run mailto:... commands over IPC; start a new aerc instance with the
|
||||
# composer instead.
|
||||
#
|
||||
# Default: false
|
||||
#disable-ipc-mailto=false
|
||||
#
|
||||
# Don't run mbox:... commands over IPC; start a new aerc instance with the mbox
|
||||
# file instead.
|
||||
#
|
||||
# Default: false
|
||||
#disable-ipc-mbox=false
|
||||
|
||||
# Set the $TERM environment variable used for the embedded terminal.
|
||||
#
|
||||
# Default: xterm-256color
|
||||
#term=xterm-256color
|
||||
|
||||
# Display OSC8 strings in the embedded terminal
|
||||
#
|
||||
# Default: false
|
||||
#enable-osc8=false
|
||||
|
||||
# Default shell command to use for :menu. This will be executed with sh -c and
|
||||
# will run in an popover dialog.
|
||||
#
|
||||
# Any occurrence of %f will be replaced by a temporary file path where the
|
||||
# command is expected to write output lines to be consumed by :menu. Otherwise,
|
||||
# the lines will be read from the command's standard output.
|
||||
#
|
||||
# Examples:
|
||||
# default-menu-cmd=fzf
|
||||
# default-menu-cmd=fzf --multi
|
||||
# default-menu-cmd=dmenu -l 20
|
||||
# default-menu-cmd=ranger --choosefiles=%f
|
||||
#
|
||||
#default-menu-cmd=
|
||||
|
||||
[ui]
|
||||
#
|
||||
# Describes the format for each row in a mailbox view. This is a comma
|
||||
# separated list of column names with an optional align and width suffix. After
|
||||
# the column name, one of the '<' (left), ':' (center) or '>' (right) alignment
|
||||
# characters can be added (by default, left) followed by an optional width
|
||||
# specifier. The width is either an integer representing a fixed number of
|
||||
# characters, or a percentage between 1% and 99% representing a fraction of the
|
||||
# terminal width. It can also be one of the '*' (auto) or '=' (fit) special
|
||||
# width specifiers. Auto width columns will be equally attributed the remaining
|
||||
# terminal width. Fit width columns take the width of their contents. If no
|
||||
# width specifier is set, '*' is used by default.
|
||||
#
|
||||
# Default: flags:4,name<20%,subject,date>=
|
||||
#index-columns=flags:4,name<20%,subject,date>=
|
||||
|
||||
#
|
||||
# Each name in index-columns must have a corresponding column-$name setting.
|
||||
# All column-$name settings accept golang text/template syntax. See
|
||||
# aerc-templates(7) for available template attributes and functions.
|
||||
#
|
||||
# Here are some examples to show the To field instead of the From field for
|
||||
# an email (modifying column-name):
|
||||
#
|
||||
# 1. a generic one
|
||||
# column-name={{ .Peer | names | join ", " }}
|
||||
# 2. based upon the selected folder
|
||||
# column-name={{if match .Folder "^(Gesendet|Sent)$"}}{{index (.To | names) 0}}{{else}}{{index (.From | names) 0}}{{end}}
|
||||
#
|
||||
# Default settings
|
||||
#column-flags={{.Flags | join ""}}
|
||||
#column-name={{index (.From | names) 0}}
|
||||
#column-subject={{.ThreadPrefix}}{{.Subject}}
|
||||
#column-date={{.DateAutoFormat .Date.Local}}
|
||||
|
||||
#
|
||||
# String separator inserted between columns. When the column width specifier is
|
||||
# an exact number of characters, the separator is added to it (i.e. the exact
|
||||
# width will be fully available for the column contents).
|
||||
#
|
||||
# Default: " "
|
||||
#column-separator=" "
|
||||
|
||||
#
|
||||
# See time.Time#Format at https://godoc.org/time#Time.Format
|
||||
#
|
||||
# Default: 2006 Jan 02
|
||||
#timestamp-format=2006 Jan 02
|
||||
|
||||
#
|
||||
# Index-only time format for messages that were received/sent today.
|
||||
# If this is empty, timestamp-format is used instead.
|
||||
#
|
||||
# Default: 15:04
|
||||
#this-day-time-format=15:04
|
||||
|
||||
#
|
||||
# Index-only time format for messages that were received/sent within the last
|
||||
# 7 days. If this is empty, timestamp-format is used instead.
|
||||
#
|
||||
# Default: Jan 02
|
||||
#this-week-time-format=Jan 02
|
||||
|
||||
#
|
||||
# Index-only time format for messages that were received/sent this year.
|
||||
# If this is empty, timestamp-format is used instead.
|
||||
#
|
||||
#Default: Jan 02
|
||||
#this-year-time-format=Jan 02
|
||||
|
||||
#
|
||||
# Overrides timestamp-format for the message view.
|
||||
#
|
||||
# Default: 2006 Jan 02, 15:04 GMT-0700
|
||||
#message-view-timestamp-format=2006 Jan 02, 15:04 GMT-0700
|
||||
|
||||
#
|
||||
# If set, overrides timestamp-format in the message view for messages
|
||||
# that were received/sent today.
|
||||
#
|
||||
#message-view-this-day-time-format=
|
||||
|
||||
# If set, overrides timestamp-format in the message view for messages
|
||||
# that were received/sent within the last 7 days.
|
||||
#
|
||||
#message-view-this-week-time-format=
|
||||
|
||||
#
|
||||
# If set, overrides *timestamp-format* in the message view for messages
|
||||
# that were received/sent this year.
|
||||
#
|
||||
#message-view-this-year-time-format=
|
||||
|
||||
#
|
||||
# Width of the sidebar, including the border.
|
||||
#
|
||||
# Default: 22
|
||||
#sidebar-width=22
|
||||
|
||||
#
|
||||
# Default split layout for message list tabs. The syntax is:
|
||||
#
|
||||
# [<direction>] <size>
|
||||
#
|
||||
# <direction> is optional and defaults to horizontal. It can take one
|
||||
# of the following values: h, horiz, horizontal, v, vert, vertical.
|
||||
#
|
||||
# <size> is a positive integer representing the size (in terminal cells)
|
||||
# of the message list window.
|
||||
#
|
||||
#message-list-split=
|
||||
|
||||
#
|
||||
# Message to display when viewing an empty folder.
|
||||
#
|
||||
# Default: (no messages)
|
||||
#empty-message=(no messages)
|
||||
|
||||
# Message to display when no folders exists or are all filtered
|
||||
#
|
||||
# Default: (no folders)
|
||||
#empty-dirlist=(no folders)
|
||||
#
|
||||
# Value to set {{.Subject}} template to when subject is empty.
|
||||
#
|
||||
# Default: (no subject)
|
||||
#empty-subject=(no subject)
|
||||
|
||||
# Enable mouse events in the ui, e.g. clicking and scrolling with the mousewheel
|
||||
#
|
||||
# Default: false
|
||||
#mouse-enabled=false
|
||||
|
||||
#
|
||||
# Ring the bell when new messages are received
|
||||
#
|
||||
# Default: true
|
||||
#new-message-bell=true
|
||||
|
||||
#
|
||||
# Template to use for Account tab titles
|
||||
#
|
||||
# Default: {{.Account}}
|
||||
#tab-title-account={{.Account}}
|
||||
|
||||
#
|
||||
# Template to use for Composer tab titles
|
||||
#
|
||||
# Default: {{if .To}}to:{{index (.To | shortmboxes) 0}} {{end}}{{.SubjectBase}}
|
||||
#tab-title-composer={{if .To}}to:{{index (.To | shortmboxes) 0}} {{end}}{{.SubjectBase}}
|
||||
|
||||
#
|
||||
# Template to use for Message Viewer tab titles
|
||||
#
|
||||
# Default: {{.Subject}}
|
||||
#tab-title-viewer={{.Subject}}
|
||||
|
||||
|
||||
# Marker to show before a pinned tab's name.
|
||||
#
|
||||
# Default: `
|
||||
#pinned-tab-marker='`'
|
||||
|
||||
# Template for the left side of the directory list.
|
||||
# See aerc-templates(7) for all available fields and functions.
|
||||
#
|
||||
# Default: {{.Folder}}
|
||||
#dirlist-left={{.Folder}}
|
||||
|
||||
# Template for the right side of the directory list.
|
||||
# See aerc-templates(7) for all available fields and functions.
|
||||
#
|
||||
# Default: {{if .Unread}}{{humanReadable .Unread}}{{end}}
|
||||
#dirlist-right={{if .Unread}}{{humanReadable .Unread}}{{end}}
|
||||
|
||||
# Delay after which the messages are actually listed when entering a directory.
|
||||
# This avoids loading messages when skipping over folders and makes the UI more
|
||||
# responsive. If you do not want that, set it to 0s.
|
||||
#
|
||||
# Default: 200ms
|
||||
#dirlist-delay=200ms
|
||||
|
||||
# Display the directory list as a foldable tree that allows to collapse and
|
||||
# expand the folders.
|
||||
#
|
||||
# Default: false
|
||||
#dirlist-tree=false
|
||||
|
||||
# If dirlist-tree is enabled, set level at which folders are collapsed by
|
||||
# default. Set to 0 to disable.
|
||||
#
|
||||
# Default: 0
|
||||
#dirlist-collapse=0
|
||||
|
||||
# List of space-separated criteria to sort the messages by, see *sort*
|
||||
# command in *aerc*(1) for reference. Prefixing a criterion with "-r "
|
||||
# reverses that criterion.
|
||||
#
|
||||
# Example: "from -r date"
|
||||
#
|
||||
#sort=
|
||||
|
||||
# Moves to next message when the current message is deleted
|
||||
#
|
||||
# Default: true
|
||||
#next-message-on-delete=true
|
||||
|
||||
# Automatically set the "seen" flag when a message is opened in the message
|
||||
# viewer.
|
||||
#
|
||||
# Default: true
|
||||
#auto-mark-read=true
|
||||
|
||||
# The directories where the stylesets are stored. It takes a colon-separated
|
||||
# list of directories. If this is unset or if a styleset cannot be found, the
|
||||
# following paths will be used as a fallback in that order:
|
||||
#
|
||||
# ${XDG_CONFIG_HOME:-~/.config}/aerc/stylesets
|
||||
# ${XDG_DATA_HOME:-~/.local/share}/aerc/stylesets
|
||||
# /usr/local/share/aerc/stylesets
|
||||
# /usr/share/aerc/stylesets
|
||||
#
|
||||
#stylesets-dirs=
|
||||
|
||||
# Uncomment to use box-drawing characters for vertical and horizontal borders.
|
||||
#
|
||||
# Default: "│" and "─"
|
||||
#border-char-vertical="│"
|
||||
#border-char-horizontal="─"
|
||||
|
||||
# Sets the styleset to use for the aerc ui elements.
|
||||
#
|
||||
# Default: default
|
||||
#styleset-name=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.
|
||||
#
|
||||
# Default: false
|
||||
fuzzy-complete=true
|
||||
|
||||
# How long to wait after the last input before auto-completion is triggered.
|
||||
#
|
||||
# Default: 250ms
|
||||
#completion-delay=250ms
|
||||
|
||||
# The minimum required characters to allow auto-completion to be triggered after
|
||||
# completion-delay.
|
||||
#
|
||||
# Setting this to "manual" disables automatic completion, leaving only the
|
||||
# manually triggered completion with the $complete key (see aerc-binds(5) for
|
||||
# more details).
|
||||
#
|
||||
# Default: 1
|
||||
#completion-min-chars=1
|
||||
|
||||
#
|
||||
# Global switch for completion popovers
|
||||
#
|
||||
# Default: true
|
||||
#completion-popovers=true
|
||||
|
||||
# Uncomment to use UTF-8 symbols to indicate PGP status of messages
|
||||
#
|
||||
# Default: ASCII
|
||||
#icon-unencrypted=
|
||||
#icon-encrypted=✔
|
||||
#icon-signed=✔
|
||||
#icon-signed-encrypted=✔
|
||||
#icon-unknown=✘
|
||||
#icon-invalid=⚠
|
||||
|
||||
# Reverses the order of the message list. By default, the message list is
|
||||
# ordered with the newest (highest UID) message on top. Reversing the order
|
||||
# will put the oldest (lowest UID) message on top. This can be useful in cases
|
||||
# where the backend does not support sorting.
|
||||
#
|
||||
# Default: false
|
||||
#reverse-msglist-order = false
|
||||
|
||||
# Reverse display of the message threads. Default order is the initial
|
||||
# message is on the top with all the replies being displayed below. The
|
||||
# reverse option will put the initial message at the bottom with the
|
||||
# replies on top.
|
||||
#
|
||||
# Default: false
|
||||
#reverse-thread-order=false
|
||||
|
||||
# Positions the cursor on the last message in the message list (at the
|
||||
# bottom of the view) when opening a new folder.
|
||||
#
|
||||
# Default: false
|
||||
#select-last-message=false
|
||||
|
||||
# Sort the thread siblings according to the sort criteria for the messages. If
|
||||
# sort-thread-siblings is false, the thread siblings will be sorted based on
|
||||
# the message UID in ascending order. This option is only applicable for
|
||||
# client-side threading with a backend that enables sorting. Note that there's
|
||||
# a performance impact when sorting is activated.
|
||||
#
|
||||
# Default: false
|
||||
#sort-thread-siblings=false
|
||||
|
||||
# Set the scroll offset in number of lines from the top and bottom of the
|
||||
# message list.
|
||||
#
|
||||
# Default: 0
|
||||
#msglist-scroll-offset = 0
|
||||
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
# Default: false
|
||||
#threading-enabled=false
|
||||
|
||||
# Force client-side thread building
|
||||
#
|
||||
# Default: false
|
||||
#force-client-threads=false
|
||||
|
||||
# If no References nor In-Reply-To headers can be matched to build client side
|
||||
# threads, fallback to similar subjects.
|
||||
#
|
||||
# Default: false
|
||||
#threading-by-subject=false
|
||||
|
||||
# Show thread context enables messages which do not match the current query (or
|
||||
# belong to the current mailbox) to be shown for context. These messages can be
|
||||
# styled separately using "msglist_thread_context" in a styleset. This feature
|
||||
# is not supported by all backends
|
||||
#
|
||||
# Default: false
|
||||
#show-thread-context=false
|
||||
|
||||
# Debounce client-side thread building
|
||||
#
|
||||
# Default: 50ms
|
||||
#client-threads-delay=50ms
|
||||
|
||||
#
|
||||
# Thread prefix customization:
|
||||
|
||||
#
|
||||
# Customize the thread prefix appearance by selecting the arrow head.
|
||||
#
|
||||
# Default: ">"
|
||||
#thread-prefix-tip = ">"
|
||||
|
||||
#
|
||||
# Customize the thread prefix appearance by selecting the arrow indentation.
|
||||
#
|
||||
# Default: " "
|
||||
#thread-prefix-indent = " "
|
||||
|
||||
#
|
||||
# Customize the thread prefix appearance by selecting the vertical extension of
|
||||
# the arrow.
|
||||
#
|
||||
# Default: "│"
|
||||
#thread-prefix-stem = "│"
|
||||
|
||||
#
|
||||
# Customize the thread prefix appearance by selecting the horizontal extension
|
||||
# of the arrow.
|
||||
#
|
||||
# Default: ""
|
||||
#thread-prefix-limb = ""
|
||||
|
||||
#
|
||||
# Customize the thread prefix appearance by selecting the folded thread
|
||||
# indicator.
|
||||
#
|
||||
# Default: "+"
|
||||
#thread-prefix-folded = "+"
|
||||
|
||||
#
|
||||
# Customize the thread prefix appearance by selecting the unfolded thread
|
||||
# indicator.
|
||||
#
|
||||
# Default: ""
|
||||
#thread-prefix-unfolded = ""
|
||||
|
||||
#
|
||||
# Customize the thread prefix appearance by selecting the first child connector.
|
||||
#
|
||||
# Default: ""
|
||||
#thread-prefix-first-child = ""
|
||||
|
||||
#
|
||||
# Customize the thread prefix appearance by selecting the connector used if
|
||||
# the message has siblings.
|
||||
#
|
||||
# Default: "├─"
|
||||
#thread-prefix-has-siblings = "├─"
|
||||
|
||||
#
|
||||
# Customize the thread prefix appearance by selecting the connector used if the
|
||||
# message has no parents and no children.
|
||||
#
|
||||
# Default: ""
|
||||
#thread-prefix-lone = ""
|
||||
|
||||
#
|
||||
# Customize the thread prefix appearance by selecting the connector used if the
|
||||
# message has no parents and has children.
|
||||
#
|
||||
# Default: ""
|
||||
#thread-prefix-orphan = ""
|
||||
|
||||
#
|
||||
# Customize the thread prefix appearance by selecting the connector for the last
|
||||
# sibling.
|
||||
#
|
||||
# Default: "└─"
|
||||
#thread-prefix-last-sibling = "└─"
|
||||
|
||||
#
|
||||
# Customize the reversed thread prefix appearance by selecting the connector for
|
||||
# the last sibling.
|
||||
#
|
||||
# Default: "┌─"
|
||||
#thread-prefix-last-sibling-reverse = "┌─"
|
||||
|
||||
#
|
||||
# Customize the thread prefix appearance by selecting the connector for dummy
|
||||
# thread.
|
||||
#
|
||||
# Default: "┬─"
|
||||
#thread-prefix-dummy = "┬─"
|
||||
|
||||
#
|
||||
# Customize the reversed thread prefix appearance by selecting the connector for
|
||||
# dummy thread.
|
||||
#
|
||||
# Default: "┴─"
|
||||
#thread-prefix-dummy-reverse = "┴─"
|
||||
|
||||
#
|
||||
# Customize the reversed thread prefix appearance by selecting the first child
|
||||
# connector.
|
||||
#
|
||||
# Default: ""
|
||||
#thread-prefix-first-child-reverse = ""
|
||||
|
||||
#
|
||||
# Customize the reversed thread prefix appearance by selecting the connector
|
||||
# used if the message has no parents and has children.
|
||||
#
|
||||
# Default: ""
|
||||
#thread-prefix-orphan-reverse = ""
|
||||
|
||||
[statusline]
|
||||
#
|
||||
# Describes the format for the status line. This is a comma separated list of
|
||||
# column names with an optional align and width suffix. See [ui].index-columns
|
||||
# for more details. To completely mute the status line except for push
|
||||
# notifications, explicitly set status-columns to an empty string.
|
||||
#
|
||||
# Default: left<*,center:=,right>*
|
||||
#status-columns=left<*,center:=,right>*
|
||||
|
||||
#
|
||||
# Each name in status-columns must have a corresponding column-$name setting.
|
||||
# All column-$name settings accept golang text/template syntax. See
|
||||
# aerc-templates(7) for available template attributes and functions.
|
||||
#
|
||||
# Default settings
|
||||
#column-left=[{{.Account}}] {{.StatusInfo}}
|
||||
#column-center={{.PendingKeys}}
|
||||
#column-right={{.TrayInfo}} | {{cwd}}
|
||||
|
||||
#
|
||||
# String separator inserted between columns.
|
||||
# See [ui].column-separator for more details.
|
||||
#
|
||||
#column-separator=" "
|
||||
|
||||
# Specifies the separator between grouped statusline elements.
|
||||
#
|
||||
# Default: " | "
|
||||
#separator=" | "
|
||||
|
||||
# Defines the mode for displaying the status elements.
|
||||
# Options: text, icon
|
||||
#
|
||||
# Default: text
|
||||
#display-mode=text
|
||||
|
||||
[viewer]
|
||||
#
|
||||
# Specifies the pager to use when displaying emails. Note that some filters
|
||||
# may add ANSI codes to add color to rendered emails, so you may want to use a
|
||||
# pager which supports ANSI codes.
|
||||
#
|
||||
# Default: less -Rc
|
||||
pager=less -Rc
|
||||
|
||||
#
|
||||
# If an email offers several versions (multipart), you can configure which
|
||||
# mimetype to prefer. For example, this can be used to prefer plaintext over
|
||||
# html emails.
|
||||
#
|
||||
# Default: text/plain,text/html
|
||||
alternatives=text/html,text/plain
|
||||
|
||||
#
|
||||
# Default setting to determine whether to show full headers or only parsed
|
||||
# ones in message viewer.
|
||||
#
|
||||
# Default: false
|
||||
#show-headers=false
|
||||
|
||||
#
|
||||
# Layout of headers when viewing a message. To display multiple headers in the
|
||||
# same row, separate them with a pipe, e.g. "From|To". Rows will be hidden if
|
||||
# none of their specified headers are present in the message.
|
||||
#
|
||||
# Default: From|To,Cc|Bcc,Date,Subject
|
||||
#header-layout=From|To,Cc|Bcc,Date,Subject
|
||||
|
||||
# Whether to always show the mimetype of an email, even when it is just a single part
|
||||
#
|
||||
# Default: false
|
||||
#always-show-mime=false
|
||||
|
||||
# Define the maximum height of the mimetype switcher before a scrollbar is used.
|
||||
# The height of the mimetype switcher is restricted to half of the display
|
||||
# height. If the provided value for the height is zero, the number of parts will
|
||||
# be used as the height of the type switcher.
|
||||
#
|
||||
# Default: 0
|
||||
#max-mime-height = 0
|
||||
|
||||
# Parses and extracts http links when viewing a message. Links can then be
|
||||
# accessed with the open-link command.
|
||||
#
|
||||
# Default: true
|
||||
#parse-http-links=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=
|
||||
|
||||
#
|
||||
# When set, aerc will create and read .eml files for composing that have
|
||||
# non-standard \n linebreaks. This is only relevant if the used editor does not
|
||||
# support CRLF linebreaks.
|
||||
#
|
||||
#lf-editor=false
|
||||
|
||||
#
|
||||
# Default header fields to display when composing a message. To display
|
||||
# multiple headers in the same row, separate them with a pipe, e.g. "To|From".
|
||||
#
|
||||
# Default: To|From,Subject
|
||||
#header-layout=To|From,Subject
|
||||
|
||||
#
|
||||
# Edit headers into the text editor instead than separate fields.
|
||||
#
|
||||
# When this is true, address-book-cmd is not supported and address completion
|
||||
# is left to the editor itself. Also, displaying multiple headers on the same
|
||||
# line is not possible.
|
||||
#
|
||||
# Default: false
|
||||
#edit-headers=false
|
||||
|
||||
#
|
||||
# Specifies the command to be used to tab-complete email addresses. Any
|
||||
# occurrence of "%s" in the address-book-cmd will be replaced with what the
|
||||
# user has typed so far.
|
||||
#
|
||||
# The command must output the completions to standard output, one completion
|
||||
# per line. Each line must be tab-delimited, with an email address occurring as
|
||||
# the first field. Only the email address field is required. The second field,
|
||||
# if present, will be treated as the contact name. Additional fields are
|
||||
# ignored.
|
||||
#
|
||||
# This parameter can also be set per account in accounts.conf.
|
||||
#address-book-cmd=
|
||||
|
||||
# Specifies the command to be used to select attachments. Any occurrence of
|
||||
# '%s' in the file-picker-cmd will be replaced with the argument <arg>
|
||||
# to :attach -m <arg>. Any occurence of '%f' will be replaced by the
|
||||
# location of a temporary file, from which aerc will read the selected files.
|
||||
#
|
||||
# If '%f' is not present, the command must output the selected files to
|
||||
# standard output, one file per line. If it is present, then aerc does not
|
||||
# capture the standard output and instead reads the files from the temporary
|
||||
# file which should have the same format.
|
||||
#file-picker-cmd=
|
||||
|
||||
#
|
||||
# Allow to address yourself when replying
|
||||
#
|
||||
# Default: true
|
||||
#reply-to-self=true
|
||||
|
||||
# Warn before sending an email with an empty subject.
|
||||
#
|
||||
# Default: false
|
||||
#empty-subject-warning=false
|
||||
|
||||
#
|
||||
# Warn before sending an email that matches the specified regexp but does not
|
||||
# have any attachments. Leave empty to disable this feature.
|
||||
#
|
||||
# Uses Go's regexp syntax, documented at https://golang.org/s/re2syntax. The
|
||||
# "(?im)" flags are set by default (case-insensitive and multi-line).
|
||||
#
|
||||
# Example:
|
||||
# no-attachment-warning=^[^>]*attach(ed|ment)
|
||||
#
|
||||
#no-attachment-warning=
|
||||
|
||||
#
|
||||
# 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 prepended to
|
||||
# the system $PATH to allow referencing filters from their name only:
|
||||
#
|
||||
# ${XDG_CONFIG_HOME:-~/.config}/aerc/filters
|
||||
# ~/.local/libexec/aerc/filters
|
||||
# ${XDG_DATA_HOME:-~/.local/share}/aerc/filters
|
||||
# $PREFIX/libexec/aerc/filters
|
||||
# $PREFIX/share/aerc/filters
|
||||
# /usr/libexec/aerc/filters
|
||||
# /usr/share/aerc/filters
|
||||
#
|
||||
# If you want to run a program in your default $PATH which has the same name
|
||||
# as a builtin filter (e.g. /usr/bin/colorize), use its absolute path.
|
||||
#
|
||||
# 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=cha -T text/html -d -o display.color-mode="true-color" -o buffer.mark-links=true
|
||||
# text/html=! html-unsafe -sixel
|
||||
#text/html=pandoc -f html -t plain | colorize
|
||||
#text/html=html | colorize
|
||||
#text/*=bat -fP --file-name="$AERC_FILENAME"
|
||||
#application/x-sh=bat -fP -l sh
|
||||
#image/*=catimg -w $(tput cols) -
|
||||
#subject,~Git(hub|lab)=lolcat -f
|
||||
#from,thatguywhodoesnothardwraphismessages=wrap -w 100 | colorize
|
||||
|
||||
# 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
|
||||
|
||||
[openers]
|
||||
#
|
||||
# Openers allow you to specify the command to use for the :open and :open-link
|
||||
# actions on a per-MIME-type basis. The :open-link URL scheme is used to
|
||||
# determine the MIME type as follows: x-scheme-handler/<scheme>.
|
||||
#
|
||||
# {} is expanded as the temporary filename or URL to be opened with proper
|
||||
# shell quoting. If it is not encountered in the command, the filename/URL will
|
||||
# be appended to the end of the command. The command will then be executed with
|
||||
# `sh -c`.
|
||||
#
|
||||
# Like [filters], openers support basic shell globbing. The first opener which
|
||||
# matches the part's MIME type (or URL scheme handler MIME type) will be used,
|
||||
# so order them from most to least specific.
|
||||
#
|
||||
# Examples:
|
||||
# x-scheme-handler/irc=hexchat
|
||||
# x-scheme-handler/http*=printf '%s' {} | wl-copy
|
||||
# text/html=surf -dfgms
|
||||
text/html=cha
|
||||
# text/plain=gvim {} +125
|
||||
# message/rfc822=thunderbird
|
||||
|
||||
[hooks]
|
||||
#
|
||||
# Hooks are triggered whenever the associated event occurs.
|
||||
|
||||
#
|
||||
# Executed when a new email arrives in the selected folder
|
||||
#mail-received=notify-send "[$AERC_ACCOUNT/$AERC_FOLDER] New mail from $AERC_FROM_NAME" "$AERC_SUBJECT"
|
||||
|
||||
#
|
||||
# Executed when mail is deleted from a folder
|
||||
#mail-deleted=mbsync "$AERC_ACCOUNT:$AERC_FOLDER" &
|
||||
|
||||
#
|
||||
# Executed when aerc adds mail to a folder
|
||||
#mail-added=mbsync "$AERC_ACCOUNT:$AERC_FOLDER" &
|
||||
|
||||
#
|
||||
# Executed when aerc starts
|
||||
#aerc-startup=aerc :terminal calcurse && aerc :next-tab
|
||||
|
||||
#
|
||||
# Executed when aerc shuts down.
|
||||
#aerc-shutdown=
|
||||
|
||||
#
|
||||
# Executed when notmuch tags are modified.
|
||||
#tag-modified=
|
||||
|
||||
#
|
||||
# Executed when flags are changed on a message.
|
||||
#flag-changed=mbsync "$AERC_ACCOUNT:$AERC_FOLDER" &
|
||||
|
||||
[templates]
|
||||
# Templates are used to populate email bodies automatically.
|
||||
#
|
||||
|
||||
# The directories where the templates are stored. It takes a colon-separated
|
||||
# list of directories. If this is unset or if a template cannot be found, the
|
||||
# following paths will be used as a fallback in that order:
|
||||
#
|
||||
# ${XDG_CONFIG_HOME:-~/.config}/aerc/templates
|
||||
# ${XDG_DATA_HOME:-~/.local/share}/aerc/templates
|
||||
# /usr/local/share/aerc/templates
|
||||
# /usr/share/aerc/templates
|
||||
#
|
||||
#template-dirs=
|
||||
|
||||
# The default template to be used for new messages.
|
||||
#
|
||||
# default: new_message
|
||||
#new-message=new_message
|
||||
|
||||
# The default template to be used for quoted replies.
|
||||
#
|
||||
# default: quoted_reply
|
||||
#quoted-reply=quoted_reply
|
||||
|
||||
# The default template to be used for forward as body.
|
||||
#
|
||||
# default: forward_as_body
|
||||
#forwards=forward_as_body
|
||||
184
config/.config/aerc/binds.conf
Normal file
184
config/.config/aerc/binds.conf
Normal file
@@ -0,0 +1,184 @@
|
||||
# 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-PgUp> = :prev-tab<Enter>
|
||||
<C-n> = :next-tab<Enter>
|
||||
<C-PgDn> = :next-tab<Enter>
|
||||
\[t = :prev-tab<Enter>
|
||||
\]t = :next-tab<Enter>
|
||||
<C-t> = :term<Enter>
|
||||
? = :help keys<Enter>
|
||||
<C-c> = :prompt 'Quit?' quit<Enter>
|
||||
<C-q> = :prompt 'Quit?' quit<Enter>
|
||||
<C-z> = :suspend<Enter>
|
||||
|
||||
[messages]
|
||||
q = :prompt 'Quit?' 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>
|
||||
|
||||
J = :next-folder<Enter>
|
||||
<C-Down> = :next-folder<Enter>
|
||||
K = :prev-folder<Enter>
|
||||
<C-Up> = :prev-folder<Enter>
|
||||
H = :collapse-folder<Enter>
|
||||
<C-Left> = :collapse-folder<Enter>
|
||||
L = :expand-folder<Enter>
|
||||
<C-Right> = :expand-folder<Enter>
|
||||
|
||||
v = :mark -t<Enter>
|
||||
<Space> = :mark -t<Enter>:next<Enter>
|
||||
V = :mark -v<Enter>
|
||||
|
||||
T = :toggle-threads<Enter>
|
||||
zc = :fold<Enter>
|
||||
zo = :unfold<Enter>
|
||||
za = :fold -t<Enter>
|
||||
zM = :fold -a<Enter>
|
||||
zR = :unfold -a<Enter>
|
||||
<tab> = :fold -t<Enter>
|
||||
|
||||
zz = :align center<Enter>
|
||||
zt = :align top<Enter>
|
||||
zb = :align bottom<Enter>
|
||||
|
||||
<Enter> = :view<Enter>
|
||||
d = :choose -o y 'Really delete this message' delete-message<Enter>
|
||||
D = :delete<Enter>
|
||||
a = :archive flat<Enter>
|
||||
A = :unmark -a<Enter>:mark -T<Enter>:archive flat<Enter>
|
||||
|
||||
C = :compose<Enter>
|
||||
m = :compose<Enter>
|
||||
|
||||
b = :bounce<space>
|
||||
|
||||
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>
|
||||
|
||||
s = :split<Enter>
|
||||
S = :vsplit<Enter>
|
||||
|
||||
pl = :patch list<Enter>
|
||||
pa = :patch apply <Tab>
|
||||
pd = :patch drop <Tab>
|
||||
pb = :patch rebase<Enter>
|
||||
pt = :patch term<Enter>
|
||||
ps = :patch switch <Tab>
|
||||
|
||||
[messages:folder=Drafts]
|
||||
<Enter> = :recall<Enter>
|
||||
|
||||
[view]
|
||||
/ = :toggle-key-passthrough<Enter>/
|
||||
q = :close<Enter>
|
||||
O = :open<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-Up> = :prev-part<Enter>
|
||||
<C-j> = :next-part<Enter>
|
||||
<C-Down> = :next-part<Enter>
|
||||
J = :next<Enter>
|
||||
<C-Right> = :next<Enter>
|
||||
K = :prev<Enter>
|
||||
<C-Left> = :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>
|
||||
$complete = <C-o>
|
||||
<C-k> = :prev-field<Enter>
|
||||
<C-Up> = :prev-field<Enter>
|
||||
<C-j> = :next-field<Enter>
|
||||
<C-Down> = :next-field<Enter>
|
||||
<A-p> = :switch-account -p<Enter>
|
||||
<C-Left> = :switch-account -p<Enter>
|
||||
<A-n> = :switch-account -n<Enter>
|
||||
<C-Right> = :switch-account -n<Enter>
|
||||
<tab> = :next-field<Enter>
|
||||
<backtab> = :prev-field<Enter>
|
||||
<C-p> = :prev-tab<Enter>
|
||||
<C-PgUp> = :prev-tab<Enter>
|
||||
<C-n> = :next-tab<Enter>
|
||||
<C-PgDn> = :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-Up> = :prev-field<Enter>
|
||||
<C-j> = :next-field<Enter>
|
||||
<C-Down> = :next-field<Enter>
|
||||
<C-p> = :prev-tab<Enter>
|
||||
<C-PgUp> = :prev-tab<Enter>
|
||||
<C-n> = :next-tab<Enter>
|
||||
<C-PgDn> = :next-tab<Enter>
|
||||
|
||||
[compose::review]
|
||||
# Keybindings used when reviewing a message to be sent
|
||||
# Inline comments are used as descriptions on the review screen
|
||||
y = :send<Enter> # Send
|
||||
n = :abort<Enter> # Abort (discard message, no confirmation)
|
||||
v = :preview<Enter> # Preview message
|
||||
p = :postpone<Enter> # Postpone
|
||||
q = :choose -o d discard abort -o p postpone postpone<Enter> # Abort or postpone
|
||||
e = :edit<Enter> # Edit
|
||||
a = :attach<space> # Add attachment
|
||||
d = :detach<space> # Remove attachment
|
||||
|
||||
[terminal]
|
||||
$noinherit = true
|
||||
$ex = <C-x>
|
||||
|
||||
<C-p> = :prev-tab<Enter>
|
||||
<C-n> = :next-tab<Enter>
|
||||
<C-PgUp> = :prev-tab<Enter>
|
||||
<C-PgDn> = :next-tab<Enter>
|
||||
3
config/.config/chawan/config.toml
Normal file
3
config/.config/chawan/config.toml
Normal file
@@ -0,0 +1,3 @@
|
||||
[buffer]
|
||||
images = true
|
||||
scripting = true
|
||||
@@ -125,3 +125,48 @@
|
||||
;; (add-to-list treesit-language-source-alist '(odin "https://github.com/tree-sitter-grammars/tree-sitter-odin"))
|
||||
|
||||
(setq lsp-inlay-hint-enable 't)
|
||||
|
||||
(after! mu4e
|
||||
(setq sendmail-program (executable-find "msmtp")
|
||||
send-mail-function #'smtpmail-send-it
|
||||
message-sendmail-f-is-evil t
|
||||
message-sendmail-extra-arguments '("--read-envelope-from")
|
||||
message-send-mail-function #'message-send-mail-with-sendmail))
|
||||
(set-email-account! "hosted";"mikec@mchalupiak.com"
|
||||
'((mu4e-sent-folder . "/mikec@mchalupiak.com/Sent")
|
||||
(mu4e-drafts-folder . "/mikec@mchalupiak.com/Drafts")
|
||||
(mu4e-trash-folder . "/mikec@mchalupiak.com/Junk")
|
||||
(mu4e-refile-folder . "/mikec@mchalupiak.com/INBOX"))
|
||||
;;(smtpmail-smtp-user . "foo@bar.com")
|
||||
;;(user-mail-address . "foo@bar.com") ;; only needed for mu < 1.4
|
||||
;;(mu4e-compose-signature . "---\nYours truly\nThe Baz"))
|
||||
t)
|
||||
(set-email-account! "spamreciver1@outlook.com"
|
||||
'((mu4e-sent-folder . "/spamreciver1@outlook.com/Sent")
|
||||
(mu4e-drafts-folder . "/spamreciver1@outlook.com/Drafts")
|
||||
(mu4e-trash-folder . "/spamreciver1@outlook.com/Junk")
|
||||
(mu4e-refile-folder . "/spamreciver1@outlook.com/INBOX"))
|
||||
;;(smtpmail-smtp-user . "foo@bar.com")
|
||||
;;(user-mail-address . "foo@bar.com") ;; only needed for mu < 1.4
|
||||
;;(mu4e-compose-signature . "---\nYours truly\nThe Baz"))
|
||||
t)
|
||||
(set-email-account! "mikecchalupiak@outlook.com"
|
||||
'((mu4e-sent-folder . "/mikecchalupiak@outlook.com/Sent")
|
||||
(mu4e-drafts-folder . "/mikecchalupiak@outlook.com/Drafts")
|
||||
(mu4e-trash-folder . "/mikecchalupiak@outlook.com/Junk")
|
||||
(mu4e-refile-folder . "/mikecchalupiak@outlook.com/INBOX"))
|
||||
;;(smtpmail-smtp-user . "foo@bar.com")
|
||||
;;(user-mail-address . "foo@bar.com") ;; only needed for mu < 1.4
|
||||
;;(mu4e-compose-signature . "---\nYours truly\nThe Baz"))
|
||||
t)
|
||||
|
||||
(set-email-account! "chalupmc@rose-hulman.edu"
|
||||
'((mu4e-sent-folder . "/chalupmc@rose-hulman.edu/Sent")
|
||||
(mu4e-drafts-folder . "/chalupmc@rose-hulman.edu/Drafts")
|
||||
(mu4e-trash-folder . "/chalupmc@rose-hulman.edu/Junk")
|
||||
(mu4e-refile-folder . "/chalupmc@rose-hulman.edu/INBOX"))
|
||||
;;(smtpmail-smtp-user . "foo@bar.com")
|
||||
;;(user-mail-address . "foo@bar.com") ;; only needed for mu < 1.4
|
||||
;;(mu4e-compose-signature . "---\nYours truly\nThe Baz"))
|
||||
t)
|
||||
;;(setq +notmuch-sync-backend 'mbsync)
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
indent-guides ; highlighted indent columns
|
||||
;;ligatures ; ligatures and symbols to make your code pretty again
|
||||
;;minimap ; show a map of the code on the side
|
||||
;; modeline ; snazzy, Atom-inspired modeline, plus API
|
||||
modeline ; snazzy, Atom-inspired modeline, plus API
|
||||
;;nav-flash ; blink cursor line after big motions
|
||||
;;neotree ; a project drawer, like NERDTree for vim
|
||||
ophints ; highlight the region an operation acts on
|
||||
@@ -182,7 +182,7 @@
|
||||
(zig +lsp +tree-sitter) ; C, but simpler
|
||||
|
||||
:email
|
||||
;;(mu4e +org +gmail)
|
||||
(mu4e +org +gmail +mbsync)
|
||||
;;notmuch
|
||||
;;(wanderlust +gmail)
|
||||
|
||||
|
||||
@@ -21,3 +21,18 @@ theme = light:Dawnfox,dark:Carbonfox
|
||||
# gtk-adwaita = true
|
||||
window-decoration = true
|
||||
shell-integration-features = true
|
||||
mouse-scroll-multiplier = 1
|
||||
|
||||
# tmux style binds
|
||||
keybind = ctrl+a>c=new_tab
|
||||
keybind = ctrl+a>x=close_surface
|
||||
keybind = ctrl+a>n=next_tab
|
||||
keybind = ctrl+a>p=previous_tab
|
||||
keybind = ctrl+a>comma=prompt_tab_title
|
||||
keybind = ctrl+a>shift+5=new_split:right
|
||||
keybind = ctrl+a>shift+quote=new_split:down
|
||||
keybind = ctrl+a>o=goto_split:next
|
||||
keybind = ctrl+a>l=goto_split:right
|
||||
keybind = ctrl+a>h=goto_split:left
|
||||
keybind = ctrl+a>j=goto_split:down
|
||||
keybind = ctrl+a>k=goto_split:up
|
||||
|
||||
@@ -85,26 +85,26 @@ pin = "46cf4ded12ee974a70bf8457263b67ad7ee0379d"
|
||||
[language.typst.queries]
|
||||
path = "queries/typst"
|
||||
|
||||
# swift
|
||||
[swift.grammar.source.git]
|
||||
url = "https://github.com/alex-pinkus/tree-sitter-swift"
|
||||
pin = "57c1c6d6ffa1c44b330182d41717e6fe37430704"
|
||||
|
||||
[swift.grammar]
|
||||
path = "src"
|
||||
compile = "cc"
|
||||
compile_args = ["-c", "-fpic", "../scanner.c", "-I", ".."]
|
||||
compile_flags = ["-O3"]
|
||||
link = "cc"
|
||||
link_args = ["-shared", "-fpic", "scanner.o", "-o", "swift.so"]
|
||||
link_flags = ["-O3"]
|
||||
|
||||
[language.swift.queries.source.git]
|
||||
url = "https://github.com/helix-editor/helix"
|
||||
pin = "6bedca80646ce7350fb73029adf802ce7d9e241d"
|
||||
|
||||
# # swift
|
||||
# [swift.grammar.source.git]
|
||||
# url = "https://github.com/alex-pinkus/tree-sitter-swift"
|
||||
# pin = "57c1c6d6ffa1c44b330182d41717e6fe37430704"
|
||||
|
||||
[language.swift.queries]
|
||||
path = "runtime/queries/swift"
|
||||
#
|
||||
# [swift.grammar]
|
||||
# path = "src"
|
||||
# compile = "cc"
|
||||
# compile_args = ["-c", "-fpic", "../scanner.c", "-I", ".."]
|
||||
# compile_flags = ["-O3"]
|
||||
# link = "cc"
|
||||
# link_args = ["-shared", "-fpic", "scanner.o", "-o", "swift.so"]
|
||||
# link_flags = ["-O3"]
|
||||
#
|
||||
# [language.swift.queries.source.git]
|
||||
# url = "https://github.com/helix-editor/helix"
|
||||
# pin = "6bedca80646ce7350fb73029adf802ce7d9e241d"
|
||||
#
|
||||
# # url = "https://github.com/alex-pinkus/tree-sitter-swift"
|
||||
# # pin = "57c1c6d6ffa1c44b330182d41717e6fe37430704"
|
||||
#
|
||||
# [language.swift.queries]
|
||||
# path = "runtime/queries/swift"
|
||||
|
||||
@@ -199,7 +199,7 @@ set-option global lsp_hover_anchor true
|
||||
lsp-auto-signature-help-enable
|
||||
lsp-inlay-hints-enable global
|
||||
|
||||
map global user k ':lsp-hover'
|
||||
map global user k ':lsp-hover<ret>'
|
||||
|
||||
hook global WinSetOption filetype=(c|cpp|zig|rust|python|ruby|lua|java|html|css) %{
|
||||
hook window -group semantic-tokens BufReload .* lsp-semantic-tokens
|
||||
@@ -249,7 +249,7 @@ set-option global lsp_config %{
|
||||
|
||||
define-command fzf-buffer -docstring 'Invoke fzf to select a buffer' %{
|
||||
evaluate-commands %sh{
|
||||
tmux split-window -l 30% "(printf \"%s\n\" $kak_quoted_buflist | fzf --bind 'focus:execute-silent(echo \"eval -client $kak_client %{ e {} }\" | kak -p $kak_session)' || echo \"$kak_buffile\") | xargs -I{} echo \"eval -client $kak_client %{ e '{}' }\" | /usr/bin/kak -p $kak_session"
|
||||
tmux split-window -l 20% "(printf \"%s\n\" $kak_quoted_buflist | fzf --bind 'focus:execute-silent(echo \"eval -client $kak_client %{ e {} }\" | kak -p $kak_session)' || echo \"$kak_buffile\") | xargs -I{} echo \"eval -client $kak_client %{ e '{}' }\" | /usr/bin/kak -p $kak_session"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -26,5 +26,5 @@ dataSourceCommonSettings\activeState=true
|
||||
dataSourceCommonSettings\activeState=true
|
||||
|
||||
[UserFeedback]
|
||||
ApplicationStartCount=137
|
||||
ApplicationTime=622
|
||||
ApplicationStartCount=141
|
||||
ApplicationTime=705
|
||||
|
||||
@@ -26,5 +26,5 @@ dataSourceCommonSettings\activeState=true
|
||||
dataSourceCommonSettings\activeState=true
|
||||
|
||||
[UserFeedback]
|
||||
ApplicationStartCount=3
|
||||
ApplicationTime=35142
|
||||
ApplicationStartCount=72
|
||||
ApplicationTime=68724
|
||||
|
||||
@@ -23,5 +23,5 @@ dataSourceCommonSettings\activeState=true
|
||||
dataSourceCommonSettings\activeState=true
|
||||
|
||||
[UserFeedback]
|
||||
ApplicationStartCount=1
|
||||
ApplicationTime=14
|
||||
ApplicationStartCount=18
|
||||
ApplicationTime=16794
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
[UserFeedback]
|
||||
ApplicationStartCount=1
|
||||
ApplicationStartCount=18
|
||||
|
||||
@@ -26,6 +26,6 @@ dataSourceCommonSettings\activeState=true
|
||||
dataSourceCommonSettings\activeState=true
|
||||
|
||||
[UserFeedback]
|
||||
ApplicationStartCount=210
|
||||
ApplicationTime=2008695
|
||||
ApplicationStartCount=260
|
||||
ApplicationTime=2430104
|
||||
LastEncouragement=@DateTime(\0\0\0\x10\0\0\0\0\0\0%\x87}\x4\n\x84\xab\0)
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -18,6 +18,8 @@ bind-key G end
|
||||
podlist-format "%2i %b %> %S [%dMB / %tMB] [%p %%] [%K]"
|
||||
download-filename-format "%t | %n [%F].%e"
|
||||
download-path "~/podcasts/%n/"
|
||||
browser "cha %u"
|
||||
html-renderer "cha -T text/html -d -o display.color-mode=\"true-color\" -o buffer.mark-links=true"
|
||||
|
||||
macro 1 set browser "curl %u --output /tmp/image && sxiv /tmp/image && rm /tmp/image"; one; set browser lynx
|
||||
macro 2 set browser "mpv --vid=no -- %u"; one; set browser lynx
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
https://phaazon.net/blog/feed
|
||||
https://port19.xyz/rss.xml
|
||||
https://danielde.dev/rss.xml
|
||||
https://sizeof.cat/index.xml
|
||||
https://pkolaczk.github.io/feed.xml
|
||||
|
||||
@@ -1,69 +1,74 @@
|
||||
{
|
||||
"auto-dark-mode.nvim": { "branch": "master", "commit": "e300259ec777a40b4b9e3c8e6ade203e78d15881" },
|
||||
"blink.cmp": { "branch": "main", "commit": "327fff91fe6af358e990be7be1ec8b78037d2138" },
|
||||
"catppuccin": { "branch": "main", "commit": "8c4125e3c746976ba025dc5d908fa22c6aa09486" },
|
||||
"blink.cmp": { "branch": "main", "commit": "451168851e8e2466bc97ee3e026c3dcb9141ce07" },
|
||||
"catppuccin": { "branch": "main", "commit": "a7788416689dbefea659d9e9415c87926b0ba5d8" },
|
||||
"cellular-automaton.nvim": { "branch": "main", "commit": "1606e9d5d04ff254023c3f3c62842d065708d6d3" },
|
||||
"compiler-explorer.nvim": { "branch": "master", "commit": "ee8e7a2808bdad67cd2acb61b5c9ffa7735c7ec9" },
|
||||
"command.nvim": { "branch": "main", "commit": "cf73df4f9afc123b1fc3a8674d3fae08d2ad67db" },
|
||||
"compiler-explorer.nvim": { "branch": "master", "commit": "523c6a7a3d8c034b421a71eb20b0da75b0b16f62" },
|
||||
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
|
||||
"dim.lua": { "branch": "main", "commit": "a3a0dce75f7212ab61130e77a8157530bd23db15" },
|
||||
"dracula.nvim": { "branch": "main", "commit": "041d923368d540a1e438989ce8f915628081a56a" },
|
||||
"dracula.nvim": { "branch": "main", "commit": "ae752c13e95fb7c5f58da4b5123cb804ea7568ee" },
|
||||
"dropbar.nvim": { "branch": "master", "commit": "ce202248134e3949aac375fd66c28e5207785b10" },
|
||||
"everblush": { "branch": "main", "commit": "678f808d81801b983b6fb8296fb17ba1b2785d7c" },
|
||||
"everforest": { "branch": "master", "commit": "0909c23a2b8cbc337cffe91fda36381747e88506" },
|
||||
"everforest": { "branch": "master", "commit": "b03a03148c8b34c24c96960b93da9c8883d11f54" },
|
||||
"fennel.vim": { "branch": "main", "commit": "c6a9c035ca108cbb24273d96cd6277fb8fbc60b4" },
|
||||
"firenvim": { "branch": "master", "commit": "a18ef908ac06b52ad9333b70e3e630b0a56ecb3d" },
|
||||
"github-colors": { "branch": "main", "commit": "7292749e49e6f870e63879a528bb05c8c8d1a59a" },
|
||||
"github-nvim-theme": { "branch": "main", "commit": "c106c9472154d6b2c74b74565616b877ae8ed31d" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "20ad4419564d6e22b189f6738116b38871082332" },
|
||||
"gruvbox-material": { "branch": "master", "commit": "834dbf21836862300ced7444db4262b796330ab7" },
|
||||
"gruvbox.nvim": { "branch": "main", "commit": "5e0a460d8e0f7f669c158dedd5f9ae2bcac31437" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "caa98e2e5e4c23a1652c23be839d2e1722cecc29" },
|
||||
"gruvbox-material": { "branch": "master", "commit": "790afe9dd085aa04eccd1da3626c5fa05c620e53" },
|
||||
"gruvbox.nvim": { "branch": "main", "commit": "334d5fd49fc8033f26408425366c66c6390c57bb" },
|
||||
"hex.nvim": { "branch": "master", "commit": "b46e63356a69e8d6f046c38a9708d55d17f15038" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "f0f5bbb9e5bfae5e6468f9359ffea3d151418176" },
|
||||
"leap.nvim": { "branch": "main", "commit": "44e3a60a7a62069e5c9445b7a8104612d4f060cb" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
|
||||
"leap.nvim": { "branch": "main", "commit": "b960d5038c5c505c52e56a54490f9bbb1f0e6ef6" },
|
||||
"love2d.nvim": { "branch": "main", "commit": "25715394680590f56aab90390d430cab0dc46808" },
|
||||
"lua-utils.nvim": { "branch": "main", "commit": "e565749421f4bbb5d2e85e37c3cef9d56553d8bd" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "3946f0122255bc377d14a59b27b609fb3ab25768" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "35ec9e1425c2f9a36f556893336af4f302c63214" },
|
||||
"mason.nvim": { "branch": "main", "commit": "ad7146aa61dcaeb54fa900144d768f040090bff0" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "47f91c416daef12db467145e16bed5bbfe00add8" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "25f609e7fca78af7cede4f9fa3af8a94b1c4950b" },
|
||||
"mason.nvim": { "branch": "main", "commit": "44d1e90e1f66e077268191e3ee9d2ac97cc18e65" },
|
||||
"melange-nvim": { "branch": "master", "commit": "ce42f6b629beeaa00591ba73a77d3eeac4cf28ce" },
|
||||
"mellow.nvim": { "branch": "main", "commit": "5cd188489bcc7eb512f0a30581ad972070f8e5cd" },
|
||||
"mini.nvim": { "branch": "main", "commit": "ee4a4a4abed25e3d108d985b0553c5271f2f71aa" },
|
||||
"mellow.nvim": { "branch": "main", "commit": "6273b7f0ddf6ac2b75021b3bc0bd8b3305cfeef1" },
|
||||
"mini.nvim": { "branch": "main", "commit": "3923662bf3d6ca49a9503f8d7196ea0450983e6a" },
|
||||
"monochrome.nvim": { "branch": "main", "commit": "2de78d9688ea4a177bcd9be554ab9192337d35ff" },
|
||||
"monokai.nvim": { "branch": "master", "commit": "b8bd44d5796503173627d7a1fc51f77ec3a08a63" },
|
||||
"moonlight.nvim": { "branch": "pure-lua", "commit": "e24e4218ec680b6396532808abf57ca0ada82e66" },
|
||||
"moonscript-vim": { "branch": "master", "commit": "715c96c7c3b02adc507f84bf5754985460afc426" },
|
||||
"multicursor.nvim": { "branch": "1.0", "commit": "704b99f10a72cc05d370cfeb294ff83412a8ab55" },
|
||||
"nabla.nvim": { "branch": "master", "commit": "9b69b709063ccf40ac36fabb4fff7d90b3736475" },
|
||||
"nelua.vim": { "branch": "main", "commit": "5bc2ce7cc1ae952940bb3419ad106c02820f4baf" },
|
||||
"neogit": { "branch": "master", "commit": "c6d00913f802acedfb93c01267e89185f25800ca" },
|
||||
"neorg": { "branch": "main", "commit": "e206c9642f4a115cd836e76c98ef785623d335bc" },
|
||||
"nelua.vim": { "branch": "main", "commit": "08ddb2e0dda7d2bd6cd9d4efadb6a07547e135c3" },
|
||||
"neogit": { "branch": "master", "commit": "4681c1fdac1b730592ae195576e87406f7255750" },
|
||||
"neorg": { "branch": "main", "commit": "408fc04013a95da8f217cb0958a06b6a77c01743" },
|
||||
"nightfox.nvim": { "branch": "main", "commit": "ba47d4b4c5ec308718641ba7402c143836f35aa9" },
|
||||
"nord.nvim": { "branch": "master", "commit": "80c1e5321505aeb22b7a9f23eb82f1e193c12470" },
|
||||
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
||||
"nvim-autopairs": { "branch": "master", "commit": "7a2c97cccd60abc559344042fefb1d5a85b3e33b" },
|
||||
"nvim-highlight-colors": { "branch": "main", "commit": "e0c4a58ec8c3ca7c92d3ee4eb3bc1dd0f7be317e" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "cbd1e91296189a765094810de1b71a04e2597579" },
|
||||
"nvim-autopairs": { "branch": "master", "commit": "59bce2eef357189c3305e25bc6dd2d138c1683f5" },
|
||||
"nvim-highlight-colors": { "branch": "main", "commit": "e2cb22089cc2358b2b995c09578224f142de6039" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "5492a24edd68f78d8a778edcb8905d0a28993abc" },
|
||||
"nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
|
||||
"nvim-surround": { "branch": "main", "commit": "fcfa7e02323d57bfacc3a141f8a74498e1522064" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||
"nvim-treesitter-textobjects": { "branch": "master", "commit": "a9742cbc1f95db9eaf3293bf8cd0622ca36542bb" },
|
||||
"nvim-ts-autotag": { "branch": "main", "commit": "c4ca798ab95b316a768d51eaaaee48f64a4a46bc" },
|
||||
"nvim-surround": { "branch": "main", "commit": "1098d7b3c34adcfa7feb3289ee434529abd4afd1" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "cf12346a3414fa1b06af75c79faebe7f76df080a" },
|
||||
"nvim-treesitter-textobjects": { "branch": "master", "commit": "5ca4aaa6efdcc59be46b95a3e876300cfead05ef" },
|
||||
"nvim-ts-autotag": { "branch": "main", "commit": "8e1c0a389f20bf7f5b0dd0e00306c1247bda2595" },
|
||||
"nvim-unception": { "branch": "main", "commit": "df0e505f0f1371c49c2bcf993985962edb5a279d" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "8dcb311b0c92d460fac00eac706abd43d94d68af" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "d7462543c9e366c0d196c7f67a945eaaf5d99414" },
|
||||
"oceanic-next": { "branch": "master", "commit": "09833f72d5ba23de2e8bcae18f479f326f5f677a" },
|
||||
"oil.nvim": { "branch": "master", "commit": "7e1cd7703ff2924d7038476dcbc04b950203b902" },
|
||||
"oil.nvim": { "branch": "master", "commit": "0fcc83805ad11cf714a949c98c605ed717e0b83e" },
|
||||
"one-nvim": { "branch": "main", "commit": "faf6fb3f98fccbe009c3466f657a8fff84a5f956" },
|
||||
"onedark.nvim": { "branch": "master", "commit": "6c10964f91321c6a0f09bcc41dd64e7a6602bc4f" },
|
||||
"onedark.nvim": { "branch": "master", "commit": "213c23ae45a04797572242568d5d51937181792d" },
|
||||
"pathlib.nvim": { "branch": "main", "commit": "57e5598af6fe253761c1b48e0b59b7cd6699e2c1" },
|
||||
"plantuml-syntax": { "branch": "master", "commit": "9d4900aa16674bf5bb8296a72b975317d573b547" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
|
||||
"range-highlight.nvim": { "branch": "master", "commit": "f54aec737f138e52c187a8bea77b41347fd86f12" },
|
||||
"rose-pine": { "branch": "main", "commit": "eb3ff49a4f2b4e8b06d27de529e44fa52a60ab8a" },
|
||||
"range-highlight.nvim": { "branch": "master", "commit": "097103da6550c2a34c029971c3d7da63d3fef320" },
|
||||
"rose-pine": { "branch": "main", "commit": "cf2a288696b03d0934da713d66c6d71557b5c997" },
|
||||
"sherbet.nvim": { "branch": "master", "commit": "5c4166eff70ec551ae0023edfb89141b25cc18c6" },
|
||||
"snacks.nvim": { "branch": "main", "commit": "59c5545e91878c1f6218b032a881832bc98a46f3" },
|
||||
"snacks.nvim": { "branch": "main", "commit": "ad9ede6a9cddf16cedbd31b8932d6dcdee9b716e" },
|
||||
"telescope-tabs": { "branch": "vim_ui_select", "commit": "f01bc722582fdcaa58ea37492b382ff109893d95" },
|
||||
"tokyonight.nvim": { "branch": "main", "commit": "2642dbb83333e0575d1c3436e1d837926871c5fb" },
|
||||
"tokyonight.nvim": { "branch": "main", "commit": "cdc07ac78467a233fd62c493de29a17e0cf2b2b6" },
|
||||
"v-vim": { "branch": "master", "commit": "1dc1388bafb89072f8349dbd96f9462ae22237cb" },
|
||||
"vim-colors-xcode": { "branch": "master", "commit": "6d449229bf29176448bd06377689d7a8db0d1bee" },
|
||||
"vim-colors-xcode": { "branch": "master", "commit": "2329a3ed092b4f72e9361a94567a5431e36e7d9c" },
|
||||
"vim-etlua": { "branch": "master", "commit": "bb2974d0134ce6da60c3be0d82d809976b859c1c" },
|
||||
"vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" },
|
||||
"vim-teal": { "branch": "master", "commit": "a416397cf7aad7b03ef53fd3d9847fd764bcbfee" },
|
||||
"vscode.nvim": { "branch": "main", "commit": "cb9df0873c10a21d05362455ae3bb355eadcef6b" }
|
||||
"vlime": { "branch": "master", "commit": "e276e9a6f37d2699a3caa63be19314f5a19a1481" },
|
||||
"vscode.nvim": { "branch": "main", "commit": "aa1102a7e15195c9cca22730b09224a7f7745ba8" }
|
||||
}
|
||||
|
||||
@@ -4,12 +4,44 @@ local setnx = function(key, command, desc)
|
||||
end
|
||||
|
||||
setnx('<leader>ff', Snacks.picker.files, 'Find files')
|
||||
setnx('<leader>fF', function() Snacks.picker.files({ dirs = { '.' }}) end, 'Find files in current dir')
|
||||
setnx('<leader>f/', Snacks.picker.grep_word, 'Search current word')
|
||||
setnx('<leader>fg', Snacks.picker.grep, 'Search in files')
|
||||
setnx('<leader>fr', Snacks.picker.recent, 'Find recent files')
|
||||
setnx('<leader>b', Snacks.picker.buffers, 'List buffers')
|
||||
setnx('<leader>h', Snacks.picker.help, 'Search help')
|
||||
setnx('<leader>X', require'hex'.toggle, 'Toggle hex editor')
|
||||
setnx('<leader>P', '<CMD>Markview splitToggle<CR>', 'Open markview preview')
|
||||
setnx('<leader>z', Snacks.zen.zen, 'Toggle snacks zen mode')
|
||||
|
||||
local setto = function(key, command, desc)
|
||||
set({ 'x', 'o' }, key, command, { desc = desc })
|
||||
end
|
||||
local setton = function(key, command, desc)
|
||||
set({ 'n', 'x', 'o' }, key, command, { desc = desc })
|
||||
end
|
||||
local select_to = function(query)
|
||||
return function ()
|
||||
require'nvim-treesitter-textobjects.select'.select_textobject(query, "textobjects")
|
||||
end
|
||||
end
|
||||
local move_next_start = function(query)
|
||||
return function ()
|
||||
require'nvim-treesitter-textobjects.move'.goto_next_start(query, "textobjects")
|
||||
end
|
||||
end
|
||||
local move_prev_start = function(query)
|
||||
return function ()
|
||||
require'nvim-treesitter-textobjects.move'.goto_previous_start(query, "textobjects")
|
||||
end
|
||||
end
|
||||
|
||||
setto('if', select_to("@function.inner"), 'Select inside function')
|
||||
setto('af', select_to("@function.outer"), 'Select around function')
|
||||
setto('ia', select_to("@parameter.inner"), 'Select inside parameter')
|
||||
setto('aa', select_to("@parameter.outer"), 'Select around parameter')
|
||||
setton(']p', move_next_start("@parameter.inner"), 'Goto next parameter')
|
||||
setton('[p', move_prev_start("@parameter.inner"), 'Goto previous parameter')
|
||||
|
||||
setnx('<leader>m', Snacks.picker.marks, 'Search marks')
|
||||
setnx('<leader>q', Snacks.picker.qflist, 'Search quickfix list')
|
||||
setnx('<leader>l', Snacks.picker.loclist, 'Search location list')
|
||||
@@ -18,7 +50,7 @@ setnx('<leader>r', Snacks.picker.registers, 'Search registers')
|
||||
setnx('<leader>s', Snacks.picker.spelling, 'List spelling suggestions')
|
||||
setnx('<leader>M', Snacks.picker.man, 'Search man pages')
|
||||
setnx('<leader>t', require'telescope-tabs'.list_tabs, 'List tabs')
|
||||
setnx('<leader>c', Snacks.picker.colorschemes, 'Select colorscheme')
|
||||
setnx('<leader>C', Snacks.picker.colorschemes, 'Select colorscheme')
|
||||
setnx('<leader>N', Snacks.picker.notifications, 'List notifications')
|
||||
|
||||
local neogit = require('neogit')
|
||||
@@ -33,6 +65,11 @@ setnx('<leader>om', '<CMD>Mason<CR>', 'Open Mason')
|
||||
setnx('<leader>oc', '<CMD>cd ' .. vim.fn.stdpath('config') .. '<CR><CMD>Oil .<CR>', 'Open neovim configuration')
|
||||
setnx('<leader>og', neogit.open, 'Open (neo)git')
|
||||
|
||||
setnx('<leader>cc', '<CMD>CommandExecute<CR>', 'Run shell command')
|
||||
setnx('<leader>ct', '<CMD>CommandReopenTerminal<CR>', 'Open shell command terminal')
|
||||
setnx('<leader>cl', '<CMD>CommandExecuteLast<CR>', 'Run last shell command')
|
||||
setnx('<leader>cs', '<CMD>CommandExecuteSelection<CR>', 'Run selection as shell command')
|
||||
|
||||
-- Exit terminal mode with ESC
|
||||
set('t', '<Esc>', '<C-\\><C-n>')
|
||||
|
||||
@@ -43,8 +80,8 @@ setnx('`', '\'', 'Goto mark without column')
|
||||
setnx('<leader>x', '<CMD>bd!<CR>', 'Close Current Buffer')
|
||||
|
||||
setnx('grr', Snacks.picker.lsp_references, 'Search lsp references')
|
||||
-- setnx('grI', tele.lsp_incoming_calls, 'Find incoming function calls')
|
||||
-- setnx('grO', tele.lsp_outgoing_calls, 'Find outgoing function calls')
|
||||
setnx('grI', Snacks.picker.lsp_incoming_calls, 'Find incoming function calls')
|
||||
setnx('grO', Snacks.picker.lsp_outgoing_calls, 'Find outgoing function calls')
|
||||
setnx('grd', Snacks.picker.diagnostics, 'Show LSP diagnostics')
|
||||
setnx('grD', (function()
|
||||
local diag = true
|
||||
|
||||
@@ -8,41 +8,22 @@ vim.api.nvim_create_autocmd('LspAttach', {
|
||||
end
|
||||
})
|
||||
|
||||
-- vim.lsp.config('rust-analyzer', {
|
||||
-- settings = {
|
||||
-- ["rust-analyzer"] = {
|
||||
-- inlayHints = {
|
||||
-- bindingModeHints = {
|
||||
-- enable = false,
|
||||
-- },
|
||||
-- chainingHints = {
|
||||
-- enable = true,
|
||||
-- },
|
||||
-- closingBraceHints = {
|
||||
-- enable = true,
|
||||
-- minLines = 25,
|
||||
-- },
|
||||
-- closureReturnTypeHints = {
|
||||
-- enable = "never",
|
||||
-- },
|
||||
-- lifetimeElisionHints = {
|
||||
-- enable = "never",
|
||||
-- useParameterNames = false,
|
||||
-- },
|
||||
-- maxLength = 25,
|
||||
-- parameterHints = {
|
||||
-- enable = true,
|
||||
-- },
|
||||
-- reborrowHints = {
|
||||
-- enable = "never",
|
||||
-- },
|
||||
-- renderColons = true,
|
||||
-- typeHints = {
|
||||
-- enable = true,
|
||||
-- hideClosureInitialization = false,
|
||||
-- hideNamedConstructor = false,
|
||||
-- },
|
||||
-- },
|
||||
-- }
|
||||
-- }
|
||||
-- })
|
||||
vim.lsp.config('lua_ls', {
|
||||
settings = {
|
||||
Lua = {
|
||||
workspace = {
|
||||
library = vim.api.nvim_get_runtime_file("", true),
|
||||
maxPreload = 100000,
|
||||
preloadFileSize = 100000,
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
vim.lsp.config('tinymist', {
|
||||
settings = {
|
||||
exportPdf = "onType",
|
||||
},
|
||||
})
|
||||
|
||||
vim.diagnostic.config({ update_in_insert = true, float = true, virtual_lines = true})
|
||||
|
||||
@@ -14,6 +14,7 @@ vim.opt.winborder = 'none'
|
||||
|
||||
vim.opt.smartindent = true
|
||||
|
||||
vim.opt.foldlevel = 9999
|
||||
-- vim.opt.spell = true
|
||||
vim.opt.spelllang = 'en_us'
|
||||
|
||||
@@ -82,6 +83,6 @@ vim.lsp.config('lua_ls', {
|
||||
vim.lsp.config('tinymist', {
|
||||
settings = {
|
||||
exportPdf = "onType",
|
||||
}
|
||||
},
|
||||
})
|
||||
vim.diagnostic.config({ update_in_insert = true, float = true, virtual_lines = true})
|
||||
|
||||
@@ -21,15 +21,6 @@ return {
|
||||
},
|
||||
},
|
||||
|
||||
-- {
|
||||
-- "MysticalDevil/inlay-hints.nvim",
|
||||
-- event = "LspAttach",
|
||||
-- dependencies = { "neovim/nvim-lspconfig" },
|
||||
-- config = function()
|
||||
-- require("inlay-hints").setup()
|
||||
-- end
|
||||
-- },
|
||||
--
|
||||
{
|
||||
'saghen/blink.cmp',
|
||||
-- optional: provides snippets for the snippet source
|
||||
|
||||
@@ -1,66 +1,39 @@
|
||||
return {
|
||||
{
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
-- branch = 'main',
|
||||
'neovim-treesitter/nvim-treesitter',
|
||||
dependencies = { 'neovim-treesitter/treesitter-parser-registry' },
|
||||
branch = 'main',
|
||||
version = false,
|
||||
lazy = false,
|
||||
build = ':TSUpdate',
|
||||
config = function()
|
||||
require'nvim-treesitter.configs'.setup {
|
||||
textobjects = {
|
||||
select = {
|
||||
enable = true,
|
||||
lookahead = true,
|
||||
keymaps = {
|
||||
["af"] = "@function.outer",
|
||||
["if"] = "@function.inner",
|
||||
}
|
||||
},
|
||||
move = {
|
||||
enable = true,
|
||||
set_jumps = false,
|
||||
goto_next_start = {
|
||||
[']a'] = '@parameter.inner',
|
||||
},
|
||||
goto_previous_start = {
|
||||
['[a'] = '@parameter.inner',
|
||||
}
|
||||
},
|
||||
},
|
||||
auto_install = true,
|
||||
highlight = {
|
||||
enable = true,
|
||||
},
|
||||
}
|
||||
local langs = require'nvim-treesitter'.get_installed('parsers')
|
||||
vim.api.nvim_create_autocmd('FileType', {
|
||||
pattern = langs,
|
||||
callback = function()
|
||||
vim.treesitter.start() -- highlighting
|
||||
vim.wo.foldexpr = 'v:lua.vim.treesitter.foldexpr()' -- folds
|
||||
vim.wo.foldmethod = 'expr'
|
||||
vim.bo.indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()" -- indentation
|
||||
end,
|
||||
})
|
||||
end
|
||||
},
|
||||
|
||||
{
|
||||
'nvim-treesitter/nvim-treesitter-textobjects',
|
||||
branch = 'main',
|
||||
opts = {
|
||||
select = {
|
||||
lookahead = true,
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
-- {
|
||||
-- 'folke/twilight.nvim',
|
||||
-- dependencies = {
|
||||
-- 'nvim-treesitter/nvim-treesitter',
|
||||
-- },
|
||||
-- cmd = {
|
||||
-- 'Twilight',
|
||||
-- 'TwilightEnable',
|
||||
-- 'TwilightDisable',
|
||||
-- },
|
||||
-- },
|
||||
|
||||
-- {
|
||||
-- 'RRethy/vim-illuminate',
|
||||
-- event = 'VeryLazy',
|
||||
-- lazy = false,
|
||||
-- },
|
||||
|
||||
{
|
||||
'0oAstro/dim.lua',
|
||||
dependencies = {
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
'neovim-treesitter/nvim-treesitter',
|
||||
'neovim/nvim-lspconfig'
|
||||
},
|
||||
event = 'LspAttach',
|
||||
|
||||
@@ -5,30 +5,12 @@ return {
|
||||
event = 'VeryLazy',
|
||||
},
|
||||
|
||||
-- {
|
||||
-- 'lukas-reineke/indent-blankline.nvim',
|
||||
-- event = 'VeryLazy',
|
||||
-- config = function()
|
||||
-- require'ibl'.setup{ scope = { enabled = false } }
|
||||
-- end
|
||||
-- },
|
||||
|
||||
{
|
||||
'nvim-tree/nvim-web-devicons',
|
||||
-- event = 'VeryLazy',
|
||||
lazy = true,
|
||||
},
|
||||
|
||||
-- {
|
||||
-- 'goolord/alpha-nvim',
|
||||
-- dependencies = {
|
||||
-- 'nvim-tree/nvim-web-devicons',
|
||||
-- },
|
||||
-- config = function()
|
||||
-- require('alpha').setup(require'alpha.themes.startify'.config)
|
||||
-- end
|
||||
-- },
|
||||
|
||||
{
|
||||
'lewis6991/gitsigns.nvim',
|
||||
event = 'VeryLazy',
|
||||
@@ -37,9 +19,9 @@ return {
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
'Bekaboo/dropbar.nvim',
|
||||
},
|
||||
-- {
|
||||
-- 'Bekaboo/dropbar.nvim',
|
||||
-- },
|
||||
|
||||
{
|
||||
'nvim-lualine/lualine.nvim',
|
||||
@@ -52,8 +34,8 @@ return {
|
||||
for i, server in pairs(vim.lsp.get_clients({ bufnr = 0 })) do
|
||||
table.insert(names, server.name)
|
||||
end
|
||||
return " [" .. table.concat(names, " ") .. "]"
|
||||
-- return "[" .. table.concat(names, " ") .. "]"
|
||||
-- return " [" .. table.concat(names, " ") .. "]"
|
||||
return "[" .. table.concat(names, " ") .. "]"
|
||||
end
|
||||
require('lualine').setup {
|
||||
options = {
|
||||
|
||||
@@ -1,21 +1,4 @@
|
||||
return {
|
||||
|
||||
{
|
||||
'nvim-lua/plenary.nvim',
|
||||
-- event = 'VeryLazy',
|
||||
lazy = true,
|
||||
},
|
||||
|
||||
{
|
||||
'RaafatTurki/hex.nvim',
|
||||
config = true,
|
||||
cmd = {
|
||||
'HexDump',
|
||||
'HexAssemble',
|
||||
'HexToggle',
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
"sindrets/diffview.nvim",
|
||||
event = 'VeryLazy',
|
||||
@@ -33,7 +16,6 @@ return {
|
||||
"NeogitOrg/neogit",
|
||||
lazy = true,
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim", -- required
|
||||
"sindrets/diffview.nvim", -- optional - Diff integration
|
||||
|
||||
-- Only one of these is needed.
|
||||
@@ -44,6 +26,21 @@ return {
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
"OXY2DEV/markview.nvim",
|
||||
lazy = false,
|
||||
|
||||
-- Completion for `blink.cmp`
|
||||
dependencies = { "saghen/blink.cmp" },
|
||||
},
|
||||
|
||||
{
|
||||
'vieitesss/command.nvim',
|
||||
lazy = false,
|
||||
version = '*',
|
||||
opts = {},
|
||||
},
|
||||
|
||||
{
|
||||
'brenoprata10/nvim-highlight-colors',
|
||||
event = 'VeryLazy',
|
||||
@@ -53,7 +50,7 @@ return {
|
||||
},
|
||||
|
||||
{
|
||||
'ggandor/leap.nvim',
|
||||
url = 'https://codeberg.org/andyg/leap.nvim',
|
||||
dependencies = {
|
||||
'tpope/vim-repeat',
|
||||
},
|
||||
@@ -79,7 +76,29 @@ return {
|
||||
-- or leave it empty to use the default settings
|
||||
-- refer to the configuration section below
|
||||
bigfile = { enabled = true },
|
||||
-- dashboard = { enabled = true },
|
||||
dashboard = {
|
||||
enabled = true,
|
||||
presets = {
|
||||
},
|
||||
formats = {
|
||||
key = function(item)
|
||||
return { { "[", hl = "special" }, { item.key, hl = "key" }, { "]", hl = "special" } }
|
||||
end,
|
||||
},
|
||||
sections = {
|
||||
-- { section = "terminal", cmd = "fortune -s | cowsay", hl = "header", padding = 1, indent = 8 },
|
||||
{ section = "header" },
|
||||
{ section = "startup" },
|
||||
{ title = "MRU", padding = 1 },
|
||||
{ section = "recent_files", limit = 8, padding = 1 },
|
||||
{ title = "MRU ", file = vim.fn.fnamemodify(".", ":~"), padding = 1 },
|
||||
{ section = "recent_files", cwd = true, limit = 8, padding = 1 },
|
||||
{ title = "Sessions", padding = 1 },
|
||||
{ section = "projects", padding = 1 },
|
||||
{ title = "Bookmarks", padding = 1 },
|
||||
{ section = "keys" },
|
||||
},
|
||||
},
|
||||
dim = { enabled = true },
|
||||
-- explorer = { enabled = true },
|
||||
-- git = { enabled = false },
|
||||
@@ -100,89 +119,57 @@ return {
|
||||
},
|
||||
notifier = { enabled = true },
|
||||
-- quickfile = { enabled = true },
|
||||
-- scope = { enabled = true },
|
||||
scope = { enabled = true },
|
||||
-- scroll = { enabled = true },
|
||||
terminal = { enabled = false },
|
||||
-- statuscolumn = { enabled = true },
|
||||
-- words = { enabled = true },
|
||||
words = { enabled = true },
|
||||
zen = {
|
||||
enabled = true,
|
||||
-- toggles = {
|
||||
-- git_signs = true,
|
||||
-- },
|
||||
win = {
|
||||
backdrop = {
|
||||
transparent = false,
|
||||
blend = 99,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
'echasnovski/mini.nvim',
|
||||
config = function()
|
||||
require('mini.starter').setup()
|
||||
-- require('mini.cursorword').setup()
|
||||
local miniclue = require'mini.clue'
|
||||
miniclue.setup{
|
||||
window = {
|
||||
delay = 0,
|
||||
config = {
|
||||
width = 'auto',
|
||||
},
|
||||
},
|
||||
triggers = {
|
||||
-- Leader triggers
|
||||
{ mode = 'n', keys = '<Leader>' },
|
||||
{ mode = 'x', keys = '<Leader>' },
|
||||
|
||||
-- Built-in completion
|
||||
{ mode = 'i', keys = '<C-x>' },
|
||||
|
||||
-- `g` key
|
||||
{ mode = 'n', keys = 'g' },
|
||||
{ mode = 'x', keys = 'g' },
|
||||
|
||||
-- Next
|
||||
{ mode = 'n', keys = '['},
|
||||
{ mode = 'n', keys = ']'},
|
||||
{ mode = 'x', keys = '['},
|
||||
{ mode = 'x', keys = ']'},
|
||||
|
||||
-- Marks
|
||||
{ mode = 'n', keys = "'" },
|
||||
{ mode = 'n', keys = '`' },
|
||||
{ mode = 'x', keys = "'" },
|
||||
{ mode = 'x', keys = '`' },
|
||||
|
||||
-- Registers
|
||||
{ mode = 'n', keys = '"' },
|
||||
{ mode = 'x', keys = '"' },
|
||||
{ mode = 'i', keys = '<C-r>' },
|
||||
{ mode = 'c', keys = '<C-r>' },
|
||||
|
||||
-- Window commands
|
||||
{ mode = 'n', keys = '<C-w>' },
|
||||
|
||||
-- `z` key
|
||||
{ mode = 'n', keys = 'z' },
|
||||
{ mode = 'x', keys = 'z' },
|
||||
|
||||
-- Localleader
|
||||
{ mode = 'n', keys = '<Localleader>'},
|
||||
{ mode = 'x', keys = '<Localleader>'},
|
||||
},
|
||||
|
||||
clues = {
|
||||
-- Enhance this by adding descriptions for <Leader> mapping groups
|
||||
miniclue.gen_clues.builtin_completion(),
|
||||
miniclue.gen_clues.g(),
|
||||
miniclue.gen_clues.marks(),
|
||||
miniclue.gen_clues.registers(),
|
||||
miniclue.gen_clues.windows(),
|
||||
miniclue.gen_clues.z(),
|
||||
|
||||
{ mode = 'n', keys = '<leader>f', desc = '+Find' },
|
||||
{ mode = 'x', keys = '<leader>f', desc = '+Find' },
|
||||
|
||||
{ mode = 'n', keys = '<leader>o', desc = '+Open' },
|
||||
{ mode = 'x', keys = '<leader>o', desc = '+Open' },
|
||||
|
||||
{ mode = 'n', keys = '<leader>g', desc = '+Git' },
|
||||
{ mode = 'x', keys = '<leader>g', desc = '+Git' },
|
||||
},
|
||||
}
|
||||
end
|
||||
"folke/which-key.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
-- your configuration comes here
|
||||
-- or leave it empty to use the default settings
|
||||
-- refer to the configuration section below
|
||||
preset = 'helix',
|
||||
sort = { "order", "alphanum", "local", "mod" },
|
||||
win = {
|
||||
border = 'none',
|
||||
},
|
||||
icons = {
|
||||
rules = false,
|
||||
},
|
||||
spec = {
|
||||
{ '<leader>f', group = 'Find' },
|
||||
{ '<leader>o', group = 'Open' },
|
||||
{ '<leader>g', group = 'Git' },
|
||||
{ '<leader>c', group = 'Compile' },
|
||||
},
|
||||
},
|
||||
keys = {
|
||||
{
|
||||
"<leader>?",
|
||||
function()
|
||||
require("which-key").show({ global = false })
|
||||
end,
|
||||
desc = "Buffer Local Keymaps (which-key)",
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
@@ -286,19 +273,19 @@ return {
|
||||
-- Add cursor at next argument treesitter
|
||||
set({'n', 'x'}, ']A', function()
|
||||
if vim.v.count < 1 then
|
||||
mc.addCursor(']a')
|
||||
mc.addCursor(']p')
|
||||
else
|
||||
for _=1, vim.v.count - 1 do
|
||||
mc.addCursor(']a')
|
||||
mc.addCursor(']p')
|
||||
end
|
||||
end
|
||||
end, { desc = 'Create multicursor on next argument'})
|
||||
set({'n', 'x'}, '[A', function()
|
||||
if vim.v.count < 1 then
|
||||
mc.addCursor('[a')
|
||||
mc.addCursor('[p')
|
||||
else
|
||||
for _=1, vim.v.count - 1 do
|
||||
mc.addCursor('[a')
|
||||
mc.addCursor('[p')
|
||||
end
|
||||
end
|
||||
end, { desc = 'Create multicursor on previous argument'})
|
||||
|
||||
83
config/.config/oama/config.yaml
Normal file
83
config/.config/oama/config.yaml
Normal file
@@ -0,0 +1,83 @@
|
||||
## oama version 0.22.0 - 2025-08-29 0290.e419ef10
|
||||
## This is a YAML configuration file, indentation matters.
|
||||
## Double ## indicates comments while single # default values.
|
||||
## Not all defaults are shown, for full list run `oama printenv`
|
||||
## and look at the `services:` section.
|
||||
|
||||
## Possible options for keeping refresh and access tokens:
|
||||
## GPG - in a gpg encrypted file $XDG_STATE_HOME/oama/<email-address>.oauth
|
||||
## (XDG_STATE_HOME defaults to ~/.local/state)
|
||||
## GPG - in a gpg encrypted file ~/.local/state/oama/<email-address>.oauth
|
||||
## KEYRING - in the keyring of a password manager with Secret Service API
|
||||
##
|
||||
## Choose exactly one.
|
||||
|
||||
encryption:
|
||||
tag: KEYRING
|
||||
|
||||
# encryption:
|
||||
# tag: GPG
|
||||
# contents: your-KEY-ID
|
||||
|
||||
## Builtin service providers
|
||||
## - google
|
||||
## - microsoft
|
||||
## Required fields: client_id, client_secret
|
||||
##
|
||||
services:
|
||||
google:
|
||||
client_id: application-CLIENT-ID
|
||||
client_secret: application-CLIENT-SECRET
|
||||
## Alternatively get them from a password manager using a shell command.
|
||||
## If both variants are present then the _cmd versions get the priority.
|
||||
## For example:
|
||||
# client_id_cmd: |
|
||||
# pass email/my-app | head -1
|
||||
# client_secret_cmd: |
|
||||
# pass email/my-app | head -2 | tail -1
|
||||
# auth_scope: https://mail.google.com/
|
||||
# microsoft:
|
||||
# client_id: 08162f7c-0fd2-4200-a84a-f25a4db0b584 # notsecret
|
||||
# client_secret: 'TxRBilcHdC6WGBee]fs?QR:SJ8nI[g82' # notsecret
|
||||
# auth_scope: https://outlook.365office.com/IMAP.AccessAsUser.All
|
||||
# https://outlook.365office.com/SMTP.Send
|
||||
# offline_access
|
||||
# tenant: common
|
||||
# prompt: select_account
|
||||
#
|
||||
microsoft:
|
||||
# client_id: 08162f7c-0fd2-4200-a84a-f25a4db0b584 # notsecret
|
||||
# client_secret: 'TxRBilcHdC6WGBee]fs?QR:SJ8nI[g82' # notsecret
|
||||
client_id: '9e5f94bc-e8a4-4e73-b8be-63364c29d753'
|
||||
auth_scope: https://outlook.office.com/IMAP.AccessAsUser.All
|
||||
https://outlook.office.com/POP.AccessAsUser.All
|
||||
https://outlook.office.com/SMTP.Send
|
||||
offline_access
|
||||
tenant: common
|
||||
prompt: select_account
|
||||
## client_secret is not needed for device code flow
|
||||
# auth_endpoint: https://login.microsoftonline.com/common/oauth2/v2.0/devicecode
|
||||
##
|
||||
## client_secret might be needed for other authorization flows
|
||||
# client_secret: application-CLIENT_SECRET
|
||||
## auth_endpoint: https://login.microsoftonline.com/common/oauth2/v2.0/authorize
|
||||
#
|
||||
# auth_scope: https://outlook.office.com/IMAP.AccessAsUser.All
|
||||
# https://outlook.office.com/SMTP.Send
|
||||
# offline_access
|
||||
# tenant: common
|
||||
|
||||
## User configured providers
|
||||
## Required fields: client_id, client_secret, auth_endpoint, auth_scope, token_endpoint
|
||||
##
|
||||
## For example:
|
||||
# yahoo:
|
||||
# client_id: application-CLIENT-ID
|
||||
# client_id_cmd: |
|
||||
# password manager command ...
|
||||
# client_secret: application-CLIENT_SECRET
|
||||
# client_secret_cmd: |
|
||||
# password manager command ...
|
||||
# auth_endpoint: EDIT-ME!
|
||||
# auth_scope: EDIT-ME!
|
||||
# token_endpoint: EDIT-ME!
|
||||
@@ -1,2 +1,2 @@
|
||||
set preview_images true
|
||||
set preview_images_method ueberzug
|
||||
set preview_images_method kitty
|
||||
|
||||
@@ -343,6 +343,8 @@
|
||||
(elfeed/add-to-playlist)
|
||||
(mpdel/switch-context 'podcasts)
|
||||
(libmpdel-play)))
|
||||
("b" . elfeed/show-eww-open)
|
||||
("B" . elfeed-show-visit)
|
||||
("P" . (lambda () (interactive)
|
||||
(mpdel/switch-context 'podcasts)
|
||||
(libmpdel-play))))
|
||||
@@ -352,11 +354,14 @@
|
||||
(elfeed/add-to-playlist)
|
||||
(mpdel/switch-context 'podcasts)
|
||||
(libmpdel-play)))
|
||||
("B" . elfeed-search-browse-url)
|
||||
("b" . elfeed/search-eww-open)
|
||||
("P" . (lambda () (interactive)
|
||||
(mpdel/switch-context 'podcasts)
|
||||
(libmpdel-play))))
|
||||
:config
|
||||
(setq-default elfeed-search-filter " ")
|
||||
(setq elfeed-log-level 'debug)
|
||||
(setq elfeed-feeds
|
||||
'( ("https://phaazon.net/blog/feed")
|
||||
("https://irreal.org/blog/?feed=rss2")
|
||||
@@ -375,6 +380,22 @@
|
||||
("https://www.dailywire.com/feeds/rss.xml")
|
||||
("https://feeds.simplecast.com/6c2VScgo")
|
||||
("https://feeds.simplecast.com/pp_b9xO6")))
|
||||
(defun elfeed/show-eww-open (&optional use-generic-p)
|
||||
"open with eww"
|
||||
(interactive "P")
|
||||
(let ((browse-url-handlers '(("https:\\/\\/www\\.youtu\\.*be." . browse-url-mpv)
|
||||
(".*" . #'eww-browse-url))))
|
||||
(elfeed-show-visit use-generic-p)))
|
||||
|
||||
(defun elfeed/search-eww-open (&optional use-generic-p)
|
||||
"open with eww"
|
||||
(interactive "P")
|
||||
(let ((browse-url-handlers '(("https:\\/\\/www\\.youtu\\.*be." . browse-url-mpv)
|
||||
("." . #'eww-browse-url))))
|
||||
(elfeed-search-browse-url use-generic-p)))
|
||||
(defun browse-url-mpv (url &optional single)
|
||||
(start-process "mpv" nil "mpv" (shell-quote-argument url)))
|
||||
|
||||
(defun elfeed/add-to-playlist ()
|
||||
(interactive
|
||||
(let* ((entry (if (eq major-mode 'elfeed-show-mode)
|
||||
|
||||
@@ -1,5 +1 @@
|
||||
# This file is written by nwg-look. Do not edit.
|
||||
[Icon Theme]
|
||||
Name=Default
|
||||
Comment=Default Cursor Theme
|
||||
Inherits=BreezeX-RosePineDawn-Linux
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
rg -uu --color=always --line-number --no-heading --smart-case -H "${*:-}" | tr -d '\r' |
|
||||
/usr/bin/rg . . --color=always --line-number --no-heading --smart-case -H "${*:-}" | tr -d '\r' |
|
||||
fzf-tmux --cycle -p 80%,90% --ansi \
|
||||
--color "hl:-1:underline,hl+:-1:underline:reverse" \
|
||||
--delimiter : \
|
||||
|
||||
187
config/.wezterm.lua
Normal file
187
config/.wezterm.lua
Normal file
@@ -0,0 +1,187 @@
|
||||
local wezterm = require 'wezterm'
|
||||
local config = {}
|
||||
|
||||
config.font = wezterm.font_with_fallback {
|
||||
'Iosevka Term SS12',
|
||||
'Cascadia Code'
|
||||
}
|
||||
|
||||
local appearance_themes = {
|
||||
Light = 'dawnfox',
|
||||
Dark = 'carbonfox',
|
||||
}
|
||||
|
||||
local appearance = wezterm.gui.get_appearance()
|
||||
config.color_scheme = appearance_themes[appearance] or 'carbonfox'
|
||||
config.font_size = 14
|
||||
config.enable_tab_bar = true
|
||||
config.use_fancy_tab_bar = false
|
||||
-- config.front_end = "WebGpu"
|
||||
-- config.integrated_title_button_style = "Gnome"
|
||||
|
||||
function basename(s)
|
||||
return string.gsub(s, '(.*[/\\])(.*)', '%2')
|
||||
end
|
||||
|
||||
wezterm.on(
|
||||
'format-tab-title',
|
||||
function(tab, tabs, panes, config, hover, maxwidth)
|
||||
local tab_name
|
||||
local title = tab.tab_title
|
||||
if title and #title > 0 then
|
||||
tab_name = tab.tab_id .. ':' .. title
|
||||
end
|
||||
local pane = tab.active_pane
|
||||
local name = pane.foreground_process_name
|
||||
if name then
|
||||
tab_name = tab.tab_id .. ':' .. basename(name)
|
||||
end
|
||||
if tab.is_active then
|
||||
return {
|
||||
'ResetAttributes',
|
||||
{ Text = ' ' .. tab_name .. '* '},
|
||||
}
|
||||
-- elseif tab.is_last_active then
|
||||
-- return {
|
||||
-- { Text = ' ' .. tab_name .. '- ' },
|
||||
-- }
|
||||
else
|
||||
return {
|
||||
'ResetAttributes',
|
||||
{ Text = ' ' .. tab_name .. ' ' }
|
||||
}
|
||||
end
|
||||
end
|
||||
)
|
||||
|
||||
-- keys
|
||||
local act = wezterm.action
|
||||
config.leader = { key = 'a', mods = 'CTRL', timeout_milliseconds = 1000 }
|
||||
config.keys = {
|
||||
{
|
||||
key = 'a',
|
||||
mods = 'LEADER|CTRL',
|
||||
action = wezterm.action.SendKey { key = 'a', mods = 'CTRL' },
|
||||
},
|
||||
{
|
||||
key = "c",
|
||||
mods = "LEADER",
|
||||
action = act.SpawnTab 'CurrentPaneDomain'
|
||||
},
|
||||
{
|
||||
key = "e",
|
||||
mods = "LEADER",
|
||||
action = act.CharSelect {
|
||||
copy_on_select = true,
|
||||
copy_to = 'ClipboardAndPrimarySelection',
|
||||
},
|
||||
},
|
||||
{
|
||||
key = "C",
|
||||
mods = "LEADER",
|
||||
action = act.SpawnTab 'CurrentPaneDomain'
|
||||
},
|
||||
{
|
||||
key = "x",
|
||||
mods = "LEADER",
|
||||
action = act.CloseCurrentPane { confirm = true }
|
||||
},
|
||||
{
|
||||
key = "p",
|
||||
mods = "LEADER",
|
||||
action = act.ActivateTabRelative(-1)
|
||||
},
|
||||
{
|
||||
key = "n",
|
||||
mods = "LEADER",
|
||||
action = act.ActivateTabRelative(1)
|
||||
},
|
||||
{
|
||||
key = "%",
|
||||
mods = "LEADER|SHIFT",
|
||||
action = act.SplitPane {
|
||||
direction = "Right"
|
||||
}
|
||||
},
|
||||
{
|
||||
key = "\"",
|
||||
mods = "LEADER|SHIFT",
|
||||
action = act.SplitPane {
|
||||
direction = "Down"
|
||||
}
|
||||
},
|
||||
{
|
||||
key = "o",
|
||||
mods = "LEADER",
|
||||
action = act.ActivatePaneDirection 'Next'
|
||||
},
|
||||
{
|
||||
key = "h",
|
||||
mods = "LEADER",
|
||||
action = act.ActivatePaneDirection 'Left'
|
||||
},
|
||||
{
|
||||
key = "l",
|
||||
mods = "LEADER",
|
||||
action = act.ActivatePaneDirection 'Right'
|
||||
},
|
||||
{
|
||||
key = "j",
|
||||
mods = "LEADER",
|
||||
action = act.ActivatePaneDirection 'Down'
|
||||
},
|
||||
{
|
||||
key = "k",
|
||||
mods = "LEADER",
|
||||
action = act.ActivatePaneDirection 'Up'
|
||||
},
|
||||
{
|
||||
key = "P",
|
||||
mods = "LEADER",
|
||||
action = act.PasteFrom 'Clipboard'
|
||||
},
|
||||
{
|
||||
key = "s",
|
||||
mods = "LEADER",
|
||||
action = act.QuickSelect
|
||||
},
|
||||
{
|
||||
key = "Y",
|
||||
mods = "LEADER",
|
||||
action = act.CopyTo 'Clipboard'
|
||||
},
|
||||
{
|
||||
key = "v",
|
||||
mods = "LEADER",
|
||||
action = act.ActivateCopyMode
|
||||
},
|
||||
{
|
||||
key = "f",
|
||||
mods = "LEADER",
|
||||
action = act.Search("CurrentSelectionOrEmptyString")
|
||||
},
|
||||
{
|
||||
key = ',',
|
||||
mods = 'LEADER',
|
||||
action = act.PromptInputLine {
|
||||
description = 'Enter new name for tab',
|
||||
action = wezterm.action_callback(function(window, pane, line)
|
||||
-- line will be `nil` if they hit escape without entering anything
|
||||
-- An empty string if they just hit enter
|
||||
-- Or the actual line of text they wrote
|
||||
if line then
|
||||
window:active_tab():set_title(line)
|
||||
end
|
||||
end),
|
||||
},
|
||||
},
|
||||
}
|
||||
for i = 1, 8 do
|
||||
-- CTRL+ALT + number to activate that tab
|
||||
table.insert(config.keys, {
|
||||
key = tostring(i),
|
||||
mods = 'LEADER',
|
||||
action = act.ActivateTab(i - 1),
|
||||
})
|
||||
end
|
||||
return config
|
||||
Reference in New Issue
Block a user