Compare commits

..

No commits in common. "c6de9b068611de3d81ce524e9cdb2c487dfc0851" and "e36ed17a97536cfa1bd4bed7db3ce5a663f5ecf0" have entirely different histories.

12 changed files with 103 additions and 147 deletions

View file

@ -4,12 +4,6 @@
if [ -d "$TURNSTILE_ENV_DIR" ]; then
echo "$DISPLAY" >"$TURNSTILE_ENV_DIR/DISPLAY"
echo "$WAYLAND_DISPLAY" >"$TURNSTILE_ENV_DIR/WAYLAND_DISPLAY"
echo "ADDING KEYCHAIN TO ENV"
keychain --eval --quiet --agents ssh,gpg C414FF88A557F29AFEF76C7E73BA40D5AFAF49C9
echo "$SSH_AUTH_SOCK">"$TURNSTILE_ENV_DIR/SSH_AUTH_SOCK"
echo "$SSH_AGENT_PID">"$TURNSTILE_ENV_DIR/SSH_AGENT_PID"
echo "$GPG_AGENT_INFO">"$TURNSTILE_ENV_DIR/GPG_AGENT_INFO"
echo "DONE ADDING KEYCHAIN TO ENV"
fi
mod="Mod4"

View file

@ -64,7 +64,6 @@
"format": "{icon}{0}", // issue tracked here https://github.com/Alexays/Waybar/issues/3623
"format-icons": {
"event": "",
"event-today": " ",
"no-event": "",
},
},

View file

@ -27,16 +27,13 @@ for line in lines:
if len(clean_line) and clean_line[0] not in ["0", "1", "2"]:
clean_line = "\n<b>" + clean_line + "</b>"
new_lines.append(clean_line)
output = "\n".join(new_lines).strip()
if today in output: # an event today!
data["alt"] = "event-today"
data["alt"] = "no-event"
data["tooltip"] = output
if today in output:
data["text"] = output.split("\n")[1]
elif output: # an event in the week!
data["alt"] = "event"
data["tooltip"] = output
else: # no events
data["alt"] = "no-event"
print(json.dumps(data))

View file

@ -5,35 +5,18 @@ vim.api.nvim_create_autocmd({ "TextYankPost" }, {
group = vim.api.nvim_create_augroup("highlightyanks", { clear = true }),
})
local private_mode = function()
vim.o.shada = ""
vim.o.swapfile = false
vim.o.undofile = false
vim.o.backup = false
vim.o.writebackup = false
vim.o.shelltemp = false
vim.o.history = 0
vim.o.modeline = false
vim.o.secure = true
end
-- Special setting for editing gopass files - make sure nothing leaks outside the directories it
-- is supposed to
vim.api.nvim_create_autocmd({ "BufNewFile", "BufRead" }, {
group = vim.api.nvim_create_augroup("passnoleak", { clear = true }),
pattern = {
"/dev/shm/gopass.*",
"/dev/shm/pass.?*/?*.txt",
"$TMPDIR/pass.?*/?*.txt",
"/tmp/pass.?*/?*.txt",
},
command = "setlocal noswapfile nobackup noundofile nowritebackup viminfo=",
desc = "Don't leak any information when editing potential password files",
callback = private_mode,
})
vim.api.nvim_create_autocmd({ "BufNewFile", "BufReadPre" }, {
group = vim.api.nvim_create_augroup("PrivateJrnl", {}),
pattern = "*.jrnl",
desc = "Don't leak information when editing jrnl files",
callback = private_mode,
group = vim.api.nvim_create_augroup("passnoleak", { clear = true }),
})
-- remove line numbers from terminal buffers

View file

@ -56,6 +56,7 @@ return { -- file/item pickers and managers
end
end,
opts = {
fzf_opts = { ["--select-1"] = false },
keymap = {
builtin = {
true,
@ -77,10 +78,7 @@ return { -- file/item pickers and managers
},
},
},
defaults = { -- FIXME: Does not seem to work with single result and still closes instantly?
jump1 = false,
},
},
}, -- FIXME: Does not seem to work with single result and still closes instantly?
config = function(_, opts)
opts.actions = opts.actions or { true }
opts.actions["ctrl-q"] = require("fzf-lua").actions.file_sel_to_qf

View file

@ -168,49 +168,39 @@ local prose_plugs = {
-- bring zettelkasten commands
{
"zk-org/zk-nvim",
opts = function()
config = function()
if require("core.util").is_available("which-key") then
require("which-key").add({
{ "<leader>n", group = "notes" },
{ "<localleader>n", group = "note" },
{ "<localleader>n", group = "note", mode = "v" },
})
end
require("zk.commands").add("ZkOrphans", function(opts)
opts = vim.tbl_extend("force", { orphan = true }, opts or {})
require("zk").edit(opts, { title = "Zk Orphans" })
end)
require("zk.commands").add("ZkGrep", function(opts)
local collection = {}
local list_opts = { select = { "title", "path", "absPath" } }
require("zk.api").list(vim.env.ZK_NOTEBOOK_DIR, list_opts, function(_, notes)
for _, note in ipairs(notes) do
collection[note.absPath] = note.title or note.path
end
require("zk.commands").add("ZkOrphans", function(opts)
opts = vim.tbl_extend("force", { orphan = true }, opts or {})
require("zk").edit(opts, { title = "Zk Orphans" })
end)
require("zk.commands").add("ZkGrep", function(opts)
local collection = {}
local list_opts = { select = { "title", "path", "absPath" } }
require("zk.api").list(vim.env.ZK_NOTEBOOK_DIR, list_opts, function(_, notes)
for _, note in ipairs(notes) do
collection[note.absPath] = note.title or note.path
end
end)
local options = vim.tbl_deep_extend("force", {
prompt_title = "Notes",
search_dirs = { vim.env.ZK_NOTEBOOK_DIR },
disable_coordinates = true,
path_display = function(_, path)
return collection[path]
end,
}, opts or {})
require("telescope.builtin").live_grep(options)
end)
local search_dir = vim.env.ZK_NOTEBOOK_DIR
local options = vim.tbl_deep_extend("force", {
prompt = "Note Grep ",
-- cmd = "cd " .. search_dir .. "; rg --vimgrep",
cwd = search_dir,
disable_coordinates = true,
path_display = function(_, path)
return collection[path]
end,
}, opts or {})
-- FIXME: Don't hard-code this so much?
-- require("telescope.builtin").live_grep(options)
require("fzf-lua").live_grep(options)
end)
local picker = "select"
if require("core.util").is_available("fzf-lua") then
picker = "fzf_lua"
elseif require("core.util").is_available("telescope") then
picker = "telescope"
end
require("zk").setup({
picker = picker,
picker = "telescope",
lsp = {
auto_attach = {
enabled = true,

View file

@ -0,0 +1,29 @@
#!/usr/bin/env python3
# From: https://gist.github.com/varunagrawal/2b93c5dc721520ff6876e940c420ab05
# This hooks script syncs task warrior to the configured task server.
# The on-exit event is triggered once, after all processing is complete.
# Make sure hooks are enabled and this hook script is executable.
# Run `task diag` for diagnostics on the hook.
import sys
import json
import subprocess
try:
tasks = json.loads(sys.stdin.readline())
except:
# No input
sys.exit(0)
# no tasks to work through, don't error
if len(tasks) <= 0:
sys.exit(0)
# Call the `sync` command
# hooks=0 ensures that the sync command doesn't call the on-exit hook
# verbose=nothing sets the verbosity to print nothing at all
subprocess.Popen(["task", "rc.verbose=nothing", "rc.hooks=0", "sync"], close_fds=True)
sys.exit(0)

View file

@ -1,65 +0,0 @@
#!/bin/sh
# Automatically git commits, pushes and pulls if doable in the taskwarrior data directory
#
# Much of this taken from: https://github.com/mrschyte/taskwarrior-hooks/
# with much gratitude
#
# The minimum amount of time required between 2 commits in seconds.
# So only if the last commit is at least x seconds old will a new one
# be created. Set to 0 to sync each taskwarrior change.
MINIMUM_WAIT_TIME=600
# Do not display status information.
QUIET=true
# Removes the tasks.json file after each run, keeping the
# task directory clean.
REMOVE_JSON=false
if [ "${DISABLE_HOOKS}" = "true" ] || ! command -v git >/dev/null 2>&1; then
exit 0;
fi
if [ "$1" != "api:2" ]; then
printf "Taskwarrior uses different data API version than git plugin. Aborting!" 1>&2
exit 1
fi
data_dir="$(echo "$5" | cut -f2 -d:)"
command_run="$(echo "$3" | cut -f2 -d:)"
if [ "$command_run" = "synchronize" ]; then
DISABLE_HOOKS=true env task sync
git -C "$data_dir" pull >/dev/null 2>&1
pull_ret="$?"
git -C "$data_dir" push >/dev/null 2>&1
push_ret="$?"
if [ "$pull_ret" -eq 0 ] && [ "$push_ret" -eq 0 ]; then
[ $QUIET = "true" ] || echo "Git upstream synchronized."
fi
fi
last_commit=$(git -C "$data_dir" log -1 --format="%at")
# if now is not yet greater than last commit + wait time do nothing
if [ "$(date "+%s")" -lt $((last_commit + MINIMUM_WAIT_TIME)) ]; then
# TODO: Implement DEBUG msg level (info/debug) system
# echo "Too early to check for changes, exiting."
exit 0
fi
# echo "EXPORTING TASKS"
DISABLE_HOOKS=true env task export > "$data_dir/tasks.json"
# after any command, if there's changes add and commit
if ! git -C "$data_dir" diff --exit-code >/dev/null 2>&1; then
# echo "found changes"
# need to run to fully update tasks that just got done
DISABLE_HOOKS=true env task next >/dev/null 2>&1
header="auto: ${2##* }"
msg="full command: $2"
git -C "$data_dir" commit "$data_dir/tasks.json" -m "$header" -m "$msg" --no-gpg-sign >/dev/null 2>&1
[ $QUIET = "true" ] || echo "Backup up to git."
fi
[ "$REMOVE_JSON" = true ] && rm "$data_dir/tasks.json" >/dev/null 2>&1

View file

@ -0,0 +1,39 @@
#!/bin/sh
# Automatically git commits, pushes and pulls if doable in the taskwarrior data directory
#
# Much of this taken from: https://github.com/mrschyte/taskwarrior-hooks/
# with much gratitude
if [ "${DISABLE_HOOKS}" = "true" ] || ! command -v git >/dev/null 2>&1; then
exit 0;
fi
if [ "$1" != "api:2" ]; then
printf "Taskwarrior uses different data API version than git plugin. Aborting!" 1>&2
exit 1
fi
data_dir="$(echo "$5" | cut -f2 -d:)"
command_run="$(echo "$3" | cut -f2 -d:)"
# after any command, if there's changes add and commit
if ! git -C "$data_dir" diff --exit-code >/dev/null 2>&1; then
# need to run to fully update tasks that just got done
DISABLE_HOOKS=true env task next >/dev/null 2>&1
header="auto: ${2##* }"
msg="full command: $2"
git -C "$data_dir" commit -a -m "$header" -m "$msg" --no-gpg-sign >/dev/null 2>&1
fi
if [ "$command_run" = "synchronize" ]; then
DISABLE_HOOKS=true env task sync
git -C "$data_dir" pull >/dev/null 2>&1
pull_ret="$?"
git -C "$data_dir" push >/dev/null 2>&1
push_ret="$?"
if [ "$pull_ret" -eq 0 ] && [ "$push_ret" -eq 0 ]; then
echo Git upstream synchronized.
fi
fi

View file

@ -1,12 +1,12 @@
import os
from typing import cast
from freedirect.freedirect import Redirects
# pylint: disable=C0111
from qutebrowser.config.config import ConfigContainer # noqa: F401
from qutebrowser.config.configfiles import ConfigAPI
from freedirect.freedirect import Redirects
config: ConfigAPI = cast(ConfigAPI, config) # noqa: F821 pylint: disable=E0602,C0103
c: ConfigContainer = cast(ConfigContainer, c) # noqa: F821 pylint: disable=E0602,C0103
@ -25,7 +25,7 @@ c.content.javascript.log_message.excludes = {
"userscript:_qute_js": ["*TrustedHTML*"],
}
term = os.getenv("TERMINAL", "wezterm")
term = os.getenv("TERMINAL", "xterm")
c.completion.web_history.max_items = 1000
c.hints.uppercase = True

View file

@ -85,11 +85,6 @@ case "$result" in
if [ -n "$POWERMENU_LOGOUT_CMD" ]; then eval "$POWERMENU_LOGOUT_CMD"; else
command -v i3 >/dev/null 2>&1 && i3-msg exit
command -v riverctl >/dev/null 2>&1 && riverctl exit
# Try to heuristically find the program started by greetd and shut it down.
# Generally this will just be a 'pause' program on my system.
if command -v pgrep >/dev/null 2>&1 && pgrep greetd; then
kill $(pgrep -P "$(pgrep greetd | tr '\n' ',')" pause)
fi
fi
;;
"Suspend" | "$suspend_btn")

View file

@ -2,7 +2,7 @@
#
_zk_wiki() {
zk --working-dir="$WIKIROOT" "$@"
zk --notebook-dir="$WIKIROOT" "$@"
}
n() {
@ -26,9 +26,6 @@ if [ -n "${WIKIROOT}" ]; then
nn() { # 'new note'
_zk_wiki new "$@"
}
nni() { # 'new note inbox'
_zk_wiki new -t "${*}" inbox
}
nnl() { # 'new note log'
_zk_wiki log "$@"
}