summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Lemon <y@yulqen.org>2024-04-04 15:15:54 +0100
committerMatthew Lemon <y@yulqen.org>2024-04-04 15:15:54 +0100
commitf0a2ef376a819c9332ca81b40f53803db291d9aa (patch)
tree043b2bed9d07d09a9fc73370fe51131f789dc908
parent80426fe85bbd3b95820d6ea328a11ef83d25b8b6 (diff)
Updated alacritty and neomutt
-rw-r--r--alacritty.toml48
-rw-r--r--alacritty.yml935
-rw-r--r--mbsyncrc77
-rw-r--r--msmtprc11
-rw-r--r--mutt/colors256-light94
-rw-r--r--mutt/colors_purple39
-rw-r--r--mutt/gpg.rc93
-rw-r--r--mutt/mailboxes9
-rw-r--r--mutt/mailcap12
-rw-r--r--mutt/muttrc-softyellowgreen42
-rw-r--r--mutt/signature4
-rw-r--r--muttrc140
-rw-r--r--newsboat/config41
-rw-r--r--newsboat/urls74
-rw-r--r--notmuch-config4
15 files changed, 1488 insertions, 135 deletions
diff --git a/alacritty.toml b/alacritty.toml
new file mode 100644
index 0000000..e5f61e6
--- /dev/null
+++ b/alacritty.toml
@@ -0,0 +1,48 @@
+import = [
+ # "~/.config/alacritty/themes/themes/base16_default_dark.toml"
+ "~/.config/alacritty/themes/themes/solarized_light.toml",
+ "~/.config/alacritty/keybindings.toml"
+ #"~/.config/alacritty/themes/themes/gruvbox_material_hard_dark.toml"
+]
+
+[window]
+decorations = "Full"
+decorations_theme_variant = "Light"
+
+[keyboard]
+bindings = [
+{ key = "y", mods = "Control", action = "PasteSelection" },
+]
+
+[font]
+size = 10
+
+[font.normal]
+#family = "monospace"
+#family = "Iosevka Nerd Font Mono"
+family = "Hack"
+style = "Regular"
+
+[font.bold]
+#family = "monospace"
+family = "Hack"
+style = "Bold"
+
+[font.italic]
+#family = "monospace"
+family = "Iosevka Nerd Font Mono"
+style = "Italic"
+
+[cursor]
+style.shape = "Block"
+style.blinking = "Off"
+
+[[hints.enabled]]
+command = "xdg-open" # On Linux/BSD
+hyperlinks = true
+post_processing = true
+persist = false
+mouse.enabled = true
+binding = { key = "I", mods = "Control|Shift" }
+regex = "(ipfs:|ipns:|magnet:|mailto:|gemini://|gopher://|https://|http://|news:|file:|git://|ssh:|ftp://)[^\u0000-\u001F\u007F-\u009F<>\"\\s{-}\\^⟨⟩`]+"
+
diff --git a/alacritty.yml b/alacritty.yml
new file mode 100644
index 0000000..af2f503
--- /dev/null
+++ b/alacritty.yml
@@ -0,0 +1,935 @@
+# Configuration for Alacritty, the GPU enhanced terminal emulator.
+
+# Import additional configuration files
+#
+# Imports are loaded in order, skipping all missing files, with the importing
+# file being loaded last. If a field is already present in a previous import, it
+# will be replaced.
+#
+# All imports must either be absolute paths starting with `/`, or paths relative
+# to the user's home directory starting with `~/`.
+#import:
+ # - /path/to/alacritty.yml
+ #- ~/.config/alacritty/themes/themes/solarized_light.toml
+
+# Any items in the `env` entry below will be added as
+# environment variables. Some entries may override variables
+# set by alacritty itself.
+#env:
+ # TERM variable
+ #
+ # This value is used to set the `$TERM` environment variable for
+ # each instance of Alacritty. If it is not present, alacritty will
+ # check the local terminfo database and use `alacritty` if it is
+ # available, otherwise `xterm-256color` is used.
+ #TERM: alacritty
+
+#window:
+ # Window dimensions (changes require restart)
+ #
+ # Number of lines/columns (not pixels) in the terminal. Both lines and columns
+ # must be non-zero for this to take effect. The number of columns must be at
+ # least `2`, while using a value of `0` for columns and lines will fall back
+ # to the window manager's recommended size
+ #dimensions:
+ # columns: 0
+ # lines: 0
+
+ # Window position (changes require restart)
+ #
+ # Specified in number of pixels.
+ # If the position is not set, the window manager will handle the placement.
+ #position:
+ # x: 0
+ # y: 0
+
+ # Window padding (changes require restart)
+ #
+ # Blank space added around the window in pixels. This padding is scaled
+ # by DPI and the specified value is always added at both opposing sides.
+ #padding:
+ # x: 0
+ # y: 0
+
+ # Spread additional padding evenly around the terminal content.
+ #dynamic_padding: false
+
+ # Window decorations
+ #
+ # Values for `decorations`:
+ # - full: Borders and title bar
+ # - none: Neither borders nor title bar
+ #
+ # Values for `decorations` (macOS only):
+ # - transparent: Title bar, transparent background and title bar buttons
+ # - buttonless: Title bar, transparent background and no title bar buttons
+ #decorations: full
+
+ # Background opacity
+ #
+ # Window opacity as a floating point number from `0.0` to `1.0`.
+ # The value `0.0` is completely transparent and `1.0` is opaque.
+ #opacity: 1.0
+
+ # Startup Mode (changes require restart)
+ #
+ # Values for `startup_mode`:
+ # - Windowed
+ # - Maximized
+ # - Fullscreen
+ #
+ # Values for `startup_mode` (macOS only):
+ # - SimpleFullscreen
+ #startup_mode: Windowed
+
+ # Window title
+ #title: Alacritty
+
+ # Allow terminal applications to change Alacritty's window title.
+ #dynamic_title: true
+
+ # Window class (Linux/BSD only):
+ #class:
+ # Application instance name
+ #instance: Alacritty
+ # General application class
+ #general: Alacritty
+
+ # Decorations theme variant
+ #
+ # Override the variant of the System theme/GTK theme/Wayland client side
+ # decorations. Commonly supported values are `Dark`, `Light`, and `None` for
+ # auto pick-up. Set this to `None` to use the default theme variant.
+ #decorations_theme_variant: None
+
+ # Resize increments
+ #
+ # Prefer resizing window by discrete steps equal to cell dimensions.
+ #resize_increments: false
+
+ # Make `Option` key behave as `Alt` (macOS only):
+ # - OnlyLeft
+ # - OnlyRight
+ # - Both
+ # - None (default)
+ #option_as_alt: None
+
+#scrolling:
+ # Maximum number of lines in the scrollback buffer.
+ # Specifying '0' will disable scrolling.
+ #history: 10000
+
+ # Scrolling distance multiplier.
+ #multiplier: 3
+
+# Font configuration
+font:
+ # Normal (roman) font face
+ normal:
+ # Font family
+ #
+ # Default:
+ # - (macOS) Menlo
+ # - (Linux/BSD) monospace
+ # - (Windows) Consolas
+ family: monospace
+ #family : Hack Nerd Font Mono
+ #family: Terminus
+
+ # The `style` can be specified to pick a specific face.
+ #style: Regular
+
+ # Bold font face
+ #bold:
+ # Font family
+ #
+ # If the bold family is not specified, it will fall back to the
+ # value specified for the normal font.
+ #family: monospace
+
+ # The `style` can be specified to pick a specific face.
+ #style: Bold
+
+ # Italic font face
+ #italic:
+ # Font family
+ #
+ # If the italic family is not specified, it will fall back to the
+ # value specified for the normal font.
+ #family: monospace
+
+ # The `style` can be specified to pick a specific face.
+ #style: Italic
+
+ # Bold italic font face
+ #bold_italic:
+ # Font family
+ #
+ # If the bold italic family is not specified, it will fall back to the
+ # value specified for the normal font.
+ #family: monospace
+
+ # The `style` can be specified to pick a specific face.
+ #style: Bold Italic
+
+ # Point size
+ size: 10
+
+ # Offset is the extra space around each character. `offset.y` can be thought
+ # of as modifying the line spacing, and `offset.x` as modifying the letter
+ # spacing.
+ #offset:
+ # x: 0
+ # y: 0
+
+ # Glyph offset determines the locations of the glyphs within their cells with
+ # the default being at the bottom. Increasing `x` moves the glyph to the
+ # right, increasing `y` moves the glyph upward.
+ #glyph_offset:
+ # x: 0
+ # y: 0
+
+ # Use built-in font for box drawing characters.
+ #
+ # If `true`, Alacritty will use a custom built-in font for box drawing
+ # characters (Unicode points 2500 - 259f).
+ #
+ #builtin_box_drawing: true
+
+# If `true`, bold text is drawn using the bright color variants.
+#draw_bold_text_with_bright_colors: false
+
+# Colors (Tomorrow Night)
+colors:
+ # Default colors
+ primary:
+ background: '#fdf6e3'
+ foreground: '#586e75'
+ normal:
+ black: '#073642'
+ red: '#dc322f'
+ green: '#859900'
+ yellow: '#b58900'
+ blue: '#268bd2'
+ magenta: '#d33682'
+ cyan: '#2aa198'
+ white: '#eee8d5'
+ bright:
+ black: '#002b36'
+ red: '#cb4b16'
+ green: '#586e75'
+ yellow: '#657b83'
+ blue: '#839496'
+ magenta: '#6c71c4'
+ cyan: '#93a1a1'
+ white: '#fdf6e3'
+
+ # Cursor colors
+ #
+ # Colors which should be used to draw the terminal cursor.
+ #
+ # Allowed values are CellForeground/CellBackground, which reference the
+ # affected cell, or hexadecimal colors like #ff00ff.
+ #cursor:
+ # text: CellBackground
+ # cursor: CellForeground
+
+ # Vi mode cursor colors
+ #
+ # Colors for the cursor when the vi mode is active.
+ #
+ # Allowed values are CellForeground/CellBackground, which reference the
+ # affected cell, or hexadecimal colors like #ff00ff.
+ #vi_mode_cursor:
+ # text: CellBackground
+ # cursor: CellForeground
+
+ # Search colors
+ #
+ # Colors used for the search bar and match highlighting.
+ #search:
+ # Allowed values are CellForeground/CellBackground, which reference the
+ # affected cell, or hexadecimal colors like #ff00ff.
+ #matches:
+ # foreground: '#000000'
+ # background: '#ffffff'
+ #focused_match:
+ # foreground: '#ffffff'
+ # background: '#000000'
+
+ # Keyboard hints
+ #hints:
+ # hints stuff from Documents/Notes/Technotes/Linux/Git_commit_hash_hints_with_Alacritty.txt
+hints:
+ enabled:
+ - regex: "(ipfs:|ipns:|magnet:|mailto:|gemini:|gopher:|https:|http:|news:|file:|git:|ssh:|ftp:)\
+ [^\u0000-\u001F\u007F-\u009F<>\"\\s{-}\\^⟨⟩`]+"
+ mouse:
+ enabled: true
+ post_processing: true
+ action: Copy
+ binding:
+ key: U
+ mods: Control|Shift
+ # First character in the hint label
+ #
+ # Allowed values are CellForeground/CellBackground, which reference the
+ # affected cell, or hexadecimal colors like #ff00ff.
+ #start:
+ # foreground: '#1d1f21'
+ # background: '#e9ff5e'
+
+ # All characters after the first one in the hint label
+ #
+ # Allowed values are CellForeground/CellBackground, which reference the
+ # affected cell, or hexadecimal colors like #ff00ff.
+ #end:
+ # foreground: '#e9ff5e'
+ # background: '#1d1f21'
+
+ # Line indicator
+ #
+ # Color used for the indicator displaying the position in history during
+ # search and vi mode.
+ #
+ # By default, these will use the opposing primary color.
+ #line_indicator:
+ # foreground: None
+ # background: None
+
+ # Footer bar
+ #
+ # Color used for the footer bar on the bottom, used by search regex input,
+ # hyperlink URI preview, etc.
+ #
+ #footer_bar:
+ # background: '#c5c8c6'
+ # foreground: '#1d1f21'
+
+ # Selection colors
+ #
+ # Colors which should be used to draw the selection area.
+ #
+ # Allowed values are CellForeground/CellBackground, which reference the
+ # affected cell, or hexadecimal colors like #ff00ff.
+ #selection:
+ # text: CellBackground
+ # background: CellForeground
+
+ # Normal colors
+ #normal:
+ # black: '#1d1f21'
+ # red: '#cc6666'
+ # green: '#b5bd68'
+ # yellow: '#f0c674'
+ # blue: '#81a2be'
+ # magenta: '#b294bb'
+ # cyan: '#8abeb7'
+ # white: '#c5c8c6'
+
+ # Bright colors
+ #bright:
+ # black: '#666666'
+ # red: '#d54e53'
+ # green: '#b9ca4a'
+ # yellow: '#e7c547'
+ # blue: '#7aa6da'
+ # magenta: '#c397d8'
+ # cyan: '#70c0b1'
+ # white: '#eaeaea'
+
+ # Dim colors
+ #
+ # If the dim colors are not set, they will be calculated automatically based
+ # on the `normal` colors.
+ #dim:
+ # black: '#131415'
+ # red: '#864343'
+ # green: '#777c44'
+ # yellow: '#9e824c'
+ # blue: '#556a7d'
+ # magenta: '#75617b'
+ # cyan: '#5b7d78'
+ # white: '#828482'
+
+ # Indexed Colors
+ #
+ # The indexed colors include all colors from 16 to 256.
+ # When these are not set, they're filled with sensible defaults.
+ #
+ # Example:
+ # `- { index: 16, color: '#ff00ff' }`
+ #
+ #indexed_colors: []
+
+ # Transparent cell backgrounds
+ #
+ # Whether or not `window.opacity` applies to all cell backgrounds or only to
+ # the default background. When set to `true` all cells will be transparent
+ # regardless of their background color.
+ #transparent_background_colors: false
+
+# Bell
+#
+# The bell is rung every time the BEL control character is received.
+#bell:
+ # Visual Bell Animation
+ #
+ # Animation effect for flashing the screen when the visual bell is rung.
+ #
+ # Values for `animation`:
+ # - Ease
+ # - EaseOut
+ # - EaseOutSine
+ # - EaseOutQuad
+ # - EaseOutCubic
+ # - EaseOutQuart
+ # - EaseOutQuint
+ # - EaseOutExpo
+ # - EaseOutCirc
+ # - Linear
+ #animation: EaseOutExpo
+
+ # Duration of the visual bell flash in milliseconds. A `duration` of `0` will
+ # disable the visual bell animation.
+ #duration: 0
+
+ # Visual bell animation color.
+ #color: '#ffffff'
+
+ # Bell Command
+ #
+ # This program is executed whenever the bell is rung.
+ #
+ # When set to `command: None`, no command will be executed.
+ #
+ # Example:
+ # command:
+ # program: notify-send
+ # args: ["Hello, World!"]
+ #
+ #command: None
+
+#selection:
+ # This string contains all characters that are used as separators for
+ # "semantic words" in Alacritty.
+ #semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
+
+ # When set to `true`, selected text will be copied to the primary clipboard.
+ #save_to_clipboard: false
+
+#cursor:
+ # Cursor style
+ #style:
+ # Cursor shape
+ #
+ # Values for `shape`:
+ # - ▇ Block
+ # - _ Underline
+ # - | Beam
+ #shape: Block
+
+ # Cursor blinking state
+ #
+ # Values for `blinking`:
+ # - Never: Prevent the cursor from ever blinking
+ # - Off: Disable blinking by default
+ # - On: Enable blinking by default
+ # - Always: Force the cursor to always blink
+ #blinking: Off
+
+ # Vi mode cursor style
+ #
+ # If the vi mode cursor style is `None` or not specified, it will fall back to
+ # the style of the active value of the normal cursor.
+ #
+ # See `cursor.style` for available options.
+ #vi_mode_style: None
+
+ # Cursor blinking interval in milliseconds.
+ #blink_interval: 750
+
+ # Time after which cursor stops blinking, in seconds.
+ #
+ # Specifying '0' will disable timeout for blinking.
+ #blink_timeout: 5
+
+ # If this is `true`, the cursor will be rendered as a hollow box when the
+ # window is not focused.
+ #unfocused_hollow: true
+
+ # Thickness of the cursor relative to the cell width as floating point number
+ # from `0.0` to `1.0`.
+ #thickness: 0.15
+
+# Live config reload (changes require restart)
+#live_config_reload: true
+
+# Shell
+#
+# You can set `shell.program` to the path of your favorite shell, e.g.
+# `/bin/fish`. Entries in `shell.args` are passed unmodified as arguments to the
+# shell.
+#
+# Default:
+# - (Linux/BSD/macOS) `$SHELL` or the user's login shell, if `$SHELL` is unset
+# - (Windows) powershell
+#shell:
+# program: /bin/bash
+# args:
+# - --login
+
+# Startup directory
+#
+# Directory the shell is started in. If this is unset, or `None`, the working
+# directory of the parent process will be used.
+#working_directory: None
+
+# Offer IPC using `alacritty msg` (unix only)
+#ipc_socket: true
+
+#mouse:
+ # Click settings
+ #
+ # The `double_click` and `triple_click` settings control the time
+ # alacritty should wait for accepting multiple clicks as one double
+ # or triple click.
+ #double_click: { threshold: 300 }
+ #triple_click: { threshold: 300 }
+
+ # If this is `true`, the cursor is temporarily hidden when typing.
+ #hide_when_typing: false
+
+# Hints
+#
+# Terminal hints can be used to find text or hyperlink in the visible part of
+# the terminal and pipe it to other applications.
+#hints:
+ # Keys used for the hint labels.
+ #alphabet: "jfkdls;ahgurieowpq"
+
+ # List with all available hints
+ #
+ # Each hint must have any of `regex` or `hyperlinks` field and either an
+ # `action` or a `command` field. The fields `mouse`, `binding` and
+ # `post_processing` are optional.
+ #
+ # The `hyperlinks` option will cause OSC 8 escape sequence hyperlinks to be
+ # highlighted.
+ #
+ # The fields `command`, `binding.key`, `binding.mods`, `binding.mode` and
+ # `mouse.mods` accept the same values as they do in the `key_bindings` section.
+ #
+ # The `mouse.enabled` field controls if the hint should be underlined while
+ # the mouse with all `mouse.mods` keys held or the vi mode cursor is above it.
+ #
+ # If the `post_processing` field is set to `true`, heuristics will be used to
+ # shorten the match if there are characters likely not to be part of the hint
+ # (e.g. a trailing `.`). This is most useful for URIs and applies only to
+ # `regex` matches.
+ #
+ # Values for `action`:
+ # - Copy
+ # Copy the hint's text to the clipboard.
+ # - Paste
+ # Paste the hint's text to the terminal or search.
+ # - Select
+ # Select the hint's text.
+ # - MoveViModeCursor
+ # Move the vi mode cursor to the beginning of the hint.
+ #enabled:
+ # - regex: "(ipfs:|ipns:|magnet:|mailto:|gemini:|gopher:|https:|http:|news:|file:|git:|ssh:|ftp:)\
+ # [^\u0000-\u001F\u007F-\u009F<>\"\\s{-}\\^⟨⟩`]+"
+ # hyperlinks: true
+ # command: xdg-open
+ # post_processing: true
+ # mouse:
+ # enabled: true
+ # mods: None
+ # binding:
+ # key: U
+ # mods: Control|Shift
+
+# Mouse bindings
+#
+# Mouse bindings are specified as a list of objects, much like the key
+# bindings further below.
+#
+# To trigger mouse bindings when an application running within Alacritty
+# captures the mouse, the `Shift` modifier is automatically added as a
+# requirement.
+#
+# Each mouse binding will specify a:
+#
+# - `mouse`:
+#
+# - Middle
+# - Left
+# - Right
+# - Numeric identifier such as `5`
+#
+# - `action` (see key bindings for actions not exclusive to mouse mode)
+#
+# - Mouse exclusive actions:
+#
+# - ExpandSelection
+# Expand the selection to the current mouse cursor location.
+#
+# And optionally:
+#
+# - `mods` (see key bindings)
+#mouse_bindings:
+# - { mouse: Right, action: ExpandSelection }
+# - { mouse: Right, mods: Control, action: ExpandSelection }
+# - { mouse: Middle, mode: ~Vi, action: PasteSelection }
+
+# Key bindings
+#
+# Key bindings are specified as a list of objects. For example, this is the
+# default paste binding:
+#
+# `- { key: V, mods: Control|Shift, action: Paste }`
+#
+# Each key binding will specify a:
+#
+# - `key`: Identifier of the key pressed
+#
+# - A-Z
+# - F1-F24
+# - Key0-Key9
+#
+# A full list with available key codes can be found here:
+# https://docs.rs/winit/*/winit/event/enum.VirtualKeyCode.html#variants
+#
+# Instead of using the name of the keys, the `key` field also supports using
+# the scancode of the desired key. Scancodes have to be specified as a
+# decimal number. This command will allow you to display the hex scancodes
+# for certain keys:
+#
+# `showkey --scancodes`.
+#
+# Then exactly one of:
+#
+# - `chars`: Send a byte sequence to the running application
+#
+# The `chars` field writes the specified string to the terminal. This makes
+# it possible to pass escape sequences. To find escape codes for bindings
+# like `PageUp` (`"\x1b[5~"`), you can run the command `showkey -a` outside
+# of tmux. Note that applications use terminfo to map escape sequences back
+# to keys. It is therefore required to update the terminfo when changing an
+# escape sequence.
+#
+# - `action`: Execute a predefined action
+#
+# - ToggleViMode
+# - SearchForward
+# Start searching toward the right of the search origin.
+# - SearchBackward
+# Start searching toward the left of the search origin.
+# - Copy
+# - Paste
+# - IncreaseFontSize
+# - DecreaseFontSize
+# - ResetFontSize
+# - ScrollPageUp
+# - ScrollPageDown
+# - ScrollHalfPageUp
+# - ScrollHalfPageDown
+# - ScrollLineUp
+# - ScrollLineDown
+# - ScrollToTop
+# - ScrollToBottom
+# - ClearHistory
+# Remove the terminal's scrollback history.
+# - Hide
+# Hide the Alacritty window.
+# - Minimize
+# Minimize the Alacritty window.
+# - Quit
+# Quit Alacritty.
+# - ToggleFullscreen
+# - ToggleMaximized
+# - SpawnNewInstance
+# Spawn a new instance of Alacritty.
+# - CreateNewWindow
+# Create a new Alacritty window from the current process.
+# - ClearLogNotice
+# Clear Alacritty's UI warning and error notice.
+# - ClearSelection
+# Remove the active selection.
+# - ReceiveChar
+# - None
+#
+# - Vi mode exclusive actions:
+#
+# - Open
+# Perform the action of the first matching hint under the vi mode cursor
+# with `mouse.enabled` set to `true`.
+# - ToggleNormalSelection
+# - ToggleLineSelection
+# - ToggleBlockSelection
+# - ToggleSemanticSelection
+# Toggle semantic selection based on `selection.semantic_escape_chars`.
+# - CenterAroundViCursor
+# Center view around vi mode cursor
+#
+# - Vi mode exclusive cursor motion actions:
+#
+# - Up
+# One line up.
+# - Down
+# One line down.
+# - Left
+# One character left.
+# - Right
+# One character right.
+# - First
+# First column, or beginning of the line when already at the first column.
+# - Last
+# Last column, or beginning of the line when already at the last column.
+# - FirstOccupied
+# First non-empty cell in this terminal row, or first non-empty cell of
+# the line when already at the first cell of the row.
+# - High
+# Top of the screen.
+# - Middle
+# Center of the screen.
+# - Low
+# Bottom of the screen.
+# - SemanticLeft
+# Start of the previous semantically separated word.
+# - SemanticRight
+# Start of the next semantically separated word.
+# - SemanticLeftEnd
+# End of the previous semantically separated word.
+# - SemanticRightEnd
+# End of the next semantically separated word.
+# - WordLeft
+# Start of the previous whitespace separated word.
+# - WordRight
+# Start of the next whitespace separated word.
+# - WordLeftEnd
+# End of the previous whitespace separated word.
+# - WordRightEnd
+# End of the next whitespace separated word.
+# - Bracket
+# Character matching the bracket at the cursor's location.
+# - SearchNext
+# Beginning of the next match.
+# - SearchPrevious
+# Beginning of the previous match.
+# - SearchStart
+# Start of the match to the left of the vi mode cursor.
+# - SearchEnd
+# End of the match to the right of the vi mode cursor.
+#
+# - Search mode exclusive actions:
+# - SearchFocusNext
+# Move the focus to the next search match.
+# - SearchFocusPrevious
+# Move the focus to the previous search match.
+# - SearchConfirm
+# - SearchCancel
+# - SearchClear
+# Reset the search regex.
+# - SearchDeleteWord
+# Delete the last word in the search regex.
+# - SearchHistoryPrevious
+# Go to the previous regex in the search history.
+# - SearchHistoryNext
+# Go to the next regex in the search history.
+#
+# - macOS exclusive actions:
+# - ToggleSimpleFullscreen
+# Enter fullscreen without occupying another space.
+#
+# - Linux/BSD exclusive actions:
+#
+# - CopySelection
+# Copy from the selection buffer.
+# - PasteSelection
+# Paste from the selection buffer.
+#
+# - `command`: Fork and execute a specified command plus arguments
+#
+# The `command` field must be a map containing a `program` string and an
+# `args` array of command line parameter strings. For example:
+# `{ program: "alacritty", args: ["-e", "vttest"] }`
+#
+# And optionally:
+#
+# - `mods`: Key modifiers to filter binding actions
+#
+# - Command
+# - Control
+# - Option
+# - Super
+# - Shift
+# - Alt
+#
+# Multiple `mods` can be combined using `|` like this:
+# `mods: Control|Shift`.
+# Whitespace and capitalization are relevant and must match the example.
+#
+# - `mode`: Indicate a binding for only specific terminal reported modes
+#
+# This is mainly used to send applications the correct escape sequences
+# when in different modes.
+#
+# - AppCursor
+# - AppKeypad
+# - Search
+# - Alt
+# - Vi
+#
+# A `~` operator can be used before a mode to apply the binding whenever
+# the mode is *not* active, e.g. `~Alt`.
+#
+# Bindings are always filled by default, but will be replaced when a new
+# binding with the same triggers is defined. To unset a default binding, it can
+# be mapped to the `ReceiveChar` action. Alternatively, you can use `None` for
+# a no-op if you do not wish to receive input characters for that binding.
+#
+# If the same trigger is assigned to multiple actions, all of them are executed
+# in the order they were defined in.
+#key_bindings:
+ #- { key: Paste, action: Paste }
+ #- { key: Copy, action: Copy }
+ #- { key: L, mods: Control, action: ClearLogNotice }
+ #- { key: L, mods: Control, mode: ~Vi|~Search, chars: "\x0c" }
+ #- { key: PageUp, mods: Shift, mode: ~Alt, action: ScrollPageUp }
+ #- { key: PageDown, mods: Shift, mode: ~Alt, action: ScrollPageDown }
+ #- { key: Home, mods: Shift, mode: ~Alt, action: ScrollToTop }
+ #- { key: End, mods: Shift, mode: ~Alt, action: ScrollToBottom }
+
+ # Vi Mode
+ #- { key: Space, mods: Shift|Control, mode: ~Search, action: ToggleViMode }
+ #- { key: Space, mods: Shift|Control, mode: Vi|~Search, action: ScrollToBottom }
+ #- { key: Escape, mode: Vi|~Search, action: ClearSelection }
+ #- { key: I, mode: Vi|~Search, action: ToggleViMode }
+ #- { key: I, mode: Vi|~Search, action: ScrollToBottom }
+ #- { key: C, mods: Control, mode: Vi|~Search, action: ToggleViMode }
+ #- { key: Y, mods: Control, mode: Vi|~Search, action: ScrollLineUp }
+ #- { key: E, mods: Control, mode: Vi|~Search, action: ScrollLineDown }
+ #- { key: G, mode: Vi|~Search, action: ScrollToTop }
+ #- { key: G, mods: Shift, mode: Vi|~Search, action: ScrollToBottom }
+ #- { key: B, mods: Control, mode: Vi|~Search, action: ScrollPageUp }
+ #- { key: F, mods: Control, mode: Vi|~Search, action: ScrollPageDown }
+ #- { key: U, mods: Control, mode: Vi|~Search, action: ScrollHalfPageUp }
+ #- { key: D, mods: Control, mode: Vi|~Search, action: ScrollHalfPageDown }
+ #- { key: Y, mode: Vi|~Search, action: Copy }
+ #- { key: Y, mode: Vi|~Search, action: ClearSelection }
+ #- { key: Copy, mode: Vi|~Search, action: ClearSelection }
+ #- { key: V, mode: Vi|~Search, action: ToggleNormalSelection }
+ #- { key: V, mods: Shift, mode: Vi|~Search, action: ToggleLineSelection }
+ #- { key: V, mods: Control, mode: Vi|~Search, action: ToggleBlockSelection }
+ #- { key: V, mods: Alt, mode: Vi|~Search, action: ToggleSemanticSelection }
+ #- { key: Return, mode: Vi|~Search, action: Open }
+ #- { key: Z, mode: Vi|~Search, action: CenterAroundViCursor }
+ #- { key: K, mode: Vi|~Search, action: Up }
+ #- { key: J, mode: Vi|~Search, action: Down }
+ #- { key: H, mode: Vi|~Search, action: Left }
+ #- { key: L, mode: Vi|~Search, action: Right }
+ #- { key: Up, mode: Vi|~Search, action: Up }
+ #- { key: Down, mode: Vi|~Search, action: Down }
+ #- { key: Left, mode: Vi|~Search, action: Left }
+ #- { key: Right, mode: Vi|~Search, action: Right }
+ #- { key: Key0, mode: Vi|~Search, action: First }
+ #- { key: Key4, mods: Shift, mode: Vi|~Search, action: Last }
+ #- { key: Key6, mods: Shift, mode: Vi|~Search, action: FirstOccupied }
+ #- { key: H, mods: Shift, mode: Vi|~Search, action: High }
+ #- { key: M, mods: Shift, mode: Vi|~Search, action: Middle }
+ #- { key: L, mods: Shift, mode: Vi|~Search, action: Low }
+ #- { key: B, mode: Vi|~Search, action: SemanticLeft }
+ #- { key: W, mode: Vi|~Search, action: SemanticRight }
+ #- { key: E, mode: Vi|~Search, action: SemanticRightEnd }
+ #- { key: B, mods: Shift, mode: Vi|~Search, action: WordLeft }
+ #- { key: W, mods: Shift, mode: Vi|~Search, action: WordRight }
+ #- { key: E, mods: Shift, mode: Vi|~Search, action: WordRightEnd }
+ #- { key: Key5, mods: Shift, mode: Vi|~Search, action: Bracket }
+ #- { key: Slash, mode: Vi|~Search, action: SearchForward }
+ #- { key: Slash, mods: Shift, mode: Vi|~Search, action: SearchBackward }
+ #- { key: N, mode: Vi|~Search, action: SearchNext }
+ #- { key: N, mods: Shift, mode: Vi|~Search, action: SearchPrevious }
+
+ # Search Mode
+ #- { key: Return, mode: Search|Vi, action: SearchConfirm }
+ #- { key: Escape, mode: Search, action: SearchCancel }
+ #- { key: C, mods: Control, mode: Search, action: SearchCancel }
+ #- { key: U, mods: Control, mode: Search, action: SearchClear }
+ #- { key: W, mods: Control, mode: Search, action: SearchDeleteWord }
+ #- { key: P, mods: Control, mode: Search, action: SearchHistoryPrevious }
+ #- { key: N, mods: Control, mode: Search, action: SearchHistoryNext }
+ #- { key: Up, mode: Search, action: SearchHistoryPrevious }
+ #- { key: Down, mode: Search, action: SearchHistoryNext }
+ #- { key: Return, mode: Search|~Vi, action: SearchFocusNext }
+ #- { key: Return, mods: Shift, mode: Search|~Vi, action: SearchFocusPrevious }
+
+ # (Windows, Linux, and BSD only)
+ #- { key: V, mods: Control|Shift, mode: ~Vi, action: Paste }
+ #- { key: C, mods: Control|Shift, action: Copy }
+ #- { key: F, mods: Control|Shift, mode: ~Search, action: SearchForward }
+ #- { key: B, mods: Control|Shift, mode: ~Search, action: SearchBackward }
+ #- { key: C, mods: Control|Shift, mode: Vi|~Search, action: ClearSelection }
+ #- { key: Insert, mods: Shift, action: PasteSelection }
+ #- { key: Key0, mods: Control, action: ResetFontSize }
+ #- { key: Equals, mods: Control, action: IncreaseFontSize }
+ #- { key: Plus, mods: Control, action: IncreaseFontSize }
+ #- { key: NumpadAdd, mods: Control, action: IncreaseFontSize }
+ #- { key: Minus, mods: Control, action: DecreaseFontSize }
+ #- { key: NumpadSubtract, mods: Control, action: DecreaseFontSize }
+
+ # (Windows only)
+ #- { key: Return, mods: Alt, action: ToggleFullscreen }
+
+ # (macOS only)
+ #- { key: K, mods: Command, mode: ~Vi|~Search, chars: "\x0c" }
+ #- { key: K, mods: Command, mode: ~Vi|~Search, action: ClearHistory }
+ #- { key: Key0, mods: Command, action: ResetFontSize }
+ #- { key: Equals, mods: Command, action: IncreaseFontSize }
+ #- { key: Plus, mods: Command, action: IncreaseFontSize }
+ #- { key: NumpadAdd, mods: Command, action: IncreaseFontSize }
+ #- { key: Minus, mods: Command, action: DecreaseFontSize }
+ #- { key: NumpadSubtract, mods: Command, action: DecreaseFontSize }
+ #- { key: V, mods: Command, action: Paste }
+ #- { key: C, mods: Command, action: Copy }
+ #- { key: C, mods: Command, mode: Vi|~Search, action: ClearSelection }
+ #- { key: H, mods: Command, action: Hide }
+ #- { key: H, mods: Command|Alt, action: HideOtherApplications }
+ #- { key: M, mods: Command, action: Minimize }
+ #- { key: Q, mods: Command, action: Quit }
+ #- { key: W, mods: Command, action: Quit }
+ #- { key: N, mods: Command, action: CreateNewWindow }
+ #- { key: F, mods: Command|Control, action: ToggleFullscreen }
+ #- { key: F, mods: Command, mode: ~Search, action: SearchForward }
+ #- { key: B, mods: Command, mode: ~Search, action: SearchBackward }
+
+#debug:
+ # Display the time it takes to redraw each frame.
+ #render_timer: false
+
+ # Keep the log file after quitting Alacritty.
+ #persistent_logging: false
+
+ # Log level
+ #
+ # Values for `log_level`:
+ # - Off
+ # - Error
+ # - Warn
+ # - Info
+ # - Debug
+ # - Trace
+ #log_level: Warn
+
+ # Renderer override.
+ # - glsl3
+ # - gles2
+ # - gles2_pure
+ #renderer: None
+
+ # Print all received window events.
+ #print_events: false
+
+ # Highlight window damage information.
+ #highlight_damage: false
diff --git a/mbsyncrc b/mbsyncrc
index 07b2508..4a405bf 100644
--- a/mbsyncrc
+++ b/mbsyncrc
@@ -1,54 +1,57 @@
SyncState *
Sync Pull All Push All
-IMAPAccount mrlemon@mailforce.net
-Host imap.fastmail.com
-Port 993
-User mrlemon@mailforce.net
-PassCmd "echo $(pass AppPasswords/mbsync_fastmail_may2022)"
+IMAPAccount gmail
+Host imap.gmail.com
+User matthew.lemon@gmail.com
+PassCmd "echo $(pass google_isync_mbsync)"
SSLType IMAPS
+#CertificateFile /etc/ssl/certs/ca-certificates.crt
-IMAPStore fastmail-remote
-Account mrlemon@mailforce.net
-UseNamespace yes
+IMAPStore gmail-remote
+Account gmail
-MaildirStore fastmail-local
+MaildirStore gmail-local
SubFolders Verbatim
-Inbox ~/Mail/fastmail/INBOX
-Path ~/Mail/fastmail/
-Flatten .
+Path ~/.mail/gmail/
+Inbox ~/.mail/gmail/Inbox
-Channel fastmailchannel
-Far :fastmail-remote:
-Near :fastmail-local:
-Patterns *
+Channel gmail
+Far :gmail-remote:
+Near :gmail-local:
+# Exclude everything under the internal [Gmail] folder, except the interesting folders
+Patterns * ![Gmail]* "[Gmail]/Sent Mail" "[Gmail]/Starred" "[Gmail]/All Mail"
+# Or include everything
+#Patterns *
+# Automatically create missing mailboxes, both locally and on the server
Create Both
+# Sync the movement of messages between folders and deletions, add after making sure the sync works
Expunge Both
+# Save the synchronization state files in the relevant directory
SyncState *
-
-IMAPAccount matthewlemon@protonmail.com
-Host 127.0.0.1
-Port 1143
-#User matt@matthewlemon.com
-User matthewlemon@protonmail.com
-PassCmd "echo $(pass AppPasswords/hydroxide)"
-SSLType None
-#AuthMechs LOGIN
-
-IMAPStore matthewlemonproton-remote
-Account matthewlemon@protonmail.com
+
+IMAPAccount mrlemon@purelymail.com
+Host imap.purelymail.com
+Port 993
+User mrlemon@purelymail.com
+PassCmd "echo $(pass purelymail_neomutt)"
+SSLType IMAPS
+
+IMAPStore purelymail-remote
+Account mrlemon@purelymail.com
UseNamespace yes
-
-MaildirStore matthewlemonproton-local
+
+MaildirStore purelymail-local
SubFolders Verbatim
-Inbox ~/Mail/matthewlemonproton/INBOX
-Path ~/Mail/matthewlemonproton/
+Inbox ~/.mail/purelymail/INBOX
+Path ~/.mail/purelymail/
Flatten .
-
-Channel matthewlemonproton
-Far :matthewlemonproton-remote:
-Near :matthewlemonproton-local:
-Patterns * !"All Mail"*
+
+Channel purelymailchannel
+Far :purelymail-remote:
+Near :purelymail-local:
+Patterns *
Create Both
Expunge Both
SyncState *
+
diff --git a/msmtprc b/msmtprc
index 3a5c3ab..1754d3f 100644
--- a/msmtprc
+++ b/msmtprc
@@ -1,6 +1,6 @@
-account matthewlemon
+account purelymail
#host mail.messagingengine.com
-host smtp.fastmail.com
+host smtp.purelymail.com
from matt@matthewlemon.com
tls on
tls_certcheck off
@@ -8,9 +8,10 @@ tls_starttls off
#tls_trust_file /etc/ssl/certs/ca-certificates.crt
port 465
auth on
-user matthewlemon@fastmail.fm
+user mrlemon@purelymail.com
+passwordeval pass purelymail_neomutt
#passwordeval python2 -c "import keyring; print keyring.get_password('fastmail', 'matthewlemon')"
-passwordeval pass AppPasswords/fastmail-offlineimap
+#passwordeval pass evolution_email_fastmail
#passwordeval gpg --no-tty -q -d /home/lemon/.password-store/Email/fastmail.gpg
#passwordeval gpg -d /home/lemon/.password-store/Email/fastmail.gpg
logfile ~/.msmtp.log
@@ -26,4 +27,4 @@ logfile ~/.msmtp.log
#tls_trust_file /etc/ssl/certs/ca-certificates.crt
#passwordeval pass Email/gmail-application
-account default : matthewlemon
+account default : purelymail
diff --git a/mutt/colors256-light b/mutt/colors256-light
new file mode 100644
index 0000000..8487d67
--- /dev/null
+++ b/mutt/colors256-light
@@ -0,0 +1,94 @@
+#light colorscheme
+
+color normal color22 color230
+color indicator color22 color185
+color tree color136 color230
+color status color233 color214
+color error color231 color160
+color message color231 color166
+color signature color240 color230
+color attachment color37 color230
+color search color21 color215
+color tilde color130 color230
+color markers color138 color230
+
+#mono bold reverse
+#color bold color173 color191
+#mono underline reverse
+#color underline color48 color191
+
+color quoted color19 color230 # quoted text
+color quoted1 color88 color230
+color quoted2 color55 color230
+color quoted3 color16 color230
+color quoted4 color52 color230
+color quoted5 color24 color230
+color quoted6 color96 color230
+color quoted7 color235 color230
+color quoted8 color130 color230
+color quoted9 color26 color230
+# color body cyan color230 "((ftp|http|https)://|news:)[^ >)\"\t]+"
+# color body cyan color230 "[-a-z_0-9.+]+@[-a-z_0-9.]+"
+# color body red color230 "(^| )\\*[-a-z0-9*]+\\*[,.?]?[ \n]"
+# color body green color230 "(^| )_[-a-z0-9_]+_[,.?]?[\n]"
+# color body red color230 "(^| )\\*[-a-z0-9*]+\\*[,.?]?[ \n]"
+# color body green color230 "(^| )_[-a-z0-9_]+_[,.?]?[ \n]"
+
+color index color160 color230 ~F # Flagged
+color index color20 color228 ~N # New
+color index color20 color231 ~O
+color index color22 color221 ~T # Tagged
+color index color240 color230 ~D # Deleted
+
+######################
+
+#mono body reverse '^(subject):.*'
+#color body brightwhite magenta '^(subject):.*'
+#mono body reverse '[[:alpha:]][[:alnum:]-]+:'
+#color body black cyan '[[:alpha:]][[:alnum:]-]+:'
+
+######################
+# header
+
+color hdrdefault color23 color229
+color header color30 color229 '^date:'
+color header color22 color229 '^(to|cc|bcc):'
+color header color20 color229 '^from:'
+color header color124 color229 '^subject:'
+color header color31 color229 '^user-agent:'
+color header color29 color229 '^reply-to:'
+
+#color header magenta default '^(status|lines|date|received|sender|references):'
+#color header magenta default '^(pr|mime|x-|user|return|content-)[^:]*:'
+#color header brightyellow default '^content-type:'
+#color header magenta default '^content-type: *text/plain'
+# color header brightgreen default '^list-[^:]*:'
+#mono header bold '^(subject):.*$'
+#color header brightcyan default '^(disposition)'
+#color header green default '^(mail-)?followup'
+#color header white default '^reply'
+#color header brightwhite default '^(resent)'
+# color header brightwhite default '^from:'
+
+######################
+# spam
+
+### html
+#color index blue default '~b "<(img|a |html|body)"'
+
+### china spam
+#color index brightred black '~h "^(content-type:| +).*charset=\"?(big5|gb2312|SHIFT.JIS|euc.kr|windows.125[^2]|iso.[0-9]+.jp|koi[^ ;"])"'
+
+### sex
+#color index brightyellow black "~b '(p$E+n$I+$S|sex|er$E+ct$I+$O+n|p$O+rn$O+|v$I+$A+gr|c$I+$A+$L+$I+$S)'"
+
+### misc
+#color index cyan black '~b "(w$A+tch|r$E+p$L+$I+c$A|d$I+p$L+$O+m|d$E+gr$E+e|pr$I+ce|s$A+les|\\\$[0-9]+)"'
+
+### drug
+#color index white black "~b '(ph$A+rm$A+cy|m$E+d$I+c$A+t$I+$O+n|pr$E+scr$I+pt$I+$O+n|d$I+$S+c$O+$U+nt|p$I+$L+$S|v$A+$L+$I+$U+m|v$I+c$O+d$I+n)'"
+
+
+#mono index bold '~h "^content-type: *(multipart/(mixed|signed|encrypted)|application/)"'
+#color index green black '~h "^content-type: *multipart/(signed|encrypted)"'
+
diff --git a/mutt/colors_purple b/mutt/colors_purple
new file mode 100644
index 0000000..818f42c
--- /dev/null
+++ b/mutt/colors_purple
@@ -0,0 +1,39 @@
+
+#-------------------snip-----------------------
+set allow_ansi=yes
+
+color normal black default
+color quoted color65 default
+color quoted1 color138 default
+color quoted2 color58 default
+color quoted3 color105 default
+color quoted4 cyan default
+color quoted5 cyan default
+
+color indicator black color249
+color message green default
+color status color139 color254
+color error color58 default
+color attachment black default
+color signature color253 default
+color markers red yellow
+color tilde black default
+color search black green
+color tree black default
+color bold black default
+
+color hdrdefault black default
+color header green default '^From:'
+color header green default '^Subject:'
+color header cyan default '^To:.*corky1951'
+
+color index color22 default ~N
+color index blue default ~F
+color index color55 default ~T
+color index color52 default ~D
+
+color body color22 default "(http|https|ftp|news|telnet|finger)://[^ \">\t\r\n]*"
+color body color22 default "mailto:[-a-z_0-9.]+ <at> [-a-z_0-9.]+"
+color body color22 default "news:[^ \">\t\r\n]*"
+
+color body green default "[-a-z_0-9.%$]+ <at> [-a-z_0-9.]+\\.[-a-z][-a-z]+"
diff --git a/mutt/gpg.rc b/mutt/gpg.rc
new file mode 100644
index 0000000..404f8b6
--- /dev/null
+++ b/mutt/gpg.rc
@@ -0,0 +1,93 @@
+# -*-muttrc-*-
+#
+# Command formats for gpg.
+#
+# This version uses gpg-2comp from
+# http://70t.de/download/gpg-2comp.tar.gz
+#
+# %p The empty string when no passphrase is needed,
+# the string "PGPPASSFD=0" if one is needed.
+#
+# This is mostly used in conditional % sequences.
+#
+# %f Most PGP commands operate on a single file or a file
+# containing a message. %f expands to this file's name.
+#
+# %s When verifying signatures, there is another temporary file
+# containing the detached signature. %s expands to this
+# file's name.
+#
+# %a In "signing" contexts, this expands to the value of the
+# configuration variable $pgp_sign_as. You probably need to
+# use this within a conditional % sequence.
+#
+# %r In many contexts, neomutt passes key IDs to pgp. %r expands to
+# a list of key IDs.
+
+# Note that we explicitly set the comment armor header since GnuPG, when used
+# in some localiaztion environments, generates 8bit data in that header, thereby
+# breaking PGP/MIME.
+
+# Enable GPGME for encyption
+set crypt_use_gpgme = yes
+set crypt_autosign = yes
+
+# default key
+set pgp_default_key = "19014642A9FCD633B886B8F59C9841C3EF4E0B8E"
+
+# decode application/pgp
+set pgp_decode_command="gpg --status-fd=2 %?p?--passphrase-fd 0? --no-verbose --quiet --batch --output - %f"
+
+# verify a pgp/mime signature
+set pgp_verify_command="gpg --status-fd=2 --no-verbose --quiet --batch --output - --verify %s %f"
+
+# decrypt a pgp/mime attachment
+set pgp_decrypt_command="gpg --status-fd=2 %?p?--passphrase-fd 0? --no-verbose --quiet --batch --output - %f"
+
+# create a pgp/mime signed attachment
+# set pgp_sign_command="gpg-2comp --comment '' --no-verbose --batch --output - %?p?--passphrase-fd 0? --armor --detach-sign --textmode %?a?-u %a? %f"
+set pgp_sign_command="gpg --no-verbose --batch --quiet --output - %?p?--passphrase-fd 0? --armor --detach-sign --textmode %?a?-u %a? %f"
+
+# create a application/pgp signed (old-style) message
+# set pgp_clearsign_command="gpg-2comp --comment '' --no-verbose --batch --output - %?p?--passphrase-fd 0? --armor --textmode --clearsign %?a?-u %a? %f"
+set pgp_clearsign_command="gpg --no-verbose --batch --quiet --output - %?p?--passphrase-fd 0? --armor --textmode --clearsign %?a?-u %a? %f"
+
+# create a pgp/mime encrypted attachment
+# set pgp_encrypt_only_command="/usr/lib/neomutt/pgpewrap gpg-2comp -v --batch --output - --encrypt --textmode --armor --always-trust -- -r %r -- %f"
+set pgp_encrypt_only_command="/usr/lib/neomutt/pgpewrap gpg --batch --quiet --no-verbose --output - --encrypt --textmode --armor --always-trust -- -r %r -- %f"
+
+# create a pgp/mime encrypted and signed attachment
+# set pgp_encrypt_sign_command="/usr/lib/neomutt/pgpewrap gpg-2comp %?p?--passphrase-fd 0? -v --batch --output - --encrypt --sign %?a?-u %a? --armor --always-trust -- -r %r -- %f"
+set pgp_encrypt_sign_command="/usr/lib/neomutt/pgpewrap gpg %?p?--passphrase-fd 0? --batch --quiet --no-verbose --textmode --output - --encrypt --sign %?a?-u %a? --armor --always-trust -- -r %r -- %f"
+
+# import a key into the public key ring
+set pgp_import_command="gpg --no-verbose --import %f"
+
+# export a key from the public key ring
+set pgp_export_command="gpg --no-verbose --export --armor %r"
+
+# verify a key
+set pgp_verify_key_command="gpg --verbose --batch --fingerprint --check-sigs %r"
+
+# read in the public key ring
+set pgp_list_pubring_command="gpg --no-verbose --batch --quiet --with-colons --with-fingerprint --with-fingerprint --list-keys %r"
+
+# read in the secret key ring
+set pgp_list_secring_command="gpg --no-verbose --batch --quiet --with-colons --with-fingerprint --with-fingerprint --list-secret-keys %r"
+
+# fetch keys
+# set pgp_getkeys_command="pkspxycwrap %r"
+
+# pattern for good signature - may need to be adapted to locale!
+
+# set pgp_good_sign="^gpgv?: Good signature from "
+
+# OK, here's a version which uses gnupg's message catalog:
+# set pgp_good_sign="`gettext -d gnupg -s 'Good signature from "' | tr -d '"'`"
+
+# This version uses --status-fd messages
+set pgp_good_sign="^\\[GNUPG:\\] GOODSIG"
+
+# pattern to verify a decryption occurred
+set pgp_decryption_okay="^\\[GNUPG:\\] DECRYPTION_OKAY"
+
diff --git a/mutt/mailboxes b/mutt/mailboxes
new file mode 100644
index 0000000..6274523
--- /dev/null
+++ b/mutt/mailboxes
@@ -0,0 +1,9 @@
+mailboxes "+INBOX" "+Archive" "+Drafts" "+Sent" "+Scans" "+Trash"
+
+virtual-mailboxes "bookmarks" "notmuch://?query=to:bookmark@matthewlemon.com"
+virtual-mailboxes "from Jo" "notmuch://?query=from:joanna"
+virtual-mailboxes "Harvey" "notmuch://?query=harvey"
+virtual-mailboxes "nm-sent" "notmuch://?query=tag:sent"
+virtual-mailboxes "nm-inbox" "notmuch://?query=tag:inbox"
+virtual-mailboxes "Tasks" "notmuch://?query=to:matt+task@matthewlemon.com or to:matthewlemon+task@protonmail.com or to:madmin+task@rushpost.com"
+virtual-mailboxes "last week" "notmuch://?query=date:7days..today"
diff --git a/mutt/mailcap b/mutt/mailcap
index 9a568c0..f189bbd 100644
--- a/mutt/mailcap
+++ b/mutt/mailcap
@@ -2,19 +2,21 @@
# DONT HAVE A SOLUTION YET: application/msword; ~/.mutt/view_attachment.sh %s "-" '/Applications/TextEdit.app'
# Images
-image/jpg; ~/.mutt/view_attachment.sh %s jpg ristretto
-image/jpeg; ~/.mutt/view_attachment.sh %s jpg ristretto
+image/jpg; ~/.mutt/view_attachment.sh %s jpg feh
+image/jpeg; ~/.mutt/view_attachment.sh %s jpg feh
image/pjpeg; ~/.mutt/view_attachment.sh %s jpg gpicview
image/png; ~/.mutt/view_attachment.sh %s png gpicview
image/gif; ~/.mutt/view_attachment.sh %s gif gpicview
# PDFs
-application/pdf; ~/.mutt/view_attachment.sh %s pdf evince
+application/pdf; ~/.mutt/view_attachment.sh %s pdf zathura
# HTML
#text/html; ~/.mutt/view_attachment.sh %s html w3m # try different
-text/html; w3m %s; nametemplate=%s.html
-text/html; w3m -dump %s; nametemplate=%s.html; copiousoutput
+# text/html; w3m %s; nametemplate=%s.html
+# text/html; w3m -dump %s; nametemplate=%s.html; copiousoutput
+text/html; lynx -dump %s; nametemplate=%s.html; copiousoutput
+#text/html; firefox %s & sleep 3; description=HTML Text; test=test -n "$DISPLAY"; nametemplate=%s.html
# Plain Text
text/plain; cat; copiousoutput; edit=$VISUAL %s
diff --git a/mutt/muttrc-softyellowgreen b/mutt/muttrc-softyellowgreen
new file mode 100644
index 0000000..c7c1793
--- /dev/null
+++ b/mutt/muttrc-softyellowgreen
@@ -0,0 +1,42 @@
+
+#-------------------snip-----------------------
+set allow_ansi=yes
+
+color normal black color255
+color quoted color236 color255
+color quoted1 color242 color255
+color quoted2 color246 color255
+color quoted3 color252 color255
+#color quoted4 cyan color255
+#color quoted5 cyan color255
+
+color indicator black color254
+color message color28 color254
+color status color143 color234
+color error color58 color254
+color attachment black color254
+color signature color252 color254
+color markers color104 color254
+color tilde color69 color254
+color search black color153
+color tree color184 color255
+color bold brightblack color254
+
+color hdrdefault black color254
+color header black color254 '^From:'
+color header black color254 '^Subject:'
+color header black color254 '^To:'
+
+color index color28 color255 ~N
+color index color100 color254 ~F
+color index color55 color254 ~T
+color index color244 color255 ~D
+
+color body color18 color254 "(http|https|ftp|news|telnet|finger)://[^ \">\t\r\n]*"
+color body color37 color255 "mailto:[-a-z_0-9.]+ <at> [-a-z_0-9.]+"
+color body color18 color254 "news:[^ \">\t\r\n]*"
+color body color112 color254 "[-a-z_0-9.%$]+ <at> [-a-z_0-9.]+\\.[-a-z][-a-z]+"
+color body color112 color254 "^.*Autoview.*$"
+
+
+
diff --git a/mutt/signature b/mutt/signature
index c375431..0b4207a 100644
--- a/mutt/signature
+++ b/mutt/signature
@@ -1,3 +1 @@
-
-Matthew Lemon
-Email: matt@matthewlemon.com
+Matthew
diff --git a/muttrc b/muttrc
index f64dfdb..d8dbba1 100644
--- a/muttrc
+++ b/muttrc
@@ -4,6 +4,7 @@
# source the mutt-solarized colorscheme
#source ~/dotfiles/.mutt/mutt-colors-solarized-dark-256.muttrc - no because it doesn't really work ya radge
+#source ~/.mutt/mutt-colors-solarized-light-256.muttrc
set folder = ~/.mail/ # mailbox location
set alias_file = ~/.mutt/aliases # where to store aliases
@@ -13,6 +14,7 @@ set certificate_file = ~/.mutt/certificates # where to store certs
set mailcap_path = ~/.mutt/mailcap # entries for filetypes
set tmpdir = ~/.mutt/temp # where to keep temp files
set signature = ~/.mutt/signature # my signature file
+set attach_save_dir = ~/Downloads
# Allow forwarding of attachments with emails
set mime_forward
@@ -38,8 +40,8 @@ set text_flowed=yes
# Sidebar Patch --------------------------------------
#set sidebar_delim = '│'
set sidebar_visible = yes
-set sidebar_width = 20
-set sidebar_format = "%B%?F? [%F]?%* %?N?%N/?%S"
+set sidebar_width = 15
+#set sidebar_format = "%B%?F? [%F]?%* %?N?%N/?%S"
set mail_check_stats
#set sidebar_width = 24
## not working in xubuntu set sidebar_shortpath = yes
@@ -60,7 +62,7 @@ hdr_order from: to: cc: bcc: date: subject: # and in this order
# Account Settings -----------------------------------
# Default inbox.
-set spoolfile = "+matt-matthewlemon.com/INBOX"
+set spoolfile = "+purelymail/INBOX"
#set spoolfile = "+INBOX"
# Alternate email addresses.
@@ -70,24 +72,23 @@ set spoolfile = "+matt-matthewlemon.com/INBOX"
subscribe announce@openbsd.org
-named-mailboxes Inbox +matt-matthewlemon.com/INBOX \
- Sent\ Items +matt-matthewlemon.com/Sent\ Items \
- Archive +matt-matthewlemon.com/Archive \
- Archive\ 2019 +matt-matthewlemon.com/Archive.2019 \
- Drafts +matt-matthewlemon.com/Drafts \
- Gmail\ Old +matt-matthewlemon.com/Gmail\ Old\ Archive \
- Trash +matt-matthewlemon.com/Trash \
-
-# mailboxes +matt-matthewlemon.com/INBOX \
-# +matt-matthewlemon.com/INBOX.Archive \
-# +matt-matthewlemon.com/INBOX.Sent\ Items \
-# +matt-matthewlemon.com/INBOX.Drafts \
-# +matt-matthewlemon.com/INBOX.Trash \
+named-mailboxes Inbox +purelymail/INBOX \
+ Sent +purelymail/Sent \
+ Archive +purelymail/Archive \
+ Subscriptions +purelymail/Subscriptions \
+ Drafts +purelymail/Drafts \
+ Trash +purelymail/Trash
+
+# mailboxes purelymail/INBOX \
+# purelymail/INBOX.Archive \
+# purelymail/INBOX.Sent\ Items \
+# purelymail/INBOX.Drafts \
+# purelymail/INBOX.Trash \
#mailboxes +INBOX +INBOX.Archive +INBOX.Sent\ Items +INBOX.Drafts +INBOX.Trash
# Other special folders.
-set mbox = "+matt-matthewlemon.com/INBOX.Archive"
-set postponed = "+matt-matthewlemon.com/INBOX.Drafts"
+set mbox = "purelymail/INBOX.Archive"
+set postponed = "purelymail/INBOX.Drafts"
# Index View Options ---------------------------------
set date_format = "%d-%m-%Y"
@@ -113,9 +114,10 @@ macro index,pager \cb <pipe-entry>'urlview'<enter> 'Follow links with urlview'
macro attach,compose \cb <pipe-entry>'urlview'<enter> 'Follow links with urlview'
# Folder Shortcuts
-macro index Ei '<change-folder>+matt-matthewlemon.com/INBOX<enter>' 'Go to Inbox'
-macro index Ea '<change-folder>+matt-matthewlemon.com/Archive<enter>' 'Go to Archive'
-macro index Es '<change-folder>+matt-matthewlemon.com/Sent\ Items<enter>' 'Go to Sent Mail'
+macro index Ei '<change-folder>Inbox<enter>' 'Go to Inbox'
+macro index Ea '<change-folder>Archive<enter>' 'Go to Archive'
+macro index Es '<change-folder>Sent<enter>' 'Go to Sent Mail'
+macro index ES '<change-folder>Subscriptions<enter>' 'Go to Subscription'
# Navigate threads
bind index { previous-thread
@@ -131,8 +133,8 @@ bind index <space> collapse-thread
macro index \Cr "T~U<enter><tag-prefix><clear-flag>N<untag-pattern>.<enter>" "mark all messages as read"
# Sync email
-macro index O "<shell-escape>offlineimap<enter>" "run offlineimap to sync all mail"
-macro index o "<shell-escape>offlineimap -qf INBOX<enter>" "run offlineimap to sync inbox"
+macro index O "<shell-escape>clear && mbsync purelymailchannel<enter>" "run mbsync to sync all mail"
+#macro index o "<shell-escape>offlineimap -qf INBOX<enter>" "run offlineimap to sync inbox"
# Saner copy/move dialogs
macro index C "<copy-message>?<toggle-mailboxes>" "copy a message to a mailbox"
@@ -174,6 +176,7 @@ bind attach <return> view-mailcap
macro pager \Cu "|urlview<enter>" "call urlview to open links"
# Compose View Options -------------------------------
+unset reply_self # don't reply to me in a mailing list or group!
set realname = "Matthew Lemon" # who am i?
set envelope_from # which from?
set sig_dashes # dashes before sig
@@ -189,35 +192,49 @@ set reply_to # reply to Reply to: field
set reverse_name # reply as whomever it was to
set include # include message in replies
set forward_quote # include message in forwards
+set postpone=ask-no # default to know when asking to postpone
#set editor = "vim" # Use terminal Vim to compose email.
set editor = "vim %s"
set from = "matt@matthewlemon.com"
-set sendmail = "/usr/local/bin/msmtp -a matthewlemon"
+set sendmail = "/usr/bin/msmtp -a purelymail"
set sendmail_wait = 0
-set record = "+matt-matthewlemon.com/Sent\ Items"
+set record = "+purelymail/Sent"
+set recall=no # recall with Ctrl-r instead of asking all the time
-bind compose p postpone-message
-bind index p recall-message
+#bind compose p postpone-message
+#bind index p recall-message
# Get mutt to understand the contacts command line prog which reads Contacts
#set query_command = "contacts -Sf '%eTOKEN%n' '%s' | sed -e 's/TOKEN/\t/g'"
+# khard
+set query_command = "/home/lemon/src/virtualenvs/khal-venv/bin/khard email --parsable %s"
+
## Abook
-set query_command= "abook --mutt-query '%s'"
+#set query_command= "abook --mutt-query '%s'"
macro generic,index,pager \ca "<shell-escape>abook<return>" "launch abook"
macro index,pager A "<pipe-message>abook --add-email<return>" "Add this sender to Abook"
bind editor <Tab> complete-query
bind editor ^T complete
+#set query_command = "khard email --parsable %s"
+# bind editor <Tab> complete-query
+# bind editor ^T complete
+
+set query_command = "khard email --parsable %s"
+ bind editor <Tab> complete-query
+ bind editor ^T complete
+ macro index,pager A "<pipe-message>khard add-email<return>" "add the sender email address to khard"
+
# Better searching in mutt
bind index N search-opposite
bind pager N search-opposite
macro index a "<limit>all\n" "show all messages (undo limit)"
# get an email from mutt to taskwarrior
-macro index T "<pipe-message>mutt2task<enter> <move-message>+matt-matthewlemon.com/INBOX.Archive<enter>"
+macro index ,t "<pipe-message>mutt2task<enter> <move-message>purelymail/INBOX.Archive<enter>"
# Handle searching using notmuch (see Steve Losh article)
# this doesn't work on linux so using another macro index S "<enter-command>unset wait_key<enter><shell-escape>mutt-notmuch-py.py ~/.mail/temporary/search<enter><change-folder-readonly>+temporary/search<enter>" "search mail (using notmuch)"
@@ -225,32 +242,55 @@ macro index T "<pipe-message>mutt2task<enter> <move-message>+matt-matthewlemon.c
#new notmuch-mutt for linux
-macro index <F8> \
-"<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
-<shell-escape>notmuch-mutt -r --prompt search<enter>\
-<change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\
-<enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
- "notmuch: search mail"
-
-macro index <F9> \
-"<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
-<pipe-message>notmuch-mutt -r thread<enter>\
-<change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\
-<enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
- "notmuch: reconstruct thread"
-
-macro index <F6> \
-"<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
-<pipe-message>notmuch-mutt tag -- -inbox<enter>\
-<enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
- "notmuch: remove message from inbox"
+# Notmuch
+#set virtual_spoolfile=yes # uncomment this to have mutt open the first virtual-mailbox below when it launches
+macro index \\\\ "<vfolder-from-query>"
+virtual-mailboxes "Today" "notmuch://?query=date:today"
+virtual-mailboxes "Flagged" "notmuch://?query=tag:flagged"
+virtual-mailboxes "FromMe" "notmuch://?query=from:matt@matthewlemon.com"
+set nm_db_limit = 5000
+#set nm_default_url = ""
+set nm_open_timeout = 5
+set nm_query_window_enable=yes
+set nm_query_window_duration=2
+set nm_query_window_timebase="month" # or "hour", "day", "week", "month", "year"
+set nm_query_window_or_terms="tag:unread and tag:flagged"
+# read entire thread of the current message
+bind index,pager + entire-thread
+# generate virtual folder from query
+#bind index,pager \cf vfolder-from-query
+bind index < vfolder-window-backward
+bind index > vfolder-window-forward
+
+
+# neomutt does not require notmuch-mutt, so this lot is commented out
+
+# macro index <F8> \
+# "<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
+# <shell-escape>notmuch-mutt -r --prompt search<enter>\
+# <change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\
+# <enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
+# "notmuch: search mail"
+
+# macro index <F9> \
+# "<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
+# <pipe-message>notmuch-mutt -r thread<enter>\
+# <change-folder-readonly>`echo ${XDG_CACHE_HOME:-$HOME/.cache}/notmuch/mutt/results`<enter>\
+# <enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
+# "notmuch: reconstruct thread"
+
+# macro index <F6> \
+# "<enter-command>set my_old_pipe_decode=\$pipe_decode my_old_wait_key=\$wait_key nopipe_decode nowait_key<enter>\
+# <pipe-message>notmuch-mutt tag -- -inbox<enter>\
+# <enter-command>set pipe_decode=\$my_old_pipe_decode wait_key=\$my_old_wait_key<enter>" \
+# "notmuch: remove message from inbox"
# old Losh OSX-based orientation
#macro index <F8> "<enter-command>unset wait_key<enter><shell-escape>/usr/bin/notmuch-mutt --prompt search<enter><change-folder-readonly>~/.cache/mutt_results<enter>" "search mail (using notmuch)"
#macro index <F9> "<enter-command>unset wait_key<enter><pipe-message>/usr/bin/notmuch-mutt thread<enter><change-folder-readonly>~/.cache/mutt_results<enter><enter-command>set wait_key<enter>" "search and reconstruct owning thread (using notmuch)"
#
-#source ~/.mutt/gpg.rc # Use GPG
+source ~/.mutt/gpg.rc # Use GPG
#source ~/.mutt/auto_views # Define auto_views.
source ~/.mutt/aliases # Load in my aliases.
source ~/.mutt/subscriptions # Define the list of subscribed mailing lists.
@@ -262,7 +302,7 @@ source ~/.mutt/subscriptions # Define the list of subscribed mailing
#source ~/.mutt/message-hooks # Define message hooks.
#source ~/.mutt/bindings # Define key bindings.
#source ~/.mutt/macros # Define macros.
-source ~/.mutt/colours # Define colours.
+#source ~/.mutt/colours # Define colours.
#source ~/.mutt/sidebar # Define sidebar support (requires sidebar patch)
#
# MAILCAP
diff --git a/newsboat/config b/newsboat/config
index f0962a7..81aeae3 100644
--- a/newsboat/config
+++ b/newsboat/config
@@ -1,6 +1,17 @@
#browser "w3m %u"
auto-reload no
+urls-source "freshrss"
+freshrss-url "https://freshrss.twentyfoursoftware.co.uk/api/greader.php"
+freshrss-login "lemon"
+freshrss-password "flagstick-shivering-violet"
+freshrss-passwordeval "pass freshrss_api_password_for_lemon_user"
+freshrss-min-items 100
+freshrss-flag-star "s"
+
+datetime-format "%d %b %Y"
+
+
# confirm-mark-feed-read no
run-on-startup toggle-show-read-feeds
@@ -24,26 +35,42 @@ bind-key D pb-download
bind-key U show-urls
bind-key x pb-delete
+# default colours
+color background white black
+color listnormal white black
+color listfocus black green bold
+color listnormal_unread white black
+color listfocus_unread black green bold
+color title black green bold
+color info black green bold
+color hint-key black green bold
+color hint-keys-delimiter black green
+color hint-separator black green bold
+color hint-description black green
+color article white black
+
refresh-on-startup no
define-filter "Linux articles" "title =~ \"Linux\""
-color info color15 color6
+#color info color15 color6
#macro y set browser "mpv %u"; open-in-browser ; set browser "elinks %u"
#color listfocus color15 color0
-#color listfocus color14 color0
-#color listfocus_unread color15 color0 bold
+#color listfocus black green
+# color listfocus_unread black green bold
#highlight-article "title =~ \"Productivity\"" white red bold
#highlight-article "title =~ \"Setup\"" yellow red bold
#highlight all "Linux" yellow red bold
notify-program "notify-send"
-notify-screen yes
+notify-screen no
notify-xterm yes
-max-items 40
+max-items 60
download-path "~/Downloads"
player mpv
-browser /home/lemon/openbsd-dotfiles/lynx/lynx
-macro m set browser "mpv %u" ; open-in-browser ; set browser "/home/lemon/dotfiles/lynx/lynx %u"
+#browser /home/lemon/bin/lynx
+browser lynx
+#macro m set browser "mpv %u" ; open-in-browser ; set browser "/home/lemon/dotfiles/lynx/lynx %u"
+macro m set browser "mpv %u" ; open-in-browser ; set browser "lynx %u"
#
# press ,y to log the url - you can type a comment to prefix the URL in the log file but it doesn't prompt you...
# massive hack but it works
diff --git a/newsboat/urls b/newsboat/urls
index bef8009..d47e407 100644
--- a/newsboat/urls
+++ b/newsboat/urls
@@ -1,8 +1,15 @@
-https://hnrss.org/newcomments?q=openbsd
-https://hnrss.org/newest?q=openbsd
+https://planet.debian.org/rss20.xml
+https://www.youtube.com/feeds/videos.xml?channel_id=UCrqM0Ym_NbK1fqeQG2VIohg "YT: Tsoding"
+https://www.youtube.com/feeds/videos.xml?channel_id=UC2eYFnH61tmytImy1mTYvhA "YT: Luke Smith"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCittVh8imKanO_5KohzDbpg "YT: Paul Joseph Watson"
+https://www.youtube.com/feeds/videos.xml?channel_id=UC6x4zJADfr5Z4w-bf8lbrcg "YT: Anything Goes"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCs2Kaw3Soa63cJq3H0VA7og "YT: rwxrob"
+https://www.youtube.com/feeds/videos.xml?channel_id=UC7BL19P9OXPOJgu2DRzozDA "YT: Eskil Steenberg"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCu2oaGQ6Dds6g9lqfexUFbQ "YT: Squidge Rugby"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCAYKj_peyESIMDp5LtHlH2A "YT: unfa"
+https://www.youtube.com/feeds/videos.xml?channel_id=UC7YOGHUfC1Tb6E4pudI9STA "YT: Mental Outlaw"
https://hnrss.org/newest?q=plaintext
https://hnrss.org/newest?q=taskwarrior
-https://hnrss.org/newest?q=Roam
https://hnrss.org/newest
https://herbertlui.net/feed/
https://cheapskatesguide.org/cheapskates-guide-rss-feed.xml
@@ -16,9 +23,6 @@ https://bsdly.blogspot.com/feeds/posts/default
https://sivers.org/en.atom
http://feeds.bbci.co.uk/news/rss.xml
http://feeds.bbci.co.uk/sport/rugby-union/rss.xml?edition=uk
-https://krebsonsecurity.com/feed/
-https://www.computerweekly.com/rss/IT-security.xml
-https://undeadly.org/errata/errata.rss
https://eli.thegreenplace.net/feeds/all.atom.xml
https://m-chrzan.xyz/rss.xml
https://plaintextproject.online/feed.xml
@@ -37,12 +41,44 @@ https://greghendershott.com/
https://www.romanzolotarev.com/rss.xml
https://feeds.feedburner.com/StudyHacks
https://www.theregister.com/Design/page/feeds.html
-https://stevenpressfield.com/feed
-https://www.youtube.com/feeds/videos.xml?channel_id=UCrqM0Ym_NbK1fqeQG2VIohg "Tsoding"
-https://www.youtube.com/feeds/videos.xml?channel_id=UC2eYFnH61tmytImy1mTYvhA "Luke Smith"
-https://www.youtube.com/feeds/videos.xml?channel_id=UCittVh8imKanO_5KohzDbpg "Paul Joseph Watson"
-https://www.youtube.com/feeds/videos.xml?channel_id=UChWbNrHQHvKK6paclLp7WYw "Ben Hoff"
-https://www.youtube.com/feeds/videos.xml?channel_id=UC5A6gpksxKgudZxrTOpz0XA "fstori"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCOKHwx1VCdgnxwbjyb9Iu1g "YT: Blender Guru"
+https://www.youtube.com/feeds/videos.xml?channel_id=UC3XJRyvLD7rvsVFCFS1IX0A "YT: Notch"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCKTehwyGCKF-b2wo0RKwrcg "YT: Bisquit"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCbNpPBMvCHr-TeJkkezog7Q "YT: David Beazley"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCkf4VIqu3Acnfzuk3kRIFwA "YT: gotbletu"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCaBNA-lmg35Wfx2eh2oDkWg "YT: Ashley Mills"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCMDg-RTfD384BAUw_Eq2hIg "YT: James Shore testing and agile"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCxwcmRAmBRzZMNS37dCgmHA "YT: Robo Nuggie"
+https://www.youtube.com/feeds/videos.xml?channel_id=UC2MDU-j8SJUjDKcwmUNrn8A "YT: Go stuff"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCXPHFM88IlFn68OmLwtPmZA "YT: Greg Hurrell"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCMV8p6Lb-bd6UZtTc_QD4zA "YT: Baggers"
+https://www.youtube.com/feeds/videos.xml?channel_id=UC5NAWkzbDW6XkHuuHpGKsSw "YT: Conor White-Sullivan"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCvr9isxq3sSbj-dcKPKyJZA "YT: David Healy - Music tech"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCThitpd5RCB2J5b_HlcseMw "YT: The countess and the curmegeon"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCyNtlmLB73-7gtlBz00XOQQ "YT: Folding Ideas"
+https://www.youtube.com/feeds/videos.xml?channel_id=UC_hrdZOVs5P-XSxNBdhqvDQ "YT: Dana French scripting"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCI_dcH8Zr2UqNT1EqvMNgTg "YT: Classical Music"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCfhSB16X9MXhzSFe_H7XbHg "YT: Bryan Jenks"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCd26IHBHcbtxD7pUdnIgiCw "YT: Mike Levin"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCDgXUW5fBzCGrwW3m2OrjxA "YT: Ultima"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCkHN7h7CFeYL6Y1N5JcEZug "YT: SunKnudsen Privacy and Security"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCajqxDsE7PBMI_IkgMkQ39w "YT: Eyemouth E-Racing"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCwgKmJM4ZJQRJ-U5NjvR2dg "YT: George Hotz"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCb8bmN_7d3p-Xt5GqYT2KnA "YT: Barry Brown"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCAsj9iReHzLEYv9QawGzIOg "YT: Blender Developers"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCaS4coxA2k1GU348UjJFi_Q "YT: climagic"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCxkMDXQ5qzYOgXPRnOBrp1w "YT: Mike Zamansky elisp"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCIjIAXXsX4YMYeFj-LP42-Q "YT: Anthony GG"
+https://www.youtube.com/feeds/videos.xml?channel_id=UC0uTPqBCFIpZxlz_Lv1tk_g "YT: Prot"
+https://www.youtube.com/feeds/videos.xml?channel_id=UC8wKWWarusivFpIcUx9ilOw "YT: By default"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCL4qB3ctFbv1wM0RNuELgEw "YT: Hackemslashem"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCmFeOdJI3IXgTBDzqBLD8qg "YT: Moon"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCqeYOThebLKYlvVeozxeR1Q "YT: Musical Streams"
+https://www.youtube.com/feeds/videos.xml?channel_id=UnvMBVMXMPKA4Lmy5Ihd-FQ "YT: Scott Scheper"
+https://www.youtube.com/feeds/videos.xml?channel_id=UUCT91RkThBWByo1NL_M8R8Ig "YT MohammadSajidAnwar"
+https://www.youtube.com/feeds/videos.xml?channel_id=UCgREucssIfY9e0Iy3yhse8w "YT: nixcasts"
+https://www.youtube.com/feeds/videos.xml?channel_id=UChWbNrHQHvKK6paclLp7WYw "YT: Ben Hoff"
+https://www.youtube.com/feeds/videos.xml?channel_id=UC5A6gpksxKgudZxrTOpz0XA "YT: fstori"
https://www.reddit.com/r/stallmanwasright.rss
http://feeds2.feedburner.com/Command-line-fu
https://www.debian.org/News/news
@@ -53,19 +89,5 @@ https://www.c0ffee.net/rss/
http://tonsky.me/blog/atom.xml
https://akkshaya.blog/feed
https://miguelmota.com/index.xml
-https://web3isgoinggreat.com/feed.xml
https://feeds.feedburner.com/arstechnica/open-source
https://karl-voit.at/feeds/lazyblorg-all.atom_1.0.links-only.xml
-https://nitter.net/openbsdnow/rss
-https://nitter.net/openbsd/rss
-https://nitter.net/webzinepuffy/rss
-https://nitter.net/bsdnow/rss
-https://nitter.net/jcs/rss
-https://nitter.net/openbsdjournal/rss
-https://nitter.net/pitrh/rss
-https://nitter.net/sizeofvoid/rss
-https://nitter.net/canadianbryan/rss
-https://nitter.net/wesley974/rss
-https://nitter.net/slashdot/rss
-https://www.romanzolotarev.com/rss.xml
-https://www.romanzolotarev.com/n/rss.xml
diff --git a/notmuch-config b/notmuch-config
index 5e598bd..9554105 100644
--- a/notmuch-config
+++ b/notmuch-config
@@ -12,7 +12,7 @@
#
[database]
-path=/home/lemon/Mail/
+path=/home/lemon/.mail
# User configuration
#
@@ -32,7 +32,7 @@ path=/home/lemon/Mail/
[user]
primary_email=matt@matthewlemon.com
-other_email=mrlemon@mailforce.net;
+other_email=mrlemon@purelymail.com
# Configuration for "notmuch new"
#