There're a lot of combinations to manage your email with emacs, but this works for me. I've a backup and I can manage my daily email.
The stack:
- emacs
- offlineimap
- mu
- mu4e
| FROM centos | |
| RUN yum install -y passwd | |
| RUN yum install -y openssh | |
| RUN yum install -y openssh-server | |
| RUN yum install -y openssh-clients | |
| RUN yum install -y sudo | |
| ## Install Chef Omnibus | |
| # RUN curl -L http://www.opscode.com/chef/install.sh | bash |
| # Terminal output control (http://www.termsys.demon.co.uk/vtansi.htm) | |
| TC='\e[' | |
| CLR_LINE_START="${TC}1K" | |
| CLR_LINE_END="${TC}K" | |
| CLR_LINE="${TC}2K" | |
| # Hope no terminal is greater than 1k columns | |
| RESET_LINE="${CLR_LINE}${TC}1000D" |
| " replace 'function' with λ | |
| au BufNewFile,BufRead *.js syntax keyword javasScriptFunction function conceal cchar=λ | |
| au BufNewFile,BufRead *.js hi! link javasScriptFunction Conceal | |
| au BufNewFile,BufRead *.js setlocal conceallevel=2 | |
| " add abbreviations for JS | |
| " f_ | |
| " expands to | |
| " function() { | |
| " <cursor> | |
| " |
Until last night I lived in fear of tildes, carats, resets and reverts in Git. I cargo culted, I destroyed, I laid waste the tidy indicies, branches and trees Git so diligently tried to maintain. Then Zach Holman gave a talk at Paperless Post. It was about Git secrets. He didn't directly cover these topics but he gave an example that made me realize it was time to learn.
Generally, when I push out bad code, I panic, hit git reset --hard HEAD^, push and clean up the pieces later. I don't even really know what most of that means. Notational Velocity seems to be fond of it ... in that I just keep copying it from Notational Velocity and pasting it. Turns out, this is dumb. I've irreversibly lost the faulty changes I made. I'll probably even make the same mistakes again. It's like torching your house to get rid of some mice.
Enter Holman. He suggests a better default undo. git reset --soft HEAD^. Says it stag
| package testsupport; | |
| import org.concordion.api.ResultSummary; | |
| import org.concordion.internal.FixtureRunner; | |
| import org.junit.runner.Description; | |
| import org.junit.runners.model.FrameworkMethod; | |
| import org.junit.runners.model.InitializationError; | |
| import org.junit.runners.model.Statement; | |
| import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; |
Created from the plain text reference card on orgmode.org Download this file, and open it in Emacs org-mode!
Answer by Jim Dennis on Stack Overflow question http://stackoverflow.com/questions/1218390/what-is-your-most-productive-shortcut-with-vim/1220118#1220118
Your problem with Vim is that you don't grok vi.
You mention cutting with yy and complain that you almost never want to cut whole lines. In fact programmers, editing source code, very often want to work on whole lines, ranges of lines and blocks of code. However, yy is only one of many way to yank text into the anonymous copy buffer (or "register" as it's called in vi).
The "Zen" of vi is that you're speaking a language. The initial y is a verb. The statement yy is a simple statement which is, essentially, an abbreviation for 0 y$:
0 go to the beginning of this line. y yank from here (up to where?)
| #!/bin/sh | |
| # | |
| # a simple way to parse shell script arguments | |
| # | |
| # please edit and use to your hearts content | |
| # | |
| ENVIRONMENT="dev" |
Version 3, 29 June 2007
Copyright © 2007 Free Software Foundation, Inc. <http://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.