moved local packages to separate folder

Allows me to update the load-path and rely on ‘use-package‘ to
manage/configure these packages
This commit is contained in:
2026-01-09 17:37:55 -05:00
parent caaa3becef
commit 43c52516a6
4 changed files with 47 additions and 19 deletions

View File

@@ -9,9 +9,9 @@
dockerfile-mode dumb-jump dumber-jump emacs-lldb
exec-path-from-shell flycheck fsharp-mode haskell-mode
haskell-ts-mode helm htmlize idris-mode marginalia
markdown-ts-mode multiple-cursors orderless org-mode
parinfer-rust-mode realgud-lldb rg sly terraform-mode
tree-sitter-langs vertico visual-fill-column
markdown-ts-mode multiple-cursors odin-mode orderless
org-mode parinfer-rust-mode realgud-lldb rg sly
terraform-mode tree-sitter-langs vertico visual-fill-column
yasnippet-snippets zig-mode))
'(safe-local-variable-directories '("/Users/grant/programming/project/edit/"))
'(safe-local-variable-values

View File

@@ -11,6 +11,8 @@
; If startup times are slow
; (setq use-package-verbose t)
(add-to-list 'load-path (concat (file-name-parent-directory user-init-file) "local-lisp/"))
(use-package emacs)
(setq tab-bar-show nil)
(setq inhibit-startup-message t)
@@ -384,5 +386,8 @@
(use-package dockerfile-mode)
(load-file (concat (file-name-parent-directory user-init-file) "odin-mode.el"))
(load-file (concat (file-name-parent-directory user-init-file) "codex.el"))
(use-package odin-mode
:ensure nil)
(use-package codex
:ensure nil)

View File

@@ -16,6 +16,8 @@
;; {"type":"item.completed","item":{"id":"item_1","type":"agent_message","text":"Hi! How can I help?"}}
;; {"type":"turn.completed","usage":{"input_tokens":4050,"cached_input_tokens":3712,"output_tokens":13}}
;;; Code:
(require 'json)
(require 'cl-lib)
(require 'subr-x)
@@ -44,6 +46,27 @@
:type 'string
:group 'codex)
(defcustom codex-provider nil
"Custom codex provider to use.
Note on Copilot:
In order for copilot integration to work, you need a section in your
~/.codex/config.toml like this:
[model_providers.github-copilot]
name = \"Github Copilot\"
base_url = \"https://api.githubcopilot.com\"
env_key = \"GITHUB_COPILOT_TOKEN\"
wire_api = \"chat\"
http_headers = {
Copilot-Integration-Id = \"vscode-chat\"
}"
:type 'string
:group 'codex)
(defcustom codex-model nil
"Model for Codex to use."
:type 'string
:group 'codex)
(defcustom codex-skip-git-repo-check t
"Whether to pass --skip-git-repo-check to Codex."
:type 'boolean
@@ -71,17 +94,6 @@
:group 'codex)
(defvar codex--session-id nil)
(defvar codex--use-copilot nil
"In order for copilot integration to work, you need a section in your
~/.codex/config.toml like this:
[model_providers.github-copilot]
name = \"Github Copilot\"
base_url = \"https://api.githubcopilot.com\"
env_key = \"GITHUB_COPILOT_TOKEN\"
wire_api = \"chat\"
http_headers = {
Copilot-Integration-Id = \"vscode-chat\"
}")
(defvar codex-mode-map
(let ((map (make-sparse-keymap)))
@@ -95,6 +107,7 @@ http_headers = {
("^User:$" . 'codex-user-prompt-face)
("^Codex:$" . 'codex-assistant-prompt-face)))
;;;###autoload
(define-derived-mode codex-mode fundamental-mode "Codex"
"Major mode for chatting with Codex."
(setq-local buffer-read-only nil)
@@ -224,12 +237,14 @@ http_headers = {
(message "Using session %s" codex--session-id)
(list "resume" codex--session-id))))
(skip (and codex-skip-git-repo-check (list "--skip-git-repo-check")))
(copilot (and codex--use-copilot (list "-c" "model_provider=github-copilot" "-m" "claude-haiku-4.5")))
(command (append (list codex-command "exec") resume skip copilot (list "--json" prompt))))
(provider (and codex-provider (list "-c" (concat "model_provider=" codex-provider))))
(model (and codex-model (list "-m" codex-model)))
(command (append (list codex-command "exec") resume skip provider model (list "--json" prompt))))
command))))
(set-process-sentinel
proc
(lambda (p event)
(message event)
(when (string= event "finished\n")
(with-current-buffer (process-buffer p)
(thread-first
@@ -238,7 +253,10 @@ http_headers = {
codex--format-response
codex--write-to-chat)
(codex--ensure-session-in-sessions-file prompt)
(kill-buffer)))))))
(kill-buffer)))
(when (string-prefix-p "exited abnormally" event)
(with-current-buffer (process-buffer p)
(error (buffer-string))))))))
(defun codex--get-current-user-prompt ()
(with-codex-buffer
@@ -317,3 +335,8 @@ http_headers = {
tup))
sessions)))
(codex--write-sessions-file new-sessions)))
(provide 'codex)
;;; codex.el ends here