Compare commits

...

31 commits

Author SHA1 Message Date
Peter Tillemans
f81d6ee7c9 fix merge conflicts 2025-02-03 10:23:27 +01:00
c4c07fedfb add supermaven 2025-02-03 10:19:02 +01:00
Peter Tillemans
dfc617a4b0 remove calls to general and general itself 2025-02-02 22:30:13 +01:00
0e190fb9fb if error go snippet 2025-01-23 14:24:25 +01:00
631727de3a fix dape configurations 2025-01-23 14:22:42 +01:00
52a26a76b5 add snippets 2025-01-23 14:21:19 +01:00
a0b0f88a17 remove harpoon, format evil bindings 2025-01-19 19:25:03 +01:00
f629436460 remove some empty lines 2025-01-19 19:21:45 +01:00
e61b38b36c merge with evil switch 2025-01-19 19:09:13 +01:00
ec1bc84a26 Use catppuccin theme and enable light/dark toggle 2025-01-19 13:59:42 +01:00
201af79a42 refactor org-babel 2025-01-13 07:24:33 +01:00
56c3071d55 experiment with google ai and fix source block 2025-01-08 11:57:26 +01:00
f0789a34ff fix set-option error with copilot 2024-12-30 15:49:44 +01:00
31ec2ec412 enable embark-act on C-. conflicting with evil 2024-12-30 13:50:39 +01:00
9407acbc41 fix keybinding conflict between consult and org-jira 2024-12-30 13:41:44 +01:00
bf6c61336e improve scheme support, add default yasnippet-snippets 2024-12-30 13:40:04 +01:00
ef7ef61ada remove superfluous sourceblock snippet 2024-12-29 16:03:00 +01:00
9a1ae6d676 deduplicate undo tree and swap out evil-paredit-mode 2024-12-19 17:05:14 +01:00
aee411ac47 improve lisp experience
- define bigger window heights and organize placement of repl and
magit windows
- add run-tests method to aoc template
- map copilot-expand to C-S-y
2024-12-18 11:45:08 +01:00
8adf66a7fe some tweaks to aoc template 2024-12-13 12:32:42 +01:00
175b4b1d70 merge keybinding for avy into init.org 2024-12-11 11:56:24 +01:00
52c3f91d82 assign avy functionality to <leader> j j and <leader> j w
j is chosen for "jump"
2024-12-11 11:50:04 +01:00
3cf13265b8 enable avy support and fix name of use package source block 2024-12-10 09:59:35 +01:00
5aa31f96ca fixed an issue in the tests 2024-12-10 09:27:11 +01:00
765c869942 fix some issues in aoc template after day 10 2024-12-10 09:23:13 +01:00
4b737d59dc add org-generate and yasnippets for boilerplate support 2024-12-09 18:21:17 +01:00
35fd6ce31a Revert "perform exorcism on evil"
This reverts commit ce3cd3fb7e.
2024-12-03 13:14:31 +01:00
dd0b684dc5 Revert "free C-y from copilot so I can yank again"
This reverts commit 480b1bdef0.
2024-12-03 13:14:17 +01:00
480b1bdef0 free C-y from copilot so I can yank again 2024-12-03 13:04:40 +01:00
ce3cd3fb7e perform exorcism on evil 2024-12-03 09:18:06 +01:00
4775a1f5e2 add docs for installing CLHS locally 2024-12-03 09:12:46 +01:00
10 changed files with 1616 additions and 1080 deletions

4
.gitignore vendored
View file

@ -5,4 +5,6 @@
!early-init.el
!init.org
!README.org
!.gitignore
!.gitignore
!snippets
!snippets/**

View file

@ -7,7 +7,8 @@
;;
;; it is possible there are more so probably the most recent one is the one to use.
(setq elpaca-core-date "20241111")
(when emacs-build-time
(setq elpaca-core-date (format-time-string "%Y%m%d" emacs-build-time)))
(defvar elpaca-installer-version 0.8)
(defvar elpaca-directory (expand-file-name "elpaca/" user-emacs-directory))
(defvar elpaca-builds-directory (expand-file-name "builds/" elpaca-directory))

2480
init.org

File diff suppressed because it is too large Load diff

115
org-generate.org Normal file
View file

@ -0,0 +1,115 @@
#+TITLE: Org Generate Boilerplate Templates
* Introduction
This document contains boilerplate templates for generating stuff.
To use use ~M-x org-generate~ and select the template you want to
generate.
Templates start at level 2. Specify the root folder for the generated
files.
Headings with a "/" at the end signify folders to be created to add
additional files into.
You can define variables and use them in the templates using the
typical mustache syntax {{variable}}. Variables are defined in the
~org-generate-variable~ property in the properties drawer of the the
template subtree.
*IMPORTANT* The code relies on ~#+begin_src~ and ~#+end_src~ blocks to be
written in lower case. The code looks for these case sensitively.
* aoc
** common-lisp
:PROPERTIES:
:org-generate-root: ~/quicklisp/local-projects/aoc
:org-generate-variable: year day
:END:
*** src/
**** {{year}}/
***** day{{day}}.lisp
#+begin_src common-lisp
(defpackage :aoc/2024/{{day}}
(:use :cl :aoc :alexandria :trivia :lla)
(:export
#:sample-data
#:sample-data2
#:part1
#:part2
))
(in-package :aoc/2024/{{day}})
(defun parse-line (line)
line)
(defun parse-input (lines)
(mapcar #'parse-line lines))
(defparameter input-text (test-input 2024 {{day}}))
(defparameter input-data (parse-input input-text))
(defparameter sample-text (aoc:split-lines ""))
(defparameter sample-data
(parse-input sample-text))
(defun part1 (data)
(length data))
(defun part2 (data)
(length data))
(defun solve-day ()
(format t "part1: ~A~%" (part1 input-data))
(format t "part2: ~A~%" (part2 input-data)))
(defun submit ()
(let ((p1 (part1 input-data))
(p2 (part2 input-data)))
(if p1 (submit-part1 {{year}} {{day}} p1))
(if p2 (submit-part2 {{year}} {{day}} p2))))
#+end_src
*** tests/
**** {{year}}/
***** day{{day}}-test.lisp
#+begin_src common-lisp
(defpackage :aoc/2024/{{day}}/tests
(:use :cl :aoc :aoc/tests :aoc/2024/tests :parachute :aoc/2024/{{day}}))
(in-package :aoc/2024/{{day}}/tests)
(define-test suite-2024-{{day}}
;:parent suite-2024
)
(define-test test-foo
:parent suite-2024-{{day}}
)
(define-test test-bar
:parent suite-2024-{{day}}
)
(define-test+run test-part1
:parent suite-2024-{{day}}
(is equal nil (part1 sample-data)))
(define-test+run test-part2
:parent suite-2024-{{day}}
(is equal nil (part2 sample-data)))
(defun run-tests ()
(run-test-suite 'suite-2024-{{day}}))
#+end_src

View file

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# name: if-err
# key: ife
# --
if err != nil {
$0
}

View file

@ -0,0 +1,55 @@
# -*- mode: snippet -*-
# name: specc
# key: specc
# --
# $1 Specification Template
> Ingest the information from this file, implement the Low-Level Tasks, and generate the code that will satisfy the High and Mid-Level Objectives.
## High-Level Objective
- [High level goal goes here - what do you want to build?]
## Mid-Level Objectives
- [List of mid-level objectives - what are the steps to achieve the high-level objective?]
- [Each objective should be concrete and measurable]
- [But not too detailed - save details for implementation notes]
## Implementation Notes
- [Important technical details - what are the important technical details?]
- [Dependencies and requirements - what are the dependencies and requirements?]
- [Coding standards to follow - what are the coding standards to follow?]
- [Other technical guidance - what are other technical guidance?]
## Context
### Beginning context
- [List of files that exist at start - what files exist at start?]
### Ending context
- [List of files that will exist at end - what files will exist at end?]
## Low-Level Tasks
> Ordered from start to finish
1. [First task - what is the first task?]
```aider
What prompt would you run to complete this task?
What file do you want to CREATE or UPDATE?
What function do you want to CREATE or UPDATE?
What are details you want to add to drive the code changes?
```
2. [Second task - what is the second task?]
```aider
What prompt would you run to complete this task?
What file do you want to CREATE or UPDATE?
What function do you want to CREATE or UPDATE?
What are details you want to add to drive the code changes?
```
3. [Third task - what is the third task?]
```aider
What prompt would you run to complete this task?
What file do you want to CREATE or UPDATE?
What function do you want to CREATE or UPDATE?
What are details you want to add to drive the code changes?
```

View file

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# name: source block emacs-lisp
# key: <se
# --
#+BEGIN_SRC emacs-lisp
$0
#+END_SRC

View file

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# name Org Mode Title
# key: ttl
# --
#+TITLE: $1
* $0

View file

@ -0,0 +1,7 @@
# -*- mode: snippet -*-
# name: short babel source block
# key: <s
# --
#+BEGIN_SRC $1
$0
#+END_SRC

View file

@ -0,0 +1,11 @@
# -*- mode: snippet -*-
# name: use package source block
# key: <sup
# --
#+BEGIN_SRC emacs-lisp
(use-package $1
:ensure t
:config
(progn
$0))
#+END_SRC