Shortcuts for inserting a parent/child/sibling

I remember: when I was using FreeMind, I had shortcut keys to add a node independently of the cursor position in the text content of the origin node. For example, I could create node B as sibling above node A when the cursor was at other than the start of node A’s text, or create node C as child under node A when the cursor was at other than the end. So I didn’t have to think about typing an extra keystroke to control the behavior of Enter, I didn’t have to think about where the cursor was inside the origin node, and I didn’t have to manually move the nodes around to make the intended parent-child structure, it could be done in one shortcut. This was convenient especially when I was mind-mapping and wanted to quickly build a hierarchy of ideas based off one node. For example: with “fruit”, I could instantly create “food” as parent or “apple” as child; with “dog”, the single shortcut would allow me to consecutively put it under “canine” then “mammal” then “animal”, moving upward, without having to go back down to each child to manually put it under each parent.

I would like to be able to do the same with the blocks in Logseq. Namely four shortcuts for:

  • Insert a sibling block above
  • Insert a sibling block below
  • Insert a parent block
  • Insert a child block

Having these commands configurable on the “Keyboard shortcuts” page would be nice.

Otherwise, or for the time being, is there a way to create macros of keystrokes in the config.edn to achieve the same results? :macros and :commands seem to be for inserting texts rather than creating a sequence of commands.