2013-01-01から1年間の記事一覧

現在編集しているファイルを git add -Nする

git管理下で git-gutter.elが効果を発揮しないのが嫌なので 作りました。ちなみに git add -Nはとりあえず stagingするという もので、後ほどちゃんと git addする表明みたいなものです。 ここでは明示的にコマンドを叩くようにしましたが、find-file-hook …

Emacsから Replyを使うための拡張

Reply is awesome! - blog.64p.org Perlの軽量 REPL Replyを Emacsから使うための 拡張を書きました。まだあまり機能はありません。 リポジトリ https://github.com/syohex/emacs-reply コマンド run-reply Replyを起動 reply-send-region リージョンの内容…

Re: VimGolf in Emacs

VimGolf in Emacs | Irreal one two threeを (one) (two) (three)にする課題。 前提条件が不明なんですが、Emacs -Qで起動して、fundamental-modeという ことにしましょう。カーソルは oneの oの位置とします。面倒くさいんで 保存、終了のコマンドは省きま…

Emacsで素数を最小の手数で列挙する

Vim で素数を最小の手数で列挙する - TIM Labs VimGolf - real Vim ninjas count every keystroke! を真似てできるだけ短く Emacs Lispで素数を小さい方から 100個 求めてみました。 コード (load"cl")(load"calc-comb")(subseq math-primes-table 0 100) 60…

wisp事始め

wispとは https://github.com/Gozala/wisp wispは clojure syntaxを持った Javascript方言です。 あまりよくわかっていない ですが、同様のものに clojurescriptというよりメジャーなものがあるようです。 wispと clojurescriptの違いは wispは clojureが不…

helm-gtags.el 0.9.2をリリースしました

helm-gtags.el 0.9.2をリリースしました リポジトリ https://github.com/syohex/emacs-helm-gtags インストール package.elでインストールすることができます。 MELPA, Marmaladeどちらからでもインストールできます。 変更点 context stackを GTAGSのロケー…

WebService::DMM 0.08をリリースしました

WebService-DMM-0.08 - DMM webservice module - metacpan.org 修正箇所 エラーレスポンスが返ってきたときの不備の修正 生のレスポンスオブジェクトを返すメソッド(last_response)の追加 前者はエラーが返ってきたときにレスポンスオブジェクトの is_succes…

jsxの zsh補完

jsxの補完が書きたかったというか、コンマで区切られた値の補完を どうやるんだというのが知りたかったので書いてみました。 コード jsx --helpだけを参考に書いたので問題があるかもしれません。 #compdef jsx _jsx_warn() { local expl warning local -a j…

git-messenger.elを書いてみました

TokyoVim #14 に参加して git-messenger.vim を作ってみた - sorry, uninuplemented: の Emacs版です。まだその行のコミットログをポップアップする 機能しかありません。 リポジトリ https://github.com/syohex/emacs-git-messenger コード popup.elが必要…

Macにおける git-gutterの問題

Linux環境では全然発生しない問題なのですが、Macで git-gutterを 使った際、表示がおかしくなる問題があります。 使っていると以下のようになります。 左の方にゴミみたいなものが残ったままになってしまいます。 Linux環境では一切発生しないので、Macの描…

getmntent使用例

Man page of GETMNTENT /etc/mtabに列挙される情報を読み出すためのインタフェースの ようである。mountコマンドを引数なしで実行した場合の一覧表示に 利用されているようです。 コード 参考のために、読み出されてセットされる構造体も載せておきます。 #i…

mountシステムコールの使用例

調べてもあまり見つからなかったのでメモ。 コード 詳しくは manを参照してください。 特徴的なのは最後の引数ですかね。mountコマンドの '-o'オプションで与えるものを そのまま指定するという形です。何を指定するかは第 3引数のファイルシステムの 種類に…

第 7回関西 Emacsに参加/発表してきました。

http://atnd.org/event/ke7 参加して, git-gutter.elについて発表してきました。 発表内容 git-gutter.elについて発表しました。資料はこちらです。 デモをしているときに期待した動作しないなぁと思ったら バグ(git diffの問題のようにも思えますが)だった…

Emacsの正規表現に慣れる

https://github.com/technomancy/emacs-starter-kit を見ていてなるほどと思ったことがありました。 C-s, C-r, M-%をそれぞれ正規表現版にし、C-M-s, C-M-r, M-%をもともとの C-s, C-r, M-%に変更するという設定です。 具体的には以下のとおりです。 (global…

デバイスが READ Onlyかどうかの判定

Linuxでは ioctlの BLKROGETコマンドを使うと read onlyか どうかが得られるようである。(Readonlyでマウントしたかどうか ではなく、デバイスレベルで Readonlyかどうかという話です) コード #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <linux/fs.h> </linux/fs.h></fcntl.h></sys/stat.h></sys/types.h></stdlib.h></stdio.h>…

MBRの有無の判定

c

マスターブートレコード - Wikipedia 510バイトが 55, 511バイトが AAなので以下のような感じで いいのだろうか ? コード #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> int main(int argc, char *argv[]) { int fd; ssize_t size; off_t re</fcntl.h></sys/stat.h></sys/types.h></unistd.h></stdlib.h></stdio.h>…

MELPAのダウンロードランキング

http://melpa.milkbox.net/ にダウンロード数が表示されるようになったので、2013年 4月 25日 現在のランキングを作ってみました スクレイピングコード HTMLの要素に idやら classがほとんど指定されていないので スクレイピングしづらい。 #!perl use stric…

SDカードに関する ID

SDカードに関する IDに関するメモ 確認 mmcblk0は場合によりかわりますので注意してください % ls -1 /sys/block/mmcblk0/device/{manfid,name,oemid} /sys/block/mmcblk0/device/manfid # 製造者 ID /sys/block/mmcblk0/device/name # Product name /sys/bl…

libudevで使う propertyを取得する

libudevに関するメモ. まだ libudevの使い方がよくわからないのですが、 基本的には該当のデバイスの情報を取ってきて、次にデバイスの属性リストを 取得して、該当する属性があるとか、属性の値が期待するものかを確認する というのが基本になるようです。 …

git-gutter.el 0.43をリリースしました

git-gutter.el 0.43をリリースしました. MELPAにはまだ反映されていないっぽいですが、明日には 反映されていると思います。 リポジトリ https://github.com/syohex/emacs-git-gutter 最近の変更点は以下のとおりです 呼び出し頻度の制限の導入 Emacs 23.2以…

milla(Dist::Milla)の zsh補完を書きました

zsh

https://metacpan.org/module/Milla リポジトリ https://github.com/syohex/zsh-perl-completions コード #compdef milla typeset -A opt_args local context state line local -a _milla_subcommands _milla_subcommands=( "commands:list the application'…

phコマンドの zsh補完を書きました

zsh

https://metacpan.org/module/App::ph Perlでできた hubコマンドのようなものです。 リポジトリ https://github.com/syohex/zsh-perl-completions コード #compdef ph typeset -A opt_args local context state line local -a _ph_subcommands _ph_subcomman…

amon2-setup.plの zsh補完を書きました

http://gihyo.jp/dev/serial/01/perl-hackers-hub/001801 Web+DBの記事も Webで見れることになったので。 リポジトリ syohex/zsh-perl-completions · GitHub コード flavor一覧は 'list-flavors'オプションから取得しているので、 独自の flavorをインストー…

helm-ag 0.05をリリースしました

helm-ag 0.05をリリースしました。 アップグレードにあたり注意が必要なのでお知らせします。 the silver searcherは STDINが ttyでない環境で実行した 場合に問題がありまして、普通の方法では Emacsから実行できませんでした。 そのため helm-agを実装する…

Emacs Lispで open-githubユーティリティを実装しました。

GitHubでの仕事を快適にするコマンドを紹介します - $shibayu36->blog; をより便利に Emacsから使うというので書いてみました。 リポジトリ https://github.com/syohex/emacs-open-github 依存 helm gh.el 外部ツールは使っていませんが、検索のしやすさ等の…

flymake-cpanfile

cpanfile 向けのVim 拡張を書きました - その手の平は尻もつかめるさ を参考に flymake版を作成して見ました。 リポジトリ https://github.com/syohex/emacs-flymake-cpanfile 利用方法 ソースコードの取得 % git clone git://github.com/syohex/emacs-flyma…

Minillaの zsh補完関数を作りました

Minillaの minilコマンドの zsh補完関数を作ってみました。 リポジトリ https://github.com/syohex/zsh-perl-completions 最新版はこちらで管理しています。問題があれば上記のリポジトリの issuesを 利用してください 使い方 下記のコードを _minilとして適…

git-gutter.elの高速化検討

git-gutter.elを導入すると Emacsの動作がもっさりしてしまう問題が あります。機能を導入するわけなので、何らかのコストがあっても 仕方ないとは思いますが、度を越しています。 重くなる原因 原因は window-configuration-change-hookでの差分情報の更新…

Module::Buildにアクションを追加する

./Build時に Parse::Yappの文法ファイルを yappコマンドを通して、 モジュールを生成するということがしたかったのでその方法を調べ ました。 アクションを追加する方法 Module::Buildのサブクラスを作り、Action_hookpointの関数を 作ることで actionを追加…

Emacsconf 2013の動画とスケッチノート

http://emacsconf.org/ 先月にロンドンで開催された EmacsConf 2013の動画とスケッチノートなるものが アップされていたので紹介します。スケッチノートはすごくセンスがいい感じに まとめられています。動画を見る前にそちらを一度見るとよいでしょう。 動…