Got tmux to act the way I want on startup let's goooo
This commit is contained in:
parent
01ee066c62
commit
32b53a7fd6
|
@ -1,3 +1,8 @@
|
|||
if status is-interactive
|
||||
and not set -q TMUX
|
||||
exec tmux attach -t Welcome || tmux
|
||||
end
|
||||
|
||||
set fish_cursor_default block # Set the normal and visual mode cursors to a block
|
||||
set fish_cursor_insert line # Set the insert mode cursor to a line
|
||||
set fish_cursor_replace_one underscore # Set the replace mode cursor to an underscore
|
||||
|
|
|
@ -46,6 +46,7 @@ local abbreviations = {
|
|||
{ "ints", "\\mathbb{Z}" },
|
||||
{ "nats", "\\mathbb{N}" },
|
||||
{ "rats", "\\mathbb{Q}" },
|
||||
{ "irats", "\\mathbb{I}" },
|
||||
{ "rrea", "\\mathbb{R}" },
|
||||
{ "ppri", "\\mathbb{P}" },
|
||||
{ "ffie", "\\mathbb{F}" },
|
||||
|
@ -61,7 +62,7 @@ local abbreviations = {
|
|||
{ "ett", "^{t}" },
|
||||
{ "tmat", "^{T}" }, -- Tranpose of a matrix
|
||||
{ "cmat", "^{*}" }, -- Conjugate of a matrix
|
||||
{"ortco", "^{\\bot}"}, -- Orthogonal complement
|
||||
{ "ortco", "^{\\bot}" }, -- Orthogonal complement
|
||||
{ "etp", "^{+}" }, -- Subscripts
|
||||
{ "s0", "_{0}" },
|
||||
{ "s1", "_{1}" },
|
||||
|
|
|
@ -8,7 +8,7 @@ function M.setup()
|
|||
require("my.options").setup()
|
||||
require('my.keymaps').setup()
|
||||
require('my.plugins').setup()
|
||||
require("telescope.extensions.unicode").setupAbbreviations()
|
||||
-- require("telescope.extensions.unicode").setupAbbreviations()
|
||||
end
|
||||
|
||||
return M
|
||||
|
|
|
@ -35,8 +35,8 @@ function M.setup()
|
|||
opt.splitright = true -- Put new windows right of current
|
||||
|
||||
opt.wrap = false -- Disable line wrap (by default)
|
||||
opt.wildmode = {'list', 'longest'} -- Command-line completion mode
|
||||
opt.completeopt = {"menu", "menuone", "noselect"}
|
||||
opt.wildmode = { 'list', 'longest' } -- Command-line completion mode
|
||||
opt.completeopt = { "menu", "menuone", "noselect" }
|
||||
|
||||
-- Set leader
|
||||
helpers.global("mapleader", " ")
|
||||
|
|
|
@ -38,7 +38,7 @@ function M.setup()
|
|||
"saadparwaiz1/cmp_luasnip", -- snippet support for cmp
|
||||
"wakatime/vim-wakatime", -- track time usage
|
||||
"vmchale/dhall-vim", -- dhall syntax highlighting
|
||||
"folke/which-key.nvim", -- shows what other keys I can press to finish a command
|
||||
-- "folke/which-key.nvim", -- shows what other keys I can press to finish a command
|
||||
"psliwka/vim-smoothie", -- smooth scrolling
|
||||
"easymotion/vim-easymotion", -- removes the need for spamming w or e
|
||||
"tpope/vim-surround", -- work with brackets, quotes, tags, etc
|
||||
|
|
|
@ -17,11 +17,11 @@ function M.setup()
|
|||
require("my.plugins.nvim-tree").setup()
|
||||
require("my.plugins.lualine").setup()
|
||||
require("my.plugins.vimux").setup()
|
||||
require("my.plugins.whichkey").setup()
|
||||
-- require("my.plugins.whichkey").setup()
|
||||
require("toggleterm").setup()
|
||||
|
||||
require("my.plugins.neogit").setup()
|
||||
require("my.plugins.noice").setup()
|
||||
-- require("my.plugins.noice").setup()
|
||||
end)
|
||||
|
||||
require("my.plugins.dashboard").setup()
|
||||
|
@ -32,7 +32,7 @@ function M.setup()
|
|||
require("my.plugins.null-ls").setup()
|
||||
require("my.plugins.vimtex").setup()
|
||||
require("my.plugins.lean").setup()
|
||||
require("my.plugins.notify").setup()
|
||||
-- require("my.plugins.notify").setup()
|
||||
end)
|
||||
|
||||
if env.firevim.active() then
|
||||
|
|
|
@ -4,8 +4,8 @@ local M = {}
|
|||
function M.setup()
|
||||
require('lean').setup {
|
||||
abbreviations = { builtin = true, cmp = true },
|
||||
lsp = { on_attach = lspconfig.on_attach },
|
||||
lsp3 = { on_attach = lspconfig.on_attach },
|
||||
lsp = { on_attach = lspconfig.on_attach, capabilities = lspconfig.capabilities },
|
||||
lsp3 = false,
|
||||
mappings = true
|
||||
}
|
||||
end
|
||||
|
|
|
@ -84,6 +84,7 @@ local servers = {
|
|||
},
|
||||
rnix = {},
|
||||
cssls = {},
|
||||
rust_analyzer = {},
|
||||
-- texlab = {
|
||||
-- build = {
|
||||
-- executable = "tectonic",
|
||||
|
@ -101,8 +102,9 @@ local servers = {
|
|||
-- agda = {}, Haven't gotten this one to work yet
|
||||
}
|
||||
|
||||
M.capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||
|
||||
function M.setup()
|
||||
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
||||
|
||||
-- Setup basic language servers
|
||||
for lsp, details in pairs(servers) do
|
||||
|
@ -118,7 +120,7 @@ function M.setup()
|
|||
debounce_text_changes = 150 -- This will be the default in neovim 0.7+
|
||||
},
|
||||
cmd = details.cmd,
|
||||
capabilities = capabilities
|
||||
capabilities = M.capabilities
|
||||
}
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,18 +1,36 @@
|
|||
local M = {}
|
||||
|
||||
function M.setup()
|
||||
require 'nvim-treesitter.configs'.setup {
|
||||
require'nvim-treesitter.configs'.setup {
|
||||
ensure_installed = {
|
||||
"bash", "javascript", "typescript", "c", "cpp", "css", "dockerfile",
|
||||
"elixir", "fish", "html", "json", "latex", "python", "rust", "scss",
|
||||
"toml", "tsx", "vim", "yaml", "nix", "kotlin"
|
||||
"bash",
|
||||
"javascript",
|
||||
"typescript",
|
||||
"c",
|
||||
"cpp",
|
||||
"css",
|
||||
"dockerfile",
|
||||
"elixir",
|
||||
"fish",
|
||||
"html",
|
||||
"json",
|
||||
"latex",
|
||||
"python",
|
||||
"rust",
|
||||
"scss",
|
||||
"toml",
|
||||
"tsx",
|
||||
"vim",
|
||||
"yaml",
|
||||
"nix",
|
||||
"kotlin"
|
||||
},
|
||||
sync_install = false,
|
||||
indent = { enable = true },
|
||||
highlight = {
|
||||
enable = true,
|
||||
|
||||
disable = { "kotlin", "tex", "latex" },
|
||||
disable = { "kotlin", "tex", "latex", "lean" },
|
||||
|
||||
-- Setting this to true will run `:h syntax` and tree-sitter at the same time.
|
||||
-- Set this to `true` if you depend on 'syntax' being enabled (like for indentation).
|
||||
|
|
|
@ -78,4 +78,5 @@ bind-key -T copy-mode-vi 'C-\' select-pane -l
|
|||
# set-option -g @fastcopy-key a
|
||||
|
||||
# Keep state around using resurrect
|
||||
set -g @resurrect-processes '"~python3"'
|
||||
# set -g @resurrect-processes '"~python3"'
|
||||
# Restore on tmux start
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
"Absolute value": {
|
||||
"prefix": "abs",
|
||||
"description": "Absolute values",
|
||||
"body": "|$1|$0"
|
||||
"body": "\\abs{$1}$0"
|
||||
},
|
||||
"Lemma": {
|
||||
"prefix": "lemma",
|
||||
|
@ -285,5 +285,16 @@
|
|||
"prefix": "integral",
|
||||
"description": "Integral",
|
||||
"body": "\\int $1 d${2:x}$0"
|
||||
},
|
||||
"Iff cases": {
|
||||
"prefix": "ciff",
|
||||
"description": "Prove an equivalence in both directions",
|
||||
"body": [
|
||||
"\\begin{enumerate}",
|
||||
"\t\\item[$\\implies$]$1",
|
||||
"\t\\item[$\\impliedby$]$2",
|
||||
"\\end{enumerate}",
|
||||
"$0"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
|
24
flake.lock
24
flake.lock
|
@ -287,11 +287,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1656169755,
|
||||
"narHash": "sha256-Nlnm4jeQWEGjYrE6hxi/7HYHjBSZ/E0RtjCYifnNsWk=",
|
||||
"lastModified": 1667907331,
|
||||
"narHash": "sha256-bHkAwkYlBjkupPUFcQjimNS8gxWSWjOTevEuwdnp5m0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "4a3d01fb53f52ac83194081272795aa4612c2381",
|
||||
"rev": "6639e3a837fc5deb6f99554072789724997bc8e5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -567,11 +567,11 @@
|
|||
},
|
||||
"nixos-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1660646295,
|
||||
"narHash": "sha256-V4G+egGRc3elXPTr7QLJ7r7yrYed0areIKDiIAlMLC8=",
|
||||
"lastModified": 1669791787,
|
||||
"narHash": "sha256-KBfoA2fOI5+wCrm7PR+j7jHqXeTkVRPQ0m5fcKchyuU=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "762b003329510ea855b4097a37511eb19c7077f0",
|
||||
"rev": "e76c78d20685a043d23f5f9e0ccd2203997f1fb1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -583,11 +583,11 @@
|
|||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1660749083,
|
||||
"narHash": "sha256-GHLFMGH+r3OmI4tV0x/RtxN7DkHcH2ZOhK8uzQeSLiY=",
|
||||
"lastModified": 1669861251,
|
||||
"narHash": "sha256-QyBI5QNT/nQRkCsZHnN3ImKCaxrtMArVqNioA7diwU4=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "a55a7db823959cf509d55325201f1864af4574b9",
|
||||
"rev": "af4d0d532f413ad2fbb3a13f47c98c9fca1948e1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -599,11 +599,11 @@
|
|||
},
|
||||
"nixpkgs-unstable": {
|
||||
"locked": {
|
||||
"lastModified": 1660639432,
|
||||
"narHash": "sha256-2WDiboOCfB0LhvnDVMXOAr8ZLDfm3WdO54CkoDPwN1A=",
|
||||
"lastModified": 1669867399,
|
||||
"narHash": "sha256-Z8RXSFYOsIsTG96ROKtV0eZ8Q7u4irFWm6ELqfw7mT8=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "6c6409e965a6c883677be7b9d87a95fab6c3472e",
|
||||
"rev": "38e591dd05ffc8bdf79dc752ba78b05e370416fa",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
|
|
@ -5,15 +5,30 @@ let
|
|||
fastcopy = pkgs.tmuxPlugins.mkTmuxPlugin
|
||||
{
|
||||
pluginName = "fastcopy";
|
||||
version = "unstable-2022-04-18";
|
||||
version = "unstable-2022-11-16";
|
||||
src = pkgs.fetchFromGitHub
|
||||
{
|
||||
owner = "abhinav";
|
||||
repo = "tmux-fastcopy";
|
||||
sha256 = "0d2xdch5w35mw3kpw1y6jy8wk4zj43pjx73jlx83ciqddl3975x6";
|
||||
rev = "4b9bc8e9e71c5b6eeb44a02f608baec07e12ea3d";
|
||||
sha256 = "1ald4ycgwj1fhk82yvsy951kgnn5im53fhsscz20hvjsqql7j4j3";
|
||||
rev = "41f4c1c9fae7eb05c85ee2e248719f004dcfc90e";
|
||||
};
|
||||
};
|
||||
|
||||
cowboy = pkgs.tmuxPlugins.mkTmuxPlugin
|
||||
{
|
||||
pluginName = "cowboy";
|
||||
version = "unstable-2021-05-11";
|
||||
src = pkgs.fetchFromGitHub
|
||||
{
|
||||
owner = "tmux-plugins";
|
||||
repo = "tmux-cowboy";
|
||||
sha256 = "16wqwfaqy7nhiy1ijkng1x4baqq7s9if0m3ffcrnakza69s6r4r8";
|
||||
rev = "75702b6d0a866769dd14f3896e9d19f7e0acd4f2";
|
||||
};
|
||||
};
|
||||
|
||||
muxile = pkgs.callPackage ./tmux/muxile.nix { };
|
||||
in
|
||||
{
|
||||
home-manager.users.adrielus.programs = {
|
||||
|
@ -33,6 +48,15 @@ in
|
|||
sessionist # Nicer workflow for switching around between session
|
||||
# fastcopy # Easy copying of stuff
|
||||
resurrect # Save / restore tmux sessions
|
||||
# muxile # Track tmux sessions on my phone
|
||||
# cowboy # kill all hanging processes inside pane
|
||||
{
|
||||
plugin = continuum; # start tmux on boot & more
|
||||
extraConfig = ''
|
||||
set -g @continuum-restore 'on'
|
||||
set -g @continuum-boot 'on'
|
||||
'';
|
||||
}
|
||||
];
|
||||
|
||||
extraConfig = ''
|
||||
|
@ -45,3 +69,4 @@ in
|
|||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
22
modules/applications/tmux/muxile.nix
Normal file
22
modules/applications/tmux/muxile.nix
Normal file
|
@ -0,0 +1,22 @@
|
|||
{ pkgs, ... }:
|
||||
let dependencies = [ pkgs.qrencode pkgs.jq pkgs.websocat ];
|
||||
in
|
||||
pkgs.tmuxPlugins.mkTmuxPlugin
|
||||
{
|
||||
pluginName = "muxile";
|
||||
version = "unstable-2021-08-08";
|
||||
src = pkgs.fetchFromGitHub
|
||||
{
|
||||
owner = "bjesus";
|
||||
repo = "muxile";
|
||||
sha256 = "12kmcyizzglr4r7nisjbjmwmw1g4hbwpkil53zzmq9wx60l8lwgb";
|
||||
rev = "7310995ed1827844a528a32bb2d3a3694f1c4a0d";
|
||||
};
|
||||
nativeBuildInputs = [ pkgs.makeWrapper ];
|
||||
postInstall = ''
|
||||
for f in $target/scripts/*.sh; do
|
||||
wrapProgram $f \
|
||||
--prefix PATH : ${lib.makeBinPath dependencies}
|
||||
done
|
||||
'';
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
{-# LANGUAGE BlockArguments #-}
|
||||
|
||||
import Control.Monad (join)
|
||||
import Control.Monad (forM_, join)
|
||||
import Data.Function ((&))
|
||||
import System.Environment
|
||||
import System.Process
|
||||
|
@ -29,7 +29,7 @@ main =
|
|||
{ modMask = mod4Mask,
|
||||
layoutHook = myLayoutHook,
|
||||
startupHook = startup,
|
||||
manageHook = manageDocks <+> myManagerHook <+> manageHook kdeConfig,
|
||||
manageHook = manageDocks <+> manageSpawn <+> myManagerHook <+> manageHook kdeConfig,
|
||||
handleEventHook = handleEventHook kdeConfig <+> fullscreenEventHook,
|
||||
terminal = myTerminal,
|
||||
workspaces = myWorkspaces,
|
||||
|
@ -104,5 +104,13 @@ main =
|
|||
layouts = tall ||| threeCols ||| Full
|
||||
myLayoutHook = desktopLayoutModifiers $ spacingHook layouts
|
||||
|
||||
startupApps =
|
||||
[ (0, "alacritty"),
|
||||
(1, "google-chrome-stable"),
|
||||
(2, "Discord")
|
||||
]
|
||||
|
||||
startup :: X ()
|
||||
startup = pure ()
|
||||
startup = do
|
||||
forM_ startupApps \(index, app) -> do
|
||||
spawnOn (myWorkspaces !! index) app
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
{ pkgs, ... }: {
|
||||
home-manager.users.adrielus = {
|
||||
xsession.windowManager.xmonad = {
|
||||
enable = true;
|
||||
enableContribAndExtras = true;
|
||||
config = ./Main.hs;
|
||||
};
|
||||
# xsession.windowManager.xmonad = {
|
||||
# enable = true;
|
||||
# enableContribAndExtras = true;
|
||||
# config = ./Main.hs;
|
||||
# };
|
||||
|
||||
home.packages = with pkgs; [ xwallpaper ];
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ pkgs, ... }: {
|
||||
home-manager.users.adrielus.home.packages = with pkgs; [
|
||||
elan # lean version manager
|
||||
unstable.elan # lean version manager
|
||||
];
|
||||
}
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
{ pkgs, ... }: {
|
||||
home-manager.users.adrielus.home.packages = with pkgs; [ rustup ];
|
||||
home-manager.users.adrielus.home.packages = with pkgs; [ rustup rust-analyzer ];
|
||||
}
|
||||
|
|
|
@ -25,7 +25,8 @@ lib.lists.map (theme: pkgs.callPackage theme { }) [
|
|||
# wallpaper = "landscapes/salty_mountains.png";
|
||||
# wallpaper = "misc/rainbow.png";
|
||||
# wallpaper.foreign = ./wallpapers/eye.png;
|
||||
wallpaper.foreign = ./wallpapers/mountain.png;
|
||||
# wallpaper.foreign = ./wallpapers/mountain.png;
|
||||
wallpaper.foreign = ./wallpapers/rw_tower.png;
|
||||
transparency = 1;
|
||||
variant = "latte";
|
||||
})
|
||||
|
|
BIN
modules/themes/wallpapers/rw_tower.png
Normal file
BIN
modules/themes/wallpapers/rw_tower.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 662 KiB |
|
@ -35,7 +35,11 @@ in
|
|||
|
||||
|
||||
# Enable xmonad
|
||||
windowManager.xmonad.enable = true;
|
||||
windowManager.xmonad = {
|
||||
enable = true;
|
||||
enableContribAndExtras = true;
|
||||
config = ./applications/xmonad/Main.hs;
|
||||
};
|
||||
|
||||
libinput = {
|
||||
# Enable touchpad support.
|
||||
|
|
Loading…
Reference in a new issue