2014-07-01から1ヶ月間の記事一覧

Codic.vimを移植しました

codic-vim プラグイン — KaoriYa @kaoriyaさんの Codic.vimを Emacsを移植にしました. Vim Scriptが相変わらず読めないので早く この本を読みたいです. リポジトリ https://github.com/syohex/emacs-codic ScreenCasts 日本語 English おわりに 問題があれば…

localと exit status

ハマったのでメモ. 問題 local宣言とコマンド実行を同時に行うと exit statusが適切に取れない. 例 function test() { local val=$(false) echo $? } これを実行すると "1"って表示されると思っていたんですが, "0"が表示されて しまいます. 原因 local自体…

Hex-to-RGBAを移植しました

手放すなんて絶対無理!SublimeTextの便利パッケージ - Catcher in the tech 手放せないようなので移植してみました. リポジトリ https://github.com/syohex/emacs-hex-to-rgba イメージ おわりに 別に変換しなくても, rainbow-modeで色を表示すればいいよう…

関数の中で pecoを複数回使う

pecoでlaunchctl start/stopを呼びやすくする - NullPointer's Blog 使い手の自由なんですが, 別にコマンドを分けなくてもいいかなと思った. あと pecoや percolって 1関数内で 1回しか使われていないケースが 多いけど, 何回使ってもよいと思います. サンプ…

任意のリビジョンからの差分が表示ができるようになりました

リポジトリ https://github.com/syohex/emacs-git-gutter/ git-gutter:set-start-revision M-x git-gutter:set-start-revisionで任意のリビジョンを設定できます. buffer localな変数にそのリビジョンは格納されるので, バッファごとに 異なるリビジョンを指…

LL Diverの「エディタ対決」に登壇することになりました.

LL Diver | Dive into Lightweight Languages 依頼を受けて 1日ほどどうしようか悩んだんですが, 推薦していただいたと いうこともあって登壇することにしました. 他の代表者は超有名人ですし, 私なんかでよいのかという感じもしますが, 少しでも盛り上げら…

go-impl.elを作りました

vim-go-impl つくった - sorry, uninuplemented: リポジトリ https://github.com/syohex/emacs-go-impl 事前準備 % go get github.com/josharian/impl イメージ おわりに 現状しょぼいですが, 補完とかチェック(interfaceが実在するか等)が機能すると いい感…

進捗がなかったら, Emacsを終了しない

コード (defun my/kill-emacs-hook () (let ((progress (read-string "進捗どうですか? " "ダメです"))) (when (string-match-p "\\(?:ダメ\\|だめ\\|駄目\\)" progress) (error "作業してください")))) (add-hook 'kill-emacs-hook 'my/kill-emacs-hook) イ…

mplayerでピッチを変えず, 再生速度だけ変える

podcastを一時間丸々聴くのも、辛いなぁと思って再生速度を 変えれないかと思って調査を行った際のメモ. '-speed' + '-af scaletempo'オプション '-af scaletempo'をつけると音の高低が変わらずに再生速度を 変えることができます. 昔はプラグインが必要だっ…

Emacsで anigifを再生

M-x image-toggle-animationとする. image-animate-loopが non-nil だとループします イメージ ぬるぬる動きます.

Apple swift support

Appleにお布施していないので, stackoverflowあたりをみて 適当に対応していたのですが, 先日無料版を入れたとき 全く動いていないことがわかったので修正しました. スクリーンショットを載せると, どうたらこうたらと書いていた のでよろしければみなさんの…

Carton下プロジェクトでの quickrunの設定

VimでのCartonを使ったPerlの開発 - Kesin's diary の Emacs版. 設定 若干いい加減ですが, これをベースすればよいと思います. ;; perl-modeを使っている人は, perl-mode-hookに置き換えてください (defun my/cperl-mode-hook () (setq quickrun-option-cmdo…

Support mercurial(Experimental)

git-gutter.el supports mercurial repository from 0.68. We can use git-gutter.el for bitbucket projects or any projects which is managed by mercurial like Vim, Go etc. Repository https://github.com/syohex/emacs-git-gutter/ Image Conclusion …

tanzaku.el(Web API版)

http://tanzak.herokuapp.com コード (require 'json) (defun tanzak-web (negaigoto) (interactive (list (read-string "願い事: "))) (with-temp-buffer (let ((url (concat "http://tanzak.herokuapp.com/api?q=" (url-encode-url negaigoto)))) (unless …

tanzaku.el

https://github.com/kazeburo/tanzak を見て. コード 複数行対応がない等問題が多々あります. (require 'cl-lib) (defconst tanzaku--vertial-rules '(("/" . "\") ("‥" . ":") ("−" . "|") ("─" . "|") ("ー" . "|") ("→" . "↓") ("↑" . "→") ("←" . …

byzanzのヘルパスクリプトを Goで書きました

公式(?)の Python版が新しい Pythonだと動かなかったので Goで書きなおしました. byzanzとは Linuxで動作するアニメーション gif作成アプリケーションです. 今までは若干手間な方法で作成していたんですが, この方法だと 容量がとても大きくなって時間が長く…

init-loader.elエラーが出た時だけログを表示する

init-loaderはデフォルトでは初期化終了時に, エラー一覧だったり, 各設定ファイルの読み取りにどれだけ時間が かかったかを表示しますが, それをエラー発生時のみ表示できる ようにしました. 経緯 @syohex init-loaderで、基本init-loader-show-log-after-i…

Numeric prefixで指定した行数だけ置換できるようにしました

3行だけ置換したいなぁというケースが多々あったので 実装してみました. Numeric prefixは n個置換するのに 使用するべきなのかと思ったのですが, 標準的な置換コマンドは そんな挙動しないので, 行数として使用することにしました. (なかなか n個というのを…

最近の helmがうざい

追記 下記の設定だけで良いようです. (masaaki1001さんありがとうございました.) (setq helm-exit-idle-delay nil) 最近の helmは候補を選択したときに [Display not ready]と出て, すぐに選択してくれないときがある. 必要な処理をすべて待つと いう意味で…

シェルスクリプトを公開するとき, コマンド前にバックスラッシュをつけるべき

oh-my-zsh の環境で、peco-select-history が動かない - Qiita 追記 2014年 7月 7日 シェルスクリプトと書いてしまい漠然すぎましたが, ここで述べている ことが問題になるのは, .bashrc, .zshrcに関数, alias設定等がコピー される場合や, sourceコマンドで…

peco --initial-indexオプション

percolに実装されていていた, --initial-indexオプションを@hirose31さんが 実装されたのでそれを使う例を適当に作成してみた.indexは percolと 同じ 0ベースです. コード 次のような rubyスクリプトを書く #!/usr/bin/env ruby require 'open-uri' require …

peco + info

byzanzで Gif screencastを作成する練習も兼ねて. コード '**/*'が使えないと動かないですが... 'ls'の前にバックスラッシュがあるのは aliasを無視するためです. % info $(\ls -1 /usr/share/info/**/*.info.gz /usr/local/share/info/**/*.info.gz |xargs …

GNU版, BSD版 xargsの挙動の違い

細いところを見ていくと膨大な違いがあるんでしょうけど, ハマりやすそうなところだけ. GNU版は Linuxディストリビューションにインストールされているもので, BSD版は MacOSX, 各種 BSDディストリビューションにインストールされて いるものとしています. …