2021-05-10 Emacs news

| emacs, emacs-news

Links from reddit.com/r/emacs, r/orgmode, r/spacemacs, r/planetemacs, Hacker News, planet.emacslife.com, YouTube, the Emacs NEWS file, Emacs Calendar and emacs-devel.

View or add comments

Weekly review: Week ending May 7, 2021

| review, weekly
  • Plover and stenography:
    • I modified the Plover engine to add always-on stuff
    • I made it easier to repeat the same drill in Stenojig from Emacs.
    • I added websocket commands for adding translations and looking them up by stroke or by translation.
    • I started checking out evil mode, since I'll probably need a better way to launch keyboard shortcuts when I try to do steno more often.
  • Garden:
    • We bought some seeds, soil, and tomato cages.
    • We tidied up the right side of the garden, moving some of the tiger lilies into the bare spot and preparing to straighten the garden border. A- did a good job of entertaining herself by running up and down the garden and by sunning herself on the deck.
    • A- was excited about adding Shake and Feed fertilizer.
    • We spread some cedar mulch.
    • A- helped scatter grass seed.
    • A- helped W- spray nematodes in the garden.

Blog posts

Time

Category The other week % Last week % Diff % h/wk Diff h/wk
Discretionary - Productive 11.3 17.4 6.1 29.3 10.2
Unpaid work 3.7 7.2 3.5 12.2 6.0
Personal 6.4 7.1 0.7 12.0 1.2
Business 0.0 0.5 0.5 0.9 0.9
Discretionary - Play 0.5 0.2 -0.3 0.4 -0.5
A- 43.4 38.1 -5.2 64.1 -8.8
Sleep 34.6 29.3 -5.4 49.2 -9.0

I stayed up late to learn more about stenography.

View or add comments

2021-05-03 Emacs news

| emacs, emacs-news

Links from reddit.com/r/emacs, r/orgmode, r/spacemacs, r/planetemacs, Hacker News, planet.emacslife.com, YouTube, the Emacs NEWS file, Emacs Calendar, and emacs-devel.

View or add comments

Weekly review: Week ending April 30, 2021

| review, weekly
  • ox-11ty:
    • I added inherited tags to ox-11ty.
    • I modified ox-11ty to copy images to the post directory.
  • Emacs:
    • I figured out how to use Consult to retrieve my journal entries asynchronously.
  • Garden:
    • We're experimenting with different planters for the strawberries. W- bored 2 1/4"-inch holes into a plastic planter, and I sewed grow bags for the strawberries using landscape fabric.
    • W- dug up the edging in the garden.
  • Other:
    • I pinged Jane about the Georgi order. It turned out that it might not actually have gotten shipped, so she's getting that sorted out.
    • I made a fabric flower.
    • We brought the plants in because we're expecting heavy winds and some snow.
  • Plover and stenography:
    • I figured out how to poke around Plover's source and how to fix plover_websocket_server so that it wouldn't chomp my last character.
    • I wrote some code to control Plover from Emacs via the plover engine server plugin.
    • I'm still in the stage of reading a gazillion books out loud to A-. I've been sneakily using it as first-letter-of-words steno practice with the hand that's not pointing to what I'm reading, which has the side benefit of slowing my reading down so that it's easier for her to understand things. Mwahaha!

Blog posts

Time

Category The other week % Last week % Diff % h/wk Diff h/wk
Discretionary - Productive 5.0 11.3 6.3 19.0 10.6
Personal 4.4 6.4 2.1 10.8 3.5
Unpaid work 3.0 3.7 0.7 6.2 1.1
Discretionary - Play 0.9 0.5 -0.3 0.9 -0.6
Sleep 36.1 34.6 -1.4 58.2 -2.4
Business 1.5 0.0 -1.5 0.0 -2.6
A- 49.1 43.4 -5.7 72.9 -9.6
View or add comments

Monthly review: April 2021

| monthly, review
  • I switched from Wordpress to a static blog.
  • Lots of Emacs tweaks: getting the hang of Lispy, asynchronously tangling and compiling my config, posting to Eleventy.
  • I sewed grow bags for the strawberries and we worked on the garden. It's still a little chilly, so we've been moving plants in and out.
  • I'm still in the stage of reading a gazillion books out loud to A-. I've been sneakily using it as first-letter-of-words steno practice with the hand that's not pointing to what I'm reading, which has the side benefit of slowing my reading down so that it's easier for her to understand things. Mwahaha!
  • I bought a used Maxi Micro scooter for A-. She liked it a lot. I ordered new handles for her, too.
  • A- was excited about the big feathers I bought for use as quills and has been practising with them.
  • We made a couple of cakes because A- wanted to experiment.
  • I worked on a few more long dresses and a couple of fabric flowers for A.
  • We saw a squirrel nest fall. The mama squirrel came back for the baby squirrel.

Blog posts

Sketches

Time

Category Previous month % This month % Diff % h/wk Diff h/wk
A- 44.4 46.7 2.3 76.0 3.8
Personal 4.6 5.3 0.7 8.6 1.1
Discretionary - Play 0.6 0.7 0.1 1.1 0.2
Unpaid work 3.4 3.4 -0.0 5.5 -0.0
Discretionary - Social 0.0 0.0 0.0 0.0 0.0
Discretionary - Family 0.2 0.0 -0.2 0.0 -0.3
Business 1.8 1.0 -0.8 1.6 -1.3
Discretionary - Productive 10.4 9.6 -0.7 15.7 -1.3
Sleep 34.6 33.3 -1.3 54.2 -2.2
View or add comments

2021-04-26 Emacs news

| emacs, emacs-news

Links from reddit.com/r/emacs, r/orgmode, r/spacemacs, r/planetemacs, Hacker News, planet.emacslife.com, YouTube, the Emacs NEWS file and emacs-devel.

View or add comments

Emacs Hydra: Allow completion when I can't remember the command name

| emacs

So it turns out that I'm pretty much zonked after a day with the kiddo and have a hard time remembering keystrokes or speed-reading my Hydra cheat sheets. I want to be able to use M-x-like completion in my Hydra so that I can type a few characters and then maybe see the shortcuts there. Here's what it looks like:

Screenshot_20210425_232535.png

Figure 1: Hydra completion

(defun my/hydra-format-head (h)
  (let ((key-binding (elt h 0))
        (hint (elt h 2))
        (cmd (and (elt h 1) (prin1-to-string (elt h 1)))))
    (if cmd
        (format "%s (%s) - %s" hint key-binding cmd)
      (format "%s (%s)" hint key-binding))))

(defun my/hydra-current-heads-as-candidates ()
  (let ((base (replace-regexp-in-string "/body$" "" (symbol-name hydra-curr-body-fn))))
    (mapcar (lambda (h)
              (cons (my/hydra-format-head h) (hydra--head-name h (intern base))))
            (symbol-value (intern (concat base "/heads"))))))

(defun my/hydra-execute-extended (prefixarg &optional command-name typed)
  (declare (interactive-only command-execute))
  (interactive (let ((execute-extended-command--last-typed nil)
                     (candidates (my/hydra-current-heads-as-candidates)))
                 (hydra-keyboard-quit)
                 (list current-prefix-arg
                       (completing-read "Cmd: " candidates)
                       execute-extended-command--last-typed)))
  (let* ((candidates (my/hydra-current-heads-as-candidates))
         (bind (assoc-default command-name candidates 'string=)))
    (cond
     ((null bind) nil)
     ((hydra--callablep bind) (call-interactively bind)))))

This is how I add it to all my hydras:

(with-eval-after-load 'hydra
  (define-key hydra-base-map (kbd "<tab>") #'my/hydra-execute-extended))

Proooobably works? Very rough. Might be useful for those fuzzy-brain days.

This is part of my Emacs configuration.
View or add comments