MasterHowToLearn

MasterHowToLearn

Don't Reuse Layout's Name to Prevent SuperMemo from Modifying Its Layout Randomly

2021-04-17 2021-04-17 2021-04-18

TL;DR:

To prevent SuperMemo from changing its layout when bringing up the Knowledge Tree or when hitting Esc, tile your SuperMemo’s window to your desired position, then: Click Window -> Layout -> “Save as default” -> GIVE IT A NEW NAME -> click “OK”:

layout

Introduction

unrulySuperMemo

This gif speaks it all. At first I clicked “Apply default layout” to force SuperMemo to its correct layout. Then I pressed alt+c to bring up the Knowledge Tree and gasp--- the position and layout changed. In disbelief I repeated the same sequence and got the same result.

This issue had been bugging me for years. It happened randomly. Usually it annoyed me little by little, till I hit the pain point today where I couldn’t take this anymore, so I decided to look into this. Partly this is brought about by learning about tiling window managers like i3 and dwm. Beautiful and elegant. They have opened my eyes to what’s possible with such tools. wow very efficiency, much happiness (insert doge meme here). Then there is Windows and with SuperMemo I can’t even control its layout and location.

By pure luck, I found that if you reused the previous layout’s name when setting a new layout, you get the above gif situation. It was my bad that I was lazy and didn’t change the layout’s name when setting a new one, causing this issue. I thought it’d simply override the previous layout. I thought wrong. If you couldn’t come up with a good layout’s name like I do, simply pound your head against the keyboard to give it a unique string. Remember this: whatever you do, do not re-use the same layout’s name.

Conclusion

Is this a rant? no not really because this is a tip on how to properly set up the layout yes, but don’t get me wrong I’d still give you half my soul in exchange for SuperMemo.