社内勉強会の資料です
コマンドの使用頻度を表示してくれる 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%
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
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
音の鳴るエディタ - ✘╹◡╹✘ このアイディアめっちゃいいと思ってた。 例えば黒板とか本の内容を写してて、キーボードもモニタも見てない時しばしばあるし、ちゃんと打ててても日本語の変換結果が変になってるとかよくある。プログラミングは音全然使ってない、音でデバッグとかしたい。音のフィードバックで効率的に何かできたらおもしろい。 みたいなことをこの前東京で関数型焼肉を遅延評価しながら話してた(1時間遅れてすみません)。 Vimで作ったけど音とキーの対応が覚えられなくてあんまり意味なかったとか、めちゃくちゃ重くなるみたいなことナカムラさんが言ってた気がする。確かに、とか思ってた。 対応が覚えられないならsayでそのまま読み上げたらいいと思いついたのと、別プロセスに投げたらエディタ自体は軽いまま音出せるんじゃないかと思ってEmacsで動くやつ作った。 lessとsayが使える必要がある。Macなら
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 ...
ソフトウェア開発は小さな変更の積み重ねです。ソフトウェア開発ではバージョン管理システムを使うことが当たり前ですが、バージョン管理システムはその変更の積み重ねを記録しています。変更はdiffと呼ばれ、ソフトウェア開発をしていれば頻繁に目にします。例えば、コミット前に変更を最終確認するためにdiffを見ます。また、誰かがコミットすればdiff入りのメールで変更内容が関係者に通知されます。 さて、そんなよく目にするdiffをEmacs上でより見やすく表示する方法を紹介します。 そもそも、どうしてEmacs上でdiffを見るかというと、Emacsにはdiffを表示するための支援機能がたくさんあるからです。編集中のファイルのdiffを見たいならVCが提供するvc-diff(C-x v =)を使います。バージョン管理システムで管理している複数のファイルのdiffを見たいならMagit(git用)やps
Emacs実践入門に含めたくて、含められなかったものに、id:kiwanami さんの kiwanami プロダクトと呼ばれるものがあります。 僕自身も本当便利に使わせてもらっていますし、本当にEmacsのライフチェンジングな拡張が目白押しなのですが、いかんせん導入が難しいので、書籍では見送る結果となりました。 ぜひ、本を読んでEmacsへの興味が深まった人は、ぜひ kiwanakmi プロダクトに挑戦してみて下さい。まじでか?という機能が連発です。 あと、本書執筆中には、kiwanami さんが公開されていた、inao-mode を改良して、便利に使わせてもらっていました。 最終的にはこれなしでは校正作業は終らなかったでしょう。遅くなりましたが、お礼申し上げます。 さて、もう少し落ち着いたら、執筆中に情報だけ集めたけど、解説がヘビー過ぎて(ニッチでもある)、お蔵入りになったネタを放出して
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のような昔ながらのテキストエディタは、IDEのように定義されているクラスや関数にジャンプすることができないと思っている人はいませんか? 世界中のスーパーハッカーが愛用しているEmacsがそんなこともできないわけがありません。 今回はExuberant Ctagsを利用して、ソースコードで定義されているクラスや関数に一瞬でジャンプする設定方法をご紹介します。 タグジャンプ 「この関数の処理を確認したいんだけど、どこに定義してあったっけ?」をソースコードをうろうろと探し回って、挙げ句の果てはgrepして抽出して探し出すという荒技をしたことがある人はいませんか?grepコマンドは利用しなかったとして、定義されているコード部分に一瞬でジャンプできたら便利ですね。Eclipseなどの統合開発環境(IDE)では、もはや標準機能です。 この動作の仕組みは、定義されているクラス名や関数名をタグと
今回も、弊社で毎日行われている、ミニミニ 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日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
大変遅くなりましたが、福岡にて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
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を覚えたか書いています。 この投稿の理由 普及のため Emacsは素晴らしいエディタで、これを超えるエディタはないと思うので、その普及のために書きます。 食わず嫌いの人のため 会社にて、あまりにもEmacsやVimにいきたいといいつつ、ずぅーっとEclipseを使い続ける人(EmacsやVimを覚えられない人)がいたので。 はじめの一歩 Emacsを覚えるのに、何年もかけるなど、ありえない話です。 しかし、実際そういう方はいて、正直、結構時間を無駄にしています。 そこで、Emacsを3ヶ月ほどで殆ど不自由なく使えるようになった僕の経験から、僭越ながら、Emacsのスタートアップについて書きます。 最初にできれば、やりたいこと 最初に絶対にやってほしいことの前に、できたらやったほうがいいことを書きます。 それは、Windowsを卒業することです。 これはいたって真
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どちらで管理しているか気にしなくて良い
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く