Skip to content
Switch branches/tags
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

pim layer

Table of Contents


This layer is for personal information management (pim) and sets up the following:

  • notmuch (Email)
  • org (Notes / Workflow)
  • org-octopress (Blog)
  • org-journal (Journal)


1. Download layer

Add this repository to your spacemacs private folder as a submodule under the folder pim:

git submodule -b master add ~/.emacs.d/private/pim

2. IMPORTANT Customize / Configure

Edit =config.el= with your details.

3. Load layer

To use this configuration layer, add it to your ~/.spacemacs. You will need to add pim to the existing dotspacemacs-configuration-layers list in this file.



This layer provides configuration for emacs to view / compose emails using notmuch-emacs. Sending, receiving and organising of these emails are done independently. Setting up in this manner provides fantastic speed, flexibility, and robustness.

For an example setup of email back end end see


Org mode journaling is configured in org-pim and utilizes org-journal. Spacemacs like bindings are based off borgnix’s layer.

Prettier defaults (in my opinion) are configured in =config.el=.

You have no excuse, WRITE!

Global Bindings

Key BindingDescription
SPC a j jnew journal entry
SPC a j ssearch all journal for a string

Major Mode Bindings

Key BindingDescription
SPC m j jnew journal entry
SPC m j nnext journal file-
SPC m j pprevious journal file
SPC m j ssearch the current journal file

Calendar Mode Bindings

Key BindingDescription
J jnew journal entry
J vview an entry in a new buffer
J Vview an entry but do not switch to it
J ngo to next day with journal entries
J pgo to previous day with journal entries
J Ssearch in all entries of all time
J wsearch in all entries of the current week
J msearch in all entries of the current month
J ysearch in all entries of the current year


Going from an org file to a blog post is made easy with org-octopress using jekyll to generate the blog.

How do I even?

If you don’t already have a blog, the easiest way to get started is with Github Pages as it automatically compiles your page with jekyll. There are plenty of tutorials on how to do this, the easiest way could even be looking at other peoples <username> repositories. This repository will be your org-octopress-directory-top variable defined in =config.el=.

Keep in mind, jekyll is very flexible. If you’re looking at other peoples repositories, or following tutorials they might not be using org files to generate _post files. Once you’re at this point, see the org-octopress documentation or this for an example.


Spacemacs Personal Information Management (PIM) Layer: Email, Notes, Blogging, Workflow




No releases published


No packages published