タグ

Emacsに関するk1LoWのブックマーク (429)

  • Emacsとその周辺 / Emacs and CLI tools

    社内勉強会の資料です

    Emacsとその周辺 / Emacs and CLI tools
    k1LoW
    k1LoW 2017/08/30
  • 【関数再定義革命】Emacs 24.4ではdefadviceは時代遅れ!nadvice.elによる洗練された新しいアドバイス定義方法!!

    【関数再定義革命】Emacs 24.4ではdefadviceは時代遅れ!nadvice.elによる洗練された新しいアドバイス定義方法!!
    k1LoW
    k1LoW 2014/11/10
  • keyfreqで Emacsの使い方を見直す - Shohei Yoshida's Diary

    コマンドの使用頻度を表示してくれる keyfreqの紹介 目的 効率的な移動コマンドをちゃんと使っているかとか, ユーティリティ 書いたけど, 全然使ってないとか判断するのに使えます. リポジトリ https://github.com/dacap/keyfreq インストール MELPAからインストールできます M-x package-install keyfreq 設定 (require 'keyfreq) ;; package.elからインストールした場合は不要 (keyfreq-mode 1) (keyfreq-autosave-mode 1) 表示例 M-x keyfreq-show で表示してくれます. 3039 24.20% self-insert-command SPC..~, ?.. 2509 19.98% next-line C-n, <down> 2127 16.94%

    keyfreqで Emacsの使い方を見直す - Shohei Yoshida's Diary
    k1LoW
    k1LoW 2013/09/05
  • Emacs color-theme creator

    import os, re from sys import exit SOMECONST = None somevariable = min(sum(1,2), max(range(10))) def some_callable(argument1, argument2=False): """ Doc-string for some_callable function. """ if not argument1: return None try: argument1.do_stuff() except (AttributeError): # some comments if not can_fail: raise return argument1 class RegexPattern(object): def __init__(self, regex, name): self.regex

  • Bitbucket

    k1LoW
    k1LoW 2013/03/19
  • Emacs Lispパッケージを書く場合のテンプレート - Shohei Yoshida's Diary

    Emacs Lisp使ったパッケージを書く場合はとりあえず以下のようにしましょう。 ;;; ファイル名.el --- パッケージ概要 ;; Copyright (C) 2013 by 名前 ;; Author: 名前 <メールアドレス> ;; URL: リポジトリの URL等 ;; Version: 0.01 ;; Package-Requires: ((依存パッケージ1) (依存パッケージ2)) ;; ライセンス ;;; Code: (provide 'パッケージ名) ;;; ファイル名.el ends here詳細はこちらにあります。 とりあえずこうするのが無難ということにしておいてください。一行目のファイル名と 概要の間にあるハイフンは 3です。2ではありません。3です。 私は yasnippetの snippetとして以下を登録しています。 # name : Package

    Emacs Lispパッケージを書く場合のテンプレート - Shohei Yoshida's Diary
  • 音の鳴るエディタことEmacs - ポクポク

    音の鳴るエディタ - ✘╹◡╹✘ このアイディアめっちゃいいと思ってた。 例えば黒板とかの内容を写してて、キーボードもモニタも見てない時しばしばあるし、ちゃんと打ててても日語の変換結果が変になってるとかよくある。プログラミングは音全然使ってない、音でデバッグとかしたい。音のフィードバックで効率的に何かできたらおもしろい。 みたいなことをこの前東京で関数型焼肉を遅延評価しながら話してた(1時間遅れてすみません)。 Vimで作ったけど音とキーの対応が覚えられなくてあんまり意味なかったとか、めちゃくちゃ重くなるみたいなことナカムラさんが言ってた気がする。確かに、とか思ってた。 対応が覚えられないならsayでそのまま読み上げたらいいと思いついたのと、別プロセスに投げたらエディタ自体は軽いまま音出せるんじゃないかと思ってEmacsで動くやつ作った。 lessとsayが使える必要がある。Macなら

    音の鳴るエディタことEmacs - ポクポク
    k1LoW
    k1LoW 2012/10/11
  • web-mode.el | php templates edition for emacs

    About web-mode.el is a major-mode for mixed (HTML, PHP, scripts, styles) HTML files. web-mode.el is will never be a full featured PHP or JS mode. (We don't encourage multi-lines blocs of code in templates !). Native Features smart indentation (according to the context : HTML, PHP, JavaScript or CSS) navigation : (C-c C-n) between opening and closing HTML tag or between PHP controls if ... else ...

  • Emacs上でカラフルにdiffを表示する - 2012-04-03 - ククログ

    ソフトウェア開発は小さな変更の積み重ねです。ソフトウェア開発ではバージョン管理システムを使うことが当たり前ですが、バージョン管理システムはその変更の積み重ねを記録しています。変更はdiffと呼ばれ、ソフトウェア開発をしていれば頻繁に目にします。例えば、コミット前に変更を最終確認するためにdiffを見ます。また、誰かがコミットすればdiff入りのメールで変更内容が関係者に通知されます。 さて、そんなよく目にするdiffをEmacs上でより見やすく表示する方法を紹介します。 そもそも、どうしてEmacs上でdiffを見るかというと、Emacsにはdiffを表示するための支援機能がたくさんあるからです。編集中のファイルのdiffを見たいならVCが提供するvc-diff(C-x v =)を使います。バージョン管理システムで管理している複数のファイルのdiffを見たいならMagit(git用)やps

    Emacs上でカラフルにdiffを表示する - 2012-04-03 - ククログ
    k1LoW
    k1LoW 2012/04/04
  • kiwanami プロダクトについて。 - 日々、とんは語る。

    Emacs実践入門に含めたくて、含められなかったものに、id:kiwanami さんの kiwanami プロダクトと呼ばれるものがあります。 僕自身も当便利に使わせてもらっていますし、当にEmacsのライフチェンジングな拡張が目白押しなのですが、いかんせん導入が難しいので、書籍では見送る結果となりました。 ぜひ、を読んでEmacsへの興味が深まった人は、ぜひ kiwanakmi プロダクトに挑戦してみて下さい。まじでか?という機能が連発です。 あと、書執筆中には、kiwanami さんが公開されていた、inao-mode を改良して、便利に使わせてもらっていました。 最終的にはこれなしでは校正作業は終らなかったでしょう。遅くなりましたが、お礼申し上げます。 さて、もう少し落ち着いたら、執筆中に情報だけ集めたけど、解説がヘビー過ぎて(ニッチでもある)、お蔵入りになったネタを放出して

    kiwanami プロダクトについて。 - 日々、とんは語る。
    k1LoW
    k1LoW 2012/03/23
    kiwanamiプロダクトはやばい
  • Emacsでキーボードイベントを扱う方法まとめ - むしゃくしゃしてやった

    Emacsを使い始めると、誰でもあまり意識せずにキーボードイベントを扱っていると思います。 特にdefine-keyやlocal-set-keyなどのキーバインドを設定する際には、とりあえず人のコピペでちょっと変更すればなんとかなるし、kbdマクロを使ったり使わなかったりも私の場合は適当でした。 ですが、自分でelispを書き始めるとキーボードイベントをうまく扱う必要が出てきました。 もともとEmacsではキーボードイベントを(歴史的な背景から)複数のデータ形式で扱っていて、そのため複雑になっています。 http://www.bookshelf.jp/texi/elisp-manual-20-2.5-jp/elisp_21.html#SEC303にはキーボードイベントを扱うための方針が書いてあるのですが「とりあえずベクトルで扱っておいて必要に応じてリストに変換してね」ぐらいのことしか書いて

    Emacsでキーボードイベントを扱う方法まとめ - むしゃくしゃしてやった
  • elispで文字列をevalする :NOTE: - うどん駆動開発

    文字列をevalできればいろいろと便利だ.というわけで,S式の文字列を渡すと評価する関数eval-stringを書いてみた. 実行例は以下の通り. (eval-string "(message \"hoge\")") => hoge ちなみに,S式を文字列に変換するにはformatを使うとよい. (format "%S" '(message "hoge")) => "(message \"hoge\")"

    elispで文字列をevalする :NOTE: - うどん駆動開発
  • Emacsで定義されているクラスや関数にジャンプする方法 | Act as Professional

    Emacsのような昔ながらのテキストエディタは、IDEのように定義されているクラスや関数にジャンプすることができないと思っている人はいませんか? 世界中のスーパーハッカーが愛用しているEmacsがそんなこともできないわけがありません。 今回はExuberant Ctagsを利用して、ソースコードで定義されているクラスや関数に一瞬でジャンプする設定方法をご紹介します。 タグジャンプ「この関数の処理を確認したいんだけど、どこに定義してあったっけ?」をソースコードをうろうろと探し回って、挙げ句の果てはgrepして抽出して探し出すという荒技をしたことがある人はいませんか?grepコマンドは利用しなかったとして、定義されているコード部分に一瞬でジャンプできたら便利ですね。Eclipseなどの統合開発環境(IDE)では、もはや標準機能です。 この動作の仕組みは、定義されているクラス名や関数名をタグとし

    Emacsで定義されているクラスや関数にジャンプする方法 | Act as Professional
    k1LoW
    k1LoW 2011/12/06
    anything-exuberant-ctags.elもあったりします
  • Emacsデフォルトの機能で改行やタブ、スペースを色づけできるようになってた

    今回も、弊社で毎日行われている、ミニミニ Emacs 勉強会で @tomoyaton から教えてもらいました。 Emacs23 からは M-x global-whitespace-mode すると、改行やタブ、スペースを色づけできるようになってます。常に表示させるには ~/.emacs に以下を書けば OK です。 ;; スペースの定義は全角スペースとする。 (setq whitespace-space-regexp "\x3000+") ;; 改行の色を変更 (set-face-foreground 'whitespace-newline "gray40") ;; 半角スペースと改行を除外 (dolist (d '((space-mark ?\ ) (newline-mark ?\n))) (setq whitespace-display-mappings (delete-if '(la

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • fukuoka-emacs #0x03 開催します - 技術日記@kiwanami

    大変遅くなりましたが、福岡にてEmacsの勉強会(情報交換会)をします。 場所を変更しましてRubyセンターで行います。 場所の確保には株式会社Fusicさんにご協力頂いております。いつもありがとうございます。(2011/09/15 修正) 日時 :2011/09/23 13:30 - 17:00 (懇親会1次会は会場で開始予定) 定員 :35 人程度 会場 :福岡県Ruby・コンテンツ産業振興センター (福岡県福岡市博多区博多駅東1丁目17−1) ATND http://atnd.org/events/19653 以下のような内容が出来るといいなと思っています。参加される方でこの辺が発表できそうというのがありましたら、是非教えてください。(皆さんの発表が少ないと kiwanami 独演会になるかもしれません!!) 自己紹介タイム emacs intro and startup Emacs

    fukuoka-emacs #0x03 開催します - 技術日記@kiwanami
    k1LoW
    k1LoW 2011/09/06
  • はてなブログ | 無料ブログを作成しよう

    聖蹟桜ヶ丘へ 今年度の授業が全て終了した。最後の授業はテスト返却とその確認作業の後は特に何をしろとも言われていなかったので、『耳をすませば』の後半、お姉さんと雫が言い争いをする場面を生徒と皆で見た。 この場面。あの場面、お姉さんは雫に「今しなきゃいけないことから逃…

    はてなブログ | 無料ブログを作成しよう
  • anythingで正規表現のかわりにglobを使えるようにする - 適当めも

    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 を使うだけです。特に何も考えなくても、大体思ったとおりにマッチさせられるんじゃないかと思

    anythingで正規表現のかわりにglobを使えるようにする - 適当めも
  • Emacsの始め方 - Incoming!

    これは、僕がいかにEmacsを覚えたか書いています。 この投稿の理由 普及のため Emacsは素晴らしいエディタで、これを超えるエディタはないと思うので、その普及のために書きます。 わず嫌いの人のため 会社にて、あまりにもEmacsやVimにいきたいといいつつ、ずぅーっとEclipseを使い続ける人(EmacsやVimを覚えられない人)がいたので。 はじめの一歩 Emacsを覚えるのに、何年もかけるなど、ありえない話です。 しかし、実際そういう方はいて、正直、結構時間を無駄にしています。 そこで、Emacsを3ヶ月ほどで殆ど不自由なく使えるようになった僕の経験から、僭越ながら、Emacsのスタートアップについて書きます。 最初にできれば、やりたいこと 最初に絶対にやってほしいことの前に、できたらやったほうがいいことを書きます。 それは、Windowsを卒業することです。 これはいたって真

    Emacsの始め方 - Incoming!
    k1LoW
    k1LoW 2011/08/05
  • anything-vcs-project.elというelispを書いた。 - podhmoの日記

    https://github.com/podhmo/anything-vcs-project.el これ何? バージョン管理システム(git,hg)などで管理されているファイルをanythingからアクセスするためのelisp。 (以降バージョン管理システム=VCS) 実際の動作。 現在開いているバッファのディレクトリから、~/.{git,hg}を探す。 ~/foo/bar/boo/yee.txtにいる時は、~/foo/bar/boo/.git, ~/foo/bar/.git, ~/foo/.git, ~/.gitを探していく (hgについても同様) 見つかったら、そのVCSが管理しているファイルをanythingで選択して絞り込む 次回からは、開いているバッファがVCSが管理しているバッファでなくても開けるように覚えておく。 便利なのは、gitとhgどちらで管理しているか気にしなくて良い

    anything-vcs-project.elというelispを書いた。 - podhmoの日記