Skip to content

Instantly share code, notes, and snippets.

@kawaguchi
kawaguchi / mail_patch.rb
Created March 27, 2012 02:33 — forked from dakatsuka/mail_patch.rb
ドットが連続したメールアドレスに対処するパッチ(Mail::Message.from)
# coding: utf-8
module Mail
class Message
def from_with_patch_rfc_violation
str = from_without_patch_rfc_violation
begin
str = str.join
rescue
(define-key emacs-lisp-mode-map (kbd "C-c k")
(lambda ()
(interactive)
(insert (format "(kbd \"%s\")"
(key-description (read-key-sequence ""))))))
@kawaguchi
kawaguchi / flymake-growl.el
Created December 25, 2010 15:45
FlymakeのエラーメッセージをGrowlで通知する
(require 'flymake)
(setq flymake-growl-warning-priority 1)
(setq flymake-growl-error-priority 2)
(setq flymake-growl-warning-sticky t)
(setq flymake-growl-error-sticky t)
(setq flymake-growl-sticky-list nil)
@kawaguchi
kawaguchi / arity-example.el
Created October 5, 2010 12:36
引数の数を調べる
(arity (symbol-function 'identity)) ;=> (1 . 1)
(arity (symbol-function '+)) ;=> (0 . many)
(arity (symbol-function 'substring)) ;=> (2 . 3)
(defun foo (a b c &optional d e f))
(arity (symbol-function 'foo)) ;=> (3 . 6)
(defun bar (a b c &rest rest))
(arity (symbol-function 'bar)) ;=> (3 . many)
@kawaguchi
kawaguchi / overlay-test.el
Created October 4, 2010 10:20
オーバーレイのバグ?
1234567890
(defun overlay-test (begin end text color)
(let ((o (make-overlay begin end)))
(overlay-put o 'window
(selected-window))
(overlay-put o 'face
`(background-color . ,color))
(overlay-put o 'display text)
o))
(global-hl-line-mode t)
(set-face-background 'hl-line "black")
@kawaguchi
kawaguchi / ddskk.rb
Last active September 5, 2015 15:55
Emacsでddskkを使うためのhomebrew formula
require 'formula'
class Ddskk < Formula
homepage 'http://openlab.ring.gr.jp/skk/'
url 'http://openlab.ring.gr.jp/skk/maintrunk/ddskk-15.1.tar.gz'
sha1 'df4e7305c94cb8966e843dff9a0c9f1fabdcb082'
depends_on 'emacs'
def install
@kawaguchi
kawaguchi / detect-free-key-bindings.el
Created August 6, 2010 01:59
空いているキーバインドを探す
(defun detect-free-key-bindings ()
(let ((prefix-list '("C-" "C-x " "C-c " "C-x C-"
"C-c C-" "M-" "C-M-" "C-x M-"
"C-c M-" "C-x C-M-" "C-c C-M-"))
(char-list
(string-to-char-list
(concat "asdfjkl;"
"qwertyuiop[]\\zxcvbnm,./"
"ASDFGHJKL:\""
"`1234567890-="
@kawaguchi
kawaguchi / gauche.rb
Created August 2, 2010 08:59
Gauche homebrew formula
require 'formula'
class Gauche <Formula
url 'http://prdownloads.sourceforge.net/gauche/Gauche-0.9.tgz'
homepage 'http://practical-scheme.net/gauche/'
md5 '1ab7e09da8436950989efd55b5dc270a'
def install
system "./configure", "--disable-debug", "--disable-dependency-tracking", "--prefix=#{prefix}"
system "make"
module ControllerMacros
def current_user
@current_user ||= current_session && current_session.record
end
def current_session
@current_session ||= UserSession.find
end
def login_as(user)