タグ

ブックマーク / rubikitch.hatenadiary.org (13)

  • 集中力5倍!小よく大を制するミニマリストEmacs - http://rubikitch.com/に移転しました

    この記事は Emacs Advent Calendar jp: 2011 の11日目です. 昨日はta2_o2p さん、明日は id:handlename さんです。 去年、一昨年とインストーラ系を連続して紹介してきましたが、 今年はうってかわって身近な例を取り上げたいと思います。 僕は最近、Windows XPのネットブックを 使っていることが多いです。 あれだけ忌み嫌っていたWindowsの方が自宅の Linuxマシンよりも稼働率が高いのです。 数年前の自分が聞いたらびっくりしてることでしょう。 この前はネットブックにEmacsをインストール する話をしましたが、今回は小さい画面で Emacsを使うノウハウをお送りします。 最近はパソコンといえばノートパソコンが普通の ようなので、これからする話は役立つと思います。 とにかく、小さいパソコンでEmacsを使う場合、 最大の問題点となるの

    集中力5倍!小よく大を制するミニマリストEmacs - http://rubikitch.com/に移転しました
    syohex
    syohex 2011/12/11
    cycle-bufferは良さげだ。
  • savekill.elリリース - Emacsの突然死に備えて - http://rubikitch.com/に移転しました

    savekill.elをリリースしました。 動機 最近、なぜかよくわかりませんが、Emacsが突然死することありますよね? あまり使いこんでない人はあまり経験がないかもしれませんが、ヘビーユーザーにとっては日常茶飯事です。 不安定すぎて落ちまくるほどではないですが、僕のところでは数日に1回のペースで落ちてしまいます。 Emacs以外を使っていると、ソフトウェアの突然死の恐怖はよくわかると思います。 「保存してなくて、今までの作業がパーになった!」 誰もが一度はそんな経験があるでしょう。 もちろん、そこは我等がEmacs、ちゃんと防衛線は張っています。 Emacsには自動セーブ機能があり、一定時間以上保存していないと、一時ファイルに保存する仕組みになっています。 そのため、Emacsが落ちたとしても、当該ファイルに対し M-x recover-file を実行すれば、ほとんどの作業を取り戻す

    savekill.elリリース - Emacsの突然死に備えて - http://rubikitch.com/に移転しました
    syohex
    syohex 2011/02/27
  • 続・Emacsで連番を挿入する方法 - http://rubikitch.com/に移転しました

    久々のEmacsネタ。 歴史は繰り返すものです。 今はブラウザでなんでもできてしまう時代、かつてのEmacsを彷彿とさせます。 だが、ブラウザがEmacsに決定的に劣っているのは、『速さが足りない』ことだと思ってます。 フレーム、フラッシュなどマウス前提のIFなので、素早い動作が難しいです。 対して、Emacsはテキスト入力のスペシャリスト。 テキスト入力が関わる場面があれば、そこに必ずEmacsの活躍があります。 dabbrev、yasnippetなど、入力に不可欠なツールが無数に存在するからです。 さてさて… 2年前に書いた記事 では、外部コマンドやloopを使ってEmacsで連番を入力する方法を紹介しました。 しかし、めんどいですね。 なので、Emacs Lispで書きました。 M-x duplicate-this-line-forward 直前の行をコピーする直前の行と同じ行を作成

    続・Emacsで連番を挿入する方法 - http://rubikitch.com/に移転しました
    syohex
    syohex 2011/02/21
    連番挿入処理. elispの書き方も参考にする
  • yasnippet.elを256倍にパワーアップ!連続展開と条件分岐テンプレートを使おう - http://rubikitch.com/に移転しました

    動機yasnippetの展開機能はなかなか強力ですが、「次の」テンプレート展開の準備や条件分岐ができない弱点があります。 連続展開の例は、プログラミングにおけるドメイン特化言語を記述する場合です。 この場合は、パターンが決まっているので、次のテンプレート展開の準備をするテンプレートを記述すればすんなり記述できるのです。 そして、テンプレート展開後に、次のテンプレートを展開していきます。 条件分岐テンプレートの例は、新規ファイル作成時に文章のテンプレートを選んで展開するケースです。 僕のブログの場合、「自作Emacs Lispリリーステンプレート」、「Emacs Lispを使ってみたテンプレート」、「EmacsのTipsテンプレート」などがあります。 記憶力のいい人ならば、テンプレート名を覚えて普通に展開すると思います。 僕の場合はテンプレート名はおろか、テンプレートを作ったこと自体忘れてし

    yasnippet.elを256倍にパワーアップ!連続展開と条件分岐テンプレートを使おう - http://rubikitch.com/に移転しました
  • anything-find-fileの代わりにanything-filelist+を使おう - http://rubikitch.com/に移転しました

    anything-find-fileはデフォルトで無効にこの度、 anything-find-file をobsoleteにしました。 anything-read-string-modeを有効にしても、デフォルトではanything-find-fileは使われなくなります。 anything-startup.el経由でanything.elを使っていると、anything-read-string-modeが有効になります。 anything-read-string-modeは、バッファやファイルや補完をanythingインターフェースにするマイナーモードです。 補完入力関連のコマンドがanythingインターフェースに置き換えられます。 これからは、ファイル名入力は通常のEmacsのインターフェースに戻ります。 anything-find-file は、C-x C-f (find-file

    anything-find-fileの代わりにanything-filelist+を使おう - http://rubikitch.com/に移転しました
  • Emacs Lispのソースコードデバッガ edebug を使う - http://rubikitch.com/に移転しました

    edebugとはソースコードデバッガedebugとは、Emacs Lispのソースコードデバッガです。 これを使うと、Emacs Lispがどのように実行されているのかをステップバイステップで見ることができます。 前の記事で紹介した trace-function では不十分な場合は、edebugで格的にデバッグします。 edebugは状態がころころ変化するので、実際に手を動かしてみましょう。 edebugを有効・無効にするC-u C-M-xで関数をedebug対象にするedebugは基的には関数単位でedebug対象にします。 特定の関数をedebug対象にするのは簡単です。 通常、関数フォームを評価する、すなわち関数を定義するには、defun中あるいは、defunの直後でC-M-xを使います。 それに対し、関数フォームをedebug対象にするには数引数をつけ、C-u C-M-xを使い

    Emacs Lispのソースコードデバッガ edebug を使う - http://rubikitch.com/に移転しました
  • デバッグの第一歩!Emacs Lisp関数をトレースする方法 - http://rubikitch.com/に移転しました

    Emacs Lispのデバッグをしているとき、特定の関数呼び出しをトレースしたいことがあります。 関数呼び出しのトレースとは、呼び出した関数の引数の値と、返り値をチェックすることです。 もちろん、関数が呼び出されたかどうかもわかります。 トレースの実現にはadvice機能を使っています。 M-x trace-functionでトレースするM-x trace-functionは、特定の関数をトレースします。 このコマンドは、トレース対象関数と出力バッファを聞いてきます。 出力バッファはデフォルトで*trace-output*なので、そのままにしておくのが無難です。 複数の関数をトレースする際に出力がごちゃごちゃになるのが嫌ならば別のバッファ名にしておけばいいです。 その後でトレース対象関数を呼び出したら、トレース結果を表示します。 M-x trace-function-backgroundで

    デバッグの第一歩!Emacs Lisp関数をトレースする方法 - http://rubikitch.com/に移転しました
  • Emacsでマウスを有効活用する方法 - http://rubikitch.com/に移転しました

    Emacs使いというと、どうしてもキーボード操作に偏ってしまい、マウス操作がないがしろにされている気がします。 Emacsでもマウス操作はそこそこできるのです。 マウスを有効に使っていますか? Emacsはインクリメンタルサーチが強力なので、目についた場所へ一瞬でジャンプできます。 しかし、文章を読む場合に目についた単語や範囲についてコマンドを実行する場合はマウスが優勢です。 そこで、マウスにコマンドを割り当てる方法ついて少し解説してみます。 マウスイベントのシンボルマウスイベントは「接頭辞-mouse-番号」という形のシンボルで表されます。 接頭辞はないこともあります。 たとえば、mouse-1は左クリックを、double-mouse-3は右ダブルクリックです。 マウスボタンの番号マウスボタンと番号は以下のような対応になっています。 3以降は環境に依存するかもしれませんが、僕のところでは

    Emacsでマウスを有効活用する方法 - http://rubikitch.com/に移転しました
    syohex
    syohex 2010/11/10
    Emacsでのマウスの活用
  • org-mode→HTML変換をする3つの方法 - http://rubikitch.com/に移転しました

    org-modeはHTMLを生成するツールになる久々に、みんな大好きorg-modeのお話です。 orgファイルからHTMLに変換する方法を紹介します。 org-modeは、いろいろな機能を持っています。 事実上Emacsの多機能ワープロという位置付けです。 拙著『Emacsテクニックバイブル 〜作業効率をカイゼンする200の技〜』 でも1章をまるごとorg-modeに費やすほどです。 org-modeテキストは、読み書きしやすいという特徴があります。 なんといっても、アウトラインから文章を作成することができます。 見出しやリストが簡単に記述できるのが嬉しいです。 アウトラインを考えて文章を書くと、よい文章が書けるようになります。 アウトラインの重要性は 『文章術』という でも言われています。 そして、アウトラインから直接文章作成できるのがorg-modeです。 よって、org-mode

    org-mode→HTML変換をする3つの方法 - http://rubikitch.com/に移転しました
  • Emacsの中でsudoする方法 〜これでrootによる操作も楽々〜 - http://rubikitch.com/に移転しました

    Emacs、増刷されました!】 みなさん、Emacsを使っていて、突然rootでの操作がしたいと思ったとき、どうしてますか? たとえば、ユーザに書き込み権限のないファイルに書き込みたいとき、root権限でコマンドを実行したいとき。 わざわざターミナルに移動してsuやsudoを使っていたりしませんか? 面倒ですよね。 どうせなら、Emacsの中で直接sudoを使ってみたいですね。 ここで紹介するsudo-ext.elがその願いを叶えてくれます。 注意! 2011-01-17 月更新 Macではsudoersの設定をする必要があるようです。http://d.hatena.ne.jp/maeshima/20110116/1295196063]] http://d.hatena.ne.jp/handlename/20110117/1295231889 機能 sudo-ext.elが提供する機能

    Emacsの中でsudoする方法 〜これでrootによる操作も楽々〜 - http://rubikitch.com/に移転しました
  • Rubyを使ってはてブ数をEmacsで表示する?凄いね。帰っていいよ。 - http://rubikitch.com/に移転しました

    この記事は、はてブ数をAPIで得る方法も書いてるので、Emacs使いじゃなくても役立つかもしれない? やっぱりブログをやっていると、評価は気になるものである。はてなならばはてなブックマーク数だ。 かといってちまちまブラウザではてブ数を確認しにいくのはだるいし時間の無駄である。数秒であったとしても、塵も積もれば山となるっていうじゃない。 はてブ数が気になる、かといっていちいち確認するのは面倒。この問題に対して、Emacs使いならば「モードラインにはてブ数を表示する」という解決策を選ぶもの。これを実現する display-hatebu.el を速攻で作ってみた。 M-x install-elisp-from-emacswiki display-hatebu.el でインストールしてくれ。さらにRubyとjsonライブラリが必要だ。Rubyインタプリタを入れた後で gem install jso

    syohex
    syohex 2010/02/12
    はてブ数を取得
  • crontabコマンドでファイルの内容をcrontabに登録する - http://rubikitch.com/に移転しました

    crontab -r とやってしまった時の対処法 cronの設定を変えようと crontab -e と打とうとして、間違って crontab -r と打ってしまい、cronの設定が根こそぎぶっ飛んで参りました。 俺も経験したことがある。 しかし、こんなスクリプトを書いたり、いちいちcrontab -lで確認したりする必要はない。たんに「crontab FILENAME」を実行すればそのファイルをcrontabに登録してくれる。 俺の場合、 ~/.crontab というファイルを作成し、保存と同時に登録するようにしている。 Emacsでやるには (defun shell-command-with-error-notification (cmd error-regexp) (let ((buf " *shell-command-with-error-notification*")) (shel

    crontabコマンドでファイルの内容をcrontabに登録する - http://rubikitch.com/に移転しました
    syohex
    syohex 2009/11/26
    cronにファイル指定で登録する
  • ’(rubikitch wanna be (a . lisper))

    この度、独自ドメイン取得したので、ブログ・サイトを移転します。 今日をもちまして、はてなダイアリーは更新を終了します。 ブックマーク、RSSは解除していただいて構いません。 今後は新サイトでよろしくお願いします。 http://rubikitch.com/ 学校やら勉強会やらセミナーやらやらで、 いろいろ学ぶ機会があると思います。 けれども多くの人たちはとある 大事なことをやっていません。 それは 『復習』 です。 小中学校時代を思い出していただけたらわかると 思いますが、学校から帰って家で勉強するときは、 復習もきちんとやっていましたよね? だからこそ、赤点ばかりにならずに きちんと身に付いたのです。 思春期の定期テストの山だったり受験を乗り越え られたのは、復習をしっかりしていたからです。 けれど大人になると日々の仕事で せいいっぱいなのか、学生時代の 「復習」という大切な習慣を 置

    ’(rubikitch wanna be (a . lisper))
  • 1