Comments? sacha@sachachua.com
- Emacs learning curve?
- Mix of Emacs geeks skewed towards people who’ve been using this for a while (after all, takes a certain commitment to come all the way to an Emacs conference!)
Comments? sacha@sachachua.com
// createshortcut.js -- ++pentadactyl | |
// @Author: eric.zou (frederick.zou@gmail.com) | |
// @License: GPL (see http://www.gnu.org/licenses/gpl.txt) | |
// @Created: Tue 29 Nov 2011 01:24:05 PM CST | |
// @Last Change: Tue 29 Nov 2011 02:23:36 PM CST | |
// @Revision: 41 | |
// @Description: | |
// @Usage: | |
// @TODO: | |
// @CHANGES: |
;;; Fira code | |
;; This works when using emacs --daemon + emacsclient | |
(add-hook 'after-make-frame-functions (lambda (frame) (set-fontset-font t '(#Xe100 . #Xe16f) "Fira Code Symbol"))) | |
;; This works when using emacs without server/client | |
(set-fontset-font t '(#Xe100 . #Xe16f) "Fira Code Symbol") | |
;; I haven't found one statement that makes both of the above situations work, so I use both for now | |
(defconst fira-code-font-lock-keywords-alist | |
(mapcar (lambda (regex-char-pair) |
*.enex |
(defun my-filter-current-buffer (program &rest args) | |
(let* ((stdout-buffer (generate-new-buffer " stdout")) | |
(ret (apply 'call-process-region (point-min) (point-max) program | |
nil (list stdout-buffer) nil args))) | |
(when (zerop ret) | |
(let ((output (with-current-buffer stdout-buffer | |
(buffer-string)))) | |
(erase-buffer) | |
(insert output))) | |
(kill-buffer stdout-buffer))) |
#!/usr/bin/perl | |
# | |
# Brad's el-ghetto do-our-storage-stacks-lie?-script | |
# | |
sub usage { | |
die <<'END'; | |
Usage: diskchecker.pl -s <server[:port]> verify <file> | |
diskchecker.pl -s <server[:port]> create <file> <size_in_MB> | |
diskchecker.pl -l [port] |
This post also appears on lisper.in.
Reader macros are perhaps not as famous as ordinary macros. While macros are a great way to create your own DSL, reader macros provide even greater flexibility by allowing you to create entirely new syntax on top of Lisp.
Paul Graham explains them very well in [On Lisp][] (Chapter 17, Read-Macros):
The three big moments in a Lisp expression's life are read-time, compile-time, and runtime. Functions are in control at runtime. Macros give us a chance to perform transformations on programs at compile-time. ...read-macros... do their work at read-time.