Compare commits

...

10 Commits

Author SHA1 Message Date
8c0ed69a3b typo 2025-05-07 11:04:18 -04:00
0d9df09cd8 gh? 2025-05-07 14:35:26 +00:00
532e20bf1c parameterization 2025-05-07 14:24:06 +00:00
Joe Frikker
d5de6f4dd0 rust overlay 2025-05-06 23:19:53 -04:00
Joe Frikker
8604fb406c updates 2025-05-06 23:17:32 -04:00
Joe Frikker
98bd0a589f Removing tmuxinator 2025-05-06 23:16:04 -04:00
Joe Frikker
faa31d1bff Recent updates 2025-03-21 19:17:43 -04:00
4829b1fe12 Moving helix config to nix 2024-07-20 16:19:32 -04:00
42d08930e0 Tweaking lisp stuff 2024-07-20 15:39:20 -04:00
Joe Frikker
726d4b1548 changes 2024-05-31 09:39:32 -04:00
26 changed files with 678 additions and 648 deletions

View File

@@ -1,3 +0,0 @@
{{- if ne .laptop "shibumi" }}
.config/tmuxinator
{{- end }}

View File

@@ -98,3 +98,161 @@
(operators normal) (operators normal)
(prettify insert) (prettify insert)
slurp/barf))) slurp/barf)))
(use-package! kubernetes-overview
:commands (kubernetes-overview)
:config
(setq kubernetes-poll-frequency 3600
kubernetes-redraw-frequency 3600))
(use-package! kubernetes-evil
:after kubernetes-overview)
(use-package! ledger-mode
:mode "\\.ledger\\'")
(use-package! evil-ledger
:after ledger-mode
:config
(add-hook 'ledger-mode-hook #'evil-ledger-mode))
; (use-package! org-transclusion
; :after org)
(setq lsp-java-jdt-download-url "https://www.eclipse.org/downloads/download.php?file=/jdtls/milestones/1.42.0/jdt-language-server-1.42.0-202411281516.tar.gz")
(setq sql-connection-alist
'((local
(sql-product 'mysql)
(sql-server "127.0.0.1")
(sql-user "root")
(sql-password "test")
(sql-database "ebdb")
(sql-port 3306))
(dev
(sql-product 'mysql)
(sql-server "kube-db.dev.internal.shibumi.com")
(sql-user "joe.frikker")
(sql-password "psStCkHDMJ2DyR6x")
(sql-database "mothership")
(sql-port 3306)
(sql-default-directory "/ssh:bastion.dev.internal.shibumi.com:"))))
(after! projectile
(setq projectile-indexing-method 'alien))
(after! magit
(setq magit-list-refs-sortby "-committerdate"))
(setq lsp-java-configuration-maven-user-settings "/Users/jfrikker/.m2/settings.xml")
(after! org
(setq org-todo-keywords
'((sequence
"TODO(o)" ; A task that needs doing
"IN_PROGRESS(p!)" ; Task is in progress
"HOLD(h@)" ; Task is being held up or paused
"|"
"DONE(d!)"
"CANCELLED(c@)"))
org-todo-keyword-faces
'(("IN_PROGRESS" . +org-todo-active)
("HOLD" . +org-todo-onhold)
("CANCELLED" . +org-todo-cancel)))
(setq org-capture-templates
'(("t" "Personal todo" entry
(file+headline +org-capture-todo-file "Inbox")
"* TODO %?\n%i\n%a" :prepend t)
("d" "Decision" entry
(file+headline "decisions.org" "Unfiled")
"* %?\n:properties:\n%^{ORG-LEVEL|Sprint Team}p:end:\n#What\n\n#Why\n\n#When\n\n%u"))))
(defun org-columns-dblock-write-default (ipos table params)
"Write out a columnview table at position IPOS in the current buffer.
TABLE is a table with data as produced by `org-columns--capture-view'.
PARAMS is the parameter property list obtained from the dynamic block
definition."
(let ((link (plist-get params :link))
(width-specs
(mapcar (lambda (spec) (nth 2 spec))
org-columns-current-fmt-compiled)))
(when table
;; Prune level information from the table. Also normalize
;; headings: remove stars, add indentation entities, if
;; required, and possibly precede some of them with a horizontal
;; rule.
(let ((item-index
(let ((p (assoc "ITEM" org-columns-current-fmt-compiled)))
(and p (cl-position p
org-columns-current-fmt-compiled
:test #'equal))))
(hlines (plist-get params :hlines))
(indent (plist-get params :indent))
new-table)
;; Copy header and first rule.
(push (pop table) new-table)
(push (pop table) new-table)
(dolist (row table (setq table (nreverse new-table)))
(let ((level (car row)))
(when (and (not (eq (car new-table) 'hline))
(or (eq hlines t)
(and (numberp hlines) (<= level hlines))))
(push 'hline new-table))
(when item-index
(let* ((raw (nth item-index (cdr row)))
(cleaned (org-columns--clean-item raw))
(item (if (not link) cleaned
(let ((search (org-link-heading-search-string raw)))
(org-link-make-string
search
cleaned)))))
(setf (nth item-index (cdr row))
(if (and indent (> level 1))
(concat "\\_" (make-string (* 2 (1- level)) ?\s) item)
item))))
(push (cdr row) new-table))))
(when (plist-get params :vlines)
(setq table
(let ((size (length org-columns-current-fmt-compiled)))
(append (mapcar (lambda (x) (if (eq 'hline x) x (cons "" x)))
table)
(list (cons "/" (make-list size "<>")))))))
(when (seq-find #'identity width-specs)
;; There are width specifiers in column format. Pass them
;; to the resulting table, adding alignment field as the first
;; row.
(push (mapcar (lambda (width) (when width (format "<%d>" width))) width-specs) table))
;; now insert the table into the buffer
(goto-char ipos)
(let ((content-lines (org-split-string (plist-get params :content) "\n"))
recalc)
;; Insert affiliated keywords before the table.
(when content-lines
(while (string-match-p "\\`[ \t]*#\\+" (car content-lines))
(insert (string-trim-left (pop content-lines)) "\n")))
(save-excursion
;; Insert table at point.
(insert
(mapconcat (lambda (row)
(if (eq row 'hline) "|-|"
(format "|%s|" (mapconcat #'identity row "|"))))
table
"\n"))
;; Insert TBLFM lines following table.
(let ((case-fold-search t))
(dolist (line content-lines)
(when (string-match-p "\\`[ \t]*#\\+TBLFM:" line)
(insert "\n" (string-trim-left line))
(unless recalc (setq recalc t))))))
(when recalc (org-table-recalculate 'all t))
(org-table-align)
(when (seq-find #'identity width-specs)
(org-table-shrink))))))
(map!
:nv "g w" #'avy-goto-word-1
:nv "g r" #'+lookup/references
:nv "SPC D" #'+default/diagnostics
:nv "] e" #'flycheck-next-error
:nv "[ e" #'flycheck-previous-error)

26
dot_config/doom/custom.el Normal file
View File

@@ -0,0 +1,26 @@
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(ignored-local-variable-values
'((Syntax . ANSI-Common-Lisp)
(package . cl-mock)
(syntax . common-lisp)
(Base . 10)
(Package . FIVEAM)
(Syntax . Ansi-Common-Lisp)))
'(safe-local-variable-values
'((org-tags-exclude-from-inheritance "why" "tbd")
(org-tags-exclude-from-inheritance quote
("why" "tbd"))
(org-tags-exclude-from-inheritance quote
("why"
(\, "tbd")))
(sly-load-failed-fasl . ask))))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)

View File

@@ -21,11 +21,13 @@
;;layout ; auie,ctsrnm is the superior home row ;;layout ; auie,ctsrnm is the superior home row
:completion :completion
company ; the ultimate code completion backend ;; company ; the ultimate code completion backend
(corfu +orderless)
;;helm ; the *other* search engine for love and life ;;helm ; the *other* search engine for love and life
;;ido ; the other *other* search engine... ;;ido ; the other *other* search engine...
;;ivy ; a search engine for love and life ;;ivy ; a search engine for love and life
vertico ; the search engine of the future vertico
; the search engine of the future
:ui :ui
;;deft ; notational velocity for Emacs ;;deft ; notational velocity for Emacs
@@ -34,17 +36,16 @@
;;doom-quit ; DOOM quit-message prompts when you quit Emacs ;;doom-quit ; DOOM quit-message prompts when you quit Emacs
;;(emoji +unicode) ; 🙂 ;;(emoji +unicode) ; 🙂
hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
;;hydra
;;indent-guides ; highlighted indent columns ;;indent-guides ; highlighted indent columns
;;ligatures ; ligatures and symbols to make your code pretty again ;;ligatures ; ligatures and symbols to make your code pretty again
;;minimap ; show a map of the code on the side ;;minimap ; show a map of the code on the side
modeline ; snazzy, Atom-inspired modeline, plus API modeline ; snazzy, Atom-inspired modeline, plus API
;;nav-flash ; blink cursor line after big motions ;;nav-flash ; blink cursor line after big motions
;;neotree ; a project drawer, like NERDTree for vim neotree ; a project drawer, like NERDTree for vim
ophints ; highlight the region an operation acts on ophints ; highlight the region an operation acts on
(popup +defaults) ; tame sudden yet inevitable temporary windows (popup +defaults) ; tame sudden yet inevitable temporary windows
;;tabs ; a tab bar for Emacs ;;tabs ; a tab bar for Emacs
(treemacs +lsp) ; a project drawer, like neotree but cooler ;;(treemacs +lsp) ; a project drawer, like neotree but cooler
;;unicode ; extended unicode support for various languages ;;unicode ; extended unicode support for various languages
(vc-gutter +pretty) ; vcs diff in the fringe (vc-gutter +pretty) ; vcs diff in the fringe
vi-tilde-fringe ; fringe tildes to mark beyond EOB vi-tilde-fringe ; fringe tildes to mark beyond EOB
@@ -88,36 +89,35 @@
;;ansible ;;ansible
;;biblio ; Writes a PhD for you (citation needed) ;;biblio ; Writes a PhD for you (citation needed)
;;collab ; buffers with friends ;;collab ; buffers with friends
;;debugger ; FIXME stepping through code, to help you add bugs (debugger +lsp) ; FIXME stepping through code, to help you add bugs
;;direnv direnv
;;docker docker
;;editorconfig ; let someone else argue about tabs vs spaces ;;editorconfig ; let someone else argue about tabs vs spaces
;;ein ; tame Jupyter notebooks with emacs ;;ein ; tame Jupyter notebooks with emacs
(eval +overlay) ; run code, run (also, repls) (eval +overlay) ; run code, run (also, repls)
;;gist ; interacting with github gists
lookup ; navigate your code and its documentation lookup ; navigate your code and its documentation
;;(lsp +eglot) ; M-x vscode lsp ; M-x vscode
;;magit ; a git porcelain for Emacs (magit +forge) ; a git porcelain for Emacs
;;make ; run make tasks from Emacs ;;make ; run make tasks from Emacs
;;pass ; password manager for nerds ;;pass ; password manager for nerds
;;pdf ; pdf enhancements ;;pdf ; pdf enhancements
;;prodigy ; FIXME managing external services & code builders ;;prodigy ; FIXME managing external services & code builders
;;rgb ; creating color strings ;;rgb ; creating color strings
taskrunner ; taskrunner for all your projects ;;taskrunner ; taskrunner for all your projects
;;terraform ; infrastructure as code ;;terraform ; infrastructure as code
;;tmux ; an API for interacting with tmux ;;tmux ; an API for interacting with tmux
;;tree-sitter ; syntax and parsing, sitting in a tree... tree-sitter ; syntax and parsing, sitting in a tree...
;;upload ; map local to remote projects via ssh/ftp ;;upload ; map local to remote projects via ssh/ftp
:os :os
(:if IS-MAC macos) ; improve compatibility with macOS (:if (featurep :system 'macos) macos) ; improve compatibility with macOS
;;tty ; improve the terminal Emacs experience tty ; improve the terminal Emacs experience
:lang :lang
;;agda ; types of types of types of types... ;;agda ; types of types of types of types...
;;beancount ; mind the GAAP ;;beancount ; mind the GAAP
;;(cc +lsp) ; C > C++ == 1 ;;(cc +lsp) ; C > C++ == 1
clojure ; java with a lisp ;;clojure ; java with a lisp
common-lisp ; if you've seen one lisp, you've seen them all common-lisp ; if you've seen one lisp, you've seen them all
;;coq ; proofs-as-programs ;;coq ; proofs-as-programs
;;crystal ; ruby at the speed of c ;;crystal ; ruby at the speed of c
@@ -141,9 +141,9 @@
;;(haskell +lsp) ; a language that's lazier than I am ;;(haskell +lsp) ; a language that's lazier than I am
;;hy ; readability of scheme w/ speed of python ;;hy ; readability of scheme w/ speed of python
;;idris ; a language you can depend on ;;idris ; a language you can depend on
;;json ; At least it ain't XML (json +tree-sitter) ; At least it ain't XML
;;(java +lsp +tree-sitter) ; the poster child for carpal tunnel syndrome (java +lsp +tree-sitter) ; the poster child for carpal tunnel syndrome
;;(javascript +lsp) ; all(hope(abandon(ye(who(enter(here)))))) (javascript +lsp +treesitter) ; all(hope(abandon(ye(who(enter(here))))))
;;julia ; a better, faster MATLAB ;;julia ; a better, faster MATLAB
;;kotlin ; a better, slicker Java(Script) ;;kotlin ; a better, slicker Java(Script)
;;latex ; writing papers in Emacs has never been so fun ;;latex ; writing papers in Emacs has never been so fun
@@ -154,7 +154,7 @@
;;nim ; python + lisp at the speed of c ;;nim ; python + lisp at the speed of c
;;nix ; I hereby declare "nix geht mehr!" ;;nix ; I hereby declare "nix geht mehr!"
;;ocaml ; an objective camel ;;ocaml ; an objective camel
;;org ; organize your plain life in plain text (org) ; organize your plain life in plain text
;;php ; perl's insecure younger brother ;;php ; perl's insecure younger brother
;;plantuml ; diagrams for confusing people more ;;plantuml ; diagrams for confusing people more
;;purescript ; javascript, but functional ;;purescript ; javascript, but functional
@@ -162,10 +162,10 @@
;;qt ; the 'cutest' gui framework ever ;;qt ; the 'cutest' gui framework ever
;;racket ; a DSL for DSLs ;;racket ; a DSL for DSLs
;;raku ; the artist formerly known as perl6 ;;raku ; the artist formerly known as perl6
;;rest ; Emacs as a REST client rest ; Emacs as a REST client
;;rst ; ReST in peace ;;rst ; ReST in peace
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"} ;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
;;(rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap() (rust +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
;;scala ; java, but good ;;scala ; java, but good
;;(scheme +guile) ; a fully conniving family of lisps ;;(scheme +guile) ; a fully conniving family of lisps
sh ; she sells {ba,z,fi}sh shells on the C xor sh ; she sells {ba,z,fi}sh shells on the C xor
@@ -173,8 +173,8 @@
;;solidity ; do you need a blockchain? No. ;;solidity ; do you need a blockchain? No.
;;swift ; who asked for emoji variables? ;;swift ; who asked for emoji variables?
;;terra ; Earth and Moon in alignment for performance. ;;terra ; Earth and Moon in alignment for performance.
;;web ; the tubes web ; the tubes
;;yaml ; JSON, but readable yaml ; JSON, but readable
;;zig ; C, but simpler ;;zig ; C, but simpler
:email :email

View File

@@ -25,6 +25,13 @@
;; If you'd like to disable a package included with Doom, you can do so here ;; If you'd like to disable a package included with Doom, you can do so here
;; with the `:disable' property: ;; with the `:disable' property:
;(package! builtin-package :disable t) ;(package! builtin-package :disable t)
(package! sly-quicklisp :disable t)
;(package! org-transclusion)
(package! kubernetes)
(package! kubernetes-evil)
(package! ledger-mode)
(package! evil-ledger)
;; You can override the recipe of a built in package without having to specify ;; You can override the recipe of a built in package without having to specify
;; all the properties for `:recipe'. These will inherit the rest of its recipe ;; all the properties for `:recipe'. These will inherit the rest of its recipe

View File

@@ -1,26 +0,0 @@
theme = "catppuccin_frappe"
[editor]
auto-format = false
auto-save = true
# completion-replace = true
cursorline = true
idle-timeout = 0
rulers = [100]
text-width = 100
[editor.lsp]
goto-reference-include-declaration = false
[editor.cursor-shape]
insert = "bar"
[editor.smart-tab]
supersede-menu = true
[keys.normal.space]
space = "file_picker"
"," = "buffer_picker"
[editor.whitespace.render]
newline = "all"

View File

@@ -1,45 +0,0 @@
[language-server.eslint]
args = ["--stdio"]
command = "vscode-eslint-language-server"
[language-server.eslint.config]
# format = true
nodePath = ""
# onIgnoredFiles = "off"
# packageManager = "yarn"
quiet = false
rulesCustomizations = []
run = "onType"
# useESLintClass = false
validate = "on"
codeAction = { disableRuleComment = { enable = true, location = "separateLine" }, showDocumentation = { enable = true } }
# codeActionsOnSave = { mode = "all" }
experimental = {}
problems = { shortenToSingleLine = false }
# workingDirectory = { mode = "auto" }
# [language-server.jdtls]
# args = ["--jvm-arg=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=1044"]
[language-server.jdtls.config.java.autobuild]
enabled = true
[language-server.jdtls.config.java.completion]
maxResults = 1000
[language-server.jdtls.config.java.format.settings]
url = "https://raw.githubusercontent.com/google/styleguide/gh-pages/eclipse-java-google-style.xml"
[[language]]
name = "typescript"
language-servers = [ "typescript-language-server", "eslint" ]
indent = { tab-width = 4, unit = " " }
[[language]]
name = "tsx"
language-servers = [ "typescript-language-server", "eslint" ]
indent = { tab-width = 4, unit = " " }
[[language]]
name = "java"
indent = { tab-width = 4, unit = " " }

View File

@@ -0,0 +1,77 @@
{
enable = true;
extraPackages = epkgs: [
epkgs.catppuccin-theme
epkgs.evil
epkgs.evil-collection
epkgs.general
epkgs.projectile
epkgs.sly
epkgs.sly-macrostep
epkgs.vertico
epkgs.which-key
];
extraConfig = ''
(use-package catppuccin-theme
:config
(setq catppuccin-flavor 'frappe)
(load-theme 'catppuccin :no-confirm))
(use-package evil
:init
(setq evil-want-integration t)
(setq evil-want-keybinding nil)
:config
(evil-mode 1)
(evil-set-leader 'normal (kbd "SPC")))
(use-package evil-collection
:after evil
:config
(evil-collection-init))
(use-package general
:after evil
:config
(general-evil-setup)
(general-define-key
:states 'normal
:prefix "SPC"
"h" '(:ignore t :which-key "Help")
":" '(execute-extended-command :which-key "Execute Command")
";" '(eval-expression :which-key "Evaluate Expression"))
(general-define-key
:states 'normal
:prefix "SPC h"
"v" '(describe-variable :which-key "Describe Variable")))
(use-package projectile
:config (projectile-mode 1))
(use-package sly
:config
(setq inferior-lisp-program "sbcl"))
(use-package sly-macrostep)
(use-package vertico
:config
(vertico-mode))
(use-package which-key
:config
(which-key-mode))
(set-face-attribute 'default nil :font "JetBrainsMono Nerd Font" :height 130)
(set-face-attribute 'fixed-pitch nil :font "JetBrainsMono Nerd Font" :height 130)
(setq inhibit-startup-message t)
(scroll-bar-mode -1)
(tool-bar-mode -1)
(menu-bar-mode -1)
(setf indent-tabs-mode nil)
'';
}

View File

@@ -2,5 +2,5 @@
enable = true; enable = true;
enableBashIntegration = true; enableBashIntegration = true;
enableZshIntegration = true; enableZshIntegration = true;
icons = true; icons = "auto";
} }

View File

@@ -0,0 +1,64 @@
{
enable = true;
defaultEditor = true;
settings.theme = "catppuccin_frappe";
settings.editor.auto-format = false;
settings.editor.auto-pairs = false;
settings.editor.auto-save = true;
# settings.editor.completion-replace = true;
settings.editor.cursorline = true;
settings.editor.idle-timeout = 0;
settings.editor.rulers = [100];
settings.editor.text-width = 100;
settings.editor.lsp.goto-reference-include-declaration = false;
settings.editor.cursor-shape.insert = "bar";
settings.editor.smart-tab.supersede-menu = true;
settings.keys.normal.space.space = "file_picker";
settings.keys.normal.space."," = "buffer_picker";
settings.editor.whitespace.render.newline = "all";
languages.language-server.eslint.args = ["--stdio"];
languages.language-server.eslint.command = "vscode-eslint-language-server";
languages.language-server.eslint.config.nodePath = "";
languages.language-server.eslint.config.quiet = false;
languages.language-server.eslint.config.rulesCustomizations = [];
languages.language-server.eslint.config.run = "onType";
languages.language-server.eslint.config.validate = "on";
languages.language-server.eslint.config.codeAction.disableRuleComment.enable = true;
languages.language-server.eslint.config.codeAction.disableRuleComment.location = "separateLine";
languages.language-server.eslint.config.codeAction.showDocumentation.enable = true;
languages.language-server.eslint.config.problems.shortenToSingleLine = false;
languages.language-server.jdtls.config.java.autobuild.enabled = true;
languages.language-server.jdtls.config.java.completion.maxResults = 1000;
languages.language-server.jdtls.config.java.format.settings.url = "https://raw.githubusercontent.com/google/styleguide/gh-pages/eclipse-java-google-style.xml";
languages.language = [
{
name = "typescript";
language-servers = [ "typescript-language-server" "vscode-eslint-language-server" ];
indent.tab-width = 4;
indent.unit = " ";
}
{
name = "tsx";
language-servers = [ "typescript-language-server" "vscode-eslint-language-server" ];
indent.tab-width = 4;
indent.unit = " ";
}
{
name = "java";
indent.tab-width = 4;
indent.unit = " ";
}
];
}

View File

@@ -2,6 +2,7 @@ pkgs: {
enable = true; enable = true;
settings = { settings = {
add_newline = false; add_newline = false;
container.disabled = true;
git_branch.symbol = " "; git_branch.symbol = " ";
git_status.ahead = "\${count}"; git_status.ahead = "\${count}";
git_status.behind = "\${count}"; git_status.behind = "\${count}";

View File

@@ -31,5 +31,6 @@ bind-key -T copy-mode-vi 'y' send -X copy-selection-and-cancel
bind-key -T launcher g popup -h 100% -w 100% -E lazygit bind-key -T launcher g popup -h 100% -w 100% -E lazygit
bind-key g switch-client -Tlauncher bind-key g switch-client -Tlauncher
set -g default-command ""
''; '';
} }

View File

@@ -0,0 +1,161 @@
{
enable = true;
extraConfig = ''
local config = {}
local workspace_switcher = wezterm.plugin.require("https://github.com/MLFlexer/smart_workspace_switcher.wezterm")
workspace_switcher.zoxide_path='~/.nix-profile/bin/zoxide'
config.color_scheme = 'Catppuccin Frappe'
config.default_prog = { '/Users/jfrikker/.nix-profile/bin/zsh', '-l' }
config.font_size = 13.0
-- config.font = wezterm.font("JetBrains Mono")
config.inactive_pane_hsb = {
saturation = 0.5,
brightness = 0.5,
}
config.pane_focus_follows_mouse = true
config.switch_to_last_active_tab_when_closing_tab = true
config.tab_bar_at_bottom = true
config.use_fancy_tab_bar = false
config.window_decorations = "RESIZE"
wezterm.on('smart_workspace_switcher.workspace_switcher.created', function(window, path, workspace)
local editor = window:active_tab()
editor:set_title("edit")
editor:panes()[1]:send_text("hx\n")
local run = window:spawn_tab {}
run:set_title "run"
local term = window:spawn_tab {}
term:set_title "term"
editor:activate()
end)
-- From https://alexplescan.com/posts/2024/08/10/wezterm/
local function segments_for_right_status(window)
return {
window:active_workspace(),
}
end
wezterm.on('update-status', function(window, _)
local SOLID_LEFT_ARROW = utf8.char(0xe0b2)
local segments = segments_for_right_status(window)
local color_scheme = window:effective_config().resolved_palette
-- Note the use of wezterm.color.parse here, this returns
-- a Color object, which comes with functionality for lightening
-- or darkening the colour (amongst other things).
local bg = wezterm.color.parse(color_scheme.background)
local fg = color_scheme.foreground
-- Each powerline segment is going to be coloured progressively
-- darker/lighter depending on whether we're on a dark/light colour
-- scheme. Let's establish the "from" and "to" bounds of our gradient.
local gradient_to, gradient_from = bg
gradient_from = gradient_to:lighten(0.2)
-- Yes, WezTerm supports creating gradients, because why not?! Although
-- they'd usually be used for setting high fidelity gradients on your terminal's
-- background, we'll use them here to give us a sample of the powerline segment
-- colours we need.
local gradient = wezterm.color.gradient(
{
orientation = 'Horizontal',
colors = { gradient_from, gradient_to },
},
#segments -- only gives us as many colours as we have segments.
)
-- We'll build up the elements to send to wezterm.format in this table.
local elements = {}
for i, seg in ipairs(segments) do
local is_first = i == 1
if is_first then
table.insert(elements, { Background = { Color = 'none' } })
end
table.insert(elements, { Foreground = { Color = gradient[i] } })
table.insert(elements, { Text = SOLID_LEFT_ARROW })
table.insert(elements, { Foreground = { Color = fg } })
table.insert(elements, { Background = { Color = gradient[i] } })
table.insert(elements, { Text = ' ' .. seg .. ' ' })
end
window:set_right_status(wezterm.format(elements))
end)
config.leader = { key = ' ', mods = 'CTRL', timeout_milliseconds = 10000 }
config.keys = {
{
key = "s",
mods = "CMD",
action = workspace_switcher.switch_workspace(),
},
{
key = "-",
mods = "CMD",
action = wezterm.action.SplitVertical {},
},
{
key = "\\",
mods = "CMD",
action = wezterm.action.SplitHorizontal {},
},
{
key = "h",
mods = "CMD",
action = wezterm.action.ActivatePaneDirection "Left",
},
{
key = "j",
mods = "CMD",
action = wezterm.action.ActivatePaneDirection "Down",
},
{
key = "k",
mods = "CMD",
action = wezterm.action.ActivatePaneDirection "Up",
},
{
key = "l",
mods = "CMD",
action = wezterm.action.ActivatePaneDirection "Right",
},
{
key = "g",
mods = "CMD",
action = wezterm.action.SpawnCommandInNewTab {
args = { wezterm.home_dir .. "/.nix-profile/bin/zsh", "-l", "-c", "lazygit" }
}
},
{
key = "t",
mods = "CMD",
action = wezterm.action.SpawnCommandInNewTab {}
},
{
key = 'z',
mods = 'CMD',
action = wezterm.action.TogglePaneZoomState,
},
{
key = 'd',
mods = 'CMD',
action = wezterm.action.CloseCurrentTab { confirm = true },
},
}
for i = 1, 9 do
-- CTRL+ALT + number to activate that tab
table.insert(config.keys, {
key = tostring(i),
mods = 'LEADER',
action = wezterm.action.ActivateTab(i - 1),
})
end
return config
'';
}

View File

@@ -3,8 +3,8 @@
{ {
# Home Manager needs a bit of information about you and the # Home Manager needs a bit of information about you and the
# paths it should manage. # paths it should manage.
home.username = "jfrikker"; home.username = {{ .chezmoi.username | quote }};
home.homeDirectory = "/Users/jfrikker"; home.homeDirectory = {{ .chezmoi.homeDir | quote }};
# home.sessionVariables.BAT_THEME = "catppuccin-frappe"; # home.sessionVariables.BAT_THEME = "catppuccin-frappe";
# home.sessionVariables.RUST_SRC_PATH = "${pkgs.rust-bin.stable."1.68.0".rust-src}/lib/rustlib/src/rust/library"; # home.sessionVariables.RUST_SRC_PATH = "${pkgs.rust-bin.stable."1.68.0".rust-src}/lib/rustlib/src/rust/library";
@@ -52,49 +52,113 @@
home.packages = [ home.packages = [
# pkgs.apacheKafka # pkgs.apacheKafka
# pkgs.aria # pkgs.aria
pkgs.asdf_3_3
pkgs.aws-iam-authenticator pkgs.aws-iam-authenticator
pkgs.awscli pkgs.awscli
pkgs.bashInteractive pkgs.bashInteractive
# pkgs.cargo
pkgs.chezmoi pkgs.chezmoi
pkgs.du-dust pkgs.du-dust
pkgs.emacs29 pkgs.emacs
pkgs.fd pkgs.fd
pkgs.fend pkgs.fend
pkgs.gcc # pkgs.gcc
pkgs.gh
# pkgs.ghc # pkgs.ghc
# pkgs.go # pkgs.go
# pkgs.graphviz
# pkgs.haskellPackages.cabal-install # pkgs.haskellPackages.cabal-install
# pkgs.haskellPackages.haskell-language-server # pkgs.haskellPackages.haskell-language-server
# pkgs.helix # pkgs.helix
# pkgs.httpie # pkgs.httpie
# pkgs.inconsolata-nerdfont # pkgs.inconsolata-nerdfont
# pkgs.jdt-language-server # pkgs.jdt-language-server
pkgs.just # pkgs.just
# pkgs.jsonnet # pkgs.jsonnet
pkgs.kubectl pkgs.kubectl
pkgs.ledger
pkgs.lorri pkgs.lorri
# pkgs.maven # pkgs.maven
# pkgs.mysql-client pkgs.mysql-client
# pkgs.neovide # pkgs.neovide
pkgs.neovim pkgs.neovim
# pkgs.nodejs-16_x # pkgs.nodejs-16_x
# pkgs.nodePackages.typescript-language-server # pkgs.nodePackages.typescript-language-server
pkgs.openssh
# pkgs.postgresql # pkgs.postgresql
# (pkgs.python3.withPackages (p: [p.ipython p.pyyaml p.boto3])) # (pkgs.python3.withPackages (p: [p.ipython p.pyyaml p.boto3]))
pkgs.ripgrep pkgs.ripgrep
pkgs.rlwrap pkgs.rlwrap
pkgs.roswell
# pkgs.rust-analyzer # pkgs.rust-analyzer
# pkgs.rust-script # pkgs.rust-script
# pkgs.rust-bin.stable."1.68.0".default # pkgs.rust-bin.stable."1.68.0".default
# pkgs.rust-bin.stable."1.68.0".rust-analyzer # pkgs.rust-bin.stable."1.68.0".rust-analyzer
# pkgs.rustup # pkgs.rustup
pkgs.sbcl (pkgs.sbcl.withPackages (ps: with ps; [
_3bmd
_3bmd-ext-code-blocks
agnostic-lizard
alexandria
anypool
arrows
async-process
binding-arrows
bt-semaphore
chanl
cl-annot
cl-charms
cl-markup
cl-migratum
cl-migratum_dot_provider_dot_local-path
cl-migratum_dot_driver_dot_dbi
cl-mock
cl-punch
cl-rdkafka
cl-readline
cl-setlocale
clack
clack-handler-hunchentoot
clack-handler-woo
dbd-mysql
dbi
deploy
dexador
fare-csv
fiveam
group-by
inquisitor
lack-request
lack-response
lisp-preprocessor
local-time
log4cl
mito
mockingbird
myway
prove
prove-asdf
queues
queues_dot_priority-cqueue
queues_dot_simple-cqueue
replic
serapeum
shasht
slynk
smug
split-sequence
str
sxql-composer
trivial-ws
trivial-open-browser
trivial-timeout
uuid
yason ]))
# pkgs.source-code-pro # pkgs.source-code-pro
# pkgs.stack # pkgs.stack
pkgs.tokei pkgs.tokei
pkgs.xh pkgs.xh
# pkgs.xonsh # pkgs.xonsh
pkgs.yubikey-manager
# pkgs.yarn # pkgs.yarn
# pkgs.zellij # pkgs.zellij
]; ];
@@ -120,11 +184,12 @@
programs.eza = import ./home-exa.nix; programs.eza = import ./home-exa.nix;
# programs.fish = import ./home-fish.nix pkgs; # programs.fish = import ./home-fish.nix pkgs;
programs.fzf = import ./home-fzf.nix; programs.fzf = import ./home-fzf.nix;
# programs.gh.enable = true; programs.gh.enable = true;
programs.git.enable = true; programs.git.enable = true;
programs.git.userName = "Joe Frikker";
programs.git.userEmail = {{ .email | quote }};
programs.git.delta.enable = true; programs.git.delta.enable = true;
programs.helix.enable = true; programs.helix = import ./home-hx.nix;
programs.helix.defaultEditor = true;
# programs.ion.enable = true; # programs.ion.enable = true;
# programs.java.enable = true; # programs.java.enable = true;
# programs.java.package = pkgs.jdk17; # programs.java.package = pkgs.jdk17;
@@ -133,8 +198,11 @@
programs.lazygit.enable = true; programs.lazygit.enable = true;
programs.starship = import ./home-starship.nix pkgs; programs.starship = import ./home-starship.nix pkgs;
programs.tmux = import ./home-tmux.nix pkgs; programs.tmux = import ./home-tmux.nix pkgs;
# programs.zoxide.enable = true; programs.wezterm = import ./home-wezterm.nix;
programs.zoxide.enable = true;
programs.zsh = import ./home-zsh.nix pkgs; programs.zsh = import ./home-zsh.nix pkgs;
# programs.neovim = import ./home-neovim.nix pkgs; # programs.neovim = import ./home-neovim.nix pkgs;
# programs.emacs = import ./home-emacs.nix;
} }

View File

@@ -1,4 +1,50 @@
[ (import <rust-overlay>) [ (import <rust-overlay>)
(
final: prev:
{
# vscode-langservers-extracted =
# prev.buildNpmPackage rec {
# pname = "vscode-langservers-extracted";
# version = "4.8.0";
# src = prev.fetchFromGitHub {
# owner = "hrsh7th";
# repo = pname;
# rev = "v${version}";
# hash = "sha256-sGnxmEQ0J74zNbhRpsgF/cYoXwn4jh9yBVjk6UiUdK0=";
# };
# npmDepsHash = "sha256-LFWC87Ahvjf2moijayFze1Jk0TmTc7rOUd/s489PHro=";
# buildPhase =
# let
# extensions =
# if prev.stdenv.isDarwin
# then "${prev.vscodium}/Applications/VSCodium.app/Contents/Resources/app/extensions"
# else "${prev.vscodium}/lib/vscode/resources/app/extensions";
# in
# ''
# npx babel ${extensions}/css-language-features/server/dist/node \
# --out-dir lib/css-language-server/node/
# npx babel ${extensions}/html-language-features/server/dist/node \
# --out-dir lib/html-language-server/node/
# npx babel ${extensions}/json-language-features/server/dist/node \
# --out-dir lib/json-language-server/node/
# npx babel ${extensions}/markdown-language-features/server/dist/node \
# --out-dir lib/markdown-language-server/node/
# cp -r ${prev.vscode-extensions.dbaeumer.vscode-eslint}/share/vscode/extensions/dbaeumer.vscode-eslint/server/out \
# lib/eslint-language-server
# mv lib/markdown-language-server/node/workerMain.js lib/markdown-language-server/node/main.js
# '';
# meta = with prev.lib; {
# description = "HTML/CSS/JSON/ESLint language servers extracted from vscode";
# homepage = "https://github.com/hrsh7th/vscode-langservers-extracted";
# license = licenses.mit;
# maintainers = with maintainers; [ lord-valen ];
# };
# };
}
)
# ( # (
# final: prev: # final: prev:
# { # {

View File

@@ -17,7 +17,13 @@ return {
}, },
{ {
"folke/trouble.nvim", "folke/trouble.nvim",
enabled = false, keys = {
{
"<leader>cS",
"<cmd>Trouble lsp toggle focus=false win.position=right win.size=103<cr>",
desc = "LSP references/definitions/... (Trouble)",
},
},
}, },
-- { -- {
-- "folke/todo-comments.nvim", -- "folke/todo-comments.nvim",
@@ -69,21 +75,21 @@ return {
char = { char = {
enabled = false, enabled = false,
}, },
} },
}, },
}, },
{ {
"echasnovski/mini.pairs", "echasnovski/mini.pairs",
enabled = false, enabled = false,
}, },
{ -- {
"echasnovski/mini.indentscope", -- "echasnovski/mini.indentscope",
opts = { -- opts = {
draw = { -- draw = {
animation = require("mini.indentscope").gen_animation.none(), -- animation = require("mini.indentscope").gen_animation.none(),
}, -- },
}, -- },
}, -- },
{ {
"hrsh7th/nvim-cmp", "hrsh7th/nvim-cmp",
opts = function(_, opts) opts = function(_, opts)
@@ -133,10 +139,10 @@ return {
integrations = { integrations = {
alpha = false, alpha = false,
navic = false, navic = false,
lsp_trouble = false, -- lsp_trouble = false,
trouble = false, -- trouble = false,
} },
} },
}, },
-- { -- {
-- "jackMort/ChatGPT.nvim", -- "jackMort/ChatGPT.nvim",

View File

@@ -1,55 +0,0 @@
# /Users/jfrikker/.config/tmuxinator/MS.yml
name: MS
root: ~/source/shibumi
# Optional tmux socket
# socket_name: foo
# Note that the pre and post options have been deprecated and will be replaced by
# project hooks.
# Project hooks
# Runs on project start, always
# on_project_start: command
# Run on project start, the first time
# on_project_first_start: command
# Run on project start, after the first time
# on_project_restart: command
# Run on project exit ( detaching from tmux session )
# on_project_exit: command
# Run on project stop
# on_project_stop: command
# Runs in each window and pane before window/pane specific commands. Useful for setting up interpreter versions.
# pre_window: rbenv shell 2.0.0-p247
# Pass command line options to tmux. Useful for specifying a different tmux.conf.
# tmux_options: -f ~/.tmux.mac.conf
# Change the command to call tmux. This can be used by derivatives/wrappers like byobu.
# tmux_command: byobu
# Specifies (by name or index) which window will be selected on project startup. If not set, the first window is used.
# startup_window: editor
# Specifies (by index) which pane of the specified window will be selected on project startup. If not set, the first pane is used.
# startup_pane: 1
# Controls whether the tmux session should be attached to automatically. Defaults to true.
# attach: false
windows:
- edit: hx src/main/java/com/shibumi/Mothership.java
- run:
layout: even-vertical
panes:
- yarn install && yarn watch
- mvn spring-boot:run
# - git: lazygit
- term:

View File

@@ -1,51 +0,0 @@
# /Users/jfrikker/.config/tmuxinator/MS.yml
name: auth
root: ~/source/auth-service
# Optional tmux socket
# socket_name: foo
# Note that the pre and post options have been deprecated and will be replaced by
# project hooks.
# Project hooks
# Runs on project start, always
# on_project_start: command
# Run on project start, the first time
# on_project_first_start: command
# Run on project start, after the first time
# on_project_restart: command
# Run on project exit ( detaching from tmux session )
# on_project_exit: command
# Run on project stop
# on_project_stop: command
# Runs in each window and pane before window/pane specific commands. Useful for setting up interpreter versions.
# pre_window: rbenv shell 2.0.0-p247
# Pass command line options to tmux. Useful for specifying a different tmux.conf.
# tmux_options: -f ~/.tmux.mac.conf
# Change the command to call tmux. This can be used by derivatives/wrappers like byobu.
# tmux_command: byobu
# Specifies (by name or index) which window will be selected on project startup. If not set, the first window is used.
# startup_window: editor
# Specifies (by index) which pane of the specified window will be selected on project startup. If not set, the first pane is used.
# startup_pane: 1
# Controls whether the tmux session should be attached to automatically. Defaults to true.
# attach: false
windows:
- edit: nix-shell --command 'nvim src/main.rs; return'
- run: nix-shell --pure --command 'cargo run; return'
# - git: lazygit
- term:

View File

@@ -1,49 +0,0 @@
# /Users/jfrikker/.config/tmuxinator/conf.yml
name: conf
root: ~/.config
# Optional tmux socket
# socket_name: foo
# Note that the pre and post options have been deprecated and will be replaced by
# project hooks.
# Project hooks
# Runs on project start, always
# on_project_start: command
# Run on project start, the first time
# on_project_first_start: command
# Run on project start, after the first time
# on_project_restart: command
# Run on project exit ( detaching from tmux session )
# on_project_exit: command
# Run on project stop
# on_project_stop: command
# Runs in each window and pane before window/pane specific commands. Useful for setting up interpreter versions.
# pre_window: rbenv shell 2.0.0-p247
# Pass command line options to tmux. Useful for specifying a different tmux.conf.
# tmux_options: -f ~/.tmux.mac.conf
# Change the command to call tmux. This can be used by derivatives/wrappers like byobu.
# tmux_command: byobu
# Specifies (by name or index) which window will be selected on project startup. If not set, the first window is used.
# startup_window: editor
# Specifies (by index) which pane of the specified window will be selected on project startup. If not set, the first pane is used.
# startup_pane: 1
# Controls whether the tmux session should be attached to automatically. Defaults to true.
# attach: false
windows:
- edit:
- term:

View File

@@ -1,49 +0,0 @@
# /Users/jfrikker/.config/tmuxinator/tdef.yml
name: denv
root: ~/source/dev-environment
# Optional tmux socket
# socket_name: foo
# Note that the pre and post options have been deprecated and will be replaced by
# project hooks.
# Project hooks
# Runs on project start, always
# on_project_start: command
# Run on project start, the first time
# on_project_first_start: command
# Run on project start, after the first time
# on_project_restart: command
# Run on project exit ( detaching from tmux session )
# on_project_exit: command
# Run on project stop
# on_project_stop: command
# Runs in each window and pane before window/pane specific commands. Useful for setting up interpreter versions.
# pre_window: rbenv shell 2.0.0-p247
# Pass command line options to tmux. Useful for specifying a different tmux.conf.
# tmux_options: -f ~/.tmux.mac.conf
# Change the command to call tmux. This can be used by derivatives/wrappers like byobu.
# tmux_command: byobu
# Specifies (by name or index) which window will be selected on project startup. If not set, the first window is used.
# startup_window: editor
# Specifies (by index) which pane of the specified window will be selected on project startup. If not set, the first pane is used.
# startup_pane: 1
# Controls whether the tmux session should be attached to automatically. Defaults to true.
# attach: false
windows:
- edit: hx
- term:

View File

@@ -1,51 +0,0 @@
# /Users/jfrikker/.config/tmuxinator/MS.yml
name: email
root: ~/source/notification-service
# Optional tmux socket
# socket_name: foo
# Note that the pre and post options have been deprecated and will be replaced by
# project hooks.
# Project hooks
# Runs on project start, always
# on_project_start: command
# Run on project start, the first time
# on_project_first_start: command
# Run on project start, after the first time
# on_project_restart: command
# Run on project exit ( detaching from tmux session )
# on_project_exit: command
# Run on project stop
# on_project_stop: command
# Runs in each window and pane before window/pane specific commands. Useful for setting up interpreter versions.
# pre_window: rbenv shell 2.0.0-p247
# Pass command line options to tmux. Useful for specifying a different tmux.conf.
# tmux_options: -f ~/.tmux.mac.conf
# Change the command to call tmux. This can be used by derivatives/wrappers like byobu.
# tmux_command: byobu
# Specifies (by name or index) which window will be selected on project startup. If not set, the first window is used.
# startup_window: editor
# Specifies (by index) which pane of the specified window will be selected on project startup. If not set, the first pane is used.
# startup_pane: 1
# Controls whether the tmux session should be attached to automatically. Defaults to true.
# attach: false
windows:
- edit:
- run:
# - git: lazygit
- term:

View File

@@ -1,49 +0,0 @@
# /Users/jfrikker/.config/tmuxinator/tdef.yml
name: kube
root: ~/source/kubumi
# Optional tmux socket
# socket_name: foo
# Note that the pre and post options have been deprecated and will be replaced by
# project hooks.
# Project hooks
# Runs on project start, always
# on_project_start: command
# Run on project start, the first time
# on_project_first_start: command
# Run on project start, after the first time
# on_project_restart: command
# Run on project exit ( detaching from tmux session )
# on_project_exit: command
# Run on project stop
# on_project_stop: command
# Runs in each window and pane before window/pane specific commands. Useful for setting up interpreter versions.
# pre_window: rbenv shell 2.0.0-p247
# Pass command line options to tmux. Useful for specifying a different tmux.conf.
# tmux_options: -f ~/.tmux.mac.conf
# Change the command to call tmux. This can be used by derivatives/wrappers like byobu.
# tmux_command: byobu
# Specifies (by name or index) which window will be selected on project startup. If not set, the first window is used.
# startup_window: editor
# Specifies (by index) which pane of the specified window will be selected on project startup. If not set, the first pane is used.
# startup_pane: 1
# Controls whether the tmux session should be attached to automatically. Defaults to true.
# attach: false
windows:
- edit: nvim
- term:

View File

@@ -1,50 +0,0 @@
# /Users/jfrikker/.config/tmuxinator/MS.yml
name: pst
root: ~/source/parseltongue
# Optional tmux socket
# socket_name: foo
# Note that the pre and post options have been deprecated and will be replaced by
# project hooks.
# Project hooks
# Runs on project start, always
# on_project_start: command
# Run on project start, the first time
# on_project_first_start: command
# Run on project start, after the first time
# on_project_restart: command
# Run on project exit ( detaching from tmux session )
# on_project_exit: command
# Run on project stop
# on_project_stop: command
# Runs in each window and pane before window/pane specific commands. Useful for setting up interpreter versions.
# pre_window: rbenv shell 2.0.0-p247
# Pass command line options to tmux. Useful for specifying a different tmux.conf.
# tmux_options: -f ~/.tmux.mac.conf
# Change the command to call tmux. This can be used by derivatives/wrappers like byobu.
# tmux_command: byobu
# Specifies (by name or index) which window will be selected on project startup. If not set, the first window is used.
# startup_window: editor
# Specifies (by index) which pane of the specified window will be selected on project startup. If not set, the first pane is used.
# startup_pane: 1
# Controls whether the tmux session should be attached to automatically. Defaults to true.
# attach: false
windows:
- edit: hx src/main/java/com/shibumi/user_service/UserService.java
- build:
- term:

View File

@@ -1,51 +0,0 @@
# /Users/jfrikker/.config/tmuxinator/MS.yml
name: snap
root: ~/source/snapshot
# Optional tmux socket
# socket_name: foo
# Note that the pre and post options have been deprecated and will be replaced by
# project hooks.
# Project hooks
# Runs on project start, always
# on_project_start: command
# Run on project start, the first time
# on_project_first_start: command
# Run on project start, after the first time
# on_project_restart: command
# Run on project exit ( detaching from tmux session )
# on_project_exit: command
# Run on project stop
# on_project_stop: command
# Runs in each window and pane before window/pane specific commands. Useful for setting up interpreter versions.
# pre_window: rbenv shell 2.0.0-p247
# Pass command line options to tmux. Useful for specifying a different tmux.conf.
# tmux_options: -f ~/.tmux.mac.conf
# Change the command to call tmux. This can be used by derivatives/wrappers like byobu.
# tmux_command: byobu
# Specifies (by name or index) which window will be selected on project startup. If not set, the first window is used.
# startup_window: editor
# Specifies (by index) which pane of the specified window will be selected on project startup. If not set, the first pane is used.
# startup_pane: 1
# Controls whether the tmux session should be attached to automatically. Defaults to true.
# attach: false
windows:
- edit:
- run:
# - git: lazygit
- term:

View File

@@ -1,51 +0,0 @@
# /Users/jfrikker/.config/tmuxinator/tdef.yml
name: tdef
root: ~/source/alexandria/template_def
# Optional tmux socket
# socket_name: foo
# Note that the pre and post options have been deprecated and will be replaced by
# project hooks.
# Project hooks
# Runs on project start, always
# on_project_start: command
# Run on project start, the first time
# on_project_first_start: command
# Run on project start, after the first time
# on_project_restart: command
# Run on project exit ( detaching from tmux session )
# on_project_exit: command
# Run on project stop
# on_project_stop: command
# Runs in each window and pane before window/pane specific commands. Useful for setting up interpreter versions.
# pre_window: rbenv shell 2.0.0-p247
# Pass command line options to tmux. Useful for specifying a different tmux.conf.
# tmux_options: -f ~/.tmux.mac.conf
# Change the command to call tmux. This can be used by derivatives/wrappers like byobu.
# tmux_command: byobu
# Specifies (by name or index) which window will be selected on project startup. If not set, the first window is used.
# startup_window: editor
# Specifies (by index) which pane of the specified window will be selected on project startup. If not set, the first pane is used.
# startup_pane: 1
# Controls whether the tmux session should be attached to automatically. Defaults to true.
# attach: false
windows:
- edit: nvim ~/source/alexandria/template_def/src/main/java/com/shibumi/template_def/AppLoader.java
- run: mvn compile
# - git: lazygit
- term:

View File

@@ -1,55 +0,0 @@
# /Users/jfrikker/.config/tmuxinator/MS.yml
name: user
root: ~/source/user-service
# Optional tmux socket
# socket_name: foo
# Note that the pre and post options have been deprecated and will be replaced by
# project hooks.
# Project hooks
# Runs on project start, always
# on_project_start: command
# Run on project start, the first time
# on_project_first_start: command
# Run on project start, after the first time
# on_project_restart: command
# Run on project exit ( detaching from tmux session )
# on_project_exit: command
# Run on project stop
# on_project_stop: command
# Runs in each window and pane before window/pane specific commands. Useful for setting up interpreter versions.
# pre_window: rbenv shell 2.0.0-p247
# Pass command line options to tmux. Useful for specifying a different tmux.conf.
# tmux_options: -f ~/.tmux.mac.conf
# Change the command to call tmux. This can be used by derivatives/wrappers like byobu.
# tmux_command: byobu
# Specifies (by name or index) which window will be selected on project startup. If not set, the first window is used.
# startup_window: editor
# Specifies (by index) which pane of the specified window will be selected on project startup. If not set, the first pane is used.
# startup_pane: 1
# Controls whether the tmux session should be attached to automatically. Defaults to true.
# attach: false
windows:
- edit: nvim src/main/java/com/shibumi/user_service/UserService.java
- run:
layout: even-vertical
panes:
- npm install && npm run watch
- mvn spring-boot:run
# - git: lazygit
- term: