mirror of
https://github.com/tiyn/dotfiles.git
synced 2025-10-14 21:41:16 +02:00
Compare commits
52 Commits
fb1f2e6c3b
...
master
Author | SHA1 | Date | |
---|---|---|---|
|
9734aa56ad | ||
|
4cc268f424 | ||
|
7a66057608 | ||
50b033c772 | |||
d7a25d0ed2 | |||
|
875803b1fb | ||
|
fd6934ecbc | ||
|
3aafdd54f7 | ||
|
2c6f888ed7 | ||
|
a005ba35db | ||
|
cfe8c6d703 | ||
|
c889d019aa | ||
|
a92906b244 | ||
|
466f023fca | ||
|
632dccff14 | ||
|
2cbd28a429 | ||
31616d0604 | |||
|
2d0fb5ecf8 | ||
|
170020a287 | ||
|
45bfcbf68e | ||
|
e8901032db | ||
|
b74a23af1d | ||
|
d2bfc89ef2 | ||
|
3cfd34313e | ||
|
001187545c | ||
|
0a21e161a4 | ||
|
8a71bd65af | ||
|
5eac363783 | ||
|
fad6eed865 | ||
|
dd24dbd0d7 | ||
|
3843dd8da7 | ||
|
aa9b0a14a9 | ||
|
837307c21e | ||
|
ead803572f | ||
|
faa081d019 | ||
|
9894e74d5f | ||
|
3446c0fc74 | ||
|
3ec55d1bfe | ||
|
473423929c | ||
|
320d84e302 | ||
|
dc5325c1d5 | ||
|
9c2d1ddbe6 | ||
|
fa224c4deb | ||
|
d05f39b991 | ||
|
bac7f7fa66 | ||
|
243a7148a8 | ||
|
a153341f6b | ||
|
a6547fe26c | ||
|
35a698dd20 | ||
|
73168a2db4 | ||
|
d447b87ac1 | ||
|
5429c908c8 |
@@ -7,6 +7,9 @@ background() { for ((i=2;i<=$#;i++)); do; ${@[1]} ${@[$i]} &> /dev/null &| ; don
|
||||
alias ":wq"="exit"
|
||||
alias ":q"="exit"
|
||||
|
||||
# cat
|
||||
alias cat="bat"
|
||||
|
||||
# cd
|
||||
alias ".."="cd .."
|
||||
alias "..."="cd ../.."
|
||||
@@ -134,6 +137,7 @@ alias weather="curl wttr.in"
|
||||
|
||||
# wget
|
||||
alias wget="wget --hsts-file=$XDG_CACHE_HOME/wget-hsts"
|
||||
alias wget2c="aria2c"
|
||||
|
||||
# yay
|
||||
alias yay="yay --sudoloop --noredownload --norebuild --combinedupgrade"
|
||||
|
@@ -24,6 +24,7 @@ message/rfc822=mail.desktop
|
||||
x-scheme-handler/msteams=teams.desktop
|
||||
x-scheme-handler/tonsite=org.telegram.desktop.desktop
|
||||
inode/directory=file-browser.desktop
|
||||
x-scheme-handler/betterdiscord=discord.desktop
|
||||
|
||||
[Added Associations]
|
||||
application/vnd.openxmlformats-officedocument.wordprocessingml.document=libreoffice-writer.desktop;
|
||||
|
8
.config/nvim/after/ftplugin/csv.lua
Normal file
8
.config/nvim/after/ftplugin/csv.lua
Normal file
@@ -0,0 +1,8 @@
|
||||
vim.api.nvim_create_autocmd({ 'VimEnter' },
|
||||
{
|
||||
callback = function()
|
||||
require("csvview").enable()
|
||||
end
|
||||
})
|
||||
|
||||
vim.o.textwidth = 0
|
@@ -36,3 +36,6 @@ vim.o.textwidth = 100
|
||||
|
||||
-- frabjous/knap
|
||||
vim.keymap.set('n', '<leader>p', require("knap").toggle_autopreviewing, { noremap = true })
|
||||
|
||||
-- benlubas/molten-nvim
|
||||
require("quarto").activate()
|
||||
|
@@ -1,69 +1,77 @@
|
||||
{
|
||||
"action-hints.nvim": { "branch": "main", "commit": "ab10fef255dd4bc933c92d8f9969828f2f856e71" },
|
||||
"action-hints.nvim": { "branch": "main", "commit": "ac72c23c2e901084e0c08a743942d8d7b8c560de" },
|
||||
"barbecue": { "branch": "main", "commit": "cd7e7da622d68136e13721865b4d919efd6325ed" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" },
|
||||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||
"blink.download": { "branch": "main", "commit": "86361b98f3c8317904a08e3bd12cf3cdcbe3e925" },
|
||||
"blink.pairs": { "branch": "main", "commit": "d8bf802cca951f0a3b72ddeed21bc5a1d5353f65" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "bd5a7d6db125d4654b50eeae9f5217f24bb22fd3" },
|
||||
"cmp-path": { "branch": "main", "commit": "c642487086dbd9a93160e1679a1327be111cbc25" },
|
||||
"cmp-under-comparator": { "branch": "master", "commit": "6857f10272c3cfe930cece2afa2406e1385bfef8" },
|
||||
"cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" },
|
||||
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
||||
"comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
|
||||
"conform.nvim": { "branch": "master", "commit": "40d4e98fcc3e6f485f0e8924c63734bc7e305967" },
|
||||
"conform.nvim": { "branch": "master", "commit": "fbcb4fa7f34bfea9be702ffff481a8e336ebf6ed" },
|
||||
"cpsm": { "branch": "master", "commit": "1a5fc1b6169bb80c29b0b986130c4f3f1a9ed82e" },
|
||||
"csvview.nvim": { "branch": "main", "commit": "bbab4c2f808fd8e11ec8dfdd128251aadba566a1" },
|
||||
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
|
||||
"fterm.nvim": { "branch": "master", "commit": "d1320892cc2ebab472935242d9d992a2c9570180" },
|
||||
"fzy-lua-native": { "branch": "master", "commit": "820f745b7c442176bcc243e8f38ef4b985febfaf" },
|
||||
"git-blame.nvim": { "branch": "master", "commit": "2883a7460f611c2705b23f12d58d398d5ce6ec00" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "863903631e676b33e8be2acb17512fdc1b80b4fb" },
|
||||
"goto-preview": { "branch": "main", "commit": "1519ea3512828c944eed5b2bbb66a8f8deb92447" },
|
||||
"indent-blankline.nvim": { "branch": "master", "commit": "e7a4442e055ec953311e77791546238d1eaae507" },
|
||||
"knap": { "branch": "main", "commit": "0040760bb504a713ea5988c7c490a15faf477c57" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "1159bdccd8910a0fd0914b24d6c3d186689023d9" },
|
||||
"leap.nvim": { "branch": "main", "commit": "c6bfb191f1161fbabace1f36f578a20ac6c7642c" },
|
||||
"lsp_signature.nvim": { "branch": "master", "commit": "fc38521ea4d9ec8dbd4c2819ba8126cea743943b" },
|
||||
"lspkind-nvim": { "branch": "master", "commit": "59c3f419af48a2ffb2320cea85e44e5a95f71664" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "b431d228b7bbcdaea818bdc3e25b8cdbe861f056" },
|
||||
"luasnip": { "branch": "master", "commit": "03c8e67eb7293c404845b3982db895d59c0d1538" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "25c11854aa25558ee6c03432edfa0df0217324be" },
|
||||
"fzy-lua-native": { "branch": "master", "commit": "9d720745d5c2fb563c0d86c17d77612a3519c506" },
|
||||
"git-blame.nvim": { "branch": "master", "commit": "9874ec1ec8bc53beb33b7cd82c092b85271a578b" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "1ee5c1fd068c81f9dd06483e639c2aa4587dc197" },
|
||||
"goto-preview": { "branch": "main", "commit": "cf561d10b4b104db20375c48b86cf36af9f96e00" },
|
||||
"image.nvim": { "branch": "master", "commit": "446a8a5cc7a3eae3185ee0c697732c32a5547a0b" },
|
||||
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
|
||||
"jupytext.nvim": { "branch": "main", "commit": "c8baf3ad344c59b3abd461ecc17fc16ec44d0f7b" },
|
||||
"knap": { "branch": "main", "commit": "7db44d0bb760120142cc1e8f43e44976de59c2f6" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "1ea3c4085785f460fb0e46d2fe1ee895f5f9e7c1" },
|
||||
"leap.nvim": { "branch": "main", "commit": "f5fe479e20d809df7b54ad53142c2bdb0624c62a" },
|
||||
"logger.nvim": { "branch": "main", "commit": "63dd10c9b9a159fd6cfe08435d9606384ff103c5" },
|
||||
"lsp_signature.nvim": { "branch": "master", "commit": "b58cca003d1d3311213d6db0352f58d8e57bfff0" },
|
||||
"lspkind-nvim": { "branch": "master", "commit": "3ddd1b4edefa425fda5a9f95a4f25578727c0bb3" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "b8c23159c0161f4b89196f74ee3a6d02cdc3a955" },
|
||||
"luasnip": { "branch": "master", "commit": "458560534a73f7f8d7a11a146c801db00b081df0" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "6bdb14f230de0904229ec367b410fb817e59b072" },
|
||||
"mason-null-ls.nvim": { "branch": "main", "commit": "de19726de7260c68d94691afb057fa73d3cc53e7" },
|
||||
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" },
|
||||
"modes.nvim": { "branch": "main", "commit": "326cff3282419b3bcc745061978c1e592cae055d" },
|
||||
"none-ls.nvim": { "branch": "main", "commit": "6bdd9b3364e12ffb346ac224db3df37de0b1429b" },
|
||||
"nvim-autopairs": { "branch": "master", "commit": "ee297f215e95a60b01fde33275cc3c820eddeebe" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "ae644feb7b67bf1ce4260c231d1d4300b19c6f30" },
|
||||
"mason.nvim": { "branch": "main", "commit": "ad7146aa61dcaeb54fa900144d768f040090bff0" },
|
||||
"modes.nvim": { "branch": "main", "commit": "0932ba4e0bdc3457ac89a8aeed4d56ca0b36977a" },
|
||||
"molten-nvim": { "branch": "main", "commit": "a286aa914d9a154bc359131aab788b5a077a5a99" },
|
||||
"none-ls.nvim": { "branch": "main", "commit": "5cf63841461b49989972d35bf886e076a1ab3649" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
|
||||
"nvim-colorizer.lua": { "branch": "master", "commit": "6ed09146ee637006367b5e225be6208a1ea02579" },
|
||||
"nvim-docs-view": { "branch": "master", "commit": "365593534e0acd762bfddce6e8313315ffa4fa36" },
|
||||
"nvim-hlslens": { "branch": "main", "commit": "07afd4dd14405ad14b142a501a3abea6ae44b21b" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "d141895d1d9f41048fff201d62a2d6e96d299e32" },
|
||||
"nvim-navic": { "branch": "master", "commit": "8649f694d3e76ee10c19255dece6411c29206a54" },
|
||||
"nvim-scrollbar": { "branch": "main", "commit": "d09f14aa16c9f2748e77008f9da7b1f76e4e7b85" },
|
||||
"nvim-surround": { "branch": "main", "commit": "ec2dc7671067e0086cdf29c2f5df2dd909d5f71f" },
|
||||
"nvim-tree.lua": { "branch": "master", "commit": "1c9553a19f70df3dcb171546a3d5e034531ef093" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "5a2ff8b7ca5470b1011ed82ef3fdd53139ffc467" },
|
||||
"nvim-ts-autotag": { "branch": "main", "commit": "e239a560f338be31337e7abc3ee42515daf23f5e" },
|
||||
"nvim-ts-rainbow": { "branch": "master", "commit": "ef95c15a935f97c65a80e48e12fe72d49aacf9b9" },
|
||||
"nvim-ufo": { "branch": "main", "commit": "203c9f434feec57909ab4b1e028abeb3349b7847" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "19d257cf889f79f4022163c3fbb5e08639077bd8" },
|
||||
"nvim-docs-view": { "branch": "master", "commit": "5676cc094d426edd39134b1eefca2cab441cca8a" },
|
||||
"nvim-hlslens": { "branch": "main", "commit": "6d42444785ea0d41555d033485910c5e78916f3b" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "cc2f5f2fa28d240574808e78847978ed6ef20d2a" },
|
||||
"nvim-navic": { "branch": "master", "commit": "f887d794a0f4594882814d7780980a949200a238" },
|
||||
"nvim-scrollbar": { "branch": "main", "commit": "5b103ef0fd2e8b9b4be3878ed38d224522192c6c" },
|
||||
"nvim-surround": { "branch": "main", "commit": "a868c256c861044beb9794b4dd126480dcdfbdad" },
|
||||
"nvim-tree.lua": { "branch": "master", "commit": "e397756d2a79d74314ea4cd3efc41300e91c0ff0" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||
"nvim-ts-autotag": { "branch": "main", "commit": "c4ca798ab95b316a768d51eaaaee48f64a4a46bc" },
|
||||
"nvim-ufo": { "branch": "main", "commit": "72d54c31079d38d8dfc5456131b1d0fb5c0264b0" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "b8221e42cf7287c4dcde81f232f58d7b947c210d" },
|
||||
"nvim-yarp": { "branch": "master", "commit": "bb5f5e038bfe119d3b777845a76b0b919b35ebc8" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" },
|
||||
"otter.nvim": { "branch": "main", "commit": "fc0aa35b1985077d11a20ddf4006bf40f2cd7397" },
|
||||
"outline.nvim": { "branch": "main", "commit": "6b62f73a6bf317531d15a7ae1b724e85485d8148" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
|
||||
"popup-menu.nvim": { "branch": "master", "commit": "b618bd0c824a20417d845fa0022327228e6988a2" },
|
||||
"projections.nvim": { "branch": "pre_release", "commit": "889914169fa1f5c00fb8659653b5a8330fb223e6" },
|
||||
"promise-async": { "branch": "main", "commit": "119e8961014c9bfaf1487bf3c2a393d254f337e2" },
|
||||
"quarto-nvim": { "branch": "main", "commit": "0e9491509b38efbd83d3f41dbfacc7fc4bd40191" },
|
||||
"renamer.nvim": { "branch": "master", "commit": "1614d466df53899f11dd5395eaac3c09a275c384" },
|
||||
"rustaceanvim": { "branch": "master", "commit": "12504405821c05874d2d1f6b5ec919f9808e2c99" },
|
||||
"spelunker.vim": { "branch": "master", "commit": "a0bc530f62798bbe053905555a4aa9ed713485eb" },
|
||||
"symbols-outline.nvim": { "branch": "master", "commit": "564ee65dfc9024bdde73a6621820866987cbb256" },
|
||||
"tabular": { "branch": "master", "commit": "12437cd1b53488e24936ec4b091c9324cafee311" },
|
||||
"tccs.nvim": { "branch": "master", "commit": "e50c1504286b5ee2700961a600f26c9b338bd042" },
|
||||
"telescope.nvim": { "branch": "master", "commit": "776b509f80dd49d8205b9b0d94485568236d1192" },
|
||||
"tidy.nvim": { "branch": "main", "commit": "58fcc63de53840fa78946e4161e8883e67213f92" },
|
||||
"todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" },
|
||||
"trouble.nvim": { "branch": "main", "commit": "254145ffd528b98eb20be894338e2d5c93fa02c2" },
|
||||
"undotree": { "branch": "master", "commit": "78b5241191852ffa9bb5da5ff2ee033160798c3b" },
|
||||
"tidy.nvim": { "branch": "main", "commit": "c8cd0e6e0108da25c3e10c3f33d8c03b3d8806f1" },
|
||||
"todo-comments.nvim": { "branch": "main", "commit": "19d461ddd543e938eb22505fb03fa878800270b6" },
|
||||
"trouble.nvim": { "branch": "main", "commit": "c098362fe603d3922095e7db595961e020bdf2d0" },
|
||||
"undotree": { "branch": "master", "commit": "0f1c9816975b5d7f87d5003a19c53c6fd2ff6f7f" },
|
||||
"vim-abolish": { "branch": "master", "commit": "dcbfe065297d31823561ba787f51056c147aa682" },
|
||||
"vim-hug-neovim-rpc": { "branch": "master", "commit": "93ae38792bc197c3bdffa2716ae493c67a5e7957" },
|
||||
"vim-illuminate": { "branch": "master", "commit": "5eeb7951fc630682c322e88a9bbdae5c224ff0aa" },
|
||||
"vim-illuminate": { "branch": "master", "commit": "0d1e93684da00ab7c057410fecfc24f434698898" },
|
||||
"vim-markdown": { "branch": "master", "commit": "8f6cb3a6ca4e3b6bcda0730145a0b700f3481b51" },
|
||||
"vim-renamer": { "branch": "master", "commit": "9c6346eb4556cf2d8ca55de6969247ab14fe2383" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "8badb359f7ab8711e2575ef75dfe6fbbd87e4821" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "b4177e3eaf15fe5eb8357ebac2286d488be1ed00" },
|
||||
"wilder.nvim": { "branch": "master", "commit": "679f348dc90d80ff9ba0e7c470c40a4d038dcecf" },
|
||||
"winshift.nvim": { "branch": "main", "commit": "37468ed6f385dfb50402368669766504c0e15583" }
|
||||
}
|
||||
|
@@ -12,6 +12,7 @@ vim.api.nvim_create_autocmd({ "VimLeavePre" }, {
|
||||
Session.store(vim.loop.cwd())
|
||||
end,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd({ "VimEnter" }, {
|
||||
callback = function()
|
||||
if vim.fn.argc() ~= 0 then
|
||||
@@ -24,3 +25,92 @@ vim.api.nvim_create_autocmd({ "VimEnter" }, {
|
||||
end,
|
||||
desc = "Restore last session automatically",
|
||||
})
|
||||
|
||||
-- benlubas/molten-nvim
|
||||
local imb = function(e)
|
||||
vim.schedule(function()
|
||||
local kernels = vim.fn.MoltenAvailableKernels()
|
||||
local try_kernel_name = function()
|
||||
local metadata = vim.json.decode(io.open(e.file, "r"):read("a"))["metadata"]
|
||||
return metadata.kernelspec.name
|
||||
end
|
||||
local ok, kernel_name = pcall(try_kernel_name)
|
||||
if not ok or not vim.tbl_contains(kernels, kernel_name) then
|
||||
kernel_name = nil
|
||||
local venv = os.getenv("VIRTUAL_ENV") or os.getenv("CONDA_PREFIX")
|
||||
if venv ~= nil then
|
||||
kernel_name = string.match(venv, "/.+/(.+)")
|
||||
end
|
||||
end
|
||||
if kernel_name ~= nil and vim.tbl_contains(kernels, kernel_name) then
|
||||
vim.cmd(("MoltenInit %s"):format(kernel_name))
|
||||
end
|
||||
vim.cmd("MoltenImportOutput")
|
||||
end)
|
||||
end
|
||||
|
||||
vim.api.nvim_create_autocmd("BufAdd", {
|
||||
pattern = { "*.ipynb" },
|
||||
callback = imb,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd("BufEnter", {
|
||||
pattern = { "*.ipynb" },
|
||||
callback = function(e)
|
||||
if vim.api.nvim_get_vvar("vim_did_enter") ~= 1 then
|
||||
imb(e)
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
local default_notebook = [[
|
||||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
""
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython"
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
]]
|
||||
|
||||
local function new_notebook(filename)
|
||||
local path = filename .. ".ipynb"
|
||||
local file = io.open(path, "w")
|
||||
if file then
|
||||
file:write(default_notebook)
|
||||
file:close()
|
||||
vim.cmd("edit " .. path)
|
||||
else
|
||||
print("Error: Could not open new notebook file for writing.")
|
||||
end
|
||||
end
|
||||
|
||||
vim.api.nvim_create_user_command('NewNotebook', function(opts)
|
||||
new_notebook(opts.args)
|
||||
end, {
|
||||
nargs = 1,
|
||||
complete = 'file'
|
||||
})
|
||||
|
@@ -13,6 +13,7 @@ wk.add({
|
||||
{mode = "n", "<leader>gd", desc = "Git: diff"},
|
||||
{mode = "n", "<leader>s", desc = "Substitute"},
|
||||
{mode = "n", "<leader>t", desc = "Terminal"},
|
||||
{mode = "n", "<leader>r", desc = "Quarto"},
|
||||
{mode = "n", "<C-W>", desc = "Navigation"},
|
||||
-- unmap unwanted commands
|
||||
{mode = "n", "Zt", "<NOP>", noremap = true},
|
||||
@@ -51,7 +52,7 @@ wk.add({
|
||||
{mode = "n", "<leader>sa", ":%S//g<Left><Left>", desc = "Substitute: free form", noremap = true},
|
||||
{mode = "n", "<leader>ss", ":%S/\\<<C-r><C-w>\\>//g<Left><Left>", desc = "Substitute: word under cursor", noremap = true},
|
||||
-- simrat39/symbols-outline.nvim
|
||||
{mode = "n", "<F3>", ":SymbolsOutline<CR>", desc = "CTags: toggle"},
|
||||
{mode = "n", "<F3>", ":Outline<CR>", desc = "CTags: toggle"},
|
||||
-- nvim-tree/nvim-tree.lua
|
||||
{mode = "n", "<F2>", ":NvimTreeToggle toggle<CR>", desc = "File tree: toggle"},
|
||||
-- mbbill/undotree
|
||||
@@ -69,9 +70,9 @@ wk.add({
|
||||
-- folke/trouble.nvim
|
||||
{mode = "n", "<leader>x", ":TroubleToggle<CR>", desc = "LSP: toggle error list"},
|
||||
-- hrsh7th/nvim-cmp
|
||||
{mode = "n", "gd", vim.lsp.buf.definition(), desc = "LSP: goto definition", noremap = true},
|
||||
{mode = "n", "gD", vim.lsp.buf.declaration(), desc = "LSP: goto declaration", noremap = true},
|
||||
{mode = "n", "gi", vim.lsp.buf.implementation(), desc = "LSP: list implementation", noremap = true},
|
||||
{mode = "n", "gd", function() vim.lsp.buf.definition() end, desc = "LSP: goto definition", noremap = true},
|
||||
{mode = "n", "gD", function() vim.lsp.buf.declaration() end, desc = "LSP: goto declaration", noremap = true},
|
||||
{mode = "n", "gi", function() vim.lsp.buf.implementation() end, desc = "LSP: list implementation", noremap = true},
|
||||
{mode = "n", "gr", function() vim.lsp.buf.references() end, desc = "LSP: list references", noremap = true},
|
||||
{mode = "n", "K", vim.lsp.buf.hover(), desc = "LSP: show documentation", noremap = true},
|
||||
{mode = "n", "<F8>", function() require("conform").format({ async = true, lsp_fallback = true }) end, desc = "LSP: format", noremap = true},
|
||||
@@ -103,4 +104,11 @@ wk.add({
|
||||
{mode = "n", "gf", "<Plug>(leap-from-window)", desc = "Navigation: enter leap mode for other windows", noremap = true},
|
||||
-- gnikdroy/projections.nvim
|
||||
{mode = "n", "<leader>fp", function() vim.cmd("Telescope projections") end, desc = "Telescope: find projects", noremap = true},
|
||||
-- quarto-dev/quarto-nvim
|
||||
{mode = "n", "<leader>rc", require("quarto.runner").run_cell, desc = "Quarto: Run cell", noremap = true, silent = true},
|
||||
{mode = "n", "<leader>ra", require("quarto.runner").run_above, desc = "Quarto: Run cell and above", noremap = true, silent = true},
|
||||
{mode = "n", "<leader>rA", require("quarto.runner").run_all, desc = "Quarto: Run all cells", noremap = true, silent = true},
|
||||
{mode = "n", "<leader>rl", require("quarto.runner").run_line, desc = "Quarto: Run line", noremap = true, silent = true},
|
||||
{mode = "n", "<leader>rr", require("quarto.runner").run_range, desc = "Quarto: Run visual range", noremap = true, silent = true},
|
||||
{mode = "n", "<leader>rL", function() require("quarto.runner").run_all(true) end, desc = "Quarto: Run all cells of all languages", noremap = true, silent = true},
|
||||
})
|
||||
|
34
.config/nvim/lua/plugins/blink-pairs.lua
Normal file
34
.config/nvim/lua/plugins/blink-pairs.lua
Normal file
@@ -0,0 +1,34 @@
|
||||
return {
|
||||
"saghen/blink.pairs",
|
||||
version = "*", -- (recommended) only required with prebuilt binaries
|
||||
|
||||
-- download prebuilt binaries from github releases
|
||||
dependencies = "saghen/blink.download",
|
||||
|
||||
--- @module 'blink.pairs'
|
||||
--- @type blink.pairs.Config
|
||||
opts = {
|
||||
mappings = {
|
||||
enabled = true,
|
||||
pairs = {
|
||||
["("] = ")",
|
||||
["["] = "]",
|
||||
["{"] = "}",
|
||||
["'"] = "'",
|
||||
['"'] = '"',
|
||||
["`"] = "`",
|
||||
},
|
||||
},
|
||||
highlights = {
|
||||
enabled = true,
|
||||
groups = {
|
||||
"BlinkPairsOrange",
|
||||
"BlinkPairsPurple",
|
||||
"BlinkPairsBlue",
|
||||
},
|
||||
priority = 200,
|
||||
ns = vim.api.nvim_create_namespace("blink.pairs"),
|
||||
},
|
||||
debug = false,
|
||||
},
|
||||
}
|
17
.config/nvim/lua/plugins/csvview.lua
Normal file
17
.config/nvim/lua/plugins/csvview.lua
Normal file
@@ -0,0 +1,17 @@
|
||||
return {
|
||||
{
|
||||
"hat0uma/csvview.nvim",
|
||||
opts = {
|
||||
parser = { comments = { "#", "//" } },
|
||||
keymaps = {
|
||||
textobject_field_inner = { "if", mode = { "o", "x" } },
|
||||
textobject_field_outer = { "af", mode = { "o", "x" } },
|
||||
jump_next_field_end = { "<Tab>", mode = { "n", "v" } },
|
||||
jump_prev_field_end = { "<S-Tab>", mode = { "n", "v" } },
|
||||
jump_next_row = { "<Enter>", mode = { "n", "v" } },
|
||||
jump_prev_row = { "<S-Enter>", mode = { "n", "v" } },
|
||||
},
|
||||
},
|
||||
cmd = { "CsvViewEnable", "CsvViewDisable", "CsvViewToggle" },
|
||||
}
|
||||
}
|
@@ -1,5 +1,6 @@
|
||||
return {
|
||||
"rmagatti/goto-preview",
|
||||
dependencies = 'rmagatti/logger.nvim',
|
||||
config = function()
|
||||
require("goto-preview").setup({})
|
||||
end,
|
||||
|
@@ -15,7 +15,7 @@ return {
|
||||
},
|
||||
{ "tiyn/tccs.nvim" },
|
||||
{
|
||||
"roobert/action-hints.nvim",
|
||||
"tiyn/action-hints.nvim",
|
||||
config = function()
|
||||
require("action-hints").setup({
|
||||
template = {
|
||||
|
@@ -45,7 +45,7 @@ return {
|
||||
"yamlfmt",
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
opts = { ui = { icons = Install_signs } }
|
||||
}
|
||||
|
61
.config/nvim/lua/plugins/molten.lua
Normal file
61
.config/nvim/lua/plugins/molten.lua
Normal file
@@ -0,0 +1,61 @@
|
||||
return {
|
||||
{
|
||||
"benlubas/molten-nvim",
|
||||
version = "^1.0.0",
|
||||
dependencies = {
|
||||
{
|
||||
"3rd/image.nvim",
|
||||
opts = {
|
||||
backend = "ueberzug",
|
||||
max_width = 100,
|
||||
max_height = 12,
|
||||
max_height_window_percentage = math.huge,
|
||||
max_width_window_percentage = math.huge,
|
||||
window_overlap_clear_enabled = true,
|
||||
window_overlap_clear_ft_ignore = { "cmp_menu", "cmp_docs", "" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"quarto-dev/quarto-nvim",
|
||||
dependencies = {
|
||||
"jmbuhr/otter.nvim",
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
},
|
||||
opts = {
|
||||
lspFeatures = {
|
||||
languages = { "python" },
|
||||
chunks = "all",
|
||||
diagnostics = {
|
||||
enabled = true,
|
||||
triggers = { "BufWritePost" },
|
||||
},
|
||||
completion = {
|
||||
enabled = true,
|
||||
},
|
||||
},
|
||||
codeRunner = {
|
||||
enabled = true,
|
||||
default_method = "molten",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
"GCBallesteros/jupytext.nvim",
|
||||
opts = {
|
||||
style = "markdown",
|
||||
output_extension = "md",
|
||||
force_ft = "markdown",
|
||||
},
|
||||
},
|
||||
},
|
||||
build = ":UpdateRemotePlugins",
|
||||
init = function()
|
||||
vim.g.molten_auto_open_output = false
|
||||
vim.g.molten_wrap_output = true
|
||||
vim.g.molten_virt_text_output = true
|
||||
vim.g.molten_virt_lines_off_by_1 = true
|
||||
vim.g.molten_image_provider = "image.nvim"
|
||||
vim.g.molten_output_win_max_height = 20
|
||||
end,
|
||||
},
|
||||
}
|
@@ -1,7 +0,0 @@
|
||||
return {
|
||||
-- automatic closing of brackets
|
||||
{
|
||||
'windwp/nvim-autopairs',
|
||||
opts = {}
|
||||
}
|
||||
}
|
@@ -1,5 +1,5 @@
|
||||
return {
|
||||
"amrbashir/nvim-docs-view",
|
||||
"tiyn/nvim-docs-view",
|
||||
lazy = true,
|
||||
cmd = "DocsViewToggle",
|
||||
opts = {
|
||||
|
@@ -1,18 +1,23 @@
|
||||
return {
|
||||
-- lang server management
|
||||
{
|
||||
'neovim/nvim-lspconfig',
|
||||
"neovim/nvim-lspconfig",
|
||||
dependencies = {
|
||||
'williamboman/mason-lspconfig.nvim',
|
||||
"williamboman/mason-lspconfig.nvim",
|
||||
{
|
||||
'hrsh7th/cmp-nvim-lsp',
|
||||
"mrcjkb/rustaceanvim",
|
||||
version = "^6",
|
||||
lazy = false,
|
||||
},
|
||||
{
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
config = function()
|
||||
Capabilities = require("cmp_nvim_lsp").default_capabilities()
|
||||
Capabilities.textDocument.foldingRange = {
|
||||
dynamicRegistration = false,
|
||||
lineFoldingOnly = true
|
||||
lineFoldingOnly = true,
|
||||
}
|
||||
end
|
||||
end,
|
||||
},
|
||||
},
|
||||
config = function()
|
||||
@@ -36,14 +41,14 @@ return {
|
||||
"texlab",
|
||||
-- "tsserver",
|
||||
"yamlls",
|
||||
}
|
||||
},
|
||||
})
|
||||
|
||||
local servers = {
|
||||
lua_ls = {
|
||||
Lua = {
|
||||
lua = {
|
||||
diagnostics = {
|
||||
globals = { 'vim' }
|
||||
globals = { "vim" },
|
||||
},
|
||||
telemetry = { enable = false },
|
||||
},
|
||||
@@ -53,23 +58,27 @@ return {
|
||||
-- language = "de-DE",
|
||||
enabled = { "latex" },
|
||||
dictionary = Dictionaries,
|
||||
}
|
||||
}
|
||||
}
|
||||
local default = { __index = function() return {} end }
|
||||
setmetatable(servers, default)
|
||||
require("mason-lspconfig").setup_handlers({
|
||||
function(server_name)
|
||||
require('lspconfig')[server_name].setup({
|
||||
on_attach = Attach_func,
|
||||
capabilities = Capabilities,
|
||||
flags = {
|
||||
debounce_text_changes = 150
|
||||
},
|
||||
settings = servers[server_name]
|
||||
})
|
||||
end
|
||||
})
|
||||
end
|
||||
},
|
||||
}
|
||||
local default = {
|
||||
__index = function()
|
||||
return {}
|
||||
end,
|
||||
}
|
||||
setmetatable(servers, default)
|
||||
-- require("mason-lspconfig").setup_handlers({
|
||||
-- function(server_name)
|
||||
-- require('lspconfig')[server_name].setup({
|
||||
-- on_attach = Attach_func,
|
||||
-- capabilities = Capabilities,
|
||||
-- flags = {
|
||||
-- debounce_text_changes = 150
|
||||
-- },
|
||||
-- settings = servers[server_name]
|
||||
-- })
|
||||
-- end
|
||||
-- })
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
@@ -7,7 +7,7 @@ return {
|
||||
-- automatically close html-tags
|
||||
'windwp/nvim-ts-autotag',
|
||||
-- color brackets
|
||||
'p00f/nvim-ts-rainbow',
|
||||
-- 'p00f/nvim-ts-rainbow',
|
||||
},
|
||||
config = function()
|
||||
require("nvim-treesitter.configs").setup({
|
||||
@@ -19,17 +19,18 @@ return {
|
||||
"markdown_inline",
|
||||
"latex",
|
||||
"python",
|
||||
"rust",
|
||||
"lua",
|
||||
},
|
||||
highlight = { enable = true },
|
||||
-- highlight = { enable = true },
|
||||
autotag = { enable = false },
|
||||
rainbow = {
|
||||
enable = false,
|
||||
extended_mode = true,
|
||||
max_file_lines = nil,
|
||||
-- colors = {},
|
||||
-- termcolors = {}
|
||||
}
|
||||
-- rainbow = {
|
||||
-- enable = true,
|
||||
-- extended_mode = true,
|
||||
-- max_file_lines = nil,
|
||||
-- -- colors = {},
|
||||
-- -- termcolors = {}
|
||||
-- }
|
||||
})
|
||||
end
|
||||
}
|
||||
|
13
.config/nvim/lua/plugins/outline.lua
Normal file
13
.config/nvim/lua/plugins/outline.lua
Normal file
@@ -0,0 +1,13 @@
|
||||
return {
|
||||
{
|
||||
"hedyhli/outline.nvim",
|
||||
opts = {
|
||||
outline_window = {
|
||||
width = 25
|
||||
},
|
||||
symbols = {
|
||||
icon_source = 'lspkind',
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@@ -1,39 +0,0 @@
|
||||
return {
|
||||
-- ctags like menu
|
||||
{
|
||||
"simrat39/symbols-outline.nvim",
|
||||
opts = {
|
||||
width = 25,
|
||||
symbols = {
|
||||
File = { icon = Lsp_signs.File, hl = "@text.uri" },
|
||||
Module = { icon = Lsp_signs.Module, hl = "@namespace" },
|
||||
Class = { icon = Lsp_signs.Class, hl = "@type" },
|
||||
Method = { icon = Lsp_signs.Method, hl = "@method" },
|
||||
Property = { icon = Lsp_signs.Property, hl = "@method" },
|
||||
Field = { icon = Lsp_signs.Field, hl = "@field" },
|
||||
Constructor = { icon = Lsp_signs.Constructor, hl = "@constructor" },
|
||||
Enum = { icon = Lsp_signs.Enum, hl = "@type" },
|
||||
Interface = { icon = Lsp_signs.Interface, hl = "@type" },
|
||||
Function = { icon = Lsp_signs.Function, hl = "@function" },
|
||||
Variable = { icon = Lsp_signs.Variable, hl = "@constant" },
|
||||
Constant = { icon = Lsp_signs.Constant, hl = "@constant" },
|
||||
Key = { icon = Lsp_signs.Keyword, hl = "@type" },
|
||||
EnumMember = { icon = Lsp_signs.EnumMember, hl = "@field" },
|
||||
Struct = { icon = Lsp_signs.Struct, hl = "@type" },
|
||||
Event = { icon = Lsp_signs.Event, hl = "@type" },
|
||||
Operator = { icon = Lsp_signs.Operator, hl = "@operator" },
|
||||
TypeParameter = { icon = Lsp_signs.TypeParameter, hl = "@parameter" },
|
||||
Boolean = { icon = Lsp_signs.Boolean, hl = "@boolean" },
|
||||
Null = { icon = Lsp_signs.Null, hl = "@type" },
|
||||
Component = { icon = Lsp_signs.Component, hl = "@function" },
|
||||
Fragment = { icon = Lsp_signs.Fragment, hl = "@constant" },
|
||||
Object = { icon = Lsp_signs.Object, hl = "@type" },
|
||||
Array = { icon = Lsp_signs.Array, hl = "@constant" },
|
||||
Number = { icon = Lsp_signs.Number, hl = "@number" },
|
||||
String = { icon = Lsp_signs.String, hl = "@string" },
|
||||
Namespace = { icon = Lsp_signs.Namespace, hl = "@namespace" },
|
||||
Package = { icon = Lsp_signs.Package, hl = "@namespace" },
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
@@ -21,6 +21,7 @@ Menu_signs = {
|
||||
path = "",
|
||||
}
|
||||
|
||||
|
||||
Lsp_signs = {
|
||||
Array = "",
|
||||
Boolean = "⊥",
|
||||
@@ -106,22 +107,17 @@ Lualine_signs = {
|
||||
unnamed = "",
|
||||
}
|
||||
|
||||
vim.fn.sign_define(
|
||||
"DiagnosticSignError",
|
||||
{ texthl = "DiagnosticSignError", text = Error_sign, numhl = "DiagnosticSignError" }
|
||||
)
|
||||
vim.fn.sign_define(
|
||||
"DiagnosticSignWarn",
|
||||
{ texthl = "DiagnosticSignWarn", text = Warn_sign, numhl = "DiagnosticSignWarn" }
|
||||
)
|
||||
vim.fn.sign_define(
|
||||
"DiagnosticSignInfo",
|
||||
{ texthl = "DiagnosticSignInfo", text = Info_sign, numhl = "DiagnosticSignInfo" }
|
||||
)
|
||||
vim.fn.sign_define(
|
||||
"DiagnosticSignHint",
|
||||
{ texthl = "DiagnosticSignHint", text = Hint_sign, numhl = "DiagnosticSignHint" }
|
||||
)
|
||||
vim.diagnostic.config({
|
||||
severity_sort = true,
|
||||
signs = {
|
||||
text = {
|
||||
[vim.diagnostic.severity.ERROR] = Error_sign,
|
||||
[vim.diagnostic.severity.WARN] = Warn_sign,
|
||||
[vim.diagnostic.severity.INFO] = Info_sign,
|
||||
[vim.diagnostic.severity.HINT] = Hint_sign,
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
-- enable colorcolumn when textwidth is set
|
||||
vim.o.cursorline = true
|
||||
|
@@ -3,7 +3,7 @@ color_scheme_path=/usr/share/qt6ct/colors/darker.conf
|
||||
custom_palette=true
|
||||
icon_theme=breeze-dark
|
||||
standard_dialogs=default
|
||||
style=Breeze
|
||||
style=Adwaita-Dark
|
||||
|
||||
[Fonts]
|
||||
fixed="Linux Biolinum,12,-1,5,400,0,0,0,0,0,0,0,0,0,0,1"
|
||||
@@ -25,7 +25,7 @@ underline_shortcut=1
|
||||
wheel_scroll_lines=3
|
||||
|
||||
[SettingsWindow]
|
||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x16\0\0\t\xff\0\0\x5\x9f\0\0\0\0\0\0\0\x16\0\0\t\xff\0\0\x5\x9f\0\0\0\0\0\0\0\0\n\0\0\0\0\0\0\0\0\x16\0\0\t\xff\0\0\x5\x9f)
|
||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\0\0\0\0\0\x13\0\0\x5\xff\0\0\x3\xbf\0\0\0\0\0\0\0\x13\0\0\x5\xff\0\0\x3\xbf\0\0\0\0\0\0\0\0\x6\0\0\0\0\0\0\0\0\x13\0\0\x5\xff\0\0\x3\xbf)
|
||||
|
||||
[Troubleshooting]
|
||||
force_raster_widgets=1
|
||||
|
1
.config/swaylock/config
Normal file
1
.config/swaylock/config
Normal file
@@ -0,0 +1 @@
|
||||
image=~/.local/share/lock
|
86
.config/swhkd/swhkdrc
Normal file
86
.config/swhkd/swhkdrc
Normal file
@@ -0,0 +1,86 @@
|
||||
super + b
|
||||
$BROWSER
|
||||
|
||||
super + m
|
||||
thunderbird
|
||||
|
||||
super + u
|
||||
record_stop
|
||||
|
||||
super + i
|
||||
record_start
|
||||
|
||||
super + o
|
||||
record_replay_start
|
||||
|
||||
super + p
|
||||
record_replay_save
|
||||
|
||||
super + a
|
||||
lmc previous
|
||||
|
||||
super + s
|
||||
lmc playpause
|
||||
|
||||
super + d
|
||||
lmc next
|
||||
|
||||
super + c
|
||||
lmc loop
|
||||
|
||||
super + x
|
||||
lmc shuffle
|
||||
|
||||
super + bracketright
|
||||
lmc mute_toggle
|
||||
|
||||
super + backslash
|
||||
lmc deaf_toggle
|
||||
|
||||
super + apostrophe
|
||||
lmc tap_toggle
|
||||
|
||||
super + bracketleft
|
||||
dnd toggle
|
||||
|
||||
super + shift + b
|
||||
killall -SIGUSR1 waybar
|
||||
|
||||
super + shift + r
|
||||
pkill -HUP swhkd ; notify-send -u low 'SWHKD' 'Reloaded hotkeys'
|
||||
|
||||
super + shift + space
|
||||
dunstctl close-all
|
||||
|
||||
super + F7
|
||||
mount_menu
|
||||
|
||||
super + F8
|
||||
umount_menu
|
||||
|
||||
super + F9
|
||||
systemctl restart NetworkManager ; notify-send -u low 'Network' 'Restartet NM'
|
||||
|
||||
super + F10
|
||||
prompt "Lock computer?" "swaylock -i ~/.local/share/lock"
|
||||
|
||||
super + shift + F10
|
||||
prompt "Hibernate computer?" "systemctl hibernate"
|
||||
|
||||
super + F11
|
||||
prompt "Shutdown computer?" "shutdown -h now"
|
||||
|
||||
super + F12
|
||||
prompt "Reboot computer?" "reboot now"
|
||||
|
||||
Print
|
||||
screenshot
|
||||
|
||||
XF86AudioMute
|
||||
lmc deaf_toggle
|
||||
|
||||
XF86AudioLowerVolume
|
||||
lmc down
|
||||
|
||||
XF86AudioRaiseVolume
|
||||
lmc up
|
@@ -49,6 +49,9 @@ super + Return
|
||||
Print
|
||||
screenshot
|
||||
|
||||
super + space
|
||||
touchpad toggle
|
||||
|
||||
super + shift + space
|
||||
dunstctl close-all
|
||||
|
||||
@@ -64,6 +67,8 @@ super + F9
|
||||
sudo -A systemctl restart NetworkManager ; notify-send -u low 'Network' 'Restartet NM'
|
||||
super + F10
|
||||
prompt "Lock computer?" "slock"
|
||||
super + shift + F10
|
||||
prompt "Hibernate computer?" "systemctl hibernate"
|
||||
super + F11
|
||||
prompt "Shutdown computer?" "sudo -A shutdown -h now"
|
||||
super + F12
|
||||
|
@@ -248,8 +248,8 @@ fileviewer <video/*>
|
||||
|
||||
" Web
|
||||
filextype *.html,*.htm
|
||||
\ {Open with firefox}
|
||||
\ firefox %f &,
|
||||
\ {Open with default browser}
|
||||
\ $BROWSER %f &,
|
||||
filetype *.html,*.htm links, lynx
|
||||
|
||||
" Font
|
||||
|
85
.config/waybar/config.jsonc
Normal file
85
.config/waybar/config.jsonc
Normal file
@@ -0,0 +1,85 @@
|
||||
|
||||
{
|
||||
"layer": "bottom", // Waybar at top layer
|
||||
"position": "top", // Waybar position (top|bottom|left|right)
|
||||
"height": 5, // Waybar height (to be removed for auto height)
|
||||
// "width": 1280, // Waybar width
|
||||
// Choose the order of the modules
|
||||
"modules-left": ["dwl/tags", "dwl/window"],
|
||||
"modules-right": ["cpu", "memory", "pulseaudio#output", "pulseaudio#input", "network", "battery", "clock", "tray"],
|
||||
// Modules configuration
|
||||
// "sway/workspaces": {
|
||||
// "disable-scroll": true,
|
||||
// "all-outputs": true,
|
||||
// "format": "{name}: {icon}",
|
||||
// "format-icons": {
|
||||
// "1": "",
|
||||
// "2": "",
|
||||
// "3": "",
|
||||
// "4": "",
|
||||
// "5": "",
|
||||
// "urgent": "",
|
||||
// "focused": "",
|
||||
// "default": ""
|
||||
// }
|
||||
// },
|
||||
"dwl/tags": {
|
||||
"tag-labels": [ "", "", "", "", "", "", "", "", "", "" ],
|
||||
"num-tags": 10
|
||||
},
|
||||
"dwl/window": {
|
||||
"format": "{layout} {title}"
|
||||
},
|
||||
"tray": {
|
||||
"icon-size": 20,
|
||||
"spacing": 10
|
||||
},
|
||||
"clock": {
|
||||
"format": " {:%d %b %H:%M}"
|
||||
},
|
||||
"battery": {
|
||||
"states": {
|
||||
"good": 75,
|
||||
"warning": 25,
|
||||
"critical": 15
|
||||
},
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"default": ["<span color=\"#f00\"></span>", "<span color=\"#ff0\"></span>", "", "", ""],
|
||||
"charging": ["<span color=\"#f00\"></span>", "<span color=\"#ff0\"></span>", "", "", ""]
|
||||
}
|
||||
// "format-charging": "{capacity}%",
|
||||
// "format-plugged": "{capacity}%",
|
||||
// "format-alt": "{time} ",
|
||||
// "format-good": "", // An empty format will hide the module
|
||||
// "format-full": "",
|
||||
},
|
||||
"network": {
|
||||
// "interface": "wlp2*", // (Optional) To force the use of this interface
|
||||
"format-wifi": "{icon}",
|
||||
"format-ethernet": "",
|
||||
"format-disconnected": "<span color=\"#f00\"></span>",
|
||||
"format-icons": [ "" ]
|
||||
},
|
||||
"pulseaudio#output": {
|
||||
// "scroll-step": 1, // %, can be a float
|
||||
"format-source": "",
|
||||
"format-source-muted": "<span color=\"#f00\"></span>",
|
||||
"format": "{format_source}"
|
||||
},
|
||||
"pulseaudio#input": {
|
||||
// "scroll-step": 1, // %, can be a float
|
||||
"format": "{icon}",
|
||||
"format-muted": "<span color=\"#f00\"></span>",
|
||||
"format-bluetooth": "{format_source}",
|
||||
"format-icons": [ "<span color=\"#f00\"></span>", "", "", ""]
|
||||
},
|
||||
//disk-usage, gpu
|
||||
"cpu": {
|
||||
"format": "",
|
||||
"tooltip": true
|
||||
},
|
||||
"memory": {
|
||||
"format": ""
|
||||
}
|
||||
}
|
238
.config/waybar/style.css
Normal file
238
.config/waybar/style.css
Normal file
@@ -0,0 +1,238 @@
|
||||
* {
|
||||
border: none;
|
||||
border-radius: 4px;
|
||||
/* `ttf-font-awesome` is required to be installed for icons */
|
||||
font-family: Mono, Helvetica, Arial, sans-serif;
|
||||
|
||||
/* adjust font-size value to your liking: */
|
||||
font-size: 15px;
|
||||
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background-color: rgba(0, 0, 0, 1);
|
||||
/* border-bottom: 3px solid rgba(100, 114, 125, 0.5); */
|
||||
color: #ffffff;
|
||||
/* transition-property: background-color; */
|
||||
/* transition-duration: .5s; */
|
||||
/* border-radius: 0; */
|
||||
}
|
||||
|
||||
/* window#waybar.hidden {
|
||||
opacity: 0.2;
|
||||
} */
|
||||
|
||||
/*
|
||||
window#waybar.empty {
|
||||
background-color: transparent;
|
||||
}
|
||||
window#waybar.solo {
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
*/
|
||||
|
||||
/* window#waybar.termite {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
window#waybar.chromium {
|
||||
background-color: #000000;
|
||||
border: none;
|
||||
} */
|
||||
|
||||
#tags button {
|
||||
/* padding: 0 0.4em; */
|
||||
/* background-color: transparent; */
|
||||
color: #ffffff;
|
||||
/* Use box-shadow instead of border so the text isn't offset */
|
||||
box-shadow: inset 0 -3px transparent;
|
||||
}
|
||||
|
||||
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
|
||||
#tags button:hover {
|
||||
background: rgba(0, 0, 0, 0.9);
|
||||
/* box-shadow: inset 0 -3px #ffffff; */
|
||||
}
|
||||
|
||||
#tags button.occupied {
|
||||
/* background-color: #282828; */
|
||||
box-shadow: inset 0 -3px #ffffff;
|
||||
}
|
||||
|
||||
#tags button.focused {
|
||||
background-color: #555a63;
|
||||
/* box-shadow: inset 0 -3px #ffffff; */
|
||||
}
|
||||
|
||||
#tags button.urgent {
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#mode {
|
||||
background-color: #64727D;
|
||||
/* border-bottom: 3px solid #ffffff; */
|
||||
}
|
||||
|
||||
#clock,
|
||||
#battery,
|
||||
#cpu,
|
||||
#memory,
|
||||
#temperature,
|
||||
#backlight,
|
||||
#network,
|
||||
#pulseaudio,
|
||||
#custom-media,
|
||||
#tray,
|
||||
#mode,
|
||||
#idle_inhibitor,
|
||||
#mpd {
|
||||
padding: 0 10px;
|
||||
margin: 6px 3px;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
#window,
|
||||
#tags {
|
||||
margin: 0 4px;
|
||||
}
|
||||
|
||||
/* If workspaces is the leftmost module, omit left margin */
|
||||
.modules-left > widget:first-child > #tags {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
/* If workspaces is the rightmost module, omit right margin */
|
||||
.modules-right > widget:last-child > #tags {
|
||||
margin-right: 0;
|
||||
}
|
||||
|
||||
#clock {
|
||||
background-color: #000000;
|
||||
color: white;
|
||||
}
|
||||
|
||||
#battery {
|
||||
background-color: #000000;
|
||||
color: white;
|
||||
}
|
||||
|
||||
#battery.charging {
|
||||
color: #ffffff;
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
to {
|
||||
background-color: #ffffff;
|
||||
color: #000000;
|
||||
}
|
||||
}
|
||||
|
||||
#battery.critical:not(.charging) {
|
||||
background-color: #f53c3c;
|
||||
color: #ffffff;
|
||||
animation-name: blink;
|
||||
animation-duration: 0.5s;
|
||||
animation-timing-function: linear;
|
||||
animation-iteration-count: infinite;
|
||||
animation-direction: alternate;
|
||||
}
|
||||
|
||||
label:focus {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
#cpu {
|
||||
background-color: #000000;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
#memory {
|
||||
background-color: #000000;
|
||||
color: white;
|
||||
}
|
||||
|
||||
#backlight {
|
||||
background-color: #000000;
|
||||
color:white;
|
||||
}
|
||||
|
||||
#network {
|
||||
background-color: #000000;
|
||||
color:white;
|
||||
}
|
||||
|
||||
#network.disconnected {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
#pulseaudio {
|
||||
background-color: #000000;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
#pulseaudio.muted {
|
||||
background-color: #000000;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
#custom-media {
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
min-width: 100px;
|
||||
}
|
||||
|
||||
#custom-media.custom-spotify {
|
||||
background-color: #66cc99;
|
||||
}
|
||||
|
||||
#custom-media.custom-vlc {
|
||||
background-color: #ffa000;
|
||||
}
|
||||
|
||||
#temperature {
|
||||
background-color: #f0932b;
|
||||
}
|
||||
|
||||
#temperature.critical {
|
||||
background-color: #eb4d4b;
|
||||
}
|
||||
|
||||
#tray {
|
||||
background-color: #000000;
|
||||
}
|
||||
|
||||
#idle_inhibitor {
|
||||
background-color: #2d3436;
|
||||
}
|
||||
|
||||
#idle_inhibitor.activated {
|
||||
background-color: #ecf0f1;
|
||||
color: #2d3436;
|
||||
}
|
||||
|
||||
#mpd {
|
||||
background-color: #66cc99;
|
||||
color: #2a5c45;
|
||||
}
|
||||
|
||||
#mpd.disconnected {
|
||||
background-color: #f53c3c;
|
||||
}
|
||||
|
||||
#mpd.stopped {
|
||||
background-color: #90b1b1;
|
||||
}
|
||||
|
||||
#mpd.paused {
|
||||
background-color: #51a37a;
|
||||
}
|
||||
|
||||
#language {
|
||||
background: #bbccdd;
|
||||
color: #333333;
|
||||
padding: 0 5px;
|
||||
margin: 6px 3px;
|
||||
min-width: 16px;
|
||||
}
|
11
.config/wayland/swayidle.sh
Executable file
11
.config/wayland/swayidle.sh
Executable file
@@ -0,0 +1,11 @@
|
||||
#!/bin/sh
|
||||
exec swayidle -w \
|
||||
timeout 600 "brightnessctl -s set 0%" resume "brightnessctl -r"\
|
||||
timeout 1200 "notify-send -u critical 'Power' 'Laptop will suspend in 10 minutes!'"\
|
||||
timeout 1200 "notify-send -u critical 'Power' 'Screen will turn off soon'"\
|
||||
timeout 1260 "wlr-randr --output eDP-1 --off" resume "wlr-randr --output eDP-1 --on"\
|
||||
timeout 1500 "notify-send -u critical 'Power' 'System will suspend in 5 minutes!'"\
|
||||
timeout 1740 "notify-send -u critical 'Power' 'System will suspend in 1 minute!'"\
|
||||
timeout 1790 "notify-send -u critical 'Power' 'System will suspend in 10 seconds!'"\
|
||||
timeout 1795 "notify-send -u critical 'Power' 'System will suspend in 5 seconds!'"\
|
||||
timeout 1800 "systemctl suspend-then-hibernate"
|
31
.config/wayland/wayland.conf
Executable file
31
.config/wayland/wayland.conf
Executable file
@@ -0,0 +1,31 @@
|
||||
#!/bin/sh
|
||||
exec systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP &
|
||||
exec dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP &
|
||||
nmcli radio wifi on &
|
||||
|
||||
~/.config/wayland/swayidle.sh &
|
||||
|
||||
$STATUSBAR & # use environment variable
|
||||
xss-lock -- swaylock & # enable locking the screen upon sleep
|
||||
swaybg -i ~/.local/share/bg &
|
||||
dunst &
|
||||
dunstctl rule dnd_low disable &
|
||||
dunstctl rule dnd_normal disable &
|
||||
swhks && swhkd &
|
||||
|
||||
pavucontrol &
|
||||
easyeffects --gapplication-service &
|
||||
nextcloud &
|
||||
keepassxc &
|
||||
zen-browser &
|
||||
discord &
|
||||
signal-desktop &
|
||||
Telegram &
|
||||
threema-beta &
|
||||
thunderbird &
|
||||
# mattermost-desktop &
|
||||
|
||||
# monitor toggle &
|
||||
# touchpad off &
|
||||
# xset r rate 300 50 & # Speed xrate up
|
||||
# redshift & # redshift for saving your eyes
|
5
.config/xdg-desktop-portal/portals.conf
Normal file
5
.config/xdg-desktop-portal/portals.conf
Normal file
@@ -0,0 +1,5 @@
|
||||
[preferred]
|
||||
default=gtk
|
||||
org.freedesktop.impl.portal.Screenshot=wlr
|
||||
org.freedesktop.impl.portal.ScreenCast=wlr
|
||||
org.freedesktop.impl.portal.Secret=gnome-keyring
|
@@ -10,4 +10,5 @@ sxhkd & # for shortcuts
|
||||
(sleep 10 ; pkill -RTMIN+4 $STATUSBAR) & # reload volume section of statusbar
|
||||
dunstctl rule dnd_low disable & # disable dnd for low urgencies
|
||||
dunstctl rule dnd_normal disable & # disable dnd for normal urgencies
|
||||
xss-lock -- slock & # enable locking the screen upon sleep
|
||||
easyeffects --gapplication-service & # start audio server
|
||||
|
@@ -1,5 +1,6 @@
|
||||
set statusbar-h-padding 0
|
||||
set statusbar-v-padding 0
|
||||
set guioptions none
|
||||
set page-padding 1
|
||||
map u scroll full-up
|
||||
map d scroll full-down
|
||||
|
@@ -185,7 +185,7 @@ fi
|
||||
eval $(thefuck --alias)
|
||||
|
||||
# python
|
||||
#eval "$(pyenv init -)"
|
||||
eval "$(pyenv init -)"
|
||||
|
||||
##########################
|
||||
# COMMANDS BEFORE PROMPT #
|
||||
|
@@ -37,10 +37,13 @@ case "$file" in
|
||||
*\.js) node "$file" ;;
|
||||
*\.c) if [ -f Makefile ]; then make run; else cc "$file" -o "$base" && "$base"; fi ;;
|
||||
*\.nim) nim c -r -d:noColors "$file" ;;
|
||||
*\.py) python "$file" ;;
|
||||
*\.py) python3 "$file" ;;
|
||||
*\.go) go run "$file" ;;
|
||||
*\.lua) lua "$file" ;;
|
||||
*\.sent) setsid sent "$file" 2>/dev/null & ;;
|
||||
*\.r|*\.R) Rscript "$file" ;;
|
||||
*\.rs) (cd "$dir" && cargo locate-project >/dev/null 2>&1) \
|
||||
&& (cd "$(dirname "$(cd "$dir" && cargo locate-project --message-format plain)")" && cargo run) \
|
||||
|| (rustc "$file" && "./$(basename "${file%.rs}")") ;;
|
||||
*) sed 1q "$file" | grep "^#!/" | sed "s/^#!//" | xargs -r -I % "$file" ;;
|
||||
esac
|
||||
|
@@ -5,12 +5,19 @@ audio_2=${CAPTURE_OUTPUT_AUDIO:-easyeffects_source}
|
||||
output=${CAPTURE_DIR:-$HOME/downloads}
|
||||
device=${CAPTURE_DEVICE:-cpu}
|
||||
|
||||
window=$(xdotool getwindowfocus)
|
||||
fps=60
|
||||
format="mp4"
|
||||
v_codec="h264"
|
||||
v_codec="hevc"
|
||||
# v_codec="h264"
|
||||
a_codec="opus"
|
||||
lenght=20
|
||||
|
||||
|
||||
if [ $DISPLAY_SERVER = "wayland" ]; then
|
||||
window="screen"
|
||||
elif [ $DISPLAY_SERVER = "xorg" ]; then
|
||||
window=$(xdotool getwindowfocus)
|
||||
fi
|
||||
|
||||
gpu-screen-recorder -encoder $device -w $window -f $fps -a $audio_1 -a $audio_2 -c $format -k $v_codec -ac $a_codec -r $lenght -o $output &
|
||||
notify-send -u low 'Screen record' 'Replay started'
|
||||
|
@@ -5,12 +5,18 @@ audio_2=${CAPTURE_OUTPUT_AUDIO:-easyeffects_source}
|
||||
output=${CAPTURE_DIR:-$HOME/downloads}
|
||||
device=${CAPTURE_DEVICE:-cpu}
|
||||
|
||||
window=$(xdotool getwindowfocus)
|
||||
fps=30
|
||||
fps=60
|
||||
format="mp4"
|
||||
v_codec="h264"
|
||||
v_codec="hevc"
|
||||
# v_codec="h264"
|
||||
a_codec="aac"
|
||||
output="$output/recording-$(date '+%Y-%m-%d_%H-%M-%S').$format"
|
||||
|
||||
gpu-screen-recorder -encoder $device -w $window -c $format -k $v_codec -ac $a_codec -f $fps -o $output &
|
||||
if [ $DISPLAY_SERVER = "wayland" ]; then
|
||||
window="screen"
|
||||
elif [ $DISPLAY_SERVER = "xorg" ]; then
|
||||
window=$(xdotool getwindowfocus)
|
||||
fi
|
||||
|
||||
gpu-screen-recorder -encoder $device -w $window -c $format -k $v_codec -ac $a_codec -f $fps -o $output -a $audio_1 -a $audio_2 &
|
||||
notify-send -u low 'Screen record' 'Recording started'
|
||||
|
@@ -12,8 +12,8 @@ total=$(echo $acpi | sed 's/.*:\ //')
|
||||
status="$(echo $total | cut -d',' -f1)"
|
||||
capacity="$(echo $total | cut -d',' -f2 | sed 's/%//')"
|
||||
|
||||
if [ "$status" = "Discharging" ] && [ $capacity -le 15 ] ; then
|
||||
notify-send -u critical "Battery" "Below 15%"
|
||||
if [ "$status" = "Discharging" ] && [ $capacity -le 20 ] ; then
|
||||
notify-send -u critical "Battery" "Low capacity: $capacity%"
|
||||
fi
|
||||
|
||||
if [ $capacity -gt 40 ]
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
wifipercent=" 0"
|
||||
|
||||
[ "$(cat /sys/class/net/w*/operstate)" = 'down' ] && wifiicon="^c#ff0000^ " && wifistatus="down"
|
||||
[ "$(cat /sys/class/net/w*/operstate)" = 'down' ] && wifiicon="^c#ff0000^ ^d^ " && wifistatus="down"
|
||||
|
||||
[ ! -n "${wifiicon+var}" ] && wifistatus="up" && wifipercent=$(grep "^\s*w" /proc/net/wireless | awk '{ print int($3 * 100 / 70) }')
|
||||
|
||||
@@ -21,5 +21,6 @@ then
|
||||
fi
|
||||
fi
|
||||
|
||||
[ -f /sys/class/net/e*/operstate ] && lanicon=$(cat /sys/class/net/e*/operstate | sed "s/down/^b#282828^^c#ff0000^ /;s/up/^b#282828^^c#dfdfdf^ /") || lanicon="^b#282828^^c#ff0000^ "
|
||||
|
||||
echo "$(cat /sys/class/net/e*/operstate | sed "s/down/^b#282828^^c#ff0000^ /;s/up/^b#282828^^c#dfdfdf^ /")" "$wifiicon"
|
||||
echo "$lanicon" "$wifiicon"
|
||||
|
@@ -9,7 +9,15 @@ output="$output/screenshot-$(date '+%Y-%m-%d_%H-%M-%S').png"
|
||||
xclip_img="xclip -sel clip -t image/png"
|
||||
xclip_txt="xclip -sel clip -t text/plain"
|
||||
|
||||
case "$(printf "a selected area\\na selected area (copy)\\ncurrent window\\ncurrent window (copy)\\nfull screen\\nfull screen (copy)\\ncolor picker (copy)" | dmenu -l 6 -i -p "Screenshot which area?")" in
|
||||
if [ $DISPLAY_SERVER = "wayland" ]; then
|
||||
case "$(printf "a selected area\\na selected area (copy)\\nfull screen\\nfull screen (copy)" | dmenu -l 6 -i -p "Screenshot which area?")" in
|
||||
"a selected area") grim -g "$(slurp)" $output ;;
|
||||
"a selected area (copy)") grim -g "$(slurp)" - | wl-copy ;;
|
||||
"full screen") grim $output ;;
|
||||
"full screen (copy)") grim - | wl-copy ;;
|
||||
esac
|
||||
elif [ $DISPLAY_SERVER = "xorg" ]; then
|
||||
case "$(printf "a selected area\\na selected area (copy)\\ncurrent window\\ncurrent window (copy)\\nfull screen\\nfull screen (copy)\\ncolor picker (copy)" | dmenu -l 6 -i -p "Screenshot which area?")" in
|
||||
"a selected area") maim -s --hidecursor $output ;;
|
||||
"a selected area (copy)") maim -s --hidecursor | ${xclip_img} ;;
|
||||
"current window") maim -i "$(xdotool getactivewindow)" $output ;;
|
||||
@@ -17,4 +25,5 @@ case "$(printf "a selected area\\na selected area (copy)\\ncurrent window\\ncurr
|
||||
"full screen") maim $output ;;
|
||||
"full screen (copy)") maim | ${xclip_img} ;;
|
||||
"color picker (copy)") xcolor |tr -d '\n' | ${xclip_txt} ;;
|
||||
esac
|
||||
esac
|
||||
fi
|
||||
|
@@ -4,13 +4,17 @@
|
||||
# by lukesmithxyz, checkout github.com/lukesmithxyz/voidrice
|
||||
|
||||
case "$1" in
|
||||
toggle) (synclient | grep "TouchpadOff.*1" && synclient TouchpadOff=0)>/dev/null && notify-send "TouchPad reactivated." && exit
|
||||
synclient TouchpadOff=1 && notify-send "TouchPad deactivated." ;;
|
||||
on) synclient TouchpadOff=0 && notify-send "TouchPad activated." ;;
|
||||
off) synclient TouchpadOff=1 && notify-send "TouchPad deactivated." ;;
|
||||
toggle) (synclient | grep "TouchpadOff.*1") && touchpad on && exit
|
||||
touchpad off ;;
|
||||
*) cat << EOF
|
||||
touchpad: cli script to enable and disable the touchpad.
|
||||
|
||||
Allowed options:
|
||||
toggle Toggle the touchpad on and off
|
||||
on Turn touchpad on
|
||||
off Turn touchpad off
|
||||
toggle Toggle the touchpad on or off
|
||||
all else Print this message
|
||||
|
||||
EOF
|
||||
|
@@ -3,31 +3,53 @@
|
||||
# Adapted from a script by lukesmithxyz, checkout github.com/lukesmithxyz/voidrice
|
||||
|
||||
wall_desk=${WALLPAPER_DESKTOP:-$XDG_DATA_HOME/bg}
|
||||
lightdm_desk=${WALLPAPER_LIGHTDM:-$XDG_DATA_HOME/lightdm}
|
||||
wall_lock=${WALLPAPER_LOCK:-$XDG_DATA_HOME/lock}
|
||||
|
||||
case "$1" in
|
||||
lightdm) trueloc="$(readlink -f "$2")" &&
|
||||
case "$(file --mime-type -b "$trueloc")" in
|
||||
image/* ) sudo cp "$(readlink -f "$2")" "$lightdm_desk" && notify-send -i "$lightdm_desk" "LightDM wallpaper has been changed." ;;
|
||||
inode/directory ) sudo cp "$(find "$trueloc" -iregex '.*.\(jpg\|jpeg\|png\|gif\)' -type f | shuf -n 1)" "$lightdm_desk" && notify-send -i "$lightdm_desk" "Random LightDM wallpaper chosen." ;;
|
||||
*) notify-send "🖼️ Error" "Not a valid image or directory." ; exit 1;;
|
||||
esac
|
||||
xwallpaper --stretch "$wall_desk" ;;
|
||||
desktop) trueloc="$(readlink -f "$2")" &&
|
||||
case "$(file --mime-type -b "$trueloc")" in
|
||||
image/* ) ln -f "$(readlink -f "$2")" "$wall_desk" && notify-send -i "$wall_desk" "Desktop wallpaper has been changed." ;;
|
||||
inode/directory ) ln -f "$(find "$trueloc" -iregex '.*.\(jpg\|jpeg\|png\|gif\)' -type f | shuf -n 1)" "$wall_desk" && notify-send -i "$wall_desk" "Random desktop wallpaper chosen." ;;
|
||||
*) notify-send "🖼️ Error" "Not a valid image or directory." ; exit 1;;
|
||||
esac
|
||||
xwallpaper --zoom "$wall_desk" ;;
|
||||
xwallpaper --stretch "$wall_desk" ;;
|
||||
lock) trueloc="$(readlink -f "$2")" &&
|
||||
case "$(file --mime-type -b "$trueloc")" in
|
||||
image/* ) ln -f "$(readlink -f "$2")" "$wall_lock" && notify-send -i "$wall_lock" "Lock screen wallpaper has been changed." ;;
|
||||
inode/directory ) ln -f "$(find "$trueloc" -iregex '.*.\(jpg\|jpeg\|png\|gif\)' -type f | shuf -n 1)" "$wall_lock" && notify-send -i "$wall_lock" "Random lock screen wallpaper chosen." ;;
|
||||
*) notify-send "🖼️ Error" "Not a valid image or directory." ; exit 1;;
|
||||
esac ;;
|
||||
all) wallpaper lightdm "$2" &&
|
||||
wallpaper lock "$2" &&
|
||||
wallpaper desktop "$2";;
|
||||
*) cat << EOF
|
||||
wallpaper: cli script to set and reset the wallpaper of the desktop and lock
|
||||
screen.
|
||||
|
||||
Allowed options:
|
||||
|
||||
desktop [PATH] Set the wallpaper of the desktop to the specified path.
|
||||
If no path is given reset it.
|
||||
|
||||
lock [PATH] Set the wallpaper of the lock screen to the specified path.
|
||||
If no path is given reset it.
|
||||
|
||||
lightdm [PATH] Set the wallpaper of the lightdm screen to the specified
|
||||
path.
|
||||
If no path is given reset it.
|
||||
|
||||
all [PATH] Set wallpaper for both lock screen, the dektop and the
|
||||
lightdm screen to a specified path.
|
||||
If no path is given reset it.
|
||||
|
||||
all else Print this message
|
||||
|
||||
EOF
|
||||
|
1
.local/share/lightdm
Symbolic link
1
.local/share/lightdm
Symbolic link
@@ -0,0 +1 @@
|
||||
/etc/lightdm/background.jpg
|
17
.profile
17
.profile
@@ -1,19 +1,21 @@
|
||||
#!/bin/sh
|
||||
# Profile file. Runs on login.
|
||||
|
||||
# sets default display server (can be overwritten in ~/.config/profile/local_profile)
|
||||
export DISPLAY_SERVER="xorg"
|
||||
|
||||
# Adds `~/.local/bin` and all subdirectories to $PATH
|
||||
export PATH="${PATH}:$(du "${HOME}/.local/bin/" | cut -f2 | tr '\n' ':' | sed 's/:*$//')"
|
||||
|
||||
# Add flatpak to path
|
||||
export PATH="/var/lib/flatpak/exports/bin:${PATH}"
|
||||
|
||||
export BROWSER="firefox"
|
||||
export BROWSER="zen-browser"
|
||||
export RTV_BROWSER="qutebrowser"
|
||||
export EDITOR="nvim"
|
||||
export FILE="vifmrun"
|
||||
export IMAGE="sxiv"
|
||||
export READER="zathura"
|
||||
export STATUSBAR="dwmblocks"
|
||||
export TERMINAL="st"
|
||||
export QT_QPA_PLATFORMTHEME="qt6ct"
|
||||
|
||||
@@ -40,6 +42,7 @@ export SUDO_ASKPASS="${HOME}/.local/bin/tools/pw_menu"
|
||||
export TMUX_TMPDIR="${XDG_CACHE_HOME}/tmux"
|
||||
export WGETRC="${XDG_CONFIG_HOME}/wgetrc"
|
||||
export ZDOTDIR="${XDG_CONFIG_HOME}/zsh"
|
||||
export BAT_THEME="Visual Studio Dark+"
|
||||
|
||||
export CUDA_DIR="/opt/cuda"
|
||||
export CUDA_PATH="/opt/cuda"
|
||||
@@ -82,5 +85,11 @@ echo "$0" | grep "zsh$" >/dev/null && [ -f ${ZDOTDIR}/.zshrc ] && source "${ZDOT
|
||||
# load optional variables
|
||||
[ -f ~/.config/profile/local_profile ] && source "${HOME}/.config/profile/local_profile"
|
||||
|
||||
# Start graphical server if not already running.
|
||||
[ "$(tty)" = "/dev/tty1" ] && ! pgrep -x Xorg >/dev/null && exec startx
|
||||
# Start graphical server based on set display server
|
||||
if [ $DISPLAY_SERVER = "wayland" ]; then
|
||||
export STATUSBAR="waybar"
|
||||
dwl -s ~/.config/wayland/wayland.conf
|
||||
elif [ $DISPLAY_SERVER = "xorg" ]; then
|
||||
export STATUSBAR="dwmblocks"
|
||||
[ "$(tty)" = "/dev/tty1" ] && ! pgrep -x Xorg >/dev/null && exec startx
|
||||
fi
|
||||
|
19
README.md
19
README.md
@@ -8,7 +8,24 @@ They were originally based on the dotfiles of
|
||||
This being some time, hundreds of commits and my personalized version of
|
||||
[larbs](https://github.com/Tiyn/larbs) ago, they are now quite different.
|
||||
|
||||
## Required and Recommended Software
|
||||
## Default Programs
|
||||
|
||||
The following are some of the main programs that are installed by using this install script.
|
||||
|
||||
- Operating System: `Arch Linux`
|
||||
- Window Manager: `dwm`
|
||||
- Audio Server: `pipewire`
|
||||
- Shell: `zsh`
|
||||
- Terminal Emulator: `st`
|
||||
- File Manager: `vifm`
|
||||
- Application Launcher: `dmenu(_run)`
|
||||
- Status Bar: `dwmblocks`
|
||||
- Notification Service: `dunst`
|
||||
- Text Editor: `neovim`
|
||||
- Reader: `zathura`
|
||||
- Browser: `zen-browser`
|
||||
- Lockscreen: `slock`
|
||||
- Hotkey Service: `sxhkd`
|
||||
|
||||
All requirements and recommendations get installed by my version of LARBS.
|
||||
To take a look at all the software it installs look at the
|
||||
|
Reference in New Issue
Block a user