Compare commits

..

8 commits

Author SHA1 Message Date
a2f3fe87c3
wezterm: Copy logical lines from scrollback buffer
When copying the recent buffer into an editor for copying/editing/doing
whatever with, we should copy *logical* lines since that is generally
what we want to be working with instead of arbitrary line-breaks.

Wezterm helpfully provides us this possibility (thanks, Wez!).
2023-06-22 12:33:31 +02:00
d4a07465bf
nvim: Change lspconfig to track master
If tracking stable (versioned) releases, it can get out of sync
with LSPs and display errors on startup - since the stable
version gets updated very rarely (over half a year ago currently)
but LSPs and their configs change more rapidly. Since the master
branch seems stable enough we will simply track this instead
for now.
2023-06-22 12:30:58 +02:00
4c1fc5ac21
nvim: Fix diagnostic symbol display
Fixed the codepoints for diagnostic display for the new
nerd font codepoints.
2023-06-22 12:13:47 +02:00
2a993c4d36
nvim: Update plugins 2023-06-22 12:12:48 +02:00
b1a7ee94cb
nvim: HACK Fix quarto running magma session
With the new lazy loaded plugin structure, Magma would not start correctly.
This commit simply removes the lazy designation for Magma, Quarto and the
Jupyter attachments.

It also uses the python environment detection utility to set the correct
python executable on entering a quarto file (if there exists a virtual
environment for the project).
2023-06-22 12:12:32 +02:00
fa9074e8a1
qutebrowser: Update redirects 2023-06-22 12:08:52 +02:00
59b3720ea7
vifm: Fix view mapping always entering view window
Simplified the view mapping (`w`) to not 'enter' the view window that is
opened by default.

What happened previously is that pressing the mapping
would open the view pane (or create a vertical/horizontal split and then
open the view pane within it if only one pane is visible) and then move
the cursor into it so that you can scroll within.
The issue was that to close the view pane again, one had to exit it
first (through `Shift+w`) which really hurt the quick-glance into a file
and then move on kind of workflow I mostly use previews for.

This commit simplifies the view mapping to allow exactly that, pressing
`w` still does all the things it did previously, only does not move
focus into the preview window so keeps the workflow simpler.
2023-06-22 11:36:32 +02:00
1665dd6cf6
nvim: Refactor automatic py venv call 2023-06-20 16:16:01 +02:00
11 changed files with 70 additions and 67 deletions

View file

@ -1,5 +1,7 @@
-- Start quarto session
local startsession = function(file, args)
local path, _ = require("util").get_python_venv()
vim.g["python3_host_prog"] = path
file = file or "/tmp/jupyter-magma-session.json"
if args then
file = args[0]

View file

@ -21,46 +21,45 @@
"cmp_luasnip": { "branch": "master", "commit": "18095520391186d634a0045dacaa346291096566" },
"completion-vcard": { "branch": "master", "commit": "2220fd517a985ececed1adcf0e5be8f2815564c7" },
"dial.nvim": { "branch": "master", "commit": "54b503f906bc9e5ab85288414840a1b86d40769f" },
"dressing.nvim": { "branch": "master", "commit": "f16d7586fcdd8b2e3850d0abb7e46f944125cc25" },
"dressing.nvim": { "branch": "master", "commit": "5fb5cce0cbfcedeadbcee43e5674e8c9a9f28d4a" },
"easyread.nvim": { "branch": "main", "commit": "0b07e315a4cd7d700c4a794bdddbec79fdc2628b" },
"fidget.nvim": { "branch": "main", "commit": "0ba1e16d07627532b6cae915cc992ecac249fb97" },
"friendly-snippets": { "branch": "main", "commit": "b3cd8d77feb7871d8b04bb45bcd8154120a796a1" },
"friendly-snippets": { "branch": "main", "commit": "5749f093759c29e3694053d048ceb940fe12c3d3" },
"fwatch.nvim": { "branch": "main", "commit": "a691f7349dc66285cd75a1a698dd28bca45f2bf8" },
"gitsigns.nvim": { "branch": "main", "commit": "bb808fc7376ed7bac0fbe8f47b83d4bf01738167" },
"jupyter-kernel.nvim": { "branch": "main", "commit": "5b409598033884a3d819e2a3bcd1fe340bc8d783" },
"lazy.nvim": { "branch": "main", "commit": "6b2311a46a3808e366bb251270f4cc04afb421ed" },
"lazy.nvim": { "branch": "main", "commit": "b7043f2983d7aead78ca902f3f2053907081859a" },
"lightspeed.nvim": { "branch": "main", "commit": "299eefa6a9e2d881f1194587c573dad619fdb96f" },
"lsp-setup.nvim": { "branch": "main", "commit": "4656a1882546b702b18a84f5de209a2f8aa43dee" },
"lsp-setup.nvim": { "branch": "main", "commit": "2d5138d82c12874135dfd268b6b50ccfce4eb5df" },
"lsp_signature.nvim": { "branch": "master", "commit": "4665921ff8e30601c7c1328625b3abc1427a6143" },
"lualine.nvim": { "branch": "master", "commit": "05d78e9fd0cdfb4545974a5aa14b1be95a86e9c9" },
"magma-nvim-goose": { "branch": "main", "commit": "d7931d773efcedc9c92337b8d500e32a3725fe26" },
"magma-nvim-goose": { "branch": "main", "commit": "5aafbbd5309e9089d39528f7d982377363c002a2" },
"markdown-preview.nvim": { "branch": "master", "commit": "9becceee5740b7db6914da87358a183ad11b2049" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "5230617372e656d4a2e1e236e03bf7e7b4b97273" },
"mason-null-ls.nvim": { "branch": "main", "commit": "cfbd83909cbc56e2f07cb3f8a03157e069c5c91c" },
"mason.nvim": { "branch": "main", "commit": "4be1226f48bc2011024110f37b17f5ee468df58f" },
"mason.nvim": { "branch": "main", "commit": "664c987c3b14d2262a4e580f993a3e5045baded0" },
"mini.nvim": { "branch": "main", "commit": "296ebbbd3e5ba5e43f5125efe18ad76fe3b632cc" },
"nabla.nvim": { "branch": "master", "commit": "8c143ad2b3ab3b8ffbd51e238ccfcbd246452a7e" },
"null-ls.nvim": { "branch": "main", "commit": "a138b14099e9623832027ea12b4631ddd2a49256" },
"null-ls.nvim": { "branch": "main", "commit": "bbaf5a96913aa92281f154b08732be2f57021c45" },
"nvim-base16": { "branch": "master", "commit": "4f3aa29f49b38edb6db1c52cea57e64ce3de2373" },
"nvim-cmp": { "branch": "main", "commit": "b8c2a62b3bd3827aa059b43be3dd4b5c45037d65" },
"nvim-cmp": { "branch": "main", "commit": "8a1694ff330ed58ed29716686fcef79c28090354" },
"nvim-colorizer.lua": { "branch": "master", "commit": "dde3084106a70b9a79d48f426f6d6fec6fd203f7" },
"nvim-lspconfig": { "branch": "master", "commit": "295c646488d5baa63c6c4da68fe61171b9257375" },
"nvim-lspconfig": { "branch": "master", "commit": "11a1be0e5f180b57079db56de10a20b4323111ae" },
"nvim-notify": { "branch": "master", "commit": "ea9c8ce7a37f2238f934e087c255758659948e0f" },
"nvim-surround": { "branch": "main", "commit": "211eaad7c6d01ef4ac02cba9052b3082ec232101" },
"nvim-toggleterm.lua": { "branch": "main", "commit": "95204ece0f2a54c89c4395295432f9aeedca7b5f" },
"nvim-tree.lua": { "branch": "master", "commit": "f873625d0636889af4cd47a01e486beb865db205" },
"nvim-tree.lua": { "branch": "master", "commit": "c3c6544ee00333b0f1d6a13735d0dd302dba4f70" },
"nvim-treesitter": { "branch": "master", "commit": "cc360a9beb1b30d172438f640e2c3450358c4086" },
"nvim-treesitter-context": { "branch": "master", "commit": "efe87061af560847679fca93697991e474f049e2" },
"nvim-treesitter-context": { "branch": "master", "commit": "6eccc445394df5ab9b1c1e2c445c033949a6a784" },
"nvim-treesitter-textsubjects": { "branch": "master", "commit": "b913508f503527ff540f7fe2dcf1bf1d1f259887" },
"nvim-ts-autotag": { "branch": "main", "commit": "e254b306fb81ed69049cce526e7906150d73e0d1" },
"nvim-ts-autotag": { "branch": "main", "commit": "6be1192965df35f94b8ea6d323354f7dc7a557e4" },
"nvim-ts-context-commentstring": { "branch": "main", "commit": "0bf8fbc2ca8f8cdb6efbd0a9e32740d7a991e4c3" },
"nvim-ts-rainbow2": { "branch": "master", "commit": "c00d61ab7517530c49457ba49186776e6611a3e1" },
"nvim-web-devicons": { "branch": "master", "commit": "2a125024a137677930efcfdf720f205504c97268" },
"nvim-web-devicons": { "branch": "master", "commit": "14b3a5ba63b82b60cde98d0a40319d80f25e8301" },
"otter.nvim": { "branch": "main", "commit": "242d180e7f23cc2af6b5d5193bc50909408caef7" },
"playground": { "branch": "master", "commit": "2b81a018a49f8e476341dfcb228b7b808baba68b" },
"plenary.nvim": { "branch": "master", "commit": "253d34830709d690f013daf2853a9d21ad7accab" },
"popup.nvim": { "branch": "master", "commit": "b7404d35d5d3548a82149238289fa71f7f6de4ac" },
"quarto-nvim": { "branch": "main", "commit": "b299266c6287d74b60480fae348d629ec1dc02bb" },
"quarto-nvim": { "branch": "main", "commit": "d814efc7729f679ae1964248662d18dfad4c9806" },
"smartcolumn.nvim": { "branch": "main", "commit": "0c572e3eae48874f25b74394a486f38cadb5c958" },
"symbols-outline.nvim": { "branch": "master", "commit": "512791925d57a61c545bc303356e8a8f7869763c" },
"telescope-fzf-native.nvim": { "branch": "main", "commit": "9bc8237565ded606e6c366a71c64c0af25cd7a50" },

View file

@ -7,31 +7,31 @@ local has_words_before = function()
end
local kind_icons = {
Text = "",
Method = "",
Function = "",
Text = "",
Method = "",
Function = "󰊕",
Constructor = "",
Field = "",
Variable = "",
Class = "",
Field = "",
Variable = "",
Class = "",
Interface = "",
Module = "",
Property = "",
Module = "",
Property = "",
Unit = "",
Value = "",
Enum = "",
Keyword = "",
Snippet = "",
Color = "",
File = "",
Value = "V",
Enum = "",
Keyword = "",
Snippet = "",
Color = "",
File = "",
Reference = "",
Folder = "",
EnumMember = "",
Constant = "",
Folder = "",
EnumMember = "",
Constant = "",
Struct = "",
Event = "",
Operator = "",
TypeParameter = "",
Operator = "",
TypeParameter = "",
}
cmp.setup({

View file

@ -2,7 +2,7 @@ vim.diagnostic.config({ virtual_text = true })
vim.fn.sign_define("DiagnosticSignError", { text = "", texthl = "DiagnosticSignError" })
vim.fn.sign_define("DiagnosticSignWarn", { text = "", texthl = "DiagnosticSignWarn" })
vim.fn.sign_define("DiagnosticSignInfo", { text = "", texthl = "DiagnosticSignInfo" })
vim.fn.sign_define("DiagnosticSignHint", { text = "", texthl = "DiagnosticSignHint" })
vim.fn.sign_define("DiagnosticSignHint", { text = "", texthl = "DiagnosticSignHint" })
local lsp = require("lsp-setup")
@ -126,9 +126,10 @@ local lspconfig = require("lspconfig")
-- ensure python virtualenv is determined automatically on lsp start
lspconfig.pyright.setup({
on_attach = function(client, _)
local python_path, msg = require("util.pyenv").get_path(client.config.root_dir)
vim.notify(string.format("%s\n%s", msg, python_path))
on_attach = function(client, bufnr)
on_attach(client, bufnr)
local python_path, _ = require("util").get_python_venv(client.config.root_dir)
vim.notify_once(string.format("[PYTHON VENV]\n%s", python_path))
client.config.settings.python.pythonPath = python_path
end,
})

View file

@ -18,6 +18,7 @@ return {
},
})
end,
lazy = false,
ft = "quarto",
},
@ -33,6 +34,7 @@ return {
desc = "Inspect object in kernel",
},
},
lazy = false,
},
-- REPL work
@ -51,5 +53,6 @@ return {
"MagmaRestart",
},
ft = { "quarto", "python" },
lazy = false,
},
}

View file

@ -6,7 +6,11 @@ return {
{
"junnplus/lsp-setup.nvim",
dependencies = {
"neovim/nvim-lspconfig",
{
"neovim/nvim-lspconfig",
-- will sometimes not keep up with lsp changes if set to stable
version = false,
},
{
"williamboman/mason.nvim",
cmd = {

View file

@ -9,4 +9,8 @@ function T.is_available(plugin)
return lazy_config_avail and lazy_config.plugins[plugin] ~= nil
end
function T.get_python_venv(workspace)
return require("util.pyenv").get_path(workspace)
end
return T

View file

@ -22,8 +22,7 @@ T.get_path = function(workspace)
-- Find and use virtualenv in workspace directory.
for _, pattern in ipairs({ "*", ".*" }) do
local match = vim.fn.glob(path.join(workspace, pattern, "pyvenv.cfg"))
local sep = path_sep()
local py = "bin" .. sep .. "python"
local py = "bin" .. path_sep() .. "python"
if match ~= "" then
match = string.gsub(match, "pyvenv.cfg", py)
return match, string.format("venv base folder: %s", match)

View file

@ -51,7 +51,6 @@ redirects = {
"odysee.076.ne.jp",
"librarian.pussthecat.org",
"lbry.mutahar.rocks",
"librarian.esmailelbob.xyz",
"lbry.vern.cc",
],
},
@ -62,7 +61,6 @@ redirects = {
"teddit.adminforge.de",
"teddit.artemislena.eu",
"teddit.bus-hit.me",
"teddit.froth.zone",
"teddit.hostux.net",
"teddit.namazso.eu",
"teddit.net",
@ -98,7 +96,6 @@ redirects = {
"target": [
"libremdb.iket.me",
"libremdb.pussthecat.org",
"libremdb.esmailelbob.xyz",
"ld.vern.cc",
"binge.whatever.social",
"libremdb.lunar.icu",
@ -122,7 +119,6 @@ redirects = {
"proxitok.pabloferreiro.es",
"proxitok.pussthecat.org",
"tok.habedieeh.re",
"proxitok.esmailelbob.xyz",
"proxitok.privacydev.net",
"proxitok.odyssey346.dev",
"tok.artemislena.eu",
@ -140,18 +136,19 @@ redirects = {
"imgur": {
"source": ["imgur.com"],
"target": [
"rimgo.bcow.xyz",
"imgur.artemislena.eu",
"ri.zzls.xyz",
"rimgo.bus-hit.me",
"rimgo.fascinated.cc",
"rimgo.hostux.net",
"rimgo.kling.gg",
"rimgo.lunar.icu",
"rimgo.marcopisco.com",
"rimgo.privacytools.io",
"rimgo.projectsegfau.lt",
"rimgo.pussthecat.org",
"rimgo.totaldarkness.net",
"rimgo.esmailelbob.xyz",
"imgur.artemislena.eu",
"rimgo.vern.cc",
"rim.odyssey346.dev",
"rimgo.privacytools.io",
"rimgo.hostux.net",
"ri.zzls.xyz",
"rimgo.marcopisco.com",
"rimgo.lunar.icu",
"rimgo.whateveritworks.org",
],
},
"medium": {
@ -162,7 +159,6 @@ redirects = {
"scribe.citizen4.eu",
"scribe.bus-hit.me",
"scribe.froth.zone",
"scribe.esmailelbob.xyz",
"scribe.privacydev.net",
"sc.vern.cc",
],
@ -180,7 +176,6 @@ redirects = {
"wiki.adminforge.de",
"wiki.froth.zone",
"wiki.slipfox.xyz",
"wikiless.esmailelbob.xyz",
"wikiless.funami.tech",
"wikiless.org",
"wikiless.tiekoetter.com",

View file

@ -298,15 +298,11 @@ nnoremap ,t :!vifm-thumbnailer -t %u %c<cr>
nnoremap ,T :!vifm-thumbnailer -r -t %u %c<cr>
" allows preview to work for normal view and single pane view
noremap <silent> w : if &quickview && !layoutis('only')
noremap <silent> w : if layoutis('only')
\| if &lines + 50 < &columns | vsplit | else | split | endif
\| view
\| else
\| if layoutis('only')
\| if &lines + 50 < &columns | vsplit | else | split | endif
\| endif
\| view!
\| execute 'qnoremap w q:view|only|qunmap w<lt>cr>'
\| execute 'wincmd w'
\| view
\| endif
\| <cr>
@ -459,7 +455,7 @@ filextype *.bmp,*.jpg,*.jpeg,*.png,*.gif,*.xpm
\ {View in gpicview}
\ gpicview %c,
fileviewer *.bmp,*.jpg,*.jpeg,*.png,*.gif,*.xpm
\ viu -b -w %pw -h %ph %c
\ env -u COLORTERM viu -w %pw -h %ph -s %c
" OpenRaster
filextype *.ora

View file

@ -37,7 +37,7 @@ local function setup()
-- Retrieve the current scrollback text and send to editor
wezterm.on("edit-scrollback", function(window, pane)
local viewport_text = pane:get_lines_as_text(10000)
local viewport_text = pane:get_logical_lines_as_text(10000)
-- Create a temporary file to pass to vim
local name = os.tmpname()