TheBrain 12 expand/collapse mechanics, part 1

EDIT2:
More details have emerged here:
https://forums.thebrain.com/post/no-documentation-collapse-hereexpand-here-is-super-weird-someone-explain-those-commands-to-me-please-11257388?pid=1321534789
Will update this once a new version is out (higher than 12.11).

EDIT:
Just realized that TheBrain 12 could export Notes as a PDF, so I added that. I mean…. I knew that, but I never had a use case before, so I didn’t think of it immediately.
Not exactly interactive, but it certainly looks good now! But for testing/understanding do load the original Note into TheBrain.

about this post:
So I wrote a post trying to figure out expand/collapse in TB12 in TB12 itself. Using all the cool Markdown features. Which of course didn’t nicely translate into this….. WordPress-Gutenberg-Editor thing.
If you’re reading this, just download the zip with the two .md-files and read it in TheBrain 12 yourself.
There’s even a NotesStyle to read it exactly like it was intended!

https://1drv.ms/u/s!AnW9DTwVxi8MiPw8dJcojljVs95kxw?e=xGSR89

PDF download:

Downlaod the folder, open the .md-files and paste the content straight into two separate Thought Notes.
Open the Thought-folder of the blog-post Thought to paste in the .data-folder to see the image.
Import the .nstyle-file for maximum viewing pleasure.

If someone could tell me in the comments or TheBrain-forum how I can paste from TheBrain into Gutenberg (or the classical WordPress-editor) whilst also preserving images, checkboxes, center and left-alignment and color, I’d be very happy to hear it.
I’ve just gotten good at using all the bells & whistles it offers, don’t want to use a different editor for blog posts.
Iirc, publication-readiness was a main reason for choosing Markdown for TB11.
Not seeing that yet, but I have no idea what I’m doing here.

Also any way to get this page to look like my NotesStyle specifies in TheBrain?
That would be extremely cool.

Anything below this line is copied over from the Note and looks kinda terrible, because I’m not good at this WordPress stuff yet.

—————————————————————————-

overview

Part 2 would be, all the bugs and issues with it.
I’ll need to write part 1 first as a reference, though.
I’m literally need this reference on screen here, because otherwise I can’t keep them straight.
But I think it may be helpful for others, who are trying to use those too.

I’ll briefly describe all commands and what keybdings I set for them.
I recommend copying them, to follow along easily.

the commands

group 1 (toggle):

ctrl+F7 Notes>Expand/Collapse Toggle
tooltip:
Switch the expanded/collapsed state of the current line


group 2 (local):

ctrl+F8  Notes>Collapse here
tooltip:
Collapse everything possible in the current area of the note
ctrl+F9 Notes>Expand Here
tooltip:

Show everything in the current area of the note

group 3 (all):

ctrl+F10 Notes>Collapse all except here
tooltip:
Collapse all except here
ctrl+F11 Notes>Collapse All
tooltip:
Collapse all top level lines in the note
ctrl+F12 Notes>Expand All
tooltip:
Expand all lines so everything in the notes is shown


mechanics

hierarchy

1# > 2# > 3# > 4# > 5#
Or in words:
Title>Heading>Sub-heading>”section”>”sub section”
Title, Heading and Sub-heading have various styling options in “Notes Style”.
As of writing sections and sub-sections are no longer listed in the official Markdown reference, but they’re still in the program.
A section is a bit smaller than a heading. A sub-section is the same size as a section, but for the collapse/expand hierarchy it is one level lower.

trivia and cornercases

what about tabbed list elements
  • bullet lists
  1. ordered lists
  • to-do lists
  • checked to-do lists
    • and their indented elements
    • of a different type
      • and their indented elements
        1. and all the other
        2. cases
        3. you could possibly think of

Bullet lists, ordered lists and to-do list-checkboxes work the same way.
You can mix and match list-elements however you like and it won’t matter for expand/collapse purposes.
An untabbed list element is always lower in the hierarchy.
Then you can keep tabbing to decrement a list-element’s position in the hierarchy.
caveat: I think it was more complicated than that, but I don’t want to look into it right now

what about color, bold and italics

Text color and background color does not seem to matter at all.:(style=”color:#ffff00″):

what about right-alined and left-aligned text for list-elements

–: I am unsure, but I think that they don’t
:-: really support tabbing in the first place
:-: ##### …right-alined and center-aligned #-elements
Go away, please. I’m getting a headache 😦
:– ##### do #-elements even support center and left-alignment?!
Center-alignment works for 4-#. Left-alignment doesn’t.
I’ll just assume that’s the general rule for now.

what about pasted-in images

no clue

general expand/collapse rules

Everything collapses to the next highest level.
I tested this without gaps in #-count.
I’ll just assume that’s true generally, though.

how do commands work

Right-click menu in the Note.
Using a keybinding or /command.
Left-clicking on the left edge of Note on the little down-chevron or right-chevron

where do commands work

Group 3 commands work everywhere.
Group 1 and 2 commands work only on the line, that has a chevron.

why can I see group 1 and 2 commands on this non-chevron line?

Because that’s s a bug.

chevrons?

I call them chevrons, because that sounds cooler than caret.

show me a picture!

Happy now?

No. Why is there no chevron at the last 4-# element

Simple, there’s no text below it.

when/how can I see them?

Down-chevrons are only visible when the mouse cursor hovers over the left-edge of the Note.
They show that you can click on them to collapse text.
Right-chevrons are always visible.
They show that you can click on them to expand hidden text.


group 1 (toggle)/left-click on chevron:

ctrl+F7 Notes>Expand/Collapse Toggle does the same as left-click on chevron.
It’s pretty great. Kinda makes the most intuitive sense.
You don’t see the down-chevron on the line with the text-cursor, but that’s not an issue really.

group 2 (local):

They also are only available on a chevroned line. Except this time, it’s way less intuitive.
They collapse everything possible in the current area of the note. And now I know what you’re going to ask….

what on earth is “the current area of the note”

Collapsing the “current area of the note” always collapses the current line’s text. But also collapses all #-elements and above below it, that are of equal #-count. The reverse for expand.

uhm….

I know. Just play with the example Note, till they seem reasonable. Also play with this Note. There’s lots of things to expand and collapse.

group 3 (all)

Collapse all and expand all work as you’d expect and they work everywhere.
They collapse everything collapsible and expand everything expandable.

what about “Collapse all except here”

I wish you hadn’t asked me that. “Collapse all except here” does…. things.
It is the Schleswig-Holstein question of Collapse-command and probably the single-most convoulted and weird feature in TB 12.
I can kind of intuit what it does and I don’t like it.
To play around with it, press ctrl+F10 and ctrl+F12 in quick succession. Then you try putting it into words.

TheBrain 11 keybindings: adding web-links and images as Thoughts or Attachments

First some prerequisite terms:

active Thought
highlighted Thought

Pasted Image.png
spaces in Thought name are added for clarity

The active Thought is the Thought, that is centered on the Plex.
It has a red rectangle around it referred to as “Active Thought, outline” around it, as well as a red circle referred to as “Focussed Thought, circle”.
The highlighted Thought is the Thought, that at any given time has the highlighter on it. Right now it is yellow.

Pasted Image.png
good colors, aren’t they?

Why is this important?
In Preferences>Keybindings we can set keybindings for a “command”.
Many commands can be used on Thoughts.
However, some commands like “Thought>Delete” or “Thought>Create Child will act on the highlighted Thought wheareas the command “Selection>Link Selection as Parents of” will always work on the active Thought.

Pasted Image.png
and the explanation hint, always refuses to tell you which way it is 😦

If the “highlight circle” isn’t shown, the active Thought is the same as the highlighted Thought.
Since we use the “highlight circle” often, this distinction is very important.

Hint: There is a bit more complexity hidden in the concept of the “active Thought”and there is a reason why it’s not called “Active Thought, circle”, but that matters only for Outline view and will be dealt with in a future blog post.


With that out of the way, we may actually go about doing things.
Today we learn two essential keybindings are “Edit>Paste as New Thought”, which we map to “Ctrl+1” and “Edit>Paste on Item”, which we map to “ctrl+shift+1”.

Edit>Paste as New Thought

Basically this will create a new Thought from the content of your clipboard. If you press ctrl+1 in TheBrain 11, it’ll create a new Child Thought for the currently active Thought.
Always the active Thought, even if there is another highlighted Thought.

URLs:
TheBrain 11 will try to get the website icon and a sensible Thought name (and possibly a label) from the webpage title.

adding a monitor stand I ordered from Amazon

Edit>Paste on Item

Images:
A Thought with the name “Pasted Image” will be created with a png-Attachment, that mirrors your clipboard. The attached image will also be the icon of that Thought. This is often useful, when adding a screensnip as that automatically will load the image into the Windows clipboard.
[insert a screensnip gif of a cute puppy or something]

This is a similar command, it takes an object (an url or an image) from the clipboard and pastes it into TheBrain. Except instead of a new Child Thought it will add it as an Attachment to an already existing Thought, specifically the highlighted Thought.

We can do this for URLs:

adding the order details as an Attachment

And we can also do this for images:

the added image will serve as the icon for my “monitor stand”-Thought

SuperMemo 18: importing a new font

So you know of a font, that you like and wish to see your items in. Say, you really like”Recursive”, because it is so recursive, because it is so recursive, because it is so recu…..
Anyway, you type “recursive” into the search box in Toolkit>Options>Font>Question Font and only find nonsense fonts that starts with @ for some reason.

oh no, what to do?!

However, this lack of recursion in SuperMemo 18 can be remedied with relative ease. Find the desired font on fonts.google.com and download the whole family.

Family refers to bold, italic and


Now open Settings (win+i), click on “Personalization”, then “Fonts”. Unzip the downloaded font-family, look for a .tff-file and drag it into the marked area and see it appear in the Windows Font registry.

Now you can select the font in SuperMemo:

Here you can see a how an item looks like in “Fira Sans”, which I have imported in the same manner:

font recommeneded to me by supersrdjan, notice the lovely small ls!

Alas, no blog post on SuperMemo could possibly be complete, without showing off an infuriating bug.
When you press ctrl+a and start typing/overwriting your old text, it’ll fall back on the “Text”-font set in stylesheet.


So if you don’t want your fonts to randomly reset, maybe don’t use seperate “Question” and “Answer”-fonts and use the “Text”-option in Stylesheet for both.

Links:

https://fonts.google.com/specimen/Recursive?query=recur
https://fonts.google.com/specimen/Fira+Sans#standard-styles

TheBrain 11 keybindings: Thought Creation basics

Today we’ll introduce two more UI elements in TheBrain, but won’t discuss them more than necessary.

The Search box:

start typing on the Plex, and you automatically type into the Search-box

The Thought-Creation-Dialog:

link an existing Thought or create a new one

For the Thought-Creation dialog, we use the following essential commands:

create Child/Parent/Jump-Thoughts

Those are mapped by default to F6/F7/F8 respectively. Nothing much to say here, they work well.

We can change our mind about what kind of Thought-link you want to create/link by pressing another key again.


Very often however, we want to create a new Thought without any connection. Or perhaps we want to create a Thought with no connections to the current Plex and connect it later.
Setting Thought>Create Thought in Keybindings to F5, places it conveniently and is easy to remember.

creating an isolated/Orphan Thought

simply type and then press F5

There is a character limit for how long a Thought can be, it’s very long though. However when creating an isolated Thought, we are limited to the 28 characters of the search box.

I can press “c” as much as I like, it won’t get longer

There are many more ways of creating Thoughts or linking them. We can also easily create or link multiple Thoughts at once. However we shall learn about them in a future post.

What we have learnt today:

F5 create an isolated (or orphan) Thought from the Search box
F6 create a Child Thought
F7 create a Parent Thought
F8 create a Jump Thought

TheBrain 11 keybindings: Selection and Navigation Basics

UPDATE:
changed “crosshair” to highlighter, cause that makes more sense


Note: To follow along, you should set the keybindings manually try doing the same things as I’m showing. Here is a tutorial Brain for this, which you may download here.

These are the shorctus I use many dozens of times per day and they form the basis for most other things I do, so I’ll explain them first.

the highlighter:
(officially known as the “Focus Highlight circle”?)

The official name is rather long and awkward.
Also I don’t really consider it to have an official name as “Focus Highlight circle” is merely what the devs call it in the TheBrain-forums.
It is extremely useful, but never mentioned once in the TheBrain 11 User Guide!
It is a thick circle with a dot in the middle, which appears over a Thought, if you press any arrow key. It kinda looks like a crosshair, hence the name.

On second Thought, it kinda doesn’t look like a crosshair at all, so we shall call it highlighter instead.

In the BrainTheme-window, you can make sure, that it’s clearly visible For most default BrainThemes this is not necessary.

The highlighter is your new best friend and we’ll be using it for doing pretty much anything on the Plex fast.

The Selection-box:

Selecting a thought will open the Selection-box. We will use this one a lot, as well.

Note that text color, background and icon on the Plex will also show in the Selection Box

You might wonder why we need a Selection box, when the Selection-frame already neatly shows what’s selected.
That’s because, Thoughts may be selected, even if they aren’t visible in the current Plex (as seen below). Unless we delete or unselect a Thought, they’ll stay in the Selection box.


Now what is all this good for, why do we want to select Thoughts and what do we need a highlighter for?

Selecting a Thought and deleting a whole Selection

We will be using:
arrow keys, to move the highlighter
alt+1, to select a Thought
ctrl+shift+delete, to delete a Selection

In the animation above, you can see me add the Thoughts “delete me 1”, “delete me 2” and “delete me 3” to a Selection.
I show the highlighter, by pressing down-arrow. It’ll immediately show up on “delete me 1”. I press alt+1 to select it. (the command is called “toggle Selection”, because if I did it again, it would unselect a selected Thought)
I press down, alt+1 again for “delete me 2” and then right and alt+1 for “delete me 3”.
Then I press ctrl+shift+delete, to delete the entire Selection at once.
As the selected Thoughts no longer exists, the Selection-box automatically disappears.

Note: The visualization on the bottom left isn’t part of TheBrain 11, but a helpful little AHK-script to show what I’m doing.

quickly unlinking and relinking multiple Thoughts

Now we will learn, how to use highlighter and Selection box, to can quickly move multiple Thoughts from an “inbox”-Thought to a new location.

We will be using a couple more commands for this:
alt+2 unlink Selection (from the active Thought)
alt+3 discard Selection (this saves us from ever having to click the undersized close-button of the Selection box)
ctrl+shift+F6 link Selection as Children
alt+left go backwards

From the “Inbox”-Thought, we move select “cute kitten” and “zesty cat” as we learnt before. Now we press alt+2 to unlink them from the active Thought, because we want to empty our Inbox.
Now we type “cat pictures” and press enter to go to that Thought.
We press shift+F6 to make them Children of the “cat pictures”-Thought.
Our cat pictures are properly filed now and our inbox is less cluttered already.
So therefore, we don’t need to do anything with them for now and thus clear them from our Selection with alt+3.
Now we press alt+left to activate the previous Thought and jump from “cat pictures” back to “Inbox”.
We file “Golden Retriever” and “two dogs” under “dog pictures the same way.

What have we learnt so far:

arrow keyscontrol the highlighter
alt+1select/unselect a Thought
alt+2unlink Selection from the active Thought
alt+3discard Selection
shif+F6link Selection as Children
shif+F7link Selection as Parents
shif+F8link Selection as Jump Thoughts
ctrl+shift+deletedelete Selection
alt+leftbackward (go to previous activated )
alt+rightforwards
okay, some of them I haven’t shown yet, but they are similar enough

TheBrain 11 keybindings: overview

A tutorial series on moving quickly and efficiently in TheBrain 11 to focus on what matters

All posts in the series

Selection and Navigation Basics
Thought Creation basics
adding web-links and images as Thoughts or Attachments
Focus and Splitter Panes
Pins and Homethoughts
more Selection tools

setting keybindings quickly
Settings
views and windows

Notes Editor
deletion/forgetting/unlinking

[insert some other stuff, structure is best guess atm]
helpful AHK scripts

What’s this about:
Customisable keybindings allow you to use TheBrain 11 at very high speeds.
Many extremely useful commands are left unmapped by default, so you have to set them for yourself.
I’ll be showing and explaining all the commands I use, with my preferred bindings, over the coming weeks.
It will take me a while to go thru them all and to properly document them.
Instead of just providing a big table I will show animations showing what they each do, since the purpose of a command often only becomes apparent, if used in conjunction with of other commands chained together.
Because keybindings are quite essential for my personal use of TheBrain 11, this can be considered a general tutorial for using this software, as well.
[it is quite unavoidable, that I’ll have to go into some of the stranger and more baffling mechanics of TheBrain 11]

Where to start:
You may download my keybindings immediately (they are at the end of this post for download), but it might be more sensible to set them manually at first, as you learn one or two new workflows in each post.
It is also go
A couple of the default keybindings I have changed more to my liking, though mostly I have only added to the default bindings, not modified them much.

Each post will deal with a specific category of keybindings, provide a table listing them and show gif-animations so you can quickly see what they do.

At the end of this series, I’ll provide my keybindings for download and provide SuperMemo 18 and Anki-decks for efficient memorization of them all, for anyone so inclined.

how to import keybindings

TheBrain 11 can export its keybindings in text-file named “KeyboardShortcuts.txt”. So if you modify your keybindings a lot, you can export and import them, as you like.
That way, you never have to redo your keybindings on multiple computers or when you reinstall your operating system.


Resources:
download link for my keybindings

deleting all Timeline-events in TheBrain 11

As of TB 75 you simply click there and do this.



stuff below is outdated nonsense now 🙂

On TheBrain-forums someone had an interesting problem.
https://forums.thebrain.com/post/delete-all-timeline-events-10442198?pid=1310867450

How to delete all Timeline events at once (a Google sync calendar being no longer needed apparently). I thought about it for a while and experimented a bit more.

There are three scenarios here, the first one is easy, the second one somewhat involved but doable within a couple of minutes. The third one is very annoying, but I’ll try to optimize it a bit. He didn’t specify in his post, but I think the third one is the most likely solution here.

Scenario 1:
Each event has a Thought associated with it. You don’t need that Thought, anymore.

This is the easiest case.
Simply open the Report-sidebar, specify the time range between 1999 and 2040. (that should likely cover all events, unless you’re a timetraveller who’s been using TheBrain before it was published or have in intimidatingly long time horizon)

Save the Report as “all events” for good measure.


Now right-click onto the hamburger-button and click “add all to Selection”. Now shift+right+click in Selection and click “Delete [number of] Thoughts”.


Scenario 2:
You still need those Thoughts and just want to remove all the Events.

Create an Orphan Thought (call it “Temp”), activate it, right click on the Selection box and “Link Selection as Children of ‘Temp'”.
Bring up the “all events”-Report from Scenario 1.

Make sure that you show Attachments in Tabs (cause I didn’t test it in List-view) and that “Preferences>Behavior>Content>Upate displayed content…..” is set.


Put it to Outline-view and find some kind of zoom setting that minimizes the lag that comes up with having hundreds of Thoughts shown all at once. Usually zooming out helps, so that the abbreviation dots are no longer visible. This step might be more difficult with lower res monitors. TheBrain performance issues are kinda weird.*


Now in an ideal world, you could go to Preferences>Keybinding now, set Attachment>Delete (in this example I set it to shift+delete).
And you would simply go thru each Thought one by one and press shift+delete on the Event-Attachment. However this will just crash TheBrain 11 (see video, at least in version 60):
https://youtu.be/oe21z2JAYiU
Already reported that bug though.
https://forums.thebrain.com/post/bug-attachmentgtdelete-used-on-an-eventtab-in-a-thought-causes-uncloseable-quotunexpected-errorquot-10401752?pid=1310505227

It’s not that bad though, since you can position the cursor over the trash-can symbol, click it, press ctrl+s, down-arrow click again (however many hundred times you need to get rid off all events). Here’s a video:
https://youtu.be/bbSswBZDZjo


limitations:
This process is optimistically assuming that you don’t have any Notes in each Thought. That’s rather unrealistic. The problem is, that if you do, you’d have to click ctrl+q to navigate to the Events-tab. And you’d always have to check otherwise you risk deleting a different Attachment (when you’re inevitably not paying attention, because you’re terribly bored).
This will make it difficult to get into any kind of rhythm for doing this hundreds of times over.

Scenario 2*:
Some Thoughts have Notes, some don’t.

Start with “all events” already added to Selection.
Create a new Report, filter Thoughts by Attachments, set Type to “with Notes”.
I saved this Report and named it “Thoughts with Notes”.
Now click on the hamburger-menu and click “Remove from Selection”.
Now do all the further steps of scenario 2. Each Thought will now show the Event immediately and you can do this whilst listening to music.
You have now removed all Events from Thoughts without Notes.
Logically this only leaves all the Thoughts with Events, who do have Notes.
So simply open up the Report “all events” again, add them as Children to a Temp-Thought and now same things again, except with a slightly changed rhythm.
Instead of left-click (on trashcan), down-arrow, it’s just going to be:
ctrl+q, left-click, down-arrow

That’s it. Your life is now uneventful. Congratulations!

but wait…… there’s another scenario….. it’s a terrible one….. you’re so doomed…..

scenario 3:
all Events are detached in the Timeline without a corresponding Thought

Yeah, that’s kinda bad. You can’t put detached Events into a Selection, nor can you search for them in Reports.
Only options that are left involve a lot of clickety druggery.
If I were in that desperate situation, I’d set up the Keybinding “Timeline>Event” to “ctrl+delete”, and set something for “Timeline>Right”. The trouble is that whenever you move the Timeline via keybinding (or via the equivalent little right-arrow icon) it gives you an “exciting” animation instead of just showing you what you want.
I’d probably create some kind of ahk-script to carpet bomb the whole timeline with delete from left to right, make it press “Timeline>right” and let it run for each day.

*weird zoom stuff, naively you’d expect that a zoomed-out view would perform worse, since it shows more things, but….. it’s more complicated than that apparently:
https://forums.thebrain.com/post/performance-zoomed-in-performs-worse-than-zoomed-out-10404415?pid=1310540751

OneDrive SuperMemo sync

[epistemic status: this works fine, it’s rough around the edges though.]

scenario:
You want to work on SuperMemo on two different windows machines. Like one desktop and one Laptop. Instructions are for Windows 10 and SuperMemo 18
(but should only differ in minor details for other versions)

prerequisites:

on both machines have OneDrive installed (and ensure you’re logged in with your Windows account)
have SM18 installed on both machines
use the default SM directories and OneDrive directories
(or make appropriate changes to my instructions)
have “files on demand” disabled (cause that feature is just a super stupid headache)

—–

Create a folder called “symbolic links” in the root-directory of OneDrive.
press Windows>type “terminal”>click run as administrator
there execute:
cd C:/user/OneDrive/symbolic links/

Then type:

mklink /D “C:/users/[your username]/OneDrive/symbolic links/SM_backup_machine1” “C:/SuperMemo/systems”

Do the same on the other machine, but name the folder “SM_backup_machine2”.

“Sm_backup_machine1” is always having the exact same content as “C:/SuperMemo/systems” on machine1. On machine 2 it’ll be just another folder. And vice versa.

When you worked on machine 1 last and want to work on machine 2, simply delete the content of “C:/users/[your username]/OneDrive/symbolic links/SM_backup_machine2” and paste into it the contents of “…./Sm_backup_machine1”. Now start SuperMemo.
Same thing in the opposite case.

Process could certainly be automated for comfort with some clever start-up scripts.
Also prone to user error if you forget what your last worked on machine was, if you didn’t have internet when you finished working on that machine, if you interrupted your upload, if you restored your whole system from a backup (that’s a whole ‘nother blog post) etc.
You can move the sys-link folder around or even rename it without breaking the link. Not sure if the link is still maintained if you move or rename the machine2-folder on machine1.
Haven’t tried that.

Also might not be efficient with very large collections. Sorry Luke 🙂

source (and more on symbolic links):
https://www.maketecheasier.com/create-symbolic-links-windows10/

If I made a mistake or you’ve got something to improve this, let me know into the comments (TODO: figure out, if this blog supports comments).