diff options
73 files changed, 1023 insertions, 58 deletions
diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..5420057 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +*.png binary +*.ttf binary @@ -1,5 +1,12 @@ -Xcursor.theme: Adwaita -Xcursor.size: 34 -XTerm*faceSize: 7 -XTerm*faceName: Envy Code R +#Xcursor*theme: Adwaita +#Xcursor*size: 64 +XTerm*faceSize: 14 +XTerm*selectToClipboard: true +XTerm*faceName: Iosevka SS13 Extended:style=light:antialias=true:hinting=false +xterm*scrollBar: false +xterm*rightScrollbar: false XTerm.termName: xterm-256color +XTerm*Background: #FEFFFA +XTerm*Foreground: black +XTerm*HiBackColor: #FEFFFA + diff --git a/config/aerc/accounts.conf b/config/aerc/accounts.conf new file mode 100644 index 0000000..50ca8dc --- /dev/null +++ b/config/aerc/accounts.conf @@ -0,0 +1,7 @@ +[Personal] +source = maildir://~/mail-home +outgoing = smtps+plain://marcc%40fastmail.fr@smtp.fastmail.com:465 +default = INBOX +outgoing-cred-cmd = pass fastmail/marcc +from = "Marc Coquand" <marc@mccd.space> +copy-to = Sent diff --git a/config/aerc/aerc.conf b/config/aerc/aerc.conf new file mode 100644 index 0000000..a594cf6 --- /dev/null +++ b/config/aerc/aerc.conf @@ -0,0 +1,561 @@ +# +# 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 + +# Set the $TERM environment variable used for the embedded terminal. +# +# Default: xterm-256color + +# Display OSC8 strings in the embedded terminal +# +# Default: false +enable-osc8=true + +[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: date<20,name<17,flags>4,subject<* +#index-columns=date<20,name<17,flags>4,subject<* + +# +# 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. +# +# Default settings +#column-date={{.DateAutoFormat .Date.Local}} +#column-name={{index (.From | names) 0}} +#column-flags={{.Flags | join ""}} +#column-subject={{.ThreadPrefix}}{{.Subject}} + +# +# 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-01-02 03:04 PM (ISO 8601 + 12 hour time) +#timestamp-format=2006-01-02 03:04 PM + +# +# Index-only time format for messages that were received/sent today. +# If this is not specified, timestamp-format is used instead. +# +#this-day-time-format= + +# +# Index-only time format for messages that were received/sent within the last +# 7 days. If this is not specified, timestamp-format is used instead. +# +#this-week-time-format= + +# +# Index-only time format for messages that were received/sent this year. +# If this is not specified, timestamp-format is used instead. +# +#this-year-time-format= + +# +# Width of the sidebar, including the border. +# +# Default: 20 +sidebar-width=0 + +# +# 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) + +# Enable mouse events in the ui, e.g. clicking and scrolling with the mousewheel +# +# Default: false +mouse-enabled=true + +# +# 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}} + +# 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}}{{if .Exists}}{{humanReadable .Exists}}{{end}} +#dirlist-right={{if .Unread}}{{humanReadable .Unread}}/{{end}}{{if .Exists}}{{humanReadable .Exists}}{{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=/usr/pkg/share/aerc/stylesets + +# Uncomment to use box-drawing characters for vertical and horizontal borders. +# +# Default: " " +#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=0ms + +# The minimum required characters to allow auto-completion to be triggered after +# completion-delay. +# +# 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 mesage threads. Default order is the the intial +# 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=true + +# 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 + +#[ui:account=foo] +# +# 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=true + +# Force client-side thread building +# +# Default: false +#force-client-threads=false + +# Debounce client-side thread building +# +# Default: 50ms +#client-threads-delay=50ms + +[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={{.StatusInfo}} | {{.TrayInfo}} +column-center={{.ContentInfo}} +column-right={{.PendingKeys}} + +# +# 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 -R +pager=less -R + +# +# 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/plain,text/html + +# +# 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 + +# 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. + +# +# 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 + +# +# 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 occurence of '%s' +# in the file-picker-cmd will be replaced the argument <arg> to :attach -m +# <arg>. +# +# The command must output the selected files to standard output, one file per +# line. +#file-picker-cmd= + +# +# Allow to address yourself when replying +# +# Default: true +#reply-to-self=true + +# +# 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 appended to +# the system $PATH to allow referencing filters from their name only: +# +# ${XDG_CONFIG_HOME:-~/.config}/aerc/filters +# ${XDG_DATA_HOME:-~/.local/share}/aerc/filters +# $PREFIX/share/aerc/filters +# /usr/share/aerc/filters +# +# The following variables are defined in the filter command environment: +# +# AERC_MIME_TYPE the part MIME type/subtype +# AERC_FORMAT the part content type format= parameter +# AERC_FILENAME the attachment filename (if any) +# AERC_SUBJECT the message Subject header value +# AERC_FROM the message From header value +# +# The first filter which matches the email's mimetype will be used, so order +# them from most to least specific. +# +# You can also match on non-mimetypes, by prefixing with the header to match +# against (non-case-sensitive) and a comma, e.g. subject,text will match a +# subject which contains "text". Use header,~regex to match against a regex. +# +text/plain=less -r +text/calendar=calendar +message/delivery-status=colorize +message/rfc822=colorize +#text/html=pandoc -f html -t plain +#text/html=w3m +#application/octet-stream=zathura +#text/*=bat -fP --file-name="$AERC_FILENAME" +#application/x-sh=bat -fP -l sh +# image/*=imgcat +#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 to be opened. If it is not +# encountered in the command, the temporary filename will be appened to the end +# of the command. +# +# 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*=firefox +# 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 "New mail from $AERC_FROM_NAME" "$AERC_SUBJECT" + +# +# Executed when aerc starts +#aerc-startup=aerc :terminal calcurse && aerc :next-tab + +# +# Executed when aerc shuts down. +#aerc-shutdown= + +[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=/usr/pkg/share/aerc/templates + +# 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 diff --git a/config/aerc/binds.conf b/config/aerc/binds.conf new file mode 100644 index 0000000..db96bca --- /dev/null +++ b/config/aerc/binds.conf @@ -0,0 +1,136 @@ +# Binds are of the form <key sequence> = <command to run> +# To use '=' in a key sequence, substitute it with "Eq": "<Ctrl+Eq>" +# If you wish to bind #, you can wrap the key sequence in quotes: "#" = quit +<C-p> = :prev-tab<Enter> +<C-n> = :next-tab<Enter> +<C-t> = :term<Enter> +? = :help keys<Enter> + +[messages] +q = :quit<Enter> + +j = :next<Enter> +<Down> = :next<Enter> +<C-d> = :next 50%<Enter> +<C-f> = :next 100%<Enter> +<PgDn> = :next 100%<Enter> + +k = :prev<Enter> +<Up> = :prev<Enter> +<C-u> = :prev 50%<Enter> +<C-b> = :prev 100%<Enter> +<PgUp> = :prev 100%<Enter> +g = :select 0<Enter> +G = :select -1<Enter> + +J = :next-folder<Enter> +K = :prev-folder<Enter> +H = :collapse-folder<Enter> +L = :expand-folder<Enter> + +v = :mark -t<Enter> +V = :mark -v<Enter> + + +T = :toggle-threads<Enter> + +<Enter> = :view<Enter> +d = :prompt 'Really delete this message?' 'delete-message'<Enter> +A = :archive flat<Enter> + +C = :compose<Enter> + +rr = :reply -a<Enter> +rq = :reply -aq<Enter> +Rr = :reply<Enter> +Rq = :reply -q<Enter> + +m = :mv<space> +c = :cf<space> +$ = :term<space> +! = :term<space> +| = :pipe<space> + +/ = :search<space> +\ = :filter<space> +n = :next-result<Enter> +N = :prev-result<Enter> +<Esc> = :clear<Enter> + +[messages:folder=Drafts] +<Enter> = :recall<Enter> + +[view] +/ = :toggle-key-passthrough<Enter>/ +q = :close<Enter> +O = :open<Enter> +S = :save<space> +| = :pipe<space> +D = :delete<Enter> +A = :archive flat<Enter> + +<C-l> = :open-link <space> + +f = :forward<Enter> +rr = :reply -a<Enter> +rq = :reply -aq<Enter> +Rr = :reply<Enter> +Rq = :reply -q<Enter> + +H = :toggle-headers<Enter> +<C-k> = :prev-part<Enter> +<C-j> = :next-part<Enter> +J = :next<Enter> +K = :prev<Enter> + +[view::passthrough] +$noinherit = true +$ex = <C-x> +<Esc> = :toggle-key-passthrough<Enter> + +[compose] +# Keybindings used when the embedded terminal is not selected in the compose +# view +$noinherit = true +$ex = <C-x> +<C-k> = :prev-field<Enter> +<C-j> = :next-field<Enter> +<A-p> = :switch-account -p<Enter> +<A-n> = :switch-account -n<Enter> +<tab> = :next-field<Enter> +<backtab> = :prev-field<Enter> +<C-p> = :prev-tab<Enter> +<C-n> = :next-tab<Enter> + +[compose::editor] +# Keybindings used when the embedded terminal is selected in the compose view +$noinherit = true +$ex = <C-x> +<C-k> = :prev-field<Enter> +<C-j> = :next-field<Enter> +<C-p> = :prev-tab<Enter> +<C-n> = :next-tab<Enter> + +[compose::review] +# Keybindings used when reviewing a message to be sent +y = :send<Enter> +n = :abort<Enter> +v = :preview<Enter> +p = :postpone<Enter> +q = :choose -o d discard abort -o p postpone postpone<Enter> +e = :edit<Enter> +a = :attach<space> +d = :detach<space> + +[terminal] +$noinherit = true +$ex = <C-x> + +<C-p> = :prev-tab<Enter> +<C-n> = :next-tab<Enter> + +[messages:account=Personal] +D = :mv Trash<Enter> + +[messages:account=Work] +D = :mv [Gmail]/Bin<Enter> diff --git a/config/qutebrowser/autoconfig.yml b/config/qutebrowser/autoconfig.yml index a578568..caac3e5 100644 --- a/config/qutebrowser/autoconfig.yml +++ b/config/qutebrowser/autoconfig.yml @@ -113,7 +113,7 @@ settings: fonts.default_family: global: Iosevka Aile fonts.default_size: - global: 7pt + global: 14pt fonts.downloads: global: default_size default_family fonts.web.family.fantasy: @@ -132,8 +132,12 @@ settings: global: never tabs.show: global: switching + url.default_page: + global: https://kagi.com url.searchengines: global: DEFAULT: https://kagi.com/search?q={} + url.start_pages: + global: https://kagi.com zoom.default: global: 150% @@ -6,15 +6,15 @@ autogroup 0 xarclock, XClock autogroup 0 clock, clock autogroup 0 xclock, xterm ignore xclock +vtile 55 unbind-key all - color menufg "#FFFFFF" #black color font "#000000" #black color menubg "#F5E094" #white color selfont "#000000" #black -color activeborder "#559999" -color inactiveborder "#E8E8E8" +color activeborder "#777777" +color inactiveborder "#DDDDDD" bind-mouse 4-3 window-resize bind-mouse 4-1 window-move @@ -24,6 +24,7 @@ bind-key 4-e "xterm -e aerc" bind-key 4-q window-close bind-key 4-m window-fullscreen bind-key 4-l window-vtile +bind-key 4-y window-htile bind-key 4-u window-vmaximize bind-key 4-f window-move-right-big bind-key 4S-f window-resize-right-big diff --git a/gnupg/gpg-agent.conf b/gnupg/gpg-agent.conf new file mode 100755 index 0000000..231e0ac --- /dev/null +++ b/gnupg/gpg-agent.conf @@ -0,0 +1,4 @@ +default-cache-ttl 999999999 +max-cache-ttl 999999999 +allow-preset-passphrase +pinentry-program /usr/pkg/bin/pinentry diff --git a/gnupg/gpg.conf b/gnupg/gpg.conf new file mode 100755 index 0000000..890c5f2 --- /dev/null +++ b/gnupg/gpg.conf @@ -0,0 +1 @@ +no-default-keyring @@ -1,19 +1,17 @@ -export GPG_TTY=/dev/pts/0 -export HISTFILE="$HOME/.history" -alias grep="ugrep --exclude-dir=node-modules --exclude-dir=_build" +#export HISTFILE="$HOME/.history" +#alias grep="ugrep --exclude-dir=node-modules --exclude-dir=_build" alias e="$EDITOR" +alias go=go122 alias g="git" -#alias sdf="sshpass -p $(pass sdf) ssh mccd@tty.sdf.org" +alias grep="ugrep" +alias tldr="NO_COLOR=1 tldr" +alias fd="NO_COLOR=1 fdfind" alias de='eval "$(direnv export bash)"' alias f-commit="fossil commit && fossil git export" alias jrnl='stitch -t :journal:' - -PS1='${PWD##*/} ' +alias bat='envstat -d acpibat0 | grep 'charge:' | awk "{print $6}"' set -o emacs -if [ -x "$(command -v opam)" ]; then - eval $(opam env) -fi +PS1='${PWD##*/} ' -date -apm +eval "$(zoxide init posix --hook prompt)" diff --git a/local/bin/capture b/local/bin/capture new file mode 100755 index 0000000..c4cd844 --- /dev/null +++ b/local/bin/capture @@ -0,0 +1,16 @@ +#!/bin/sh + +DATE=$(date +'%y-%m-%d.%H:%M.%S') +CAPTURE_FILE="/tmp/capture-$DATE" +echo $DATE +JRNL="$STITCH_DIRECTORY/$DATE.org" +echo '* ' > $CAPTURE_FILE +$EDITOR $CAPTURE_FILE +1 +if grep -q '^\*\s*$' $CAPTURE_FILE +then + echo "Empty capture; ignoring" +else + echo "Storing capture in $JRNL" + cat $CAPTURE_FILE > $JRNL +fi + diff --git a/local/bin/todo b/local/bin/todo new file mode 100755 index 0000000..f0a02b8 --- /dev/null +++ b/local/bin/todo @@ -0,0 +1,14 @@ +#!/bin/sh + +TODO_BASE='* TODO ' +JRNL="$STITCH_DIRECTORY/$(date +'%y-%m-%d.%H:%M.%S').org" +echo '* TODO ' > /tmp/capture +$EDITOR /tmp/capture +1 +if grep -q '^\* TODO\s*$' /tmp/capture +then + echo "Empty capture" +else + echo "Storing capture in $JRNL" + cat /tmp/capture > $JRNL +fi + diff --git a/local/share/fonts/IosevkaSS13-Bold.ttf b/local/share/fonts/IosevkaSS13-Bold.ttf Binary files differnew file mode 100644 index 0000000..5adc20b --- /dev/null +++ b/local/share/fonts/IosevkaSS13-Bold.ttf diff --git a/local/share/fonts/IosevkaSS13-BoldItalic.ttf b/local/share/fonts/IosevkaSS13-BoldItalic.ttf Binary files differnew file mode 100644 index 0000000..65e4275 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-BoldItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-BoldOblique.ttf b/local/share/fonts/IosevkaSS13-BoldOblique.ttf Binary files differnew file mode 100644 index 0000000..58750b2 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-BoldOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-Extended.ttf b/local/share/fonts/IosevkaSS13-Extended.ttf Binary files differnew file mode 100644 index 0000000..8bf150f --- /dev/null +++ b/local/share/fonts/IosevkaSS13-Extended.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedBold.ttf b/local/share/fonts/IosevkaSS13-ExtendedBold.ttf Binary files differnew file mode 100644 index 0000000..f23643d --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedBold.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedBoldItalic.ttf b/local/share/fonts/IosevkaSS13-ExtendedBoldItalic.ttf Binary files differnew file mode 100644 index 0000000..61b9973 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedBoldItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedBoldOblique.ttf b/local/share/fonts/IosevkaSS13-ExtendedBoldOblique.ttf Binary files differnew file mode 100644 index 0000000..8657c09 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedBoldOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedExtraBold.ttf b/local/share/fonts/IosevkaSS13-ExtendedExtraBold.ttf Binary files differnew file mode 100644 index 0000000..80d2dc7 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedExtraBold.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedExtraBoldItalic.ttf b/local/share/fonts/IosevkaSS13-ExtendedExtraBoldItalic.ttf Binary files differnew file mode 100644 index 0000000..b6645bf --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedExtraBoldItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedExtraBoldOblique.ttf b/local/share/fonts/IosevkaSS13-ExtendedExtraBoldOblique.ttf Binary files differnew file mode 100644 index 0000000..88f9585 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedExtraBoldOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedExtraLight.ttf b/local/share/fonts/IosevkaSS13-ExtendedExtraLight.ttf Binary files differnew file mode 100644 index 0000000..22a7abe --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedExtraLight.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedExtraLightItalic.ttf b/local/share/fonts/IosevkaSS13-ExtendedExtraLightItalic.ttf Binary files differnew file mode 100644 index 0000000..8fb491e --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedExtraLightItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedExtraLightOblique.ttf b/local/share/fonts/IosevkaSS13-ExtendedExtraLightOblique.ttf Binary files differnew file mode 100644 index 0000000..bd84354 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedExtraLightOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedHeavy.ttf b/local/share/fonts/IosevkaSS13-ExtendedHeavy.ttf Binary files differnew file mode 100644 index 0000000..8cc72d2 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedHeavy.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedHeavyItalic.ttf b/local/share/fonts/IosevkaSS13-ExtendedHeavyItalic.ttf Binary files differnew file mode 100644 index 0000000..137df73 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedHeavyItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedHeavyOblique.ttf b/local/share/fonts/IosevkaSS13-ExtendedHeavyOblique.ttf Binary files differnew file mode 100644 index 0000000..e6a0cbc --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedHeavyOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedItalic.ttf b/local/share/fonts/IosevkaSS13-ExtendedItalic.ttf Binary files differnew file mode 100644 index 0000000..f15527d --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedLight.ttf b/local/share/fonts/IosevkaSS13-ExtendedLight.ttf Binary files differnew file mode 100644 index 0000000..8694293 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedLight.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedLightItalic.ttf b/local/share/fonts/IosevkaSS13-ExtendedLightItalic.ttf Binary files differnew file mode 100644 index 0000000..ac366b5 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedLightItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedLightOblique.ttf b/local/share/fonts/IosevkaSS13-ExtendedLightOblique.ttf Binary files differnew file mode 100644 index 0000000..5a90087 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedLightOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedMedium.ttf b/local/share/fonts/IosevkaSS13-ExtendedMedium.ttf Binary files differnew file mode 100644 index 0000000..903fca8 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedMedium.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedMediumItalic.ttf b/local/share/fonts/IosevkaSS13-ExtendedMediumItalic.ttf Binary files differnew file mode 100644 index 0000000..48208ea --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedMediumItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedMediumOblique.ttf b/local/share/fonts/IosevkaSS13-ExtendedMediumOblique.ttf Binary files differnew file mode 100644 index 0000000..a1e0f00 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedMediumOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedOblique.ttf b/local/share/fonts/IosevkaSS13-ExtendedOblique.ttf Binary files differnew file mode 100644 index 0000000..b92a407 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedSemiBold.ttf b/local/share/fonts/IosevkaSS13-ExtendedSemiBold.ttf Binary files differnew file mode 100644 index 0000000..02c954f --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedSemiBold.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedSemiBoldItalic.ttf b/local/share/fonts/IosevkaSS13-ExtendedSemiBoldItalic.ttf Binary files differnew file mode 100644 index 0000000..d3a8451 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedSemiBoldItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedSemiBoldOblique.ttf b/local/share/fonts/IosevkaSS13-ExtendedSemiBoldOblique.ttf Binary files differnew file mode 100644 index 0000000..1a1d2de --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedSemiBoldOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedThin.ttf b/local/share/fonts/IosevkaSS13-ExtendedThin.ttf Binary files differnew file mode 100644 index 0000000..9b294a9 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedThin.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedThinItalic.ttf b/local/share/fonts/IosevkaSS13-ExtendedThinItalic.ttf Binary files differnew file mode 100644 index 0000000..e2a0c10 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedThinItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtendedThinOblique.ttf b/local/share/fonts/IosevkaSS13-ExtendedThinOblique.ttf Binary files differnew file mode 100644 index 0000000..b9f5ee2 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtendedThinOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtraBold.ttf b/local/share/fonts/IosevkaSS13-ExtraBold.ttf Binary files differnew file mode 100644 index 0000000..91bdf22 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtraBold.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtraBoldItalic.ttf b/local/share/fonts/IosevkaSS13-ExtraBoldItalic.ttf Binary files differnew file mode 100644 index 0000000..df36e15 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtraBoldItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtraBoldOblique.ttf b/local/share/fonts/IosevkaSS13-ExtraBoldOblique.ttf Binary files differnew file mode 100644 index 0000000..4e6fa98 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtraBoldOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtraLight.ttf b/local/share/fonts/IosevkaSS13-ExtraLight.ttf Binary files differnew file mode 100644 index 0000000..d26599e --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtraLight.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtraLightItalic.ttf b/local/share/fonts/IosevkaSS13-ExtraLightItalic.ttf Binary files differnew file mode 100644 index 0000000..d9856c1 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtraLightItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-ExtraLightOblique.ttf b/local/share/fonts/IosevkaSS13-ExtraLightOblique.ttf Binary files differnew file mode 100644 index 0000000..1accf09 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ExtraLightOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-Heavy.ttf b/local/share/fonts/IosevkaSS13-Heavy.ttf Binary files differnew file mode 100644 index 0000000..24ae757 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-Heavy.ttf diff --git a/local/share/fonts/IosevkaSS13-HeavyItalic.ttf b/local/share/fonts/IosevkaSS13-HeavyItalic.ttf Binary files differnew file mode 100644 index 0000000..4bdb262 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-HeavyItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-HeavyOblique.ttf b/local/share/fonts/IosevkaSS13-HeavyOblique.ttf Binary files differnew file mode 100644 index 0000000..f31bb9b --- /dev/null +++ b/local/share/fonts/IosevkaSS13-HeavyOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-Italic.ttf b/local/share/fonts/IosevkaSS13-Italic.ttf Binary files differnew file mode 100644 index 0000000..b83c3ad --- /dev/null +++ b/local/share/fonts/IosevkaSS13-Italic.ttf diff --git a/local/share/fonts/IosevkaSS13-Light.ttf b/local/share/fonts/IosevkaSS13-Light.ttf Binary files differnew file mode 100644 index 0000000..34d4918 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-Light.ttf diff --git a/local/share/fonts/IosevkaSS13-LightItalic.ttf b/local/share/fonts/IosevkaSS13-LightItalic.ttf Binary files differnew file mode 100644 index 0000000..1d034fa --- /dev/null +++ b/local/share/fonts/IosevkaSS13-LightItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-LightOblique.ttf b/local/share/fonts/IosevkaSS13-LightOblique.ttf Binary files differnew file mode 100644 index 0000000..2c2f1aa --- /dev/null +++ b/local/share/fonts/IosevkaSS13-LightOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-Medium.ttf b/local/share/fonts/IosevkaSS13-Medium.ttf Binary files differnew file mode 100644 index 0000000..25fa6e1 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-Medium.ttf diff --git a/local/share/fonts/IosevkaSS13-MediumItalic.ttf b/local/share/fonts/IosevkaSS13-MediumItalic.ttf Binary files differnew file mode 100644 index 0000000..851ac47 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-MediumItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-MediumOblique.ttf b/local/share/fonts/IosevkaSS13-MediumOblique.ttf Binary files differnew file mode 100644 index 0000000..6fb550d --- /dev/null +++ b/local/share/fonts/IosevkaSS13-MediumOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-Oblique.ttf b/local/share/fonts/IosevkaSS13-Oblique.ttf Binary files differnew file mode 100644 index 0000000..fbc37e1 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-Oblique.ttf diff --git a/local/share/fonts/IosevkaSS13-Regular.ttf b/local/share/fonts/IosevkaSS13-Regular.ttf Binary files differnew file mode 100644 index 0000000..88baaeb --- /dev/null +++ b/local/share/fonts/IosevkaSS13-Regular.ttf diff --git a/local/share/fonts/IosevkaSS13-SemiBold.ttf b/local/share/fonts/IosevkaSS13-SemiBold.ttf Binary files differnew file mode 100644 index 0000000..6f22260 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-SemiBold.ttf diff --git a/local/share/fonts/IosevkaSS13-SemiBoldItalic.ttf b/local/share/fonts/IosevkaSS13-SemiBoldItalic.ttf Binary files differnew file mode 100644 index 0000000..c321a3d --- /dev/null +++ b/local/share/fonts/IosevkaSS13-SemiBoldItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-SemiBoldOblique.ttf b/local/share/fonts/IosevkaSS13-SemiBoldOblique.ttf Binary files differnew file mode 100644 index 0000000..7c43381 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-SemiBoldOblique.ttf diff --git a/local/share/fonts/IosevkaSS13-Thin.ttf b/local/share/fonts/IosevkaSS13-Thin.ttf Binary files differnew file mode 100644 index 0000000..d9d0c5f --- /dev/null +++ b/local/share/fonts/IosevkaSS13-Thin.ttf diff --git a/local/share/fonts/IosevkaSS13-ThinItalic.ttf b/local/share/fonts/IosevkaSS13-ThinItalic.ttf Binary files differnew file mode 100644 index 0000000..1c1b60c --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ThinItalic.ttf diff --git a/local/share/fonts/IosevkaSS13-ThinOblique.ttf b/local/share/fonts/IosevkaSS13-ThinOblique.ttf Binary files differnew file mode 100644 index 0000000..3460e86 --- /dev/null +++ b/local/share/fonts/IosevkaSS13-ThinOblique.ttf @@ -1,24 +1,42 @@ -# $OpenBSD: dot.profile,v 1.8 2022/08/10 07:40:37 tb Exp $ -# -# sh/ksh initialization +PATH=$HOME/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R7/bin:/usr/pkg/bin + +PATH=${PATH}:/usr/pkg/sbin:/usr/games:/usr/local/bin:/usr/local/sbin +PATH=${PATH}:/home/mccd/go/bin:/home/mccd/.local/bin +XCURSOR_PATH="/usr/pkg/share/icons" -PATH=$HOME/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/local/bin:/usr/local/sbin export PATH HOME TERM +export LANG="en_US.UTF-8" +export XTERM_LOCALE=en_US.UTF-8 +export LC_ALL=en_US.UTF-8 +export XDG_CONFIG_HOME=/home/mccd/.config export EDITOR="vim" export GDK_DPI_SCALE="1.5" export GDK_SCALE="1.5" export XCURSOR_SIZE="32" +export XCURSOR_PATH="/usr/pkg/share/icons" +# So when you hover the desktop, it still uses Adwaita +export XCURSOR_THEME="Adwaita" export PF_INFO="ascii title os editor shell wm" export PF_ALIGN="5" export PF_COLOR="0" export MOZ_ACCELERATED=1 +export GSETTINGS_SCHEMA_DIR=/usr/pkg/share/glib-2.0/schemas -test -r /home/mccd/.opam/opam-init/init.sh && . /home/mccd/.opam/opam-init/init.sh > /dev/null 2> /dev/null || true -export PATH=${PATH}:~/.local/bin -export XDG_DATA_DIRS=${XDG_DATA_DIRS}:~/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share + +#test -r /home/mccd/.opam/opam-init/init.sh && . /home/mccd/.opam/opam-init/init.sh > /dev/null 2> /dev/null || true +export XDG_DATA_DIRS=${XDG_DATA_DIRS}:~/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/pkg/share:/usr/local/share export ENV=$HOME/.kshrc export HISTSIZE=65535 export HISTFILE=$HOME/.history export STITCH_DIRECTORY=/home/mccd/notes export STITCH_GREP_CMD=ugrep + +if [ -e /home/mccd/.nix-profile/etc/profile.d/nix.sh ]; then . /home/mccd/.nix-profile/etc/profile.d/nix.sh; fi # added by Nix installer + +if [ -z $DISPLAY ] && [ $(tty) = /dev/tty1 ]; then + exec startx +fi + +# opam configuration +test -r /home/mccd/.opam/opam-init/init.sh && . /home/mccd/.opam/opam-init/init.sh > /dev/null 2> /dev/null || true diff --git a/vim/pack/downloads/opt/snippets/snippets.vim b/vim/pack/downloads/opt/snippets/snippets.vim new file mode 100644 index 0000000..d4c6e4e --- /dev/null +++ b/vim/pack/downloads/opt/snippets/snippets.vim @@ -0,0 +1,14 @@ + +autocmd FileType go + \ :iabbrev <buffer> err@ if err != nil {}<Left><Enter><Left> + +autocmd FileType go + \ :iabbrev <buffer> hand@ <Backspace><Esc>^ifunc <Esc>A(c *gin.Context) { + +autocmd FileType go + \ :iabbrev <buffer> fat@ log.Fatal(" %v", err)<Esc>F%i<Left> + +:autocmd FileType php,html.twig,html,javascript,typescript,vue,go + \ :iabbrev <buffer> if@ if() {<CR>}<Esc>%<Left><Left>i + + @@ -0,0 +1,196 @@ +packadd snippets + +" General +set ignorecase + +" Indentation +set tabstop=8 +set shiftround +set nobackup +set autoindent +set smartindent +set cindent +set backspace=2 + +" Theme +syntax on +set background=light +set rnu +set termguicolors +colorscheme quiet +set incsearch +set matchpairs+=<:> +set t_Co=256 +hi Normal guifg=black guibg=#FEFFFA +"hi Keyword ctermfg=black cterm=bold +set tgc +hi SpellBad term=reverse cterm=underline ctermfg=124 ctermbg=white +hi SpellCap term=reverse cterm=underline ctermfg=25 ctermbg=white +hi SpellRare term=reverse cterm=underline ctermfg=30 ctermbg=white +hi SpellLocal term=reverse cterm=underline ctermfg=90 ctermbg=white + +" Cursor - switch between line and full +let &t_SI = "\<Esc>[6 q" +let &t_SR = "\<Esc>[4 q" +let &t_EI = "\<Esc>[2 q" + +" Pesky swap +set backupdir=~/.vim/backup// +set directory=~/.vim/swap// +set undodir=~/.vim/undo// + +" Netrw +let g:netrw_keepdir = 0 +let g:netrw_banner = 0 +let g:netrw_localcopydircmd = 'cp -r' +hi! link netrwMarkFile Search +nnoremap - :Explore<CR> + +" LSP +packadd lsp + +if exists('g:loaded_lsp') + call LspOptionsSet(#{ + \ aleSupport: v:false, + \ autoComplete: v:false, + \ autoHighlight: v:false, + \ autoHighlightDiags: v:true, + \ autoPopulateDiags: v:true, + \ completionMatcher: 'case', + \ completionMatcherValue: 1, + \ diagSignErrorText: 'E', + \ diagSignHintText: 'H', + \ diagSignInfoText: 'I', + \ diagSignWarningText: 'W', + \ echoSignature: v:false, + \ hideDisabledCodeActions: v:false, + \ highlightDiagInline: v:true, + \ hoverInPreview: v:false, + \ ignoreMissingServer: v:true, + \ keepFocusInDiags: v:true, + \ keepFocusInReferences: v:true, + \ completionTextEdit: v:true, + \ diagVirtualTextAlign: 'above', + \ diagVirtualTextWrap: 'default', + \ noNewlineInCompletion: v:false, + \ omniComplete: v:null, + \ outlineOnRight: v:true, + \ outlineWinSize: 20, + \ semanticHighlight: v:false, + \ showDiagInBalloon: v:true, + \ showDiagInPopup: v:true, + \ showDiagOnStatusLine: v:false, + \ showDiagWithSign: v:false, + \ showDiagWithVirtualText: v:false, + \ showInlayHints: v:false, + \ showSignature: v:true, + \ snippetSupport: v:false, + \ ultisnipsSupport: v:false, + \ useBufferCompletion: v:false, + \ usePopupInCodeAction: v:false, + \ useQuickfixForLocations: v:false, + \ vsnipSupport: v:false, + \ bufferCompletionTimeout: 100, + \ customCompletionKinds: v:false, + \ completionKinds: {}, + \ filterCompletionDuplicates: v:false, + \ }) +end + +" Yaml +autocmd Filetype yaml setlocal tabstop=2 +autocmd Filetype yaml setlocal shiftwidth=2 +autocmd Filetype yaml setlocal expandtab +autocmd Filetype yaml setlocal smarttab + + +" Ocaml +if exists('g:loaded_lsp') + call LspAddServer([#{ + \ name: 'caml', + \ filetype: ['ocaml'], + \ path: 'ocamllsp', + \ args: [], + \ syncInit: v:true + \ }]) +end +autocmd Filetype ocaml autocmd BufWritePre <buffer> :LspFormat +autocmd Filetype ocaml setlocal tabstop=2 +autocmd Filetype ocaml setlocal shiftwidth=2 +autocmd Filetype ocaml setlocal expandtab +autocmd Filetype ocaml setlocal smarttab + +" Go +if exists('g:loaded_lsp') + call LspAddServer([#{ + \ name: 'golang', + \ filetype: ['go', 'gomod', 'gowork', 'gohtml'], + \ path: 'gopls', + \ args: ['serve'], + \ syncInit: v:true + \ }]) +end + +autocmd Filetype go set makeprg=go\ build +"autocmd Filetype go autocmd BufWritePre <buffer> :LspFormat + +au BufRead,BufNewFile *.tmpl set filetype=gohtml +autocmd Filetype gohtml setlocal tabstop=2 +" autocmd Filetype gohtml setlocal formatprg=djlint\ --profile=golang\ --reformat\ - + +" Nix +if exists('g:loaded_lsp') + call LspAddServer([#{ + \ name: 'nix', + \ filetype: ['nix'], + \ path: 'nixd', + \ args: [], + \ syncInit: v:true + \ }]) +end +"autocmd Filetype nix autocmd BufWritePre <buffer> :LspFormat + +" Markdown +if exists('g:loaded_lsp') + call LspAddServer([#{ + \ name: 'marksman', + \ filetype: ['markdown'], + \ path: 'marksman', + \ args: ['server'], + \ syncInit: v:true }]) +end + + +autocmd Filetype markdown setlocal spell + + + +" Keybindings +let mapleader=" " +noremap , : +noremap <leader>e :e **/ +noremap <silent> gd mB:LspGotoDefinition<Enter> +noremap <silent> ]d :LspDiagNext<Enter> +noremap <silent> [d :LspDiagPrev<Enter> +noremap <silent> gs mB:LspDocumentSymbol<Enter> +noremap <silent> gr mB:LspGotoImpl<Enter> +noremap <leader>ca :LspCodeAction<Enter> +noremap <leader>cr :LspRename<Enter> +noremap <leader>m :make<Enter> +noremap <silent> <leader>k :LspDiagCurrent<Enter> +noremap <silent> K :LspHover<Enter> +nnoremap <leader>l :ls<CR>:b<space> +nnoremap <silent> <leader>= :LspFormat<Enter> + +" Spell +au BufEnter *.org set spell + +" Wildmenu +set wildmenu +set wildmode=longest:full,lastused +set wildignore=_build/**,release/**,node_modules/** +set wildoptions+=fuzzy + +" Grep +set grepprg=git\ grep\ -nH + diff --git a/xenodm/Xresources b/xdm/Xresources index acec2cc..aa8ffc8 100644 --- a/xenodm/Xresources +++ b/xdm/Xresources @@ -24,15 +24,15 @@ xlogin*namePrompt: Login: xlogin*fail: Login incorrect #if WIDTH > 800 -xlogin*greetFace: IosevkaAile-22:bold:italic:dpi=75 +xlogin*greetFace: Iosevka Aile-22:bold:italic:dpi=75 xlogin*face: IosevkaAile-16:dpi=75 xlogin*promptFace: IosevkaAile-16:bold:dpi=75 xlogin*failFace: IosevkaAile-16:bold:dpi=75 #else -xlogin*greetFace: IosevkaAile-18:bold:italic:dpi=75 -xlogin*face: IosevkaAile-12:dpi=75 -xlogin*promptFace: IosevkaAile-12:bold:dpi=75 -xlogin*failFace: IosevkaAile-12:bold:dpi=75 +xlogin*greetFace: Iosevka Aile-18:bold:italic:dpi=75 +xlogin*face: Iosevka Aile-12:dpi=75 +xlogin*promptFace: Iosevka Aile-12:bold:dpi=75 +xlogin*failFace: Iosevka Aile-12:bold:dpi=75 #endif #if !(defined(bpp1) || defined(bpp4) || defined(bpp8) || defined(bpp15)) diff --git a/xdm/Xsetup_0 b/xdm/Xsetup_0 new file mode 100755 index 0000000..4b317dc --- /dev/null +++ b/xdm/Xsetup_0 @@ -0,0 +1,5 @@ +#!/bin/sh + +/usr/X11R7/bin/xsetroot -solid \#FFFFFF +/usr/X11R7/bin/setxkbmap -layout us -variant colemak +/usr/X11R7/bin/xset fp+ /usr/local/share/fonts diff --git a/xenodm/Xsetup_0 b/xenodm/Xsetup_0 deleted file mode 100755 index ca12044..0000000 --- a/xenodm/Xsetup_0 +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/sh -# $OpenBSD: Xsetup_0.in,v 1.1 2021/08/30 15:38:27 matthieu Exp $ - -prefix="/usr/X11R6" -exec_prefix="${prefix}" - -${exec_prefix}/bin/xsetroot -solid \#FFFFFF - -/usr/X11R6/bin/xset fp+ /usr/local/share/fonts/iosevka - -# install package openbsd-backgrounds -# then uncomment: -# -# if test -x /usr/local/bin/openbsd-wallpaper -# then -# /usr/local/bin/openbsd-wallpaper -# fi - -# sxpm OpenBSD.xpm & @@ -1,14 +1,14 @@ -. ~/.profile +. /home/mccd/.profile xrdb -load ~/.Xresources & -xsetroot -solid '#484C54' & -#xclock -digital -geometry +2250+1400 -face "Ttyp0:pixelsize=24:antialias=false:autohint=false" & +xsetroot -solid '#EEEEEE' & +xclock -digital -geometry +7+1400 -face "Iosevka Aile:pixelsize=18:style=Semibold Italic" -bg \#EEEEEE -fg \#444444 -strftime "%a %d %b %H:%M [Unix Machine]" & gsettings set org.gnome.desktop.interface document-font-name 'Iosevka Aile' & gsettings set org.gnome.desktop.interface font-name 'Iosevka Aile' & gsettings set org.gnome.desktop.interface cursor-size 32 & gsettings set org.gnome.desktop.interface cursor-theme Adwaita & -ulimit -Sc 0 & -xinput set-prop "/dev/wsmouse" "WS Pointer Wheel Emulation" 1 & -xinput set-prop "/dev/wsmouse" "WS Pointer Wheel Emulation Button" 2 & -xinput set-prop "/dev/wsmouse" "WS Pointer Wheel Emulation Axes" 6 7 4 5 & -setxkbmap -layout us -variant colemak -option "caps:capslock" & +#xinput set-prop "/dev/wsmouse" "WS Pointer Wheel Emulation" 1 & +#xinput set-prop "/dev/wsmouse" "WS Pointer Wheel Emulation Button" 2 & +#xinput set-prop "/dev/wsmouse" "WS Pointer Wheel Emulation Axes" 6 7 4 5 & +xinput set-prop 6 271 0.3 & #Speed up cursor +setxkbmap -layout us -variant colemak & # -option "caps:capslock" & dbus-run-session cwm |