タグ

elispに関するgologo13のブックマーク (31)

  • EmacsWiki: ipa.el

    Download ;;; ipa.el --- In-place annotations ;; Copyright (C) 2007 Tamas Patrovics ;; This file is free software; you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation; either version 2, or (at your option) ;; any later version. ;; This file is distributed in the hope that it will be useful, ;; but WITHOUT ANY

  • erefactor.el - まにっき

    最近、長年書き溜めた色んな elisp を公開してます。 Emacs Lisp の refactoring 用ツールをまとめた erefactor.el を公開しました。 http://www.emacswiki.org/emacs/erefactor.el https://github.com/mhayashi1120/Emacs-erefactor erefactor.el は大きく三つの機能に分けられます。 symbol 名の変更 ローカル変数 highlight 外部 elint 似た機能を持つ elisp として https://github.com/mitsuo-saito/auto-highlight-symbol-mode がありますが、あちらは色々な言語用の汎用版で、こちらは Elisp 限定版と捉えればよいと思います。highlight 機能が被ってしまったので、その場

    erefactor.el - まにっき
  • Gooroo | All-in-One Learning with Online Courses and Tutoring

    Cultivate lifelong learning with online courses and personalized tutor matching, all under one platform. ��]�U Introducing Gooroo clubs. Turn your passions into projects with Gooroo Clubs! Follow a specialized curriculum, complete engaging quizzes, and create a rewarding final project.

    Gooroo | All-in-One Learning with Online Courses and Tutoring
    gologo13
    gologo13 2011/01/05
    elispを書くための [ref] ちゃんと勉強したいな.いつか
  • Emacs Lispで時間がかかる処理をするときに進捗状況を報告する - http://rubikitch.com/に移転しました

    動機時間のかかる処理をしていると、いつまで待たされるのかわからなくなります。 このとき、進捗状況を表示してくれると安心です。 マニュアルより Progress - GNU Emacs Lisp Reference Manual 使い方単純な数値ループ: (dotimes (変数 回数) 処理〜)決まった回数(N)だけループするにはdotimesを使います。 以下の例では、メッセージを表示し、500個カウント(1カウントあたり0.01秒なので)します。 、5秒後(0.01×500)にdoneと表示します。 (progn (message "Collecting some mana for Emacs...") (dotimes (k 500) (sit-for 0.01)) (message "Collecting some mana for Emacs...done"))進捗状況付き数値ル

    Emacs Lispで時間がかかる処理をするときに進捗状況を報告する - http://rubikitch.com/に移転しました
  • .emacs で設定ミスって素の emacs が立ち上がったときの無力感は異常 - 俺のゴーストがささやく日記

    そんなアナタにこれ! ;; elisp (require 'cl) (defmacro defapp (sw name path &rest body) "一個の elisp アプリケーションに関する設定をまとめておくための .emacs 内で使うマクロ。 効能: - .emacs 内での設定ミスによってバニラな emacs が立ち上がってしまい 猛烈な無力感にさらされるケースを減らせる。 - .emacs 内にコメントアウトにつぐコメントアウトの山脈が隆起してい くのを軽減できる。 - *Messages* バッファに出力されるログによって、どんな設定をしていて、 どの設定が有効化されていて、エラーしたときにはどの設定がエラーし たか、が分かりやすくなる。 引数 SW を non-nil とすることで BODY が評価される。nil とした場合 はなにもしない。 文字列 NAME にはそ

  • 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/に移転しました
  • 非同期と継続と私 - 技術日記@kiwanami

    非同期のプログラミングの解説の中にはよく「継続(渡し)」が良く出てきます。継続といえば Scheme の call/cc ですが、やっぱり JSDeferred のサンプルのページにも出てきます。直感的にはあんまり関係ないような気がしますが、関係があるようです。 さらに、非同期と遅延評価の関係も気になります。非同期は「結果が後で来る」感じですが、遅延評価は「必要になるまで結果を計算しない」ということで、後回しにする感じが似ています。 今回、deferred.el を作った後にこれらについて考えてみたところ、なんとなく自分の中で実用的な結論に達したのでまとめてみました。以下、その過程とまとめです。 あらすじ 継続渡し(CPS)と非同期 CPS変換から非同期化 Deferredで非同期化 遅延評価と非同期 遅延関数のCPS変換から非同期化 Deferredで非同期化 明示的形式と暗黙的形式 継

    非同期と継続と私 - 技術日記@kiwanami
  • 便利そうなマクロを集める旅。途中経過 - podhmoの日記

    旅をしています。途中経過はgistで はじめに elispは便利な機能がデフォルトでつかえないことが多いです。cl由来の便利ライブラリが使えません。(require 'cl)をする必要があります。それ自体はeval-when-compileで囲めば良いので問題ないです。elispは名前の衝突を避ける仕組み(e.g. 名前空間)が用意されていません。そんなわけで、自前の拡張を作成するときに各自で重複するようなマクロが定義されてます。onlisp由来のマクロなどを良く見かけます(とくにaifを良く見かける)。 今回の目的は2つあります。 各自が個別に定義してきた便利マクロを集めてみるとどの程度の規模になるのか知りたい。 自分用の便利なマクロを集めたライブラリが欲しい。 とりあえず、便利だなと思うマクロを追加してみることにしました。util-macro.elというファイルがそれです。 追加したマ

    便利そうなマクロを集める旅。途中経過 - podhmoの日記
  • open コマンドで開くコマンドから学ぶ、とても簡単な Elisp。 - 日々、とんは語る。

    簡単なコマンドがすぐに作れるところが、Emacs の魅力のひとつなのですが、実際、Emacs を利用してるけど、Elisp 分かんないし、書いたことないっていう人が多いです。 でも実はプログラミングしたことない人でも、目的の関数のさえ分かればすぐにコマンドを作ることが出来るくらい Elisp は簡単なので、なんか難しそうと毛嫌いしているのは勿体ない話です。 なので、今日は簡単なコマンドを紹介しつつ、Elisp の基を説明してみましょう。 Mac OSX の open コマンドでバッファを開くコマンド。 簡単な例として、シェルコマンドの open を使ってカレントバッファを開くコマンドを作ってみました。 (defun open () "Open current buffer for OSX command" (interactive) (shell-command (concat "ope

    open コマンドで開くコマンドから学ぶ、とても簡単な Elisp。 - 日々、とんは語る。
  • Emacs Lisp 勉強会(バッファとウィンドウ編) — ありえるえりあ

    Recent entries jlineで日語を使えるようにする。 sugawara 2009-12-10 五反田Emacsの資料 sugawara 2009-10-19 trac-ticket.el sugawara 2007-11-19 Emacs Lisp 勉強会(バッファとウィンドウ編) sugawara 2007-10-22 10/11に行ったEmacs Lisp勉強会の内容です。 コラムのとこに載せようと思ったのですが、やり方がわからないのでここに載せました。 バッファとウィンドウって? バッファは Emacs で編集するテキストを持っているオブジェクトです。 簡単に言うと、文字列みたいなものです。 MVC の Model だと思えば良いです。 ウィンドウはバッファを表示する領域です。 MVC の View だと思えば良いです。 複数のウィンドウに同じバッファを表示する事がで

  • Emacs Lisp が「書ける」ようになるまで - 技術日記@kiwanami

    先日の関西Emacsでは、Emacs Lisp の入門記事がうけるとか、「書ける」ようになる情報がないらしいという話を聞きました。確かに、Emacsの初歩的な操作入門と、良く書ける人がアプリやブログなどでelispをばしっと書いてるのはよく見ます。入門から書けるようになるまでの間の過程は見たこと無かったかもしれないと思いました。 ということで、Emacsの先人たちにはまだまだ及びませんが、いくつかのアプリを書いてみた自分がたどった方法を書いてみます。先にまとめると以下の2つになると思います。 elispでどうしても書きたい物があること たくさん書いて動かして(こっちが先)、そしてInfoや他人のコードを見て勉強する 書ける以前のまとめ Emacs歴10年以上。すでに生活の一部。 でも設定を書くのに使っていたぐらい。 既存のアプリの分かりやすいバグを手元でちょっと直すとか。 LISP系の言語

    Emacs Lisp が「書ける」ようになるまで - 技術日記@kiwanami
    gologo13
    gologo13 2010/09/29
    そういう問題意識がある時に他の人のコードを読むと参考になります.これすげぇわかる
  • でらうま倶楽部 : Emacsのインクリメンタルサーチをさらに加速するプチマクロ

    2010年03月07日23:17 カテゴリプログラム Emacsのインクリメンタルサーチをさらに加速するプチマクロ ここに書いたったhack。 これを思い付いた人は、かなりのEmacs通だね。 で、ちょこっと直しつつありがたく使わせてもらいなす。 リージョンがあればその文字列、なければカーソル位置の単語をいきなりisearchするマクロ。ブログをいつも読んでくれてる人なら、パッと見て処理内容が把握できる規模なんじゃないかな。 (global-set-key (kbd "C-\\") 'my-isearch-get-word) (defun my-isearch-get-word() "カーソル位置の単語をisearch" (interactive) (if(not isearch-mode) (call-interactively 'isearch-forward))) (defun my

  • emacsのモードラインにgitやhgのステータスを表示する拡張をつくった - わからん

    git や mercurial のステータスを確認しやすくする拡張をつくりました。モードラインの左端に丸印を表示し、色わけすることで区別します。ファイルオープン、セーブ時に更新します。psvn.el からの移植です。さわる必要のないファイルを間違って編集してしまったときにコミット時などに面倒な思いをするのが嫌だと感じていたのがきっかけです。 ▽ コミット済みの状態 ▽ コミットしているファイルから変更がある状態 その他のステータスはソースを参照して下さい。以下のファイルをロードパスの通ったところに配置し、(require 'hg-status), (require 'git-status)すれば動作します。 git-status.el http://gist.github.com/546654 hg-status.el http://gist.github.com/546650 vcまわり

  • Emacsで便利なEmacs Lisp 7選

    はじめに memchachedを落とす遊びをしてるみなさんこんにちは。 最近暑いですね、あまりの暑さに耳も溶けちゃいますね、ダニーです 。 今回は自分のEmacs環境を見直すついでにこれは使ってみて便利だったEmacs Lispとその設定例を紹介したいと思います。 下記の設定例はロードパスに置いてあるファイルか、.emacsに追加します。 EmacsLisp 鬼軍曹(Emacsキーバインドの強制) http://wiki.github.com/k1LoW/emacs-drill-instructor/ Emacsキーバインドの強制します。 EnterとかBackSpaceとかTABとか押しそうになったとき便利です。最近Emacs使い始めた人も入れるといいと思います。 (require 'drill-instructor) (setq drill-instructor-global t)

    Emacsで便利なEmacs Lisp 7選
  • Emacs Lisp勉強会(基礎編) ― ありえるえりあ

    Emacsをまだインストールしていない人は、インストールしてから、この先を読んでください。 可能な限り、Javaとの対比をしながら説明します。 目次 Emacs Lispとは 開発環境 Emacs Lispの雰囲気(Javaとの比較) 関数型言語 Emacs Lisp;言語の基礎 なんでもオブジェクト シンボル コンスセル(リスト) 関数 その他(連想リスト、ベクタ、ハッシュテーブル) Emacs特有の型(バッファ、マーカ、etc.) 実践 ループ使ったら負け? 変数に代入したら負け? Emacs Lispとは マーケティング要素無しの、「write once, run anywhere」な言語です。 Javaの場合、次の欠点があります。 マシンにインストールされている保証が無い 他人のマシンに勝手にインストールするのは迷惑 Emacs Lispの場合、上の問題がありません。

  • Emacs Lisp プログラミング:

    This domain may be for sale!

  • bookshelf.jp

    This domain may be for sale!

  • /lang/elisp/init-loader/init-loader.el – CodeRepos::Share – Trac

    ;; This file is free software; you can redistribute it and/or modify

  • c-eldoc.el で C 言語プログラミング革命 - mooz deceives you

    emacs は人生 先日, また Life Changing なものに出会ってしまいました. 最近, 毎週のようにこの言葉を使っていて僕はどれだけ人生を変えれば気が済むのかという話なのですが, 出会ってしまったのです. c-eldoc.el に. eldoc.el 皆さん, eldoc.el をご存知でしょうか. Emacs Lisp を少しでも書かれるという方なら絶対に使っておきたいパッケージの一つが, この eldoc.el です. カーソル付近の関数に対する引数のリストをエコーエリアへ表示してくれたり, カーソルの位置から対応する引数を割り出しハイライトしてくれたり, もうこれなしで elisp を書く気などおきません. さらには eldoc-extension というパッケージを入れることにより関数や変数のドキュメントを表示してくれる機能まで追加され, もう至れり尽くせりです. 詳

    c-eldoc.el で C 言語プログラミング革命 - mooz deceives you