I recently realized that many of the notes that I have stored on my computer for myself might be of value to other people. In the interest of getting these notes off of my computer to keep them safe and to make them usable to others, it made sense to start a blog that contained them.
I took a new job at Cambridge Semantics recently. In my previous job at Cycorp I worked mostly in Emacs (the code base was in Lisp). Emacs is very extensible, easily modifiable, and (as the joke goes) is basically an operating system. Editing code is way more than just editing text, even editing LaTeX files requires things like syntax highlighting and the ability to compile the text you've been working on. Emacs is great for that, you can run shells inside Emacs (that's pretty awesome because then you have you're own keybindings and you can automate things in elisp instead of bash). But like I said, I've recently switched jobs and now do most of my work on cloud machines that don't have Emacs. Instead they have Vim.
I am the last person to start a holy war debate about the two, everyone should be able to use both. This means that I have to go back to what I learned in graduate school and use Vim. This is great! Vim has nnoremap and abbr functionality. It also feels much lighter. That's all great, but I got used to using Org Mode for my tasks. I begin each day at work with an org mode buffer that lists that tasks that I have overall and some with priorities. If you don't know about Org Mode, definitely look it up. It was one of the most wonderful improvements to my work life. I use my org mode buffer to create an agenda, and I keep a short description of the tasks that I've worked on for a day (I have org mode set up to print out a list of tasks per project and time for that project from the description. I'll write blog post on that next) This is what my screen looks like when I first get to work:
I took a new job at Cambridge Semantics recently. In my previous job at Cycorp I worked mostly in Emacs (the code base was in Lisp). Emacs is very extensible, easily modifiable, and (as the joke goes) is basically an operating system. Editing code is way more than just editing text, even editing LaTeX files requires things like syntax highlighting and the ability to compile the text you've been working on. Emacs is great for that, you can run shells inside Emacs (that's pretty awesome because then you have you're own keybindings and you can automate things in elisp instead of bash). But like I said, I've recently switched jobs and now do most of my work on cloud machines that don't have Emacs. Instead they have Vim.
I am the last person to start a holy war debate about the two, everyone should be able to use both. This means that I have to go back to what I learned in graduate school and use Vim. This is great! Vim has nnoremap and abbr functionality. It also feels much lighter. That's all great, but I got used to using Org Mode for my tasks. I begin each day at work with an org mode buffer that lists that tasks that I have overall and some with priorities. If you don't know about Org Mode, definitely look it up. It was one of the most wonderful improvements to my work life. I use my org mode buffer to create an agenda, and I keep a short description of the tasks that I've worked on for a day (I have org mode set up to print out a list of tasks per project and time for that project from the description. I'll write blog post on that next) This is what my screen looks like when I first get to work:
But... Org Mode is for Emacs. There are a couple of org mode implementations for Vim, but none of them really fit what I'm looking for. I want to have the same experience as I do in the above picture in Vim. I was never really good at Vimscript (and I know it will be useful if I am) so I decided to write my own implementation of org in vim that did exactly what I wanted it to do. It's still a long way off, but you can set up your todos and load an agenda page. Here's a screen shot of that:
There's a lot of work left to do on this. If you want to look at the code, it's on my github page: https://github.com/andrewppar under my vimconfig files.