summaryrefslogtreecommitdiffstats
path: root/roles/edit
diff options
context:
space:
mode:
Diffstat (limited to 'roles/edit')
-rw-r--r--roles/edit/defaults/main.yml7
-rw-r--r--roles/edit/tasks/main.yaml11
-rw-r--r--roles/edit/templates/emacsconf-edit.el34
3 files changed, 52 insertions, 0 deletions
diff --git a/roles/edit/defaults/main.yml b/roles/edit/defaults/main.yml
new file mode 100644
index 0000000..ea0fbdb
--- /dev/null
+++ b/roles/edit/defaults/main.yml
@@ -0,0 +1,7 @@
+emacsconf_edit_packages:
+ - consult
+ - embark
+ - embark-consult
+ - vertico
+ - magit
+ - modus-themes
diff --git a/roles/edit/tasks/main.yaml b/roles/edit/tasks/main.yaml
new file mode 100644
index 0000000..f77535f
--- /dev/null
+++ b/roles/edit/tasks/main.yaml
@@ -0,0 +1,11 @@
+---
+- name: Set up Emacs configuration for interactive editing
+ template:
+ src: emacsconf-edit.el
+ dest: "{{ emacs_config_dir }}/emacsconf-edit.el"
+- name: Check if Emacs base configuration already exists
+ lineinfile:
+ dest: "{{ emacs_config_dir }}/init.el"
+ state: present
+ regexp: "emacsconf-edit"
+ line: "(load-file \"emacsconf-edit.el\")"
diff --git a/roles/edit/templates/emacsconf-edit.el b/roles/edit/templates/emacsconf-edit.el
new file mode 100644
index 0000000..2e360c7
--- /dev/null
+++ b/roles/edit/templates/emacsconf-edit.el
@@ -0,0 +1,34 @@
+;; {{ ansible_managed }}
+
+(let ((packages '({% for package in emacsconf_edit_packages %}{{ package }}{% endfor %})))
+ (mapc (lambda (package) (unless (package-installed-p package) (package-install package))) packages))
+;; Configuration
+(vertico-mode)
+(show-paren-mode)
+(fset 'yes-or-no-p 'y-or-n-p)
+(global-set-key (kbd "C-x g") 'magit-status)
+(global-set-key (kbd "C-x b") 'consult-buffer)
+(global-set-key (kbd "M-g t") 'emacsconf-go-to-talk)
+(global-set-key (kbd "C-.") 'embark-act)
+(global-set-key (kbd "C-c .") 'embark-act)
+(global-set-key (kbd "C-;") 'embark-act)
+(modus-themes-load-vivendi)
+(org-babel-do-load-languages 'org-babel-load-languages '((emacs-lisp . t) (shell . t)))
+(setq backup-directory-alist '(("." . "~/.emacs.d/backups")))
+(find-file "{{ emacsconf_private_dir }}/conf.org")
+(split-window-horizontally)
+(magit-status "{{ emacsconf_edit_wiki_dir }}")
+(global-auto-revert-mode 1)
+(define-key projectile-mode-map (kbd "C-c p") 'projectile-command-map)
+(projectile-mode +1)
+(setq projectile-completion-system 'default)
+(setq projectile-enable-caching t)
+(setq projectile-indexing-method 'alien)
+(add-to-list 'projectile-globally-ignored-files "node_modules")
+(add-to-list 'projectile-globally-ignored-files ".cache")
+(add-to-list 'projectile-globally-ignored-files "_cache")
+
+(setq completion-styles '(orderless))
+(setq completion-category-defaults nil)
+(setq completion-category-overrides '((file (styles orderless))))
+(require 'ox-md)