Commit graph

29 commits

Author SHA1 Message Date
Ade Attwood
18ce1c8695 refactor(emacs): updates for some windows writing 2025-07-25 08:57:08 +01:00
fb20c944ca chore: updates to the emacs config 2025-03-14 09:03:34 +00:00
ca8e491ef3 chore(emacs): use notmuch from straight and use it remotely 2025-02-10 18:02:10 +00:00
221d2427be feat(emacs): show only long term scheduled tasks not all of them
When viewing the org agenda I have a section to view all the scheduled
tasks. That is not that helpful as most of them are shown in the agenda
view on the calendar.

This now limits the scheduled tasks to be only tasks that are not on the
calendar view for this week, to remove duplicate task from being shown.
2025-02-10 17:57:25 +00:00
8679a006f9 feat(emacs): enable ob for evaluating code blocks 2025-02-10 17:56:25 +00:00
a8dfb8fd79 chore(emacs): remove filenames from the org agenda
I don't really care where the todos come from. I only care about the todo
itself and I need to get it done.
2025-01-21 09:39:20 +00:00
e243672164 chore(emacs): install languagetool for spelling and grammar checking 2025-01-21 09:37:47 +00:00
e7a94003ac feat(emacs): add / key binding to search the roam notes
Usually this mapping would be to live grep in the current project. With emacs I
only have one project and thats my notes. The sole purpose of emacs for me is
to organize my self with org

Now this binding search for content in the org notes directory treating that as
the project.
2025-01-21 09:36:28 +00:00
770ca92c2b feat(emacs): add key binding to open the current pull request in an email
By pushing one key you can now open a PR in your browser. This will work from
your list view or the show view. This makes the email workflow in emacs much
faster.
2025-01-21 09:32:44 +00:00
1e6c7f40ef chore(emacs): use FiraCode font to make everything consistent 2025-01-21 09:30:12 +00:00
f2ec3982d2 fix(emacs): ensure org-agenda uses the general leader keybindings
When in org agenda mode you can't use the <space><space> leader to access all
the key beginning that has been setup up by general. I use this quite a lot to
quickly navigating to other notes or the email inbox.

This adds a hook to run after org agenda so the evil mode is normal not emacs.
This will allow the general keybindings to be used in that buffer.
2024-10-10 07:52:17 +01:00
843767fdb8 feat(emacs): move org tasks to org roam
Moves all of the tasks from Todo.org into any org-roam note file. All tasks
will then show up in the agenda and be able to be scheduled and searched just
like any other task we currently have in the Todo.org file. This is based of
the task management blog below. It will add a filetag to any file that has
tasks in it. This will then use only those files to build the org agenda so it
dose not have to search though every file in the roam database.

https://d12frosted.io/posts/2021-01-16-task-management-with-roam-vol5.html

The main difference from this blog is that it uses the `tasklist` filetag
rather than `projects` as the blogs. This makes much more sense for my use case

It also moves all the capture targets to the roam dailies so my main workspace
for the day is the daily note. This also moves the refile targets to be the old
Todo.org file. I will still be using this for the main backlog and any tasks
that don't need to be complete on that day. The current workflow I will be
using is capturing into the daily note. If I won't complete it that day, it
will either move to the next day or be refiled to be done on another day.
2024-10-10 07:47:28 +01:00
b095833f8e refactor(emacs): move emacs config to be really minimal
Yea thats it, we are bringing back the use of emacs. This is very much the "why
choose" way and using the correct tool for the job.

I have now gone back to emacs for all the productivity / notes related stuff.
Code will still continue to be in neovim. The developer experience nvim brings
is really nice, the community around plugins is amazing, you can really get
your work done fast. What it does not have is org-mode, this is the feature of
emacs and I would like to go back to using it.

Emacs has now replaced todoist, obsidian and gmail web client. Singularly, I
think these tools are on par if not better sometimes that the emacs
replacement. However, together with org-link, this is where the power is. Being
able to quickly capture tasks that link back to emails is supper powerful.

The org-mode stuff is generally the same. It uses evil mode, so my fingers
don't get lost, Doom to make it look good. All the key bindings are the same,
it's just ripped out all the code and language support. The only code related
package is company so I can get completion on the roam links just like you do
in obsidian.

Email is powered by notmuch. I said this replaces the gmail web client,
however, it's really a couple of other too. The main benefit over have this is
you can have one inbox for multiple accounts. Having a single list for your
inbox is a grate way to keep track of everything. This will org capture and org
links works perfectly with the inbox zero flow, having the ability to file
things away not lose track of them is really nice.
2024-09-24 20:27:20 +01:00
Ade Attwood
5c3892b1a6 feat(emacs): add custom projectile project type
Add a new project type for Practically Makefile projects that are using
conventional tools.

This implements a few features all based around PHP and JavaScript projects. The
most notable features are:

- Compilation error detection for Jest JS testing framework
- Compilation error detection for Psalm PHP static analyser
- Alternate file support for Codeception "Cest" files
- JS test commands supporting "Jest"
- PHP test commands supporting "Codeception", "PHP Unit" and "Simple PHP Unit"
- Full project test support detecting the file type and the test command to run
2022-02-19 20:19:43 +00:00
Ade Attwood
55e3e98701 chore: add languagetool back in
I am sure this was installed before, it must have been removed when I started
making the repo public.

Anyway this adds it all back and also sets up the emacs package for using it
when writing.
2022-02-19 14:43:14 +00:00
Ade Attwood
21b38da6e9 chore(emacs): configure puppet by default
Now the puppet packages get loaded by default. I don't really know why it was
not getting loaded, it must have been some time since I have needed to edit any
puppet config
2022-02-19 09:22:30 +00:00
Ade Attwood
08335fba6a refactor(emacs): replace treemacs with neotree
Neotree has a much smaller foot print for me. This removes a lot of packages
that were not getting uses to intergate it with the lsp and projectile.
2021-11-21 16:49:47 +00:00
Ade Attwood
92c00ca15c refactor(emacs): swap cue for jsonnet
This is the language we are doing mode configuration in at work now. Cue was
nice but still ab bit new and jsonnet has been around for a lot longer. Cue also
works best with go but we are not doing any of that at work so jsonnet was the
winner.
2021-11-21 14:59:56 +00:00
Ade Attwood
99dd45aa08 chore(emacs): add key binding for org-capture 2021-11-21 13:33:04 +00:00
Ade Attwood
0042a84112 feat(emacs): add fmt mode
This is a format on save code formatter for multiple languages. It is based on
prettier.el but is using a custom cli tool for formatting.

This is the emacs port of format.vim a plugin I created to do formatting in the
same way but for vim.

See: site-modules/core/files/vim/plugin/format.vim
2021-11-21 13:24:29 +00:00
Ade Attwood
0cf4568853 feat(emacs): add zoekt code search integration
This integrates zoekt code search into emacs and ivy with a heavy inspiration on
`counsel-ag`

See: https://github.com/google/zoekt
2021-11-21 13:18:03 +00:00
Ade Attwood
653c7af2ae fix(emacs): update notmuch integration
- Pin notmuch to the version that comes with Ubuntu and is installed with apt
- Add org-move capture integration
- Add unread message filter
2021-11-21 12:36:45 +00:00
Ade Attwood
e8bbbae10a feat(emacs): add c and c++ language integration 2021-11-21 12:31:48 +00:00
Ade Attwood
31ab535f8e chore(emacs): add quick command for lsp actions 2021-11-21 11:03:44 +00:00
Ade Attwood
ebd73bcc38 feat(emacs): add file operation functions
This adds file operation command to emacs so you can quickly rename and copy
files.

The problem with the normal copy file if that it misses removing the old buffer
if its a rename and dose not move to the new buffer. This leads to (more than I
like to admit) editing the new file thinking its the old file.

By updating the buffers and automatically switching this prevents this.
2021-11-21 10:38:43 +00:00
Ade Attwood
6540bdf68d refactor(emacs): load in c-sharp config
This was missed in a previous commit.
2021-06-26 20:55:22 +01:00
4b71e6bc0e fix(emacs): change window delete keybinding wd
The current keybinding was set to kill the buffer that was causing an
issue when there was a spit of the same buffers and you wanted to
close one. If your were in this situation them the buffer would be
deleted and both of the windows would close. This is not what I want
from the "delete window" command, the expected behaviour is to close
the one window and leave the other window. This is what
`evil-window-delete` dose. This prevents the buffer from getting
deleted and if it is the last buffer emacs would then close.
2021-05-16 20:00:59 +01:00
2562204827 fix(emacs): move custom-set-variables out of the init.el
This is to stop the generated code from cluttering the init.el and it
can now be ignored by git
2021-04-16 20:49:53 +01:00
7cf8c3fa53 feat(emacs): add code files to move away from spacemacs
This is the start to move away from spacemacs and to a custom emacs
config
2021-03-16 20:12:46 +00:00