Claude Code
This commit is contained in:
16
flake.lock
generated
16
flake.lock
generated
@@ -25,16 +25,16 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1768949235,
|
||||
"narHash": "sha256-TtjKgXyg1lMfh374w5uxutd6Vx2P/hU81aEhTxrO2cg=",
|
||||
"lastModified": 1771756436,
|
||||
"narHash": "sha256-Tl2I0YXdhSTufGqAaD1ySh8x+cvVsEI1mJyJg12lxhI=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "75ed713570ca17427119e7e204ab3590cc3bf2a5",
|
||||
"rev": "5bd3589390b431a63072868a90c0f24771ff4cbb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"ref": "release-25.11",
|
||||
"ref": "master",
|
||||
"repo": "home-manager",
|
||||
"type": "github"
|
||||
}
|
||||
@@ -60,16 +60,16 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1769318308,
|
||||
"narHash": "sha256-Mjx6p96Pkefks3+aA+72lu1xVehb6mv2yTUUqmSet6Q=",
|
||||
"lastModified": 1771813003,
|
||||
"narHash": "sha256-rb+oAW0pPJHeyau97ZQ04Afzbxv8Qdexzvxoc0PosBI=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "1cd347bf3355fce6c64ab37d3967b4a2cb4b878c",
|
||||
"rev": "09fd5099fab71fc4f891f50ecb370b0ed5a8a4aa",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-25.11",
|
||||
"ref": "master",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
|
||||
inputs = {
|
||||
# Specify the source of Home Manager and Nixpkgs.
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11";
|
||||
nixpkgs.url = "github:nixos/nixpkgs/master";
|
||||
home-manager = {
|
||||
url = "github:nix-community/home-manager/release-25.11";
|
||||
url = "github:nix-community/home-manager/master";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
kube = {
|
||||
@@ -37,7 +37,7 @@
|
||||
};
|
||||
in {
|
||||
homeConfigurations.shibumi =
|
||||
let pkgs = nixpkgs.legacyPackages.aarch64-darwin;
|
||||
let pkgs = import nixpkgs { system = "aarch64-darwin"; config.allowUnfree = true; };
|
||||
modules = modules-for-system pkgs;
|
||||
in home-manager.lib.homeManagerConfiguration {
|
||||
inherit pkgs;
|
||||
|
||||
100
home.org
100
home.org
@@ -663,15 +663,16 @@ to track them.
|
||||
| s-f | C-x p f | [[id:A2F7FF5C-AFCC-44D4-9AA5-3498F6D6D5E0::workspace_keybinds][Open file in current project]] | |
|
||||
| s-F | C-x p p | [[id:A2F7FF5C-AFCC-44D4-9AA5-3498F6D6D5E0::workspace_keybinds][Switch project]] | |
|
||||
| S-s | C-x t RET | [[id:A2F7FF5C-AFCC-44D4-9AA5-3498F6D6D5E0::workspace_keybinds][Switch tab]] | |
|
||||
| C-c a | | [[id:3B0BFCDC-DFD5-42A0-97D8-3B032B128AF7][Org agenda]] | |
|
||||
| C-c A | | [[id:5CCB676B-9FF0-47B4-8AF2-10FD3899A646][Eglot code actions]] | prog |
|
||||
| C-c c | | [[id:3B0BFCDC-DFD5-42A0-97D8-3B032B128AF7][Org capture]] | |
|
||||
| C-c A | | [[id:3B0BFCDC-DFD5-42A0-97D8-3B032B128AF7][Org agenda]] | |
|
||||
| C-c a | | [[id:5CCB676B-9FF0-47B4-8AF2-10FD3899A646][Eglot code actions]] | prog |
|
||||
| C-c c | | Claude Code | |
|
||||
| C-c C | | [[id:3B0BFCDC-DFD5-42A0-97D8-3B032B128AF7][Org capture]] | |
|
||||
| C-c D | | [[id:5CCB676B-9FF0-47B4-8AF2-10FD3899A646][Show flymake diagnostics]] | prog |
|
||||
| C-c h | | [[id:6D1A8B35-3093-4DA6-A5AA-2A0D45112BAB][Consult shell history]] | |
|
||||
| C-c I | | [[id:5CCB676B-9FF0-47B4-8AF2-10FD3899A646][Eglot find implementation]] | prog |
|
||||
| C-c i | | [[id:5CCB676B-9FF0-47B4-8AF2-10FD3899A646][Eglot find implementation]] | prog |
|
||||
| C-c l | | [[id:3B0BFCDC-DFD5-42A0-97D8-3B032B128AF7][Org store link]] | |
|
||||
| C-c n | | [[id:3B0BFCDC-DFD5-42A0-97D8-3B032B128AF7][Org Roam prefix]] | |
|
||||
| C-c R | | [[id:5CCB676B-9FF0-47B4-8AF2-10FD3899A646][Eglot rename]] | prog |
|
||||
| C-c r | | [[id:5CCB676B-9FF0-47B4-8AF2-10FD3899A646][Eglot rename]] | prog |
|
||||
| C-c u | | [[id:5CCB676B-9FF0-47B4-8AF2-10FD3899A646][Cycle string inflection]] | various |
|
||||
| C-c M-g | | [[id:4F426E77-CE03-4BF8-8D1B-7791C7C02B28][Magit file dispatch]] | |
|
||||
|
||||
@@ -888,16 +889,16 @@ content to be.
|
||||
'(((or "\\*Flymake diagnostics *"
|
||||
"\\*Embark Export *"
|
||||
"\\*Embark Collect *"
|
||||
"\\*xref*"
|
||||
"\\*compilation\\*"
|
||||
"\\*sly-mrepl *"
|
||||
"\\*Messages\\*"
|
||||
"\\*lispy-message\\*"
|
||||
"\\*EGLOT connections\\*"
|
||||
"\\*trace-output\\*"
|
||||
"\\*occur\\*"
|
||||
"*eshell\\*")
|
||||
(display-buffer-reuse-window display-buffer-in-side-window)
|
||||
"\\*xref*"
|
||||
"\\*compilation\\*"
|
||||
"\\*sly-mrepl *"
|
||||
"\\*Messages\\*"
|
||||
"\\*lispy-message\\*"
|
||||
"\\*EGLOT connections\\*"
|
||||
"\\*trace-output\\*"
|
||||
"\\*occur\\*"
|
||||
"*eshell\\*")
|
||||
(display-buffer-in-side-window)
|
||||
(side . bottom)
|
||||
(slot . 0)
|
||||
(window-height . 0.33)
|
||||
@@ -911,7 +912,8 @@ content to be.
|
||||
"\\*rustfmt\\*"
|
||||
"\\*slack: *"
|
||||
"\\*forge: *"
|
||||
"new-pullreq")
|
||||
"new-pullreq"
|
||||
"\\*claude:*")
|
||||
(display-buffer-reuse-window display-buffer-in-side-window)
|
||||
(side . right)
|
||||
(slot . 0)
|
||||
@@ -919,7 +921,7 @@ content to be.
|
||||
(window-parameters (no-delete-other-windows . t)
|
||||
(no-other-window . t)))
|
||||
("\\*Embark Actions\\*"
|
||||
(display-buffer-reuse-window display-buffer-in-side-window)
|
||||
(display-buffer-in-side-window)
|
||||
(side . right)
|
||||
(slot . -1)
|
||||
(window-width . 0.5)
|
||||
@@ -931,6 +933,17 @@ content to be.
|
||||
'(no-other-window . writable)
|
||||
window-persistent-parameters))
|
||||
#+END_SRC
|
||||
|
||||
** Claude Code
|
||||
|
||||
#+BEGIN_SRC nix :tangle target/claude-code.nix
|
||||
{
|
||||
programs.claude-code = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
** Editing
|
||||
:PROPERTIES:
|
||||
:header-args:elisp: :tangle target/emacs-editing.el
|
||||
@@ -1139,9 +1152,9 @@ available? It seems to work for now anyway...
|
||||
(add-hook 'eglot-managed-mode-hook (lambda () (eglot-inlay-hints-mode -1)) nil t)
|
||||
(require 'eglot)
|
||||
(bind-keys :map eglot-mode-map
|
||||
("C-c A" . eglot-code-actions)
|
||||
("C-c R" . eglot-rename)
|
||||
("C-c I" . eglot-find-implementation))
|
||||
("C-c a" . eglot-code-actions)
|
||||
("C-c r" . eglot-rename)
|
||||
("C-c i" . eglot-find-implementation))
|
||||
|
||||
(setopt ediff-split-window-function 'split-window-horizontally)
|
||||
|
||||
@@ -1153,7 +1166,7 @@ available? It seems to work for now anyway...
|
||||
|
||||
*** Rust
|
||||
#+BEGIN_SRC elisp
|
||||
;; (setq major-mode-remap-alist '((rust-mode . rust-mode)))
|
||||
(setq major-mode-remap-alist '((rust-mode . rust-mode)))
|
||||
|
||||
(setopt rust-mode-treesitter-derive t)
|
||||
|
||||
@@ -1164,6 +1177,8 @@ available? It seems to work for now anyway...
|
||||
|
||||
*** YAML
|
||||
#+BEGIN_SRC elisp
|
||||
(require 'yaml-ts-mode)
|
||||
|
||||
(defun yaml-validate ()
|
||||
(interactive)
|
||||
(compile (concat "yamllint -d '{extends: default, rules: {indentation: {indent-sequences: false}, braces: {max-spaces-inside: 1}}}' " (buffer-file-name)) t))
|
||||
@@ -1293,8 +1308,7 @@ available? It seems to work for now anyway...
|
||||
#+END_SRC
|
||||
|
||||
#+BEGIN_SRC elisp
|
||||
(setopt magit-define-global-key-bindings 'recommended)
|
||||
(bind-keys ("s-g" . magit-status))
|
||||
(setq magit-define-global-key-bindings 'recommended)
|
||||
|
||||
(setopt magit-save-repository-buffers 'dontask)
|
||||
(setopt magit-commit-show-diff nil)
|
||||
@@ -1446,8 +1460,8 @@ available? It seems to work for now anyway...
|
||||
#+BEGIN_SRC elisp
|
||||
(require 'org)
|
||||
|
||||
(bind-keys ("C-c a" . org-agenda)
|
||||
("C-c c" . org-capture)
|
||||
(bind-keys ("C-c A" . org-agenda)
|
||||
("C-c C" . org-capture)
|
||||
("C-c l" . org-id-store-link))
|
||||
|
||||
(add-hook 'org-mode-hook 'visual-line-mode)
|
||||
@@ -1661,6 +1675,39 @@ available? It seems to work for now anyway...
|
||||
(age-file-enable)
|
||||
#+END_SRC
|
||||
|
||||
** Claude Code
|
||||
:PROPERTIES:
|
||||
:header-args:elisp: :tangle target/emacs-claude-code.el
|
||||
:END:
|
||||
|
||||
#+BEGIN_SRC nix :tangle target/emacs-claude-code.nix
|
||||
{pkgs, ...}:
|
||||
{
|
||||
programs.emacs = {
|
||||
enable = true;
|
||||
extraPackages = epkgs: with epkgs; [
|
||||
(epkgs.trivialBuild {
|
||||
name = "claude-code";
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "stevemolitor";
|
||||
repo = "claude-code.el";
|
||||
rev = "4a9914bd4161eb43f489820f9174c62390e5adc8";
|
||||
sha256 = "sha256-ISlD6q1hceckry1Jd19BX1MfobHJxng5ulX2gq9f644=";
|
||||
};
|
||||
packageRequires = [ epkgs.inheritenv ];
|
||||
})
|
||||
];
|
||||
extraConfig = builtins.readFile ./emacs-claude-code.el;
|
||||
};
|
||||
}
|
||||
#+END_SRC
|
||||
|
||||
#+BEGIN_SRC elisp
|
||||
(require 'claude-code)
|
||||
|
||||
(global-set-key (kbd "C-c c") claude-code-command-map)
|
||||
(claude-code-mode)
|
||||
#+END_SRC
|
||||
* Theme
|
||||
I like Catppuccin Frappe as my theme. Let's use it in as many places as we can.
|
||||
|
||||
@@ -1712,7 +1759,8 @@ I like Catppuccin Frappe as my theme. Let's use it in as many places as we can.
|
||||
{pkgs, ...}:
|
||||
{
|
||||
xdg = {
|
||||
enable = true;
|
||||
enable = false
|
||||
;
|
||||
configFile."lazygit/config.yml" = {
|
||||
enable = true;
|
||||
source = pkgs.fetchFromGitHub
|
||||
|
||||
Reference in New Issue
Block a user