mirror of
https://github.com/danielepintore/dotfiles.git
synced 2026-06-15 20:25:13 +02:00
feat(terminal): Use wezterm nightly as new terminal emulator
This commit is contained in:
@@ -20,7 +20,7 @@ monitor=eDP-1,1920x1200,auto,1.25
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
|
||||
# Default applications
|
||||
$terminal = ghostty
|
||||
$terminal = wezterm
|
||||
$fileManager = nautilus --new-window
|
||||
$browser = firefox
|
||||
$messenger = Telegram
|
||||
|
||||
@@ -1,27 +1,28 @@
|
||||
{
|
||||
"LuaSnip": { "branch": "master", "commit": "458560534a73f7f8d7a11a146c801db00b081df0" },
|
||||
"catppuccin": { "branch": "main", "commit": "fa42eb5e26819ef58884257d5ae95dd0552b9a66" },
|
||||
"catppuccin": { "branch": "main", "commit": "84336e08415858f6d835835e81a4f79e585463c6" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
|
||||
"cmp-cmdline": { "branch": "main", "commit": "d126061b624e0af6c3a556428712dd4d4194ec6d" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" },
|
||||
"cmp-path": { "branch": "main", "commit": "e52e640b7befd8113b3350f46e8cfcfe98fcf730" },
|
||||
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
||||
"copilot.lua": { "branch": "master", "commit": "3680bebcc95dfd6c7509466367e66f6dc64a5140" },
|
||||
"copilot.lua": { "branch": "master", "commit": "4958fb9390f624cb389be2772e3c5e718e94d8b6" },
|
||||
"fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" },
|
||||
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
|
||||
"git-worktree.nvim": { "branch": "master", "commit": "f247308e68dab9f1133759b05d944569ad054546" },
|
||||
"harpoon": { "branch": "harpoon2", "commit": "ed1f853847ffd04b2b61c314865665e1dadf22c7" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "7815740f4d0afb74ada00956c36e18ad695ed9e3" },
|
||||
"mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "bb3a17efc797c34c054463174e5522442576ebd8" },
|
||||
"mason.nvim": { "branch": "main", "commit": "197f6352c276bbc2d25541dfce00ec50d1a4e88f" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "dbdb80d3bd311989d21029c63918d67a786d5013" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "4d3b3bb8815fbe37bcaf3dbdb12a22382bc11ebe" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
|
||||
"smart-splits.nvim": { "branch": "master", "commit": "825073e87de5fae98b0c107917e15977d100323b" },
|
||||
"telescope.nvim": { "branch": "master", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" },
|
||||
"trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" },
|
||||
"undotree": { "branch": "master", "commit": "15d91b0afe04ea9ba5cd53e30190d1602af9a925" },
|
||||
"vim-fugitive": { "branch": "master", "commit": "d3e2b58dec75fc6012fecc82ce0d33a45ed0560e" },
|
||||
"vim-tmux-navigator": { "branch": "master", "commit": "412c474e97468e7934b9c217064025ea7a69e05e" },
|
||||
"undotree": { "branch": "master", "commit": "28f2f54a34baff90ea6f4a735ef1813ad875c743" },
|
||||
"vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" },
|
||||
"vim-tmux-navigator": { "branch": "master", "commit": "c45243dc1f32ac6bcf6068e5300f3b2b237e576a" },
|
||||
"vimwiki": { "branch": "dev", "commit": "72792615e739d0eb54a9c8f7e0a46a6e2407c9e8" }
|
||||
}
|
||||
|
||||
14
.config/nvim/lua/plugins/smart-splits.lua
Normal file
14
.config/nvim/lua/plugins/smart-splits.lua
Normal file
@@ -0,0 +1,14 @@
|
||||
return {
|
||||
'mrjones2014/smart-splits.nvim',
|
||||
lazy = false,
|
||||
keys = {
|
||||
{ "<C-h>", function() require("smart-splits").move_cursor_left() end },
|
||||
{ "<C-j>", function() require("smart-splits").move_cursor_down() end },
|
||||
{ "<C-k>", function() require("smart-splits").move_cursor_up() end },
|
||||
{ "<C-l>", function() require("smart-splits").move_cursor_right() end },
|
||||
{ "<C-S-h>", function() require("smart-splits").resize_left(5) end },
|
||||
{ "<C-S-J>", function() require("smart-splits").resize_down(5) end },
|
||||
{ "<C-S-K>", function() require("smart-splits").resize_up(5) end },
|
||||
{ "<C-S-L>", function() require("smart-splits").resize_right(5) end },
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
return {
|
||||
{
|
||||
enabled = false,
|
||||
"christoomey/vim-tmux-navigator",
|
||||
cmd = {
|
||||
"TmuxNavigateLeft",
|
||||
|
||||
98
.config/wezterm/wezterm.lua
Normal file
98
.config/wezterm/wezterm.lua
Normal file
@@ -0,0 +1,98 @@
|
||||
-- Wezterm config api
|
||||
local wezterm = require 'wezterm'
|
||||
local config = wezterm.config_builder()
|
||||
local act = wezterm.action
|
||||
local smart_splits = wezterm.plugin.require('https://github.com/mrjones2014/smart-splits.nvim')
|
||||
|
||||
-- Default shell (avoid to run zshprofile each time)
|
||||
config.default_prog = { '/usr/bin/zsh' }
|
||||
|
||||
-- Font
|
||||
config.font_size = 12
|
||||
config.font = wezterm.font 'JetBrains Mono'
|
||||
|
||||
-- Theme
|
||||
config.color_scheme = 'Grandshell (terminal.sexy)'
|
||||
config.force_reverse_video_cursor = true
|
||||
|
||||
-- Window
|
||||
config.window_background_opacity = 0.8
|
||||
config.inactive_pane_hsb = { saturation = 0.9, brightness = 0.1 }
|
||||
|
||||
-- Keymaps
|
||||
config.keys = {
|
||||
-- Pane
|
||||
{ key = '\\', mods = 'CTRL', action = act.SplitHorizontal },
|
||||
{ key = '-', mods = 'CTRL', action = act.SplitVertical },
|
||||
{ key = 'm', mods = 'CTRL', action = act.TogglePaneZoomState },
|
||||
|
||||
-- Vim movements
|
||||
{ key = 'h', mods = 'CTRL', action = act.ActivatePaneDirection 'Left' },
|
||||
{ key = 'l', mods = 'CTRL', action = act.ActivatePaneDirection 'Right' },
|
||||
{ key = 'k', mods = 'CTRL', action = act.ActivatePaneDirection 'Up' },
|
||||
{ key = 'j', mods = 'CTRL', action = act.ActivatePaneDirection 'Down' },
|
||||
|
||||
-- Vim resize panel
|
||||
{ key = 'H', mods = 'CTRL', action = act.AdjustPaneSize { 'Left', 5 } },
|
||||
{ key = 'J', mods = 'CTRL', action = act.AdjustPaneSize { 'Down', 5 } },
|
||||
{ key = 'K', mods = 'CTRL', action = act.AdjustPaneSize { 'Up', 5 } },
|
||||
{ key = 'L', mods = 'CTRL', action = act.AdjustPaneSize { 'Right', 5 } },
|
||||
|
||||
-- Vim copy mode
|
||||
{ key = 'Enter', mods = 'CTRL', action = act.ActivateCopyMode, },
|
||||
|
||||
-- Tabs
|
||||
{ key = 'Space', mods = 'CTRL', action = act.SpawnTab 'CurrentPaneDomain' },
|
||||
{ key = 't', mods = 'CTRL|SHIFT', action = act.ShowTabNavigator },
|
||||
{ key = '7', mods = 'CTRL', action = act.ActivateTab(0) },
|
||||
{ key = '8', mods = 'CTRL', action = act.ActivateTab(1) },
|
||||
{ key = '9', mods = 'CTRL', action = act.ActivateTab(2) },
|
||||
{ key = '0', mods = 'CTRL', action = act.ActivateTab(3) },
|
||||
|
||||
-- Workspaces
|
||||
{ key = 'w', mods = 'CTRL|SHIFT', action = act.ShowLauncherArgs { flags = "WORKSPACES" } },
|
||||
}
|
||||
|
||||
-- Tab bar
|
||||
config.use_fancy_tab_bar = false
|
||||
config.tab_bar_at_bottom = true
|
||||
config.status_update_interval = 1000
|
||||
config.colors = {
|
||||
tab_bar = {
|
||||
background = 'Transparent',
|
||||
}
|
||||
}
|
||||
wezterm.on("update-right-status", function(window, pane)
|
||||
-- Workspace name
|
||||
-- Time
|
||||
local time = wezterm.strftime("%H:%M")
|
||||
|
||||
-- Let's add color to one of the components
|
||||
window:set_right_status(wezterm.format({
|
||||
-- Wezterm has a built-in nerd fonts
|
||||
{ Text = time },
|
||||
}))
|
||||
end)
|
||||
|
||||
smart_splits.apply_to_config(config, {
|
||||
-- the default config is here, if you'd like to use the default keys,
|
||||
-- you can omit this configuration table parameter and just use
|
||||
-- smart_splits.apply_to_config(config)
|
||||
|
||||
-- directional keys to use in order of: left, down, up, right
|
||||
-- if you want to use separate direction keys for move vs. resize, you
|
||||
-- can also do this:
|
||||
direction_keys = {
|
||||
move = { 'h', 'j', 'k', 'l' },
|
||||
resize = { 'H', 'J', 'K', 'L' },
|
||||
},
|
||||
-- modifier keys to combine with direction_keys
|
||||
modifiers = {
|
||||
move = 'CTRL', -- modifier to use for pane movement, e.g. CTRL+h to move left
|
||||
resize = 'CTRL', -- modifier to use for pane resize, e.g. META+h to resize to the left
|
||||
},
|
||||
-- log level to use: info, warn, error
|
||||
log_level = 'info',
|
||||
})
|
||||
|
||||
return config
|
||||
Reference in New Issue
Block a user