2023

Insert Unique Log Message

Insert Unique Log Message

James Dyer
I had tried to implement a debugging logging/print method myself using macros but hadn’t really achieved the level of elegance outlined in https://xenodium.com/sprinkle-me-logs/ I added a couple of programming modes to the function defined in the post above and have now incorporated it into my workflow: ((equal major-mode 'ada-mode) (cons (format "Ada.Text_Io.Put_Line (\"%s: \\([0-9]+\\)\");" word) (format "Ada.Text_Io.Put_Line (\"%s: %%s\");" word))) ((equal major-mode 'c++-mode) (cons (format "std::cout << \"%s: \\([0-9]+\\)\" << std::endl;" word) (format "std::cout << \"%s: %%s\" << std::endl;" word))) For some reason I always seem to tend to ribald statements within my code, something like poop or some other unsavoury variant, I just need to remember to tidy these up later on!
Initial focus in Occur Buffer

Initial focus in Occur Buffer

James Dyer
Just a quick one today! I am finding occur extremely useful, from building an index from my emacs init file to searching through org headers to generally just having my isearch all there in a single window. However I would rather the cursor would jump to the *Occur* buffer when invoked as it just feels a little more natural, so I added the following: (advice-add 'isearch-occur :after '(lambda (origin &rest args) (isearch-exit) (select-window (get-buffer-window "*Occur*")) (goto-char (point-min)) ))
Photos Hilsea 20230805

Photos Hilsea 20230805

James Dyer
Mainly cows! they go moo, mostly and also a little furry cat thing sitting by a fire.
Cursor Blinking Rate

Cursor Blinking Rate

James Dyer
Sometimes I can find a blinking cursor distracting and somewhat expectant!, so currently I am favouring a solid non blinking cursor while still being able to easily locate my cursor using hl-line-mode I have tried beacon and pulsar in the past but have found that a simple line highlight nicely serves my purpose. This however led to a weird issue at work with my emacs setup and although I am not quite sure why it is happening (although I have my theories) I have found a workaround.
Among The Leaves Video

Among The Leaves Video

James Dyer
This was created from an initial brief. I tweaked my style slightly generally to be more of an illustrative look and had to focus more on a playful theme rather than the dark edge I usually employ. Using ArtRage and Infinite Painter on various drawing tablets
Imenu Indexing My emacs Init File

Imenu Indexing My emacs Init File

James Dyer
After implementing my simple occur indexing in my last post : Indexing My Emacs Init File A suggestion was made to put this into an imenu. I thought that was rather a good idea and it would also give me the opportunity to explore imenu I came up with the following to add to the emacs init file : (add-hook 'emacs-lisp-mode-hook (lambda () (setq imenu-sort-function 'imenu--sort-by-name) (setq imenu-generic-expression '( (nil "^;;[[:space:]]+-> \\(.
Sorting Org Tags using Org Mode!

Sorting Org Tags using Org Mode!

James Dyer
Well as always a little more time with emacs a little feedback and then finding more about org I have now figured out (I think) how I can better sort tags in an org file. In my previous post: Sorting Org Tags I made the following comment: I had assumed that org-mode came with the built-in ability to sort tags but I couldn’t find any evidence of this Well as it turns out there is evidence of this!
Best Friends Video

Best Friends Video

James Dyer
Part of a big multipart commission I completed. This was created from an initial brief. Firstly I produced some sketches to make sure I was going in the right direction with comments and modifications along the way. I tweaked my style slightly generally to be more of an illustrative look and had to focus more on a playful theme rather than the dark edge I usually employ.
Mum Memorial

Mum Memorial

James Dyer
Portrait Memory Table Eulogy Music Collage Order of Service https://felicitydyer.muchloved.com/ Portrait Memory Table Eulogy Music Oh Holy Night - Drifters I Will Always Believe - Julia Dyer I Walk With God - Mario Lanza Collage Order of Service Download pdf
MAFS AU Reunion 2023 Bingo

MAFS AU Reunion 2023 Bingo

James Dyer
“I have a child” harrison smirking expert john with head in his hands expert mel high eyebrow raise dan mentioning the beach someone awkwardly pouring wine jessie does horn hands experts all saying “oh no” alessandra shaking head disapprovingly someone saying “far out” “im not having a bar of it” mel “freak in the sheets” butt dial gaslighting I’m done alyssa looks at duncan in disgust
Sorting Org Tags

Sorting Org Tags

James Dyer
I use a package called org-rainbow-tags which adds random colours to org tags to provide a consistent colour between identical tags. This helps to identify common tags throughout the file but has the side effect of emphasising the lack of my coherent tag ordering. I would like to order the tags consistently, just for my own peace of mind! 😀 I had assumed tkhat org-mode came with the built-in ability to sort tags but I couldn’t find any evidence of this so I decided to create a method using my own function.
Doodle 2023-03-31

Doodle 2023-03-31

James Dyer
More doodles this time using InfinitePainter and Krita and also I added a little colour!
Pieces Of Art 101-150 Video

Pieces Of Art 101-150 Video

James Dyer
Another 50 pieces of art I have completed in a slideshow! Using ArtRage and InfinitePainter on various drawing tablets
Trimming ArtRage Playback Scripts using Emacs

Trimming ArtRage Playback Scripts using Emacs

James Dyer
Emacs isn’t my only obsession, I like to create digital art and for that I use ArtRage. The interesting thing about ArtRage is that each brush stroke or editing action can be recorded in a text file or script for later playback. I use this facility for creating time-lapses. The ArtRage manual describes the following: Script Files ArtRage scripts are simple Unicode UTF16 text files which can be edited using Notepad, Notepad+++, TextEdit, or any similar program
Mum Video

Mum Video

James Dyer
In loving memory Using ArtRage and Infinite Painter on various drawing tablets
Editing org files on an Android device - Part 1

Editing org files on an Android device - Part 1

James Dyer
Now that there is a build for emacs on Android I thought I would try and develop an emacs workflow between my Galaxy Note 8 / Galaxy Tab S7+ and my linux laptop. At the moment I am using Markor on my phone and this serves my needs adequately but of course I am missing that org file support. My current process involves syncthing to push my org files around my laptop / phone and tablet.
Replacing deadgrep with consult-ripgrep

Replacing deadgrep with consult-ripgrep

James Dyer
I have been evolving my way through many differing ways of grepping recently from standard built-in greps to a few ripgrep front ends until I finally settled on deadgrep I am currently an ivy user but as everyone seems to be talking about vertico and the associated completion stack I thought I would give it a try and therefore consult-ripgrep to see it can improve on my deadgrep setup.
Midi Remix Sahara

Midi Remix Sahara

James Dyer
I have been revisiting my old midi files from my the early days of music composing and upon seeing the release of FLStudio 21 it inspired me to look at this software again and see what I can do with my old midi, this is what I quickly remixed -> Sahara
Mum

Mum

James Dyer
Simply in loving memory
Digital Art Printing

Digital Art Printing

James Dyer
Once a digital piece of art has been created then it is time to print it. A few tweaks are required in my image editor of choice and that is GIMP. Import the image into GIMP and perform the following to tweak the image so the printed image is as close to the digital image as possible: exposure : 1.3 brightness-contrast : 10 saturation : 1.24 and now to print, here are the typical setting that will work:
Using Macros to Help Code Debugging

Using Macros to Help Code Debugging

James Dyer
Often I find myself requiring the most rudimentary of methods of debugging and that is to push text to standard output from within a running executable to indicate the logical structure of a program. This situation may come about if I can’t debug a dll or generally actually stopping a program to debug creates an “observer effect” Sometimes the logical structure can be somewhat complex consisting of a plethora of if statements and nested for loops, e.
Doodle 2023-02-27

Doodle 2023-02-27

James Dyer
More doodles this time using InfinitePainter and Krita and also I added a little colour!