Cornell Notes workflow/workaround

Spent a good day trying to recreate the Cornell Method setup but we all know how finnicky tables are in Obsidian. After ruminating on it a bit, I came to the conclusion that in digitial spaces, the Cornell Method layout isn’t nearly as important as the overarching structure: clearly delineated sections + spaced repetition that requires active recall.

Here is the workflow I’m using currently:

<%* let newChapterName = await tp.system.prompt(“What would you like to name the Cornell Note Chapter?”); -%>

<% newChapterName %>

Record/Review/Reflect

Main Notes

  • <% tp.file.cursor(1) %>

Summary

  • [[Incomplete Review]]

Here’s a breakdown of the reasoning behind. Each # corresponds to a line of text in the above code:

  1. This is templater code so that a pop up prompts you for the chapter name once the template is triggered.
  2. This header is auto-populated w/ whatever I typed in the prompt.
  3. This the header for the Review/Important section. In the traditional Cornell Method layout, this would be the margin on the far left. The header size is smaller to mirror the smaller width in the OG format. I keep this ‘collapsed’ 95% of the time so that it doesn’t take up space. The only time I utilize it is when I’m entering an important note or later on when I’m reviewing the document
  4. This is where I jot down key facts or ask myself questions Each thing I jot down gets a new checkbox. Then, when I revisit the doc for review, I can check the box for each successful review (or in my case each important fact I turn into a flashcard in Anki) and mark it as complete. What makes this special is that I can then do a global search in Obsidian to find any skipped reviews. This can be accomplished by searching for “” because marking something as ‘complete’ in markdown turns the text from “” to “”.
  5. This is where I jot down all of my detailed notes. General facts and also more in-depth explanations that answers questions & prompts in the ‘Record/Review/Reflect’ section
  6. Since you will almost always start note-taking w/ generally facts, the templater code places the cursor here as soon as a new chapter is created. The only time I collapse this section is when I’m doing my review.
  7. Header for the Summary section. This would be the bottom of the page in the traditional Cornell Notes layout
  8. I caught myself skipping out on the summary, so now, every created Cornell Notes chapter O create links to a note called “Incomplete Review”. After turning on the backlink/toggling it in the options, the ‘Incomplete Review’ page turns into a source document for every Cornell Note that is missing a summary :nerd_face: Once I complete a summary of the chapter, I delete the link to the page.

Feel free to share any feedback/suggestions or tips you have for your Cornell Method workflow/workaround.

6 Likes

Regarding the [[Incomplete Review]] tag, one thing I like to do when I have files linked to a specific note for some reason is use dataview to gather all the linked files and embed them into a note. If you might like to set up a dashboard or other means of identifying what notes in your vault need action, you might try it.

TABLE FROM [[Incomplete Review]]
1 Like

Hey, I also use Cornell Notes when I study. I just figured out a way to note down questions/key points/… on the side just like on paper using Obsidian. It requires one CSS snippet to work, and one more to adjust the readable line length so it’s customizable. Here is how it looks:

How to do it?

  1. Go to Settings → Appearances → CSS Snippets section → Open snippets folder. Create two files in that folder.
  2. Create a .css file with contents like below. I took this from eleanorkonik’s theme Palatinate. (Thank you!)
/*
you can name the class "aside" to whatever you want
*/
aside {
    float: right;
    border: 1px solid lightgrey;
    padding: 8px;
    position: relative;
    left: 170px;
    width: 155px;
    box-shadow: 5px 8px #8272d0;
    color: black;
} 
  1. Create another .css file with below contents. This adjust the readable line length space by changing the percentage. Must enable Readable Line Length in Obsidian settings.
.markdown-preview-view.is-readable-line-width .markdown-preview-sizer, 
.markdown-source-view.is-readable-line-width .CodeMirror {
    max-width:70%;
}
  1. Save everything, enable snippets, refresh, voila.

Customize fonts, position, appearances to your liking in the first .css file. Hope this helps.

How to use it in Obsidian.

  • Type <aside>your text here
  • Leave one space below so it displays properly, closing with </aside> messes up the Latex for some reasons.
  • Two side notes will get overlapped, so keep it to one per section.
  • I assign a macro to quickly insert the class.
4 Likes

This is wonderful.

Thank you for sharing.

Is there anyway to make it work in Live Preview?

Right now the asides only work if I manually switch display modes.

Thank you again

2 Likes

Sorry, I am not aware of any way to make it work in live preview.

@jeremynotes @ninhbui i’ve amendment to make it float properly in live preview. hope this benefit both of you (and possibly others)

/* i only add this part to make it work in LP */
	.markdown-source-view.mod-cm6 .cm-html-embed:has(aside) {
		display: inline;
	}
    /* this is the original css, unchanged */
	aside {
	    float: right;
	    border: 1px solid lightgrey;
	    padding: 8px;
	    position: relative;
	    left: 170px;
	    width: 155px;
	    box-shadow: 5px 8px #8272d0;
	    color: black;
	}

6 Likes

Thank you!
I was just searching for something like this :slight_smile:
And it is working perfect!

For those who are still scratching their heads and thinking “wtf? why isn’t this working?!” just like I was originally :rofl:

After changing the CSS file, go back to Obsidian and NOW you can use </aside> without “messing up the Latex” (not really sure what that means haha).

Example: <aside> Good morning Dave </aside>

1 Like

I (ChatGPT) tweaked it a little bit so it stays on the left side and adjusted the color to white so it’s easier to read. Oh and I combined both CSS snippets into a single file. I hope that won’t break anything. It seems to work fine for me though.

	aside {
	    float: left;
	    border: 1px solid lightgrey;
	    padding: 8px;
	    position: absolute;
	    right: 250px;
	    width: 155px;
	    box-shadow: 5px 8px #8272d0;
	    color: white;
	}

.markdown-source-view.mod-cm6 .cm-html-embed:has(aside) {
		display: inline;
	}

.markdown-preview-view.is-readable-line-width .markdown-preview-sizer, 
.markdown-source-view.is-readable-line-width .CodeMirror {
    max-width:70%;
}


1 Like

Idk if anyone wants this, but why not just use canvas for a simple, bare-bones Cornell method?

Quick and easy to set up. If you run out of space, just scroll.

6 Likes

cause there’s no practice in that

Oh I see.

In that case edit the left “Main Notes” section and collapse everything under the heading. Bam. Practice to your hearts content.

although, for this sort of self testing, I prefer to write my notes as indented bullets underneath the question. That way you can collapse and expand the answer as needed.

Actually, you could even use collapsed Callouts.

> [!Question]- Question 
> Answer text.

Doing that will ensure that the answer is always collapsed under the question. If you use a plugin like text snippets then you can speed up the process.

1 Like

I just found out that you gotta close the <aside> by having </aside> at the end of the text. Then it will display properly in live preview :D.

I’m just a css noob who procrastinates.