Compare commits

..

10 Commits

Author SHA1 Message Date
03a85c3b29 update screenshot to be fancy 2026-01-08 03:47:02 -03:00
28643cd8a8 modules 2025-12-05 00:04:35 -03:00
3220c8729c update lsp for modules 2025-12-04 09:25:32 -03:00
c09e9843dc add calculator 2025-11-28 15:09:18 -03:00
eb50b528a4 remove cmake module for real 2025-11-23 21:13:47 -03:00
7ff4724ab4 Revert "remove module path thing"
This reverts commit 2416c68f1e.
2025-11-19 13:49:18 -03:00
2416c68f1e remove module path thing 2025-11-19 13:43:42 -03:00
78c2913c61 maybe? 2025-11-19 13:36:58 -03:00
4a0aaac043 fix? 2025-11-19 13:35:24 -03:00
e5a08226b7 some nice fixes 2025-11-19 13:33:11 -03:00
6 changed files with 81 additions and 9 deletions

View File

@@ -9,7 +9,8 @@ source = ~/.config/hypr/monitors.conf
$terminal = kitty
$fileManager = dolphin
$menu = rofi -show drun
$screenshot = grim -g "$(slurp)" - | swappy -f -
$screenshot = screenshot-upload
$calc = rofi -show calc -modi calc -no-show-match -no-sort
#################
### AUTOSTART ###
@@ -23,6 +24,8 @@ $screenshot = grim -g "$(slurp)" - | swappy -f -
# exec-once = waybar & hyprpaper & firefox
exec-once = swww-daemon & disown
exec-once = mako
# Don't want waybar on Berlin
exec-once = sh -c '[ "$(hostname)" != "berlin" ] && ~/.config/scripts/launch.sh'
@@ -228,6 +231,7 @@ bind = SUPER_SHIFT, Q, killactive,
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, F, togglefloating,
bind = $mainMod, D, exec, $menu
bind = $mainMod, C, exec, $calc
# Move focus with mainMod + arrow keys
bind = $mainMod, h, movefocus, l

View File

@@ -41,8 +41,16 @@ end
function M.configure_cmake(build_type)
vim.fn.mkdir("build", "p")
local cmake_args = {
"-GNinja",
"-DCMAKE_BUILD_TYPE=" .. build_type,
"-DCMAKE_EXPORT_COMPILE_COMMANDS=ON",
".."
}
float_term(
{ M.find_cmake(), "-DCMAKE_BUILD_TYPE=" .. build_type, "-DCMAKE_EXPORT_COMPILE_COMMANDS=ON", ".." },
{ M.find_cmake(), unpack(cmake_args) },
{ cwd = "build" }
)
end

View File

@@ -34,6 +34,12 @@ if not (vim.uv or vim.loop).fs_stat(lazypath) then
end
vim.opt.rtp:prepend(lazypath)
vim.filetype.add({
extension = {
ixx = "cpp",
},
})
require("config.opts")
require("lazy").setup({

View File

@@ -27,9 +27,10 @@ end
-- clangd
vim.lsp.config("clangd", {
cmd = { "clangd", "--compile-commands-dir=build" },
cmd = { "clangd", "--compile-commands-dir=build", "--experimental-modules-support" },
capabilities = caps,
on_attach = on_attach,
filetypes = { "c", "cpp", "cc", "cxx", "c++", "ixx" },
})
vim.lsp.enable("clangd")

View File

@@ -7,19 +7,44 @@ function M.float_terminal(cmd, opts)
local height = math.floor(vim.o.lines * (opts.height_ratio or 0.5))
local row = math.floor((vim.o.lines - height) / 2)
local col = math.floor((vim.o.columns - width) / 2)
vim.api.nvim_open_win(buf, true, {
-- FIX 1: 'buf' is the first argument, not in the options table.
vim.api.nvim_open_win(buf, true, {
style = "minimal", relative = "editor",
width = width, height = height, row = row, col = col,
border = opts.border or "rounded",
})
local function scroll_bottom()
local win = vim.api.nvim_get_current_win()
vim.api.nvim_win_set_cursor(win, {vim.api.nvim_buf_line_count(0), 0})
-- Format the command as a string for display
local cmd_display
if type(cmd) == 'table' then
cmd_display = table.concat(cmd, " ")
else
cmd_display = cmd
end
-- Write the command string to the top of the buffer
vim.api.nvim_buf_set_lines(buf, 0, 0, false, {
"--- RUNNING COMMAND: " .. cmd_display .. " ---",
"", -- Add an empty line for separation
})
-- FIX 2: Clear the 'modified' flag so termopen can proceed.
vim.api.nvim_buf_set_option(buf, 'modified', false)
local function scroll_bottom()
local win = vim.api.nvim_get_current_win()
-- Get the line count of the current buffer (which should be 'buf' at this point)
vim.api.nvim_win_set_cursor(win, {vim.api.nvim_buf_line_count(buf), 0})
end
-- We need to ensure the terminal starts in the correct buffer
vim.api.nvim_set_current_buf(buf)
local job = vim.fn.termopen(cmd, {
cwd = opts.cwd, -- <= important
cwd = opts.cwd,
-- NOTE: You may want to use vim.api.nvim_win_set_cursor on the specific win handle
-- instead of getting the current win inside the callback for more reliability.
on_stdout = function(...) scroll_bottom() end,
on_stderr = function(...) scroll_bottom() end,
on_exit = function(_, code, _)
@@ -27,7 +52,7 @@ function M.float_terminal(cmd, opts)
vim.notify(("command exited %d"):format(code), code == 0 and vim.log.levels.INFO or vim.log.levels.ERROR)
end)
end,
env = opts.env, -- e.g. env = { PATH = os.getenv("PATH") }
env = opts.env,
})
vim.keymap.set("n", "q", "<cmd>bd!<CR>", { buffer = buf, silent = true })

28
scripts/screenshot-upload.sh Executable file
View File

@@ -0,0 +1,28 @@
#!/usr/bin/env bash
set -e
set -a
source ~/.config/imgshare.env
set +a
TOKEN="${IMGSHARE_TOKEN:?IMGSHARE_TOKEN not set}"
ENDPOINT="https://share.caio.wakamatsu.cc/upload"
tmp=$(mktemp --suffix=.png)
grim -g "$(slurp)" "$tmp"
swappy -f "$tmp" -o "$tmp"
resp=$(curl -s "$ENDPOINT" \
-H "Authorization: Bearer $TOKEN" \
-F "file=@$tmp")
url=$(echo "$resp" | jq -r '.url // empty')
if [[ -n "$url" ]]; then
echo "https://share.caio.wakamatsu.cc$url" | wl-copy
notify-send "Uploaded Image"
fi
rm "$tmp"