ajout whisper + modif binds MangoWM
This commit is contained in:
parent
aaf6fc8fdd
commit
32d124441e
34 changed files with 322 additions and 161 deletions
|
|
@ -0,0 +1 @@
|
|||
1779306768:success:suspend_resume
|
||||
17
hyprwhspr/.config/hyprwhspr/config.json
Normal file
17
hyprwhspr/.config/hyprwhspr/config.json
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{
|
||||
"$schema": "https://raw.githubusercontent.com/goodroot/hyprwhspr/main/share/config.schema.json",
|
||||
"transcription_backend": "vulkan",
|
||||
"model": "large-v3-turbo",
|
||||
"audio_ducking": true,
|
||||
"primary_shortcut": "ALT+S",
|
||||
"recording_mode": "push_to_talk",
|
||||
"language": "fr",
|
||||
"start_sound_volume": 0.5,
|
||||
"stop_sound_volume": 0.5,
|
||||
"start_sound_path": "ping-up.ogg",
|
||||
"stop_sound_path": "ping-down.ogg",
|
||||
"audio_ducking": true,
|
||||
"audio_ducking_percent": 50,
|
||||
"mic_osd_enabled": true,
|
||||
"whisper_prompt_fr": "Transcrire en français avec des phrases complètes, une ponctuation claire et des majuscules correctes au début des phrases, pour les noms propres et les titres, comme dans un texte rédigé"
|
||||
}
|
||||
1
hyprwhspr/.config/hyprwhspr/mic_osd.pid
Normal file
1
hyprwhspr/.config/hyprwhspr/mic_osd.pid
Normal file
|
|
@ -0,0 +1 @@
|
|||
3871
|
||||
BIN
hyprwhspr/.config/hyprwhspr/ping-down.ogg
Normal file
BIN
hyprwhspr/.config/hyprwhspr/ping-down.ogg
Normal file
Binary file not shown.
BIN
hyprwhspr/.config/hyprwhspr/ping-up.ogg
Normal file
BIN
hyprwhspr/.config/hyprwhspr/ping-up.ogg
Normal file
Binary file not shown.
BIN
hyprwhspr/.local/share/hyprwhspr/assets/ping-down.ogg
Normal file
BIN
hyprwhspr/.local/share/hyprwhspr/assets/ping-down.ogg
Normal file
Binary file not shown.
BIN
hyprwhspr/.local/share/hyprwhspr/assets/ping-up.ogg
Normal file
BIN
hyprwhspr/.local/share/hyprwhspr/assets/ping-up.ogg
Normal file
Binary file not shown.
|
|
@ -0,0 +1 @@
|
|||
Subproject commit d8f202f4435cf3e5e0bf735723eaacbe84c6853c
|
||||
|
|
@ -30,3 +30,4 @@ cursor_trail 0
|
|||
shell_integration no-cursor
|
||||
|
||||
include kitty-themes/themes/mocha.conf
|
||||
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@ exec-once=swaybg -i ~/.wallpapers/662412-vanilla-arch-wallpaper-linuxart.png
|
|||
exec-once=kitty --class kitty-1 --directory $HOME
|
||||
exec-once=perplexity
|
||||
exec-once=kitty --class kitty-2 --directory $HOME
|
||||
exec-once=kitty --class kitty-3 --directory $HOME -- sh -c "ssh srv-admin-ext"
|
||||
exec-once=chromium
|
||||
exec-once=thunderbird
|
||||
exec-once=spotify-launcher
|
||||
|
|
|
|||
|
|
@ -6,10 +6,10 @@
|
|||
|
||||
# switch window focus
|
||||
binds=SUPER,Tab,focusstack,next
|
||||
binds=ALT,Left,focusdir,left
|
||||
binds=ALT,Right,focusdir,right
|
||||
binds=ALT,Up,focusdir,up
|
||||
binds=ALT,Down,focusdir,down
|
||||
binds=SUPER,Left,focusdir,left
|
||||
binds=SUPER,Right,focusdir,right
|
||||
binds=SUPER,Up,focusdir,up
|
||||
binds=SUPER,Down,focusdir,down
|
||||
|
||||
# swap window
|
||||
binds=SUPER+SHIFT,Up,exchange_client,up
|
||||
|
|
@ -19,52 +19,52 @@ binds=SUPER+SHIFT,Right,exchange_client,right
|
|||
|
||||
# switch window status
|
||||
binds=SUPER,g,toggleglobal,
|
||||
binds=ALT,Tab,toggleoverview,
|
||||
binds=ALT,backslash,togglefloating,
|
||||
binds=ALT,a,togglemaximizescreen,
|
||||
binds=ALT,f,togglefullscreen,
|
||||
binds=ALT+SHIFT,f,togglefakefullscreen,
|
||||
binds=SUPER,Tab,toggleoverview,
|
||||
binds=SUPER,backslash,togglefloating,
|
||||
binds=SUPER,a,togglemaximizescreen,
|
||||
binds=SUPER,f,togglefullscreen,
|
||||
binds=SUPER+SHIFT,f,togglefakefullscreen,
|
||||
binds=SUPER,i,minimized,
|
||||
binds=SUPER,o,toggleoverlay,
|
||||
binds=SUPER+SHIFT,I,restore_minimized
|
||||
binds=ALT,z,toggle_scratchpad
|
||||
binds=SUPER,z,toggle_scratchpad
|
||||
|
||||
# tag switch
|
||||
binds=SUPER,Left,viewtoleft,0
|
||||
binds=CTRL,Left,viewtoleft_have_client,0
|
||||
binds=SUPER,Right,viewtoright,0
|
||||
binds=CTRL,Right,viewtoright_have_client,0
|
||||
binds=CTRL+SUPER,Left,tagtoleft,0
|
||||
binds=CTRL+SUPER,Right,tagtoright,0
|
||||
binds=ALT,Left,viewtoleft,0
|
||||
binds=ALT+SHIFT,Left,viewtoleft_have_client,0
|
||||
binds=ALT,Right,viewtoright,0
|
||||
binds=ALT+SHIFT,Right,viewtoright_have_client,0
|
||||
binds=ALT+SUPER,Left,tagtoleft,0
|
||||
binds=ALT+SUPER,Right,tagtoright,0
|
||||
|
||||
binds=CTRL,ampersand,view,1,0
|
||||
binds=CTRL,eacute,view,2,0
|
||||
binds=CTRL,quotedbl,view,3,0
|
||||
binds=CTRL,apostrophe,view,4,0
|
||||
binds=CTRL,parenleft,view,5,0
|
||||
binds=CTRL,minus,view,6,0
|
||||
binds=CTRL,egrave,view,7,0
|
||||
binds=CTRL,underscore,view,8,0
|
||||
binds=CTRL,ccedilla,view,9,0
|
||||
binds=ALT,ampersand,view,1,0
|
||||
binds=ALT,eacute,view,2,0
|
||||
binds=ALT,quotedbl,view,3,0
|
||||
binds=ALT,apostrophe,view,4,0
|
||||
binds=ALT,parenleft,view,5,0
|
||||
binds=ALT,minus,view,6,0
|
||||
binds=ALT,egrave,view,7,0
|
||||
binds=ALT,underscore,view,8,0
|
||||
binds=ALT,ccedilla,view,9,0
|
||||
|
||||
# tag: move client to the tag and focus it
|
||||
# tagsilent: move client to the tag and not focus it
|
||||
# bind=ALT,1,tagsilent,1
|
||||
binds=ALT,ampersand,tag,1,0
|
||||
binds=ALT,eacute,tag,2,0
|
||||
binds=ALT,quotedbl,tag,3,0
|
||||
binds=ALT,apostrophe,tag,4,0
|
||||
binds=ALT,parenleft,tag,5,0
|
||||
binds=ALT,minus,tag,6,0
|
||||
binds=ALT,egrave,tag,7,0
|
||||
binds=ALT,underscore,tag,8,0
|
||||
binds=ALT,ccedilla,tag,9,0
|
||||
binds=ALT+SUPER,ampersand,tag,1,0
|
||||
binds=ALT+SUPER,eacute,tag,2,0
|
||||
binds=ALT+SUPER,quotedbl,tag,3,0
|
||||
binds=ALT+SUPER,apostrophe,tag,4,0
|
||||
binds=ALT+SUPER,parenleft,tag,5,0
|
||||
binds=ALT+SUPER,minus,tag,6,0
|
||||
binds=ALT+SUPER,egrave,tag,7,0
|
||||
binds=ALT+SUPER,underscore,tag,8,0
|
||||
binds=ALT+SUPER,ccedilla,tag,9,0
|
||||
|
||||
# monitor switch
|
||||
binds=ALT+SHIFT,Left,focusmon,left
|
||||
binds=ALT+SHIFT,Right,focusmon,right
|
||||
binds=SUPER+ALT,Left,tagmon,left
|
||||
binds=SUPER+ALT,Right,tagmon,right
|
||||
binds=CTRL+SHIFT,Left,focusmon,left
|
||||
binds=CTRL+SHIFT,Right,focusmon,right
|
||||
binds=CTRL+SUPER,Left,tagmon,left
|
||||
binds=CTRL+SUPER,Right,tagmon,right
|
||||
|
||||
# gaps
|
||||
binds=ALT+SHIFT,X,incgaps,1
|
||||
|
|
@ -78,10 +78,10 @@ binds=ALT+SHIFT,R,togglegaps
|
|||
# binds=CTRL+SHIFT,Right,movewin,+50,+0
|
||||
|
||||
# resizewin
|
||||
binds=CTRL+ALT,Up,resizewin,+0,-10
|
||||
binds=CTRL+ALT,Down,resizewin,+0,+10
|
||||
binds=CTRL+ALT,Left,resizewin,-10,+0
|
||||
binds=CTRL+ALT,Right,resizewin,+10,+0
|
||||
binds=SUPER+CTRL,Up,resizewin,+0,-10
|
||||
binds=SUPER+CTRL,Down,resizewin,+0,+10
|
||||
binds=SUPER+CTRL,Left,resizewin,-10,+0
|
||||
binds=SUPER+CTRL,Right,resizewin,+10,+0
|
||||
|
||||
# Mouse Button Bindings
|
||||
# btn_left and btn_right can't bind none mod key
|
||||
|
|
@ -91,4 +91,4 @@ mousebind=SUPER,btn_right,moveresize,curresize
|
|||
|
||||
# Axis Bindings
|
||||
axisbind=SUPER,UP,viewtoleft_have_client
|
||||
axisbind=SUPER,DOWN,viewtoright_have_client
|
||||
# axisbind=SUPER,DOWN,viewtoright_have_client
|
||||
|
|
|
|||
|
|
@ -26,35 +26,38 @@ vim.opt.clipboard = "unnamedplus"
|
|||
|
||||
vim.g.loaded_netrw = 1
|
||||
vim.g.loaded_netrwPlugin = 1
|
||||
vim.g.loaded_ruby_provider = 0
|
||||
vim.g.loaded_node_provider = 0
|
||||
vim.g.loaded_perl_provider = 0
|
||||
|
||||
-- Avant require("config.lazy")
|
||||
local ts_site = vim.fn.stdpath("data") .. "/site"
|
||||
if not vim.tbl_contains(vim.opt.rtp:get(), ts_site) then
|
||||
vim.opt.rtp:append(ts_site)
|
||||
vim.opt.rtp:append(ts_site)
|
||||
end
|
||||
-- charge lazy.nvim + plugins
|
||||
require("config.lazy")
|
||||
-- Position du curser
|
||||
vim.api.nvim_create_autocmd("BufReadPost", {
|
||||
callback = function()
|
||||
local mark = vim.api.nvim_buf_get_mark(0, '"')
|
||||
local line_count = vim.api.nvim_buf_line_count(0)
|
||||
if mark[1] > 0 and mark[1] <= line_count then
|
||||
vim.api.nvim_win_set_cursor(0, mark)
|
||||
end
|
||||
end,
|
||||
callback = function()
|
||||
local mark = vim.api.nvim_buf_get_mark(0, '"')
|
||||
local line_count = vim.api.nvim_buf_line_count(0)
|
||||
if mark[1] > 0 and mark[1] <= line_count then
|
||||
vim.api.nvim_win_set_cursor(0, mark)
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
-- Undo persistant
|
||||
local undodir = vim.fn.stdpath("state") .. "/undo"
|
||||
if vim.fn.isdirectory(undodir) == 0 then
|
||||
vim.fn.mkdir(undodir, "p")
|
||||
vim.fn.mkdir(undodir, "p")
|
||||
end
|
||||
vim.opt.undodir = undodir
|
||||
vim.opt.undofile = true
|
||||
|
||||
vim.filetype.add({
|
||||
pattern = { [".*/hypr/.*%.conf"] = "hyprlang" },
|
||||
pattern = { [".*/hypr/.*%.conf"] = "hyprlang" },
|
||||
})
|
||||
|
||||
-- require
|
||||
|
|
@ -67,7 +70,4 @@ require("config.markdown")
|
|||
-- Mason/LSP
|
||||
require("mason-lspconfig").setup()
|
||||
|
||||
|
||||
vim.cmd.colorscheme "catppuccin-mocha"
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"LuaSnip": { "branch": "master", "commit": "a62e1083a3cfe8b6b206e7d3d33a51091df25357" },
|
||||
"LuaSnip": { "branch": "master", "commit": "0abc8f390b278c3b4aabc4c004ac8a088b65cf24" },
|
||||
"bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
|
||||
"catppuccin": { "branch": "main", "commit": "426dbebe06b5c69fd846ceb17b42e12f890aedf1" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
|
||||
|
|
@ -12,15 +12,15 @@
|
|||
"lualine.nvim": { "branch": "master", "commit": "131a558e13f9f28b15cd235557150ccb23f89286" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "7b01e2974a47d489bb92f47a41e4c0088ea8f86e" },
|
||||
"mason.nvim": { "branch": "main", "commit": "cbf8d285e1462dd24acf3507817be2bbcb035919" },
|
||||
"mini.icons": { "branch": "main", "commit": "9c7b1b90b15bdd69c52f6e31889dbc9987c30ec4" },
|
||||
"mini.icons": { "branch": "main", "commit": "520995f1d75da0e4cc901ee95080b1ff2bc46b94" },
|
||||
"mini.map": { "branch": "stable", "commit": "234eaf5cbcaee320d87e96465fbb534aa05b301e" },
|
||||
"mini.starter": { "branch": "main", "commit": "35b018a035794e341ac01cb2091bbd71b3f823d0" },
|
||||
"mini.starter": { "branch": "main", "commit": "a7d8b353cf120fee32bb5d88e7a9de5eaec746e7" },
|
||||
"neo-tree.nvim": { "branch": "v3.x", "commit": "ebd66767191714e008ce73b769518a763ff31bdc" },
|
||||
"neowiki.nvim": { "branch": "main", "commit": "85dddf6057b07d4d6772b2f90e754a18e958a865" },
|
||||
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
||||
"nvim-autopairs": { "branch": "master", "commit": "7b9923abad60b903ece7c52940e1321d39eccc79" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "a1d504892f2bc56c2e79b65c6faded2fd21f3eca" },
|
||||
"nvim-colorizer.lua": { "branch": "master", "commit": "a065833f35a3a7cc3ef137ac88b5381da2ba302e" },
|
||||
"nvim-colorizer.lua": { "branch": "master", "commit": "5cfe7fffbd01e17b3c1e14af85d5febdef88bd8c" },
|
||||
"nvim-lsp-file-operations": { "branch": "master", "commit": "b9c795d3973e8eec22706af14959bc60c579e771" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "246572944c2a1e2a646c2e7609ff619b0fe74c18" },
|
||||
"nvim-tcss": { "branch": "main", "commit": "bf9001416158f32fe7e92c42de94de3595aa13e5" },
|
||||
|
|
@ -31,6 +31,7 @@
|
|||
"outline.nvim": { "branch": "main", "commit": "c293eb56db880a0539bf9d85b4a27816960b863e" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" },
|
||||
"render-markdown.nvim": { "branch": "main", "commit": "629eb9533ec989d9d5c6cab8f3ad5372422c24e0" },
|
||||
"rustaceanvim": { "branch": "main", "commit": "e9c5aaba16fead831379d5f44617547a90b913c7" },
|
||||
"telescope-file-browser.nvim": { "branch": "master", "commit": "3610dc7dc91f06aa98b11dca5cc30dfa98626b7e" },
|
||||
"telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
|
||||
"vim-fugitive": { "branch": "master", "commit": "3b753cf8c6a4dcde6edee8827d464ba9b8c4a6f0" },
|
||||
|
|
|
|||
|
|
@ -1,40 +1,63 @@
|
|||
-- capabilities avec cmp si disponible
|
||||
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||
local ok_cmp, cmp_lsp = pcall(require, "cmp_nvim_lsp")
|
||||
if ok_cmp then
|
||||
capabilities = cmp_lsp.default_capabilities(capabilities)
|
||||
capabilities = cmp_lsp.default_capabilities(capabilities)
|
||||
end
|
||||
|
||||
local lspconfig = require("lspconfig")
|
||||
-- Keymaps + format on save (déclenché à chaque attach LSP)
|
||||
vim.api.nvim_create_autocmd("LspAttach", {
|
||||
callback = function(args)
|
||||
local bufnr = args.buf
|
||||
local map = function(lhs, rhs, desc)
|
||||
vim.keymap.set("n", lhs, rhs, { buffer = bufnr, desc = desc })
|
||||
end
|
||||
|
||||
-- Fonction appelée quand un serveur LSP se connecte à un buffer
|
||||
local on_attach = function(_, bufnr)
|
||||
local map = function(mode, lhs, rhs, desc)
|
||||
vim.keymap.set(mode, lhs, rhs, { buffer = bufnr, desc = desc })
|
||||
end
|
||||
map("ld", vim.lsp.buf.definition, "LSP: Go to definition")
|
||||
map("lD", vim.lsp.buf.declaration, "LSP: Go to declaration")
|
||||
map("lr", vim.lsp.buf.references, "LSP: References")
|
||||
map("K", vim.lsp.buf.hover, "LSP: Hover")
|
||||
map("<leader>rn", vim.lsp.buf.rename, "LSP: Rename")
|
||||
map("<leader>ca", vim.lsp.buf.code_action, "LSP: Code action")
|
||||
map("<leader>e", vim.diagnostic.open_float, "LSP: Show diagnostic")
|
||||
-- diagnostics dépréciés en 0.11 → remplacés par vim.diagnostic.jump
|
||||
map("[d", function() vim.diagnostic.jump({ count = -1 }) end, "LSP: Prev diagnostic")
|
||||
map("]d", function() vim.diagnostic.jump({ count = 1 }) end, "LSP: Next diagnostic")
|
||||
|
||||
-- Keymaps de base LSP
|
||||
map("n", "gd", vim.lsp.buf.definition, "LSP: Go to definition")
|
||||
map("n", "gr", vim.lsp.buf.references, "LSP: References")
|
||||
map("n", "K", vim.lsp.buf.hover, "LSP: Hover")
|
||||
map("n", "<leader>rn", vim.lsp.buf.rename, "LSP: Rename")
|
||||
map("n", "<leader>ca", vim.lsp.buf.code_action, "LSP: Code action")
|
||||
map("n", "[d", vim.diagnostic.goto_prev, "LSP: Prev diagnostic")
|
||||
map("n", "]d", vim.diagnostic.goto_next, "LSP: Next diagnostic")
|
||||
|
||||
-- Format on save (si le serveur sait formater)
|
||||
vim.api.nvim_create_autocmd("BufWritePre", {
|
||||
buffer = bufnr,
|
||||
callback = function()
|
||||
vim.lsp.buf.format({ async = false })
|
||||
-- Format on save
|
||||
vim.api.nvim_create_autocmd("BufWritePre", {
|
||||
buffer = bufnr,
|
||||
callback = function()
|
||||
vim.lsp.buf.format({ async = false })
|
||||
end,
|
||||
})
|
||||
end,
|
||||
})
|
||||
end
|
||||
|
||||
-- Pyright pour Python
|
||||
-- Exemple approximatif avec la future API
|
||||
local cfg = vim.lsp._config -- ou vim.lsp.config selon la version
|
||||
|
||||
cfg.setup("pyright", {
|
||||
on_attach = on_attach,
|
||||
capabilities = capabilities,
|
||||
})
|
||||
|
||||
-- Config des serveurs via la nouvelle API vim.lsp.config
|
||||
vim.lsp.config("clangd", {
|
||||
capabilities = capabilities,
|
||||
cmd = { "clangd", "--background-index", "--clang-tidy" },
|
||||
})
|
||||
|
||||
vim.lsp.config("pyright", {
|
||||
capabilities = capabilities,
|
||||
})
|
||||
|
||||
vim.lsp.config("bashls", {
|
||||
capabilities = capabilities,
|
||||
})
|
||||
|
||||
vim.lsp.config("lua_ls", {
|
||||
capabilities = capabilities,
|
||||
settings = {
|
||||
Lua = {
|
||||
diagnostics = { globals = { "vim" } },
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
-- Activation des serveurs
|
||||
vim.lsp.enable({ "clangd", "pyright", "bashls", "lua_ls" })
|
||||
|
||||
-- rust_analyzer géré par rustaceanvim, ne pas l'activer ici
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
return {
|
||||
"norcalli/nvim-colorizer.lua",
|
||||
config = function()
|
||||
require("colorizer").setup()
|
||||
end,
|
||||
"catgoose/nvim-colorizer.lua",
|
||||
event = "BufReadPre",
|
||||
opts = {},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +1,42 @@
|
|||
return {
|
||||
"mason-org/mason-lspconfig.nvim",
|
||||
opts = {
|
||||
ensure_installed = {
|
||||
"pyright"
|
||||
-- Mason
|
||||
{
|
||||
"mason-org/mason.nvim",
|
||||
opts = {},
|
||||
},
|
||||
|
||||
-- Bridge Mason <-> lspconfig
|
||||
{
|
||||
"mason-org/mason-lspconfig.nvim",
|
||||
opts = {
|
||||
ensure_installed = {
|
||||
"pyright", -- Python (tu l'avais déjà)
|
||||
"bashls", -- Bash
|
||||
"lua_ls", -- Lua
|
||||
-- rust_analyzer : géré par rustaceanvim, pas ici
|
||||
},
|
||||
automatic_enable = {
|
||||
exclude = { "rust_analyzer" },
|
||||
},
|
||||
},
|
||||
dependencies = {
|
||||
{ "mason-org/mason.nvim", opts = {} },
|
||||
"neovim/nvim-lspconfig",
|
||||
},
|
||||
},
|
||||
dependencies = {
|
||||
{
|
||||
"mason-org/mason.nvim",
|
||||
opts = {}
|
||||
},
|
||||
|
||||
-- nvim-lspconfig : chargé, config dans lsp-setup.lua
|
||||
{
|
||||
"neovim/nvim-lspconfig",
|
||||
config = function()
|
||||
require("config.lsp-setup")
|
||||
end,
|
||||
},
|
||||
|
||||
-- Rust : rustaceanvim
|
||||
{
|
||||
"mrcjkb/rustaceanvim",
|
||||
version = "^5",
|
||||
lazy = false,
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +1,18 @@
|
|||
---@type LazySpec
|
||||
return {
|
||||
{
|
||||
"MeanderingProgrammer/render-markdown.nvim",
|
||||
dependencies = {
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
"nvim-tree/nvim-web-devicons", -- ou mini.icons si tu utilises mini
|
||||
{
|
||||
"MeanderingProgrammer/render-markdown.nvim",
|
||||
dependencies = {
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
"nvim-tree/nvim-web-devicons", -- ou mini.icons si tu utilises mini
|
||||
},
|
||||
opts = {
|
||||
-- preset = "lazy", -- tu peux tester ce preset plus tard
|
||||
enabled = true,
|
||||
file_types = { "markdown" },
|
||||
latex = {
|
||||
enabled = false,
|
||||
},
|
||||
},
|
||||
},
|
||||
opts = {
|
||||
-- preset = "lazy", -- tu peux tester ce preset plus tard
|
||||
enabled = true,
|
||||
file_types = { "markdown" },
|
||||
},
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,27 +1,29 @@
|
|||
return {
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
build = ":TSUpdate",
|
||||
opts = {
|
||||
ensure_installed = {
|
||||
"bash",
|
||||
"c",
|
||||
"lua",
|
||||
"vim",
|
||||
"vimdoc",
|
||||
"markdown",
|
||||
"markdown_inline",
|
||||
"query",
|
||||
"python",
|
||||
"html",
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
build = ":TSUpdate",
|
||||
opts = {
|
||||
ensure_installed = {
|
||||
"bash",
|
||||
"c",
|
||||
"lua",
|
||||
"vim",
|
||||
"vimdoc",
|
||||
"markdown",
|
||||
"markdown_inline",
|
||||
"query",
|
||||
"python",
|
||||
"html",
|
||||
"yaml",
|
||||
"latex",
|
||||
"rust",
|
||||
},
|
||||
auto_install = true,
|
||||
highlight = {
|
||||
enable = true,
|
||||
additional_vim_regex_highlighting = {},
|
||||
},
|
||||
indent = {
|
||||
enable = true,
|
||||
},
|
||||
},
|
||||
auto_install = true,
|
||||
highlight = {
|
||||
enable = true,
|
||||
additional_vim_regex_highlighting = {},
|
||||
},
|
||||
indent = {
|
||||
enable = true,
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
[Unit]
|
||||
Description=Cliphist image watcher
|
||||
PartOf=wayland-session.target
|
||||
After=wayland-session.target
|
||||
PartOf=graphical-session.target
|
||||
After=graphical-session.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
|
|
@ -10,4 +10,4 @@ ExecStart=/usr/bin/wl-paste --type image --watch cliphist store
|
|||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=wayland-session.target
|
||||
WantedBy=graphical-session.target
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
[Unit]
|
||||
Description=Cliphist text watcher
|
||||
PartOf=wayland-session.target
|
||||
After=wayland-session.target
|
||||
PartOf=graphical-session.target
|
||||
After=graphical-session.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
|
|
@ -10,4 +10,4 @@ ExecStart=/usr/bin/wl-paste --watch cliphist store
|
|||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=wayland-session.target
|
||||
WantedBy=graphical-session.target
|
||||
|
|
|
|||
|
|
@ -0,0 +1 @@
|
|||
/usr/lib/systemd/user/ydotool.service
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
[Unit]
|
||||
Description=GNOME keyring daemon
|
||||
PartOf=wayland-session.target
|
||||
After=wayland-session.target
|
||||
PartOf=graphical-session.target
|
||||
After=graphical-session.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/gnome-keyring-daemon --components=pkcs11,secrets,ssh --start
|
||||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=wayland-session.target
|
||||
WantedBy=graphical-session.target
|
||||
|
|
|
|||
|
|
@ -0,0 +1 @@
|
|||
/home/fy59/.config/systemd/user/hyprwhspr.service
|
||||
|
|
@ -0,0 +1 @@
|
|||
/home/fy59/.config/systemd/user/swaync.service
|
||||
28
systemd/.config/systemd/user/hyprwhspr.service
Normal file
28
systemd/.config/systemd/user/hyprwhspr.service
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
[Unit]
|
||||
Description=hyprwhspr stt
|
||||
Documentation=https://github.com/goodroot/hyprwhspr
|
||||
|
||||
PartOf=graphical-session.target
|
||||
After=graphical-session.target
|
||||
|
||||
After=pipewire.service ydotool.service
|
||||
Wants=pipewire.service
|
||||
Requires=ydotool.service
|
||||
|
||||
Wants=wireplumber.service
|
||||
After=wireplumber.service
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
ExecStartPre=/bin/bash -lc 'for i in $(seq 1 60); do ls "$XDG_RUNTIME_DIR"/wayland-* >/dev/null 2>&1 && exit 0; sleep 0.25; done; echo "Wayland socket not found"; exit 1'
|
||||
ExecStart=/usr/lib/hyprwhspr/bin/hyprwhspr
|
||||
ExecStopPost=/bin/bash -c 'pkill -9 -f "hyprwhspr-virtual-keyboard" 2>/dev/null || true'
|
||||
Environment=HYPRWHSPR_ROOT=/usr/lib/hyprwhspr
|
||||
Environment=PYTHONUNBUFFERED=1
|
||||
Restart=on-failure
|
||||
RestartSec=2
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
|
||||
[Install]
|
||||
WantedBy=graphical-session.target
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
[Unit]
|
||||
Description=Wayland notification daemon
|
||||
PartOf=wayland-session.target
|
||||
After=wayland-session.target
|
||||
PartOf=graphical-session.target
|
||||
After=graphical-session.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/swaync
|
||||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=wayland-session.target
|
||||
WantedBy=graphical-session.target
|
||||
|
|
|
|||
|
|
@ -1,4 +0,0 @@
|
|||
[Unit]
|
||||
Description=Wayland user session
|
||||
Requires=basic.target
|
||||
After=basic.target
|
||||
|
|
@ -1 +0,0 @@
|
|||
../swaync.service
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
[Unit]
|
||||
Description=Wayland color temperature (wlsunset)
|
||||
PartOf=wayland-session.target
|
||||
After=wayland-session.target
|
||||
PartOf=graphical-session.target
|
||||
After=graphical-session.target
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/bin/wlsunset -l 48.85 -L 2.35 -t 3000 -T 6500
|
||||
Restart=on-failure
|
||||
|
||||
[Install]
|
||||
WantedBy=wayland-session.target
|
||||
WantedBy=graphical-session.target
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
{
|
||||
"modules-left": [
|
||||
"ext/workspaces"
|
||||
"ext/workspaces",
|
||||
"custom/hyprwhspr"
|
||||
],
|
||||
"modules-right": [
|
||||
"mpris",
|
||||
|
|
@ -158,5 +159,15 @@
|
|||
},
|
||||
"exec-if": "which waybar-module-pacman-updates",
|
||||
"exec": "waybar-module-pacman-updates --no-zero-output"
|
||||
},
|
||||
"custom/hyprwhspr": {
|
||||
"format": "{}",
|
||||
"exec": "/usr/lib/hyprwhspr/config/hyprland/hyprwhspr-tray.sh status",
|
||||
"interval": 1,
|
||||
"return-type": "json",
|
||||
"exec-on-event": true,
|
||||
"on-click": "/usr/lib/hyprwhspr/config/hyprland/hyprwhspr-tray.sh record",
|
||||
"on-click-right": "/usr/lib/hyprwhspr/config/hyprland/hyprwhspr-tray.sh restart",
|
||||
"tooltip": true
|
||||
}
|
||||
}
|
||||
|
|
|
|||
12
waybar/.config/waybar/hyprwhspr-module.jsonc
Normal file
12
waybar/.config/waybar/hyprwhspr-module.jsonc
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"custom/hyprwhspr": {
|
||||
"format": "{}",
|
||||
"exec": "/usr/lib/hyprwhspr/config/hyprland/hyprwhspr-tray.sh status",
|
||||
"interval": 1,
|
||||
"return-type": "json",
|
||||
"exec-on-event": true,
|
||||
"on-click": "/usr/lib/hyprwhspr/config/hyprland/hyprwhspr-tray.sh record",
|
||||
"on-click-right": "/usr/lib/hyprwhspr/config/hyprland/hyprwhspr-tray.sh restart",
|
||||
"tooltip": true
|
||||
}
|
||||
}
|
||||
|
|
@ -197,3 +197,39 @@ tooltip {
|
|||
tooltip label {
|
||||
color: @text;
|
||||
}
|
||||
|
||||
/* hyprwhspr Waybar Styling - Waybar Compatible */
|
||||
|
||||
/* Base styles - same icon for all states, only colors change */
|
||||
#custom-hyprwhspr {
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
margin: 4px;
|
||||
padding: 6px 6px;
|
||||
background: alpha(@mantle, 0.88);
|
||||
border: 1px solid alpha(@lavender, 0.35);
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
#custom-hyprwhspr.ready {
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
#custom-hyprwhspr.recording {
|
||||
color: @red;
|
||||
font-family: monospace; /* Better rendering of dot characters */
|
||||
letter-spacing: 0.5px; /* Slight spacing for better dot visibility */
|
||||
}
|
||||
|
||||
#custom-hyprwhspr.stopped {
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
#custom-hyprwhspr.error {
|
||||
color: @peach;
|
||||
}
|
||||
|
||||
/* Hover effects - Waybar doesn't support filter, so we use opacity instead */
|
||||
#custom-hyprwhspr:hover {
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@
|
|||
# PATH & env
|
||||
# =========================
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
export PATH="$HOME/.cargo/bin:$PATH"
|
||||
export PYENV_ROOT="$HOME/.pyenv"
|
||||
export HISTFILE="$HOME/.zsh_history"
|
||||
export HISTSIZE=10000
|
||||
|
|
|
|||
Loading…
Reference in a new issue