サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
掃除・片付け
buzztaiki.hatenablog.com
先日突然会社で使ってる Jenkins が起動しなくなってしまいました。さすがにもう二度とそんな思いはしたくないので、バックアップを取ることにしました。 Backup Plugin - Jenkins - Jenkins Wiki を使ってもいいんですが、git 使えば差分バックアップになるし、好きな時点に戻せて素敵なんじゃないかと思って git を使ってバックアップを取ることにしてみました。 この記事はその時のメモみたいなものです。 リポジトリの作成 まずは git のリポジトリを作ります。せっかくなのでスクリプトコンソールを使ってみます。スクリプトコンソールを開いて、以下を実行します。 dir = System.properties["JENKINS_HOME"] def git = { Object[] cmd -> println new ProcessBuilder(["git"
この記事は Emacs Advent Calendar jp: 2011 : ATND の9日目です。遅くなってごめんなさい! 去年にひき続いて標準で少しEmacsを便利にする小技を。 Emacsを使ってて普段使ってるmodeにちょっとだけ色を足したいとか思うことはないですか?そんなときは font-lock-add-keywords を使えば好きな色を足すことができちゃいます。 使い方は簡単。例えばこんな風にすると (font-lock-add-keywords 'c-mode '(("!" . font-lock-warning-face))) c-modeで「!」が赤くなります。数字にも色を付けて、hogeをキーワードの色にしたければこんな風に。 (font-lock-add-keywords 'c-mode '(("!" . font-lock-warning-face) ("ho
anything便利ですよね。でもマッチさせるパターンが正規表現って使いにくくないですか?僕は使ってたたまにイラっとします。".java"っていれたら"/java"がひっかかるとか。 この手のツールでマッチさせるときはやっぱり正規表現じゃなくてglobの方が便利だと思うんですよ。というわけでglobに対応させるamp-glob.elを書いてみました。要 anytyhing-match-plugin です。 導入は簡単。まずは「M-x auto-install-from-gist 792217」で amp-glob.el をインストールします。そしたら以下を .emacs.el に書いておきます。 (require 'amp-glob) (amp-glob-mode 1) あとは普通に anything を使うだけです。特に何も考えなくても、大体思ったとおりにマッチさせられるんじゃないかと思
Emacs Advent Calendar jp: 2010 : ATND 19日目です。昨日は [twitter:@r_takaishi] さんの org-modeとAnythingが交差するとき,物語は始まる - うどん駆動開発 でした。 Web漁ったり会社で Emacs 使ってる人に聞いたりしてると、みんな generic.el の事を知らないらしいので、ちょっと紹介してみようかと思います。 generic.el はハイライト程度の簡単なメジャーモードをお手軽に作るためのライブラリです。Emacs20くらいの昔から標準添付です。「このファイル用のモードってEmacsに無いなぁ」なんて時に使ったりします。 たとえば 例えばこんなシンタックスのファイルがあるとします "#" ではじまるのはコメント "/*", "*/" でかこまれてるのはコメント hoge, fuga, piyo はキー
はまったのでメモ mechanize を入れようとしたら hpricot をインストールするとこでビルドできないっていうエラーがでた。 windowsのrubyでhpricotのインストールエラー - (゚∀゚)o彡 sasata299's blogの方法でもいいんだけど、もうちょっと調査してみた。 なんでエラーになるかっていうと、gem って拡張ライブラリ付きのパッケージの場合、普通その拡張ライブラリをビルドしようとするからみたい。で、windows の場合、拡張ライブラリのバイナリ付きの gem だったら素直に入るんだけど、そうじゃない場合はビルドしようとしてエラーになる。 そこで、どんな gem が用意されてるかを調べてみる。gem コマンドで platform 付きで検索する事はできないから(できる方法ってある?)、http://gems.rubyforge.org/gems/ か
ふとmulti-modeが使いたくなったけど、mmm-modeがEmacs23で動かなかったからメモ。依存してるものが多すぎてnxhtmlをフルで入れるのは気が引ける。。 nxhtmlはhttp://ourcomments.org/cgi-bin/emacsw32-dl-latest.plの「Download latest nXhtml (zip file) 」から手に入れる nxhtmlに入ってるもののうち、以下があればとりあえず動く。 util/appmenu.el util/mlinks.el util/mumamo-aspnet.el util/mumamo-fun.el util/mumamo-regions.el util/mumamo-trace.el util/mumamo.el util/ourcomments-util.el
ものすごい久しぶりにひとりごとをしゃべってみる。 gmailをwanderlustから見るときに、ssl.elだとwindowsだと証明書がないからか、うまくつながらない。 ちょっと前に wl-en ML で Vitaly Mayatskikh さんがこんな方法を書いてた。 (setq ssl-program-name "gnutls-cli") (setq ssl-program-arguments '("-p" service host))けど、標準のtls.elを使ったこんな方法もある。これだとssl.elなしでも使える。Emacs23で確認。多分22でも大丈夫。 (require 'tls) (set-alist 'elmo-network-stream-type-alist "!" '(ssl ssl open-tls-stream))
インストールは以下で。 M-x install-elisp-from-emacswiki trans-regions.el 使い方は簡単。M-x trans-regions ってするだけ。そのあとは以下のように操作する。 すでに region を選んでるときは二つめの region を選択する 選んでないときは、最初の region を選択して、次に二つめの region を選択する。 どちらも region を選択したらモードラインに書かれてる通り decide すれば region を決定する。二つの region が決定したら入れかえてくれる。 ごちゃごちゃ書いたけど、使ってみた方が速いと思うんで、興味のある人は試してみて下さいです。 EmacsWiki に swap-region と anchored-transpose っていう region 入れかえ用の elisp が既にある
超コネタ。あとで報告しとく。 --- org-table.el.orig 2009-10-28 00:30:10.000000000 +0900 +++ org-table.el 2010-02-01 22:44:15.384200000 +0900 @@ -818,7 +818,7 @@ (progn (setq s (match-string 1) o (match-string 0) - l (max 1 (- (match-end 0) (match-beginning 0) 3)) + l (max 1 (- (string-width o) 3)) e (not (= (match-beginning 2) (match-end 2)))) (setq f (format (if num " %%%ds %s" " %%-%ds %s") l (if e "|" (setq o
欲しくなったから書いてみた。 必要なもの bbdb(http://bbdb.sourceforge.net/) 最新のauto-complete(http://github.com/m2ym/auto-complete) WanderlustとかのEmacsで動くMUA 使い方 設定のとこに書いてるようにどこかに書いておく。 EmacsのMUAでメール書いてるときにTo:とかのとこで何かいれる。 こんな風になる。 設定 MUAにあわせてbbdbを使えるようにしとく。 MUAにあわせてac-bbdbを設定しとく。wlならこんな感じ。 (defun wl-draft-turn-on-ac () (setq ac-sources '(ac-source-bbdb)) (auto-complete-mode 1)) (add-hook 'wl-draft-mode-hook 'wl-draft-t
ものは以下からどうぞ。 http://github.com/buzztaiki/auto-complete/blob/master/ac-company.el install-elisp なら以下で。 M-x install-elisp http://github.com/buzztaiki/auto-complete/raw/master/ac-company.el 必要なもの 最新版のauto-complete company(http://nschum.de/src/emacs/company-mode/) 使い方 使い方は簡単。 (ac-company-define-source NAME BACKEND) で company-backend を使う source を定義する。 ac-sources に定義した source を追加する。 例えば company-elisp を使っ
http://www.emacswiki.org/emacs/anything-yaetags.el 前に anything-etags で tag だけ探せるようにしてみた - 適当めも で書いたやつを整理して EmacsWiki に置いた。 anything-etags.el と違うとこ 最初にタグだけ選んでから、同じタグを持ってる行を選ぶ gtags 的なインターフェイス。 タグ一覧をバッファにキャッシュしてるから速い(K1Low さんに送ったパッチの分が Thierry Volpiatto さんの修正で revert されちゃったぽい?)。 前に作った anything-tags.el と違うとこ タグ一覧を作るのが速くなった(倍くらい)。 TAGS ファイルが更新されたらタグ一覧も更新されるようになった。
elisp だけで取れるか試してみた。elisp で書かれた google client としては以下のものがあるみたい g-client http://www.emacswiki.org/emacs/GoogleClient 色々付いてる。接続には curl を使ってるっぽい googleaccount.el http://www.emacswiki.org/cgi-bin/emacs/googleaccount.el 認証だけ。url.el 使ってる 本当は g-client 使った方が楽そうなんだけど、elisp だけの実装ということで、今回は googleaccount.el を使ってみる。 googleaccount.el へのパッチ Emacs23 で googleaccount.el を使うと parse のとこがうまく動かなかったからまずはパッチを当てる。作者さんには報告済
http://www.emacswiki.org/emacs/highlight-cl.el Emacs Lispのコーディング規約をちゃんと守っておきたい人向け。subr とかで定義されてる dolist とかは別の色にしてくれる親切設計。つか昔2chで見た気がしなくもない。 cl をロードする前にキーワードを集める事で cl だけかそうじゃないかを区別してるから、batch-byte-compile でバイトコンパイルしてから使ってくださいませ。 これ作って、初めて eval-and-compile の使い道がなんとなくわかった。少なくとも、マクロAが関数Bに依存していて、マクロAが同じ elisp 内で使われる場合は eval-and-compile か eval-when-compile の中に関数Bを定義しておかなきゃいけないみたい。マクロはバイトコンパイル中でも展開する為に「評
元々の anything-etags だと、tag だけじゃなくって、その行全体でマッチさせちゃってたから、tag だけマッチさせるようにしてみた。 anything-tags.el 一応 tag を探したりする部分は、なるべく etags.el の関数を呼ぶように作ってある。色々やってたら anything-etags の機能のうち使ってるのが anything-etags-get-tag-file だけになっちゃった。ごめんね id:k1LoW さん。 んで、全然 anything-etags の機能を使ってないだけに、取り込んでもらうようにお願いするか、別ものにしちゃうか悩み中。。。 インターフェイスは anything-gtags みたいな感じ。まず tag 名で探して、同じ tag が複数あったらそのうちどれなのって聞いてくる。複数のうちのどれなのって部分はファイル名と tag
為の覚え書き。 windows の場合 putty の plink を使うんだけど、pagent と一緒に使わないと何か入力しなきゃいけないときに、なんにも表示されなくなって途方にくれる時がある。例えば known_hosts に host が追加されてないとき passphrase を入力するとき とか。 で、これを解決するには TortoisePlink を使えばいい。こいつは、TortoiseSVN か TortoiseHG に一緒に入ってて、ユーザに何か聞いたりするときはダイアログを出してくれる。オプションは plink と一緒。 使い方は plink の代わりにこれにすればいいだけだから、 hg -e /path/to/TortoisePlink ...とか、hgrc に [ui] ssh = /path/to/TortoisePlinkって書けばいい。 実は TortoiseH
descbinds-anything.el って言うのを作ってみた。ものは以下からどぞ。 EmacsWiki: descbinds-anything.el 使い方は .emacs に以下を書いとけばおけ。 (require 'descbinds-anything) (descbinds-anything-install) で、これが何をやるか。describe-bindings を anything interface に置きかえる。一覧出して、anything で選んで、Enter でそのコマンドを実行。TAB 押すと以下から選ぶメニューが出てくる。 Execute Describe Function Find Function C-x C-h とかで出てくる C-x から始まるキーの一覧も anything で選べるようになる。 想定してる使い方は、あんまり使わないモードで C-c の
会社の方にうまく書けないからこっちに。 まっちゃんがテキスト入力中に補完候補を自動的に表示してくれる auto-complete.el をリリースしました — ありえるえりあなんてものを作ったわけですよ。こいつはインテリセンス的なメニューを出してくれるライブラリで、これを使うとそんなのが結構簡単に作れる。すごい楽しい。 標準だと適当に単語を拾ってくれるんだけど、以下の変数に関数を設定すると好きなように候補を選ぶ事ができる。 ac-find-target-function: 補完対象の文字列の開始位置 ac-enum-candidates-function: 補完候補を作る というわけで、いくつか補完用の関数を作ってみた。 elisp のシンボルを補完(適当版) こんな感じでおk。 (defun ac-lisp-enum-candidates (target) (loop for x in
ghostview に付いてくる gsprint を使って印刷する設定を書いてみる。 gs, gsview は http://www.nsknet.or.jp/~tony/TeX/install/win/gs.htm あたりを参考にして取ってくる。 でもヘッダに日本語を使えない・・・。 ちなみに、Emacs22以降(?)を使ってるなら http://www.emacswiki.org/cgi-bin/emacs-jp/PrintingPackage を使ったほうがいいかも。 基本設定 まずは ps-print を使う為の基本設定 ;; 日本語を使う (setq ps-multibyte-buffer 'non-latin-printer) gsprint で印刷する設定 gsprint を使うにはこれを設定しておく (setq ps-lpr-command "c:/Program File
gnudoit で一時ファイルを編集する - 適当めものやりなおし。 Emacs22 付属の emacsclient が良さそうだったから gnuclient はやめて emacsclient にした。 やれる事は: ファイルを開く coding-system を server-edit-file-coding-system-alist で指定できる。 elscreen がある場合、同時に新しい screen を開く C-cC-c でファイルを保存と同時に kill-buffer 変更がなくてもファイルの日付だけは更新 touch してる事が前提の場合にうれしいはず elscreen がある場合、同時にその screen を閉じる C-cC-k で変更を破棄 ただし、一度保存しちゃった場合はその状態になる。 server-visit-files を載っとって無理矢理 coding-syst
emacs22からses-modeっていうスプレッドシートが追加された。便利そうなんだけど実は全然使ってないw 使わない理由はセルがはっきり判らないからな気がしたから色を付けてみた。 ついでに行番号も表示するとスプレッドシートっぽくていい感じ。行番号を表示するのには、http://stud4.tuwien.ac.at/~e0225855/linum/linum.htmlを使ってる。 これで使うようになるかも…しれない。もし使うようになったらまた記事書きます。 before after ソース (defface ses-cell '((t (:underline "gray70"))) "A face of cell." :group 'ses) (defun ses-highlight-region (start end) (setq start (or (previous-single-
いつのまにか Gmail で IMAP が使えるようになってたから使ってみた。 設定を載せるか…と思ったら先にEmacsでGmail IMAPを触る - stanaka's blogという記事があったから設定はそこを見て下さいませ。 はまった箇所 認証方法を clear にする必要がある stanaka さんの記事にもあるけどデフォルトのままの login だと認証が通らない。 (setq elmo-imap4-default-authenticate-type ’clear) とするか、フォルダを作るときに %:uername/clear@imap.gmail.com:993! のように clear を明示しないといけない 日本語のフォルダが化ける そのままだと日本語のフォルダが化けてた。 (setq elmo-imap4-use-modified-utf7 t) ってしてあげれば大丈夫
なんとなくimenuをツリー表示できるのを作ってみた…けど…微妙。 便利になりそうなアイディア募集中。 使い方 M-x imenu-tree でツリーを表示。 関数名とかを選んでRETでその要素の場所にジャンプ。 ソース (require 'tree-widget) (defvar imenu-tree-mode-map nil) (unless imenu-tree-mode-map (let ((map (copy-keymap widget-keymap))) (define-key map (kbd "n") 'widget-forward) (define-key map (kbd "p") 'widget-backward) (define-key map (kbd "q") 'imenu-tree-quit) (setq imenu-tree-mode-map map)))
SKKで丸数字(①とか)を入力する方法2種類書いてみる。 それぞれ以下のような利点と欠点がある 方法 利点 欠点 skk-num-type-alist を使う方法 20まで入力可能。普通の文章に混ぜやすい。 単体での入力が少し面倒。 skk-rom-kana-rule-list を使う方法 単体での入力が簡単。 10までしか入力できない。普通の文章に混ぜるのが少し面倒。 どちらの方法もSKKIMEで似たような方法が使える。 skk-num-type-alist を使う方法 以下の設定を.emacsに入れて、数字の入力箇所で#6で登録する。後は普通に入力するだけ。 (defun skk-num-maru-suji (num) (let ((s "①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳") (n (string-to-number num))) (when (and (>= n 1) (<=
Vimで括弧/クォートを自動補完 - spiritlooseのはてなダイアリーをみてEmacs用を作ってみる。 それなりに真面目に作ってみたつもり。 各モードごとに動作を変えたい場合は buffer-local な変数にすれば多分いける。 acp.el とでもして保存して使ってくださいませ。 (defvar acp-paren-alist '((?{ . ?}) (?[ . ?]) (?( . ?)) (?\" . ?\") (?\' . ?\')) "*括弧の対の alist。") (defvar acp-insertion-functions '((mark-active . acp-surround-with-paren) (t . acp-insert-paren)) "*括弧を挿入するときの関数一覧。 各要素は以下: \(CONDITION . FUNCTION) CONDITI
このページを最初にブックマークしてみませんか?
『buzztaiki.hatenablog.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く