mirror of
https://gitlab.com/dwt1/dotfiles.git
synced 2026-08-12 11:01:14 +10:00
Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0e06a5a1e9 | ||
|
|
9e81f4a3bf |
+29
-7
@@ -21,6 +21,20 @@
|
|||||||
;; Optional: Start the Emacs server if not already running
|
;; Optional: Start the Emacs server if not already running
|
||||||
(unless (server-running-p) (server-start)))
|
(unless (server-running-p) (server-start)))
|
||||||
|
|
||||||
|
(setq claude-code-terminal-backend 'vterm)
|
||||||
|
(setq claude-code-optimize-window-resize t)
|
||||||
|
(setq claude-code-no-delete-other-windows t)
|
||||||
|
(setq claude-code-toggle-auto-select t)
|
||||||
|
|
||||||
|
(with-eval-after-load 'claude-code
|
||||||
|
(add-to-list 'display-buffer-alist
|
||||||
|
'((lambda (buffer-or-name _)
|
||||||
|
(string-prefix-p "*claude:" (buffer-name (get-buffer buffer-or-name))))
|
||||||
|
(display-buffer-reuse-window display-buffer-in-side-window)
|
||||||
|
(side . right)
|
||||||
|
(slot . 1) ;; Optional: keeps it separate from vterm if both are open
|
||||||
|
(window-width . 0.4))))
|
||||||
|
|
||||||
(use-package company
|
(use-package company
|
||||||
:defer 2
|
:defer 2
|
||||||
:diminish
|
:diminish
|
||||||
@@ -301,6 +315,13 @@
|
|||||||
"b S" '(save-some-buffers :wk "Save multiple buffers")
|
"b S" '(save-some-buffers :wk "Save multiple buffers")
|
||||||
"b w" '(bookmark-save :wk "Save current bookmarks to bookmark file"))
|
"b w" '(bookmark-save :wk "Save current bookmarks to bookmark file"))
|
||||||
|
|
||||||
|
(dt/leader-keys
|
||||||
|
"c" '(:ignore t :wk "Claude")
|
||||||
|
"c c" '(claude-code :wk "Start claude in a vterm")
|
||||||
|
"c k" '(claude-code-kill :wk "Kill claude process and its window")
|
||||||
|
"c K" '(claude-code-kill-all :wk "Kill all claude processes across all directories")
|
||||||
|
"c t" '(claude-code-transient :wk "Claude command menu"))
|
||||||
|
|
||||||
(dt/leader-keys
|
(dt/leader-keys
|
||||||
"d" '(:ignore t :wk "Dired")
|
"d" '(:ignore t :wk "Dired")
|
||||||
"d d" '(dired :wk "Open dired")
|
"d d" '(dired :wk "Open dired")
|
||||||
@@ -762,6 +783,8 @@
|
|||||||
(setq shell-file-name "/bin/sh"
|
(setq shell-file-name "/bin/sh"
|
||||||
vterm-max-scrollback 5000))
|
vterm-max-scrollback 5000))
|
||||||
|
|
||||||
|
(add-hook 'vterm-mode-hook (lambda () (display-line-numbers-mode -1)))
|
||||||
|
|
||||||
(use-package vterm-toggle
|
(use-package vterm-toggle
|
||||||
:ensure t
|
:ensure t
|
||||||
:after vterm
|
:after vterm
|
||||||
@@ -770,20 +793,19 @@
|
|||||||
;; kills the program as it would in most standard terminal programs.
|
;; kills the program as it would in most standard terminal programs.
|
||||||
(evil-define-key 'normal vterm-mode-map (kbd "<escape>") 'vterm--self-insert)
|
(evil-define-key 'normal vterm-mode-map (kbd "<escape>") 'vterm--self-insert)
|
||||||
(setq vterm-toggle-fullscreen-p nil)
|
(setq vterm-toggle-fullscreen-p nil)
|
||||||
(setq vterm-toggle-scope 'project)
|
(setq vterm-toggle-scope 'project))
|
||||||
|
|
||||||
|
(with-eval-after-load 'vterm
|
||||||
(add-to-list 'display-buffer-alist
|
(add-to-list 'display-buffer-alist
|
||||||
'((lambda (buffer-or-name _)
|
'((lambda (buffer-or-name _)
|
||||||
(let ((buffer (get-buffer buffer-or-name)))
|
(let ((buffer (get-buffer buffer-or-name)))
|
||||||
(with-current-buffer buffer
|
(with-current-buffer buffer
|
||||||
(or (equal major-mode 'vterm-mode)
|
(or (equal major-mode 'vterm-mode)
|
||||||
(string-prefix-p vterm-buffer-name (buffer-name buffer))))))
|
(string-prefix-p vterm-buffer-name (buffer-name buffer))))))
|
||||||
(display-buffer-reuse-window display-buffer-at-bottom)
|
(display-buffer-reuse-window display-buffer-in-side-window)
|
||||||
;;(display-buffer-reuse-window display-buffer-in-direction)
|
(side . right)
|
||||||
;;display-buffer-in-direction/direction/dedicated is added in emacs27
|
|
||||||
;;(direction . bottom)
|
|
||||||
;;(dedicated . t) ;dedicated is supported in emacs27
|
|
||||||
(reusable-frames . visible)
|
(reusable-frames . visible)
|
||||||
(window-height . 0.4))))
|
(window-width . 0.4))))
|
||||||
|
|
||||||
(use-package sudo-edit)
|
(use-package sudo-edit)
|
||||||
|
|
||||||
|
|||||||
@@ -100,6 +100,8 @@ By default, Emacs creates automatic backups of files in their original directori
|
|||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
* CLAUDE-CODE
|
* CLAUDE-CODE
|
||||||
|
[[https://github.com/stevemolitor/claude-code.el][Claude-code.el]] is an Emacs interface for Claude Code CLI, providing integration between Emacs and Claude AI for coding assistance.
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(use-package claude-code
|
(use-package claude-code
|
||||||
:ensure (claude-code :host github :repo "stevemolitor/claude-code.el")
|
:ensure (claude-code :host github :repo "stevemolitor/claude-code.el")
|
||||||
@@ -108,6 +110,20 @@ By default, Emacs creates automatic backups of files in their original directori
|
|||||||
;; Optional: Start the Emacs server if not already running
|
;; Optional: Start the Emacs server if not already running
|
||||||
(unless (server-running-p) (server-start)))
|
(unless (server-running-p) (server-start)))
|
||||||
|
|
||||||
|
(setq claude-code-terminal-backend 'vterm)
|
||||||
|
(setq claude-code-optimize-window-resize t)
|
||||||
|
(setq claude-code-no-delete-other-windows t)
|
||||||
|
(setq claude-code-toggle-auto-select t)
|
||||||
|
|
||||||
|
(with-eval-after-load 'claude-code
|
||||||
|
(add-to-list 'display-buffer-alist
|
||||||
|
'((lambda (buffer-or-name _)
|
||||||
|
(string-prefix-p "*claude:" (buffer-name (get-buffer buffer-or-name))))
|
||||||
|
(display-buffer-reuse-window display-buffer-in-side-window)
|
||||||
|
(side . right)
|
||||||
|
(slot . 1) ;; Optional: keeps it separate from vterm if both are open
|
||||||
|
(window-width . 0.4))))
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
* COMPANY
|
* COMPANY
|
||||||
@@ -471,6 +487,13 @@ mouse wheel for zooming in/out.
|
|||||||
"b S" '(save-some-buffers :wk "Save multiple buffers")
|
"b S" '(save-some-buffers :wk "Save multiple buffers")
|
||||||
"b w" '(bookmark-save :wk "Save current bookmarks to bookmark file"))
|
"b w" '(bookmark-save :wk "Save current bookmarks to bookmark file"))
|
||||||
|
|
||||||
|
(dt/leader-keys
|
||||||
|
"c" '(:ignore t :wk "Claude")
|
||||||
|
"c c" '(claude-code :wk "Start claude in a vterm")
|
||||||
|
"c k" '(claude-code-kill :wk "Kill claude process and its window")
|
||||||
|
"c K" '(claude-code-kill-all :wk "Kill all claude processes across all directories")
|
||||||
|
"c t" '(claude-code-transient :wk "Claude command menu"))
|
||||||
|
|
||||||
(dt/leader-keys
|
(dt/leader-keys
|
||||||
"d" '(:ignore t :wk "Dired")
|
"d" '(:ignore t :wk "Dired")
|
||||||
"d d" '(dired :wk "Open dired")
|
"d d" '(dired :wk "Open dired")
|
||||||
@@ -1088,6 +1111,9 @@ Vterm is a terminal emulator within Emacs. The 'shell-file-name' setting sets t
|
|||||||
:config
|
:config
|
||||||
(setq shell-file-name "/bin/sh"
|
(setq shell-file-name "/bin/sh"
|
||||||
vterm-max-scrollback 5000))
|
vterm-max-scrollback 5000))
|
||||||
|
|
||||||
|
(add-hook 'vterm-mode-hook (lambda () (display-line-numbers-mode -1)))
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Vterm-Toggle
|
** Vterm-Toggle
|
||||||
@@ -1102,20 +1128,19 @@ Vterm is a terminal emulator within Emacs. The 'shell-file-name' setting sets t
|
|||||||
;; kills the program as it would in most standard terminal programs.
|
;; kills the program as it would in most standard terminal programs.
|
||||||
(evil-define-key 'normal vterm-mode-map (kbd "<escape>") 'vterm--self-insert)
|
(evil-define-key 'normal vterm-mode-map (kbd "<escape>") 'vterm--self-insert)
|
||||||
(setq vterm-toggle-fullscreen-p nil)
|
(setq vterm-toggle-fullscreen-p nil)
|
||||||
(setq vterm-toggle-scope 'project)
|
(setq vterm-toggle-scope 'project))
|
||||||
|
|
||||||
|
(with-eval-after-load 'vterm
|
||||||
(add-to-list 'display-buffer-alist
|
(add-to-list 'display-buffer-alist
|
||||||
'((lambda (buffer-or-name _)
|
'((lambda (buffer-or-name _)
|
||||||
(let ((buffer (get-buffer buffer-or-name)))
|
(let ((buffer (get-buffer buffer-or-name)))
|
||||||
(with-current-buffer buffer
|
(with-current-buffer buffer
|
||||||
(or (equal major-mode 'vterm-mode)
|
(or (equal major-mode 'vterm-mode)
|
||||||
(string-prefix-p vterm-buffer-name (buffer-name buffer))))))
|
(string-prefix-p vterm-buffer-name (buffer-name buffer))))))
|
||||||
(display-buffer-reuse-window display-buffer-at-bottom)
|
(display-buffer-reuse-window display-buffer-in-side-window)
|
||||||
;;(display-buffer-reuse-window display-buffer-in-direction)
|
(side . right)
|
||||||
;;display-buffer-in-direction/direction/dedicated is added in emacs27
|
|
||||||
;;(direction . bottom)
|
|
||||||
;;(dedicated . t) ;dedicated is supported in emacs27
|
|
||||||
(reusable-frames . visible)
|
(reusable-frames . visible)
|
||||||
(window-height . 0.4))))
|
(window-width . 0.4))))
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user