The new plugin repo is here: https://github.com/b0o/nvim-tree-preview.lua
Preview NvimTree files in a floating window.
-- Important: Put this in your config directory at lua/nvim-tree/renderer/decorator/bookmarks.lua | |
-- | |
-- HACK: Although this file is named bookmarks.lua, it is actually a decorator | |
-- for the quickfix list. Because nvim-tree does not provide a way to add a custom decorator, | |
-- we are overriding the built-in bookmarks decorator with our own quickfix list decorator. | |
-- If you don't want to override the bookmarks.lua decorator, you can override a different one. | |
local HL_POSITION = require('nvim-tree.enum').HL_POSITION | |
local ICON_PLACEMENT = require('nvim-tree.enum').ICON_PLACEMENT |
The new plugin repo is here: https://github.com/b0o/nvim-tree-preview.lua
Preview NvimTree files in a floating window.
Error executing Lua callback: ...nvim/nui-components.nvim/lua/nui-components/utils/fn.lua:18: bad argument #1 to 'ipairs' (table expected, got nil) | |
stack traceback: | |
[C]: in function 'ipairs' | |
...nvim/nui-components.nvim/lua/nui-components/utils/fn.lua:18: in function 'get_max_width' | |
...vim/nui-components.nvim/lua/nui-components/paragraph.lua:133: in function 'on_layout' | |
...ui-components.nvim/lua/nui-components/component/size.lua:208: in function 'get_size' | |
...ui-components.nvim/lua/nui-components/component/init.lua:358: in function 'render' | |
...ui-components.nvim/lua/nui-components/component/init.lua:346: in function 'func' | |
...nvim/nui-components.nvim/lua/nui-components/utils/fn.lua:19: in function 'ireduce' | |
...ui-components.nvim/lua/nui-components/component/init.lua:344: in function 'render' |
local n = require 'nui-components' | |
local signal = n.create_signal { | |
name = '', | |
description = '', | |
} | |
local function test_ui() | |
local renderer = n.create_renderer { | |
width = 60, |
Outer | |
execve("/usr/bin/entr", ["entr", "bash", "./self-entr.sh", "--inner"], 0x7fff5e5a1088 /* 179 vars */) = 0 | |
brk(NULL) = 0x563684b3a000 | |
arch_prctl(0x3001 /* ARCH_??? */, 0x7ffc98182a70) = -1 EINVAL (Invalid argument) | |
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) | |
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 | |
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=322755, ...}, AT_EMPTY_PATH) = 0 | |
mmap(NULL, 322755, PROT_READ, MAP_PRIVATE, 3, 0) = 0x14884d01e000 | |
close(3) = 0 | |
openat(AT_FDCWD, "/usr/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 |
#!/usr/bin/env bash | |
if [[ ${1:-} == "--inner" ]]; then | |
echo "Inner" | |
exit 0 | |
fi | |
echo "Outer" | |
echo "${BASH_SOURCE[0]}" | entr "${BASH_SOURCE[0]}" --inner |
Dec 07 17:03:46 computer1 systemd[3951]: Started GnuPG cryptographic agent and passphrase cache. | |
Dec 07 17:03:46 computer1 gpg-agent[1740396]: gpg-agent (GnuPG) 2.4.3 starting in supervised mode. | |
Dec 07 17:03:46 computer1 gpg-agent[1740396]: using fd 3 for extra socket (/run/user/1000/gnupg/S.gpg-agent.extra) | |
Dec 07 17:03:46 computer1 gpg-agent[1740396]: using fd 4 for browser socket (/run/user/1000/gnupg/S.gpg-agent.browser) | |
Dec 07 17:03:46 computer1 gpg-agent[1740396]: using fd 5 for std socket (/run/user/1000/gnupg/S.gpg-agent) | |
Dec 07 17:03:46 computer1 gpg-agent[1740396]: using fd 6 for ssh socket (/run/user/1000/gnupg/S.gpg-agent.ssh) | |
Dec 07 17:03:46 computer1 gpg-agent[1740396]: listening on: std=5 extra=3 browser=4 ssh=6 | |
Dec 07 17:03:46 computer1 sway[4049]: 21:51:40.094 [DEBUG] [wlr] [types/wlr_text_input_v3.c:185] Text input commit received without focus | |
Dec 07 17:03:46 computer1 sway[4049]: 21:51:40.094 [DEBUG] [sway/input/text_input.c:159] Text input committed update | |
Dec 07 17:03:46 computer1 sway[ |
-- DO NOT change the paths and don't remove the colorscheme | |
local root = vim.fn.fnamemodify("./.repro", ":p") | |
-- set stdpaths to use .repro | |
for _, name in ipairs({ "config", "data", "state", "cache" }) do | |
vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name | |
end | |
-- bootstrap lazy | |
local lazypath = root .. "/plugins/lazy.nvim" |
LSP support in injected code blocks with Otter.nvim
Otter.nvim makes it possible to attach LSPs to embedded code blocks. For example, inside JavaScript/TypeScript files, you can use tagged template literals:
const frag = glsl`
void main() {
gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
}
`;
// Ported from https://github.com/trpc/trpc/blob/main/packages/server/src/adapters/ws.ts | |
import type { ServeOptions, Server, ServerWebSocket } from 'bun' | |
import { | |
AnyRouter, | |
CombinedDataTransformer, | |
ProcedureType, | |
TRPCError, | |
callProcedure, |