$shibayu36->blog;

株式会社はてなでエンジニアをしています。プログラミングや読書のことなどについて書いています。

emacs

Emacsで特定のプロジェクトでだけ編集モードの設定を変える

最近JSを触っていて、このプロジェクトはインデントが2だけど、このプロジェクトはインデントが4で、プロジェクトごとに設定できないかなーという課題意識を持っていた。今まで全く知らなかったのだけど、これは.dir-local.elというのを利用すれば出来るよう…

user-emacs-directoryを利用して、特定のディレクトリにemacsの設定を隔離する

Caskはもう古い、これからはEl-Get - いまどきのEmacsパッケージ管理 - 貳佰伍拾陸夜日記d.hatena.ne.jp上記のブログに書かれている通りなのだけれど、自分もやってみたのでメモしておく。 動機 上記のブログを見て、emacsのパッケージ管理をel-get-bundleに…

emacsのmodelineでどのファイルを開いているか分かりやすくする

mode lineを出来るだけ良くしたい これまで mode-lineのモード情報をコンパクトに表示する - Life is very shortでごちゃごちゃしたモード情報をきれいにした smart-mode-lineを使い始めた - $shibayu36->blog;で、smart-mode-lineを使い始めたけど、あんま…

emacsにpowerlineを導入

smart-mode-lineを使い始めた - $shibayu36->blog;でsmart-mode-lineを導入したんだけど、出したい情報のカスタマイズがしやすくないよなーと思って、今度はpowerline.elを導入した。 インストール MELPAにあるのでそれで。 M-x package-install powerline設…

EmacsからiTermにコマンドを送る

EmacsからiTermに対してコマンドが送りたい時がある。例えば 現在Emacsで開いているファイルのディレクトリにiTermで移動したい 現在Emacsで編集中のテストをiTermで実行したい など。そういう時には以下の様なユーティリティを定義しておくと便利。AppleScr…

color-themeを使わずにemacsのテーマを変えたい

emacsのテーマを変えようとするとcolor-themeを使うのが標準っぽい感じだったのだけど、Emacs 24からはthemeフレームワークというのが導入されたみたいで、そちらを使ってテーマを作ったり使ったりするのが楽みたいという話を聞いた。Emacs 24以上を使うなら…

smart-mode-lineを使い始めた

mode-lineをカスタマイズしたいと思ってpackage.elのlistを眺めていたら、smart-mode-lineというのを見つけたので使ってみた。お手軽にmode-lineを見やすくするための拡張っぽい。 https://github.com/Bruce-Connor/smart-mode-line/ とりあえずMELPAにある…

cl-libをupdateしたら、Emacsが壊れた

この前血迷ってpackage.elで管理していたものを全部updateかけたら、emacs上で無限ループなどのいろいろな問題が起こり、emacsが動かなくなった。例えば helmを起動すると固まる yasnippetを起動すると(error "Lisp nesting exceeds `max-lisp-eval-depth'")…

バグが起こる最小構成のemacs設定を作る

先日【解決】emacsとrbenvとgemにハマってる - $shibayu36->blog;の挙動確認をしていて、どうやってデバッグしたらいいかよく分からなかった。ただ、よくバグ修正する時はおかしい挙動が再現する最小構成をまず作ることから始めると思うので、Emacsだとどう…

【解決】emacsとrbenvとgemにハマってる

emacsとrbenvとgemにハマってる - $shibayu36->blog; でずっとはまってて謎すぎたんだけど解決した。 原因 emacs上でGEM_HOMEが空文字に設定されていた。そのためGEM PATHSなどがおかしくなっていた。本当はunsetされていないといけない。再現させるにはterm…

ファイル名検索して一斉ファイルリネームする

例えばリファクタリングしたいときにクラス名を一斉に変える時がある。その時に対応するファイル・ディレクトリ名を一斉置換したい時がある。emacsで特定ディレクトリ以下の特定の名前のファイル・ディレクトリを抽出して、wgrepみたいに一括で変更したい— …

自分が入れたEmacs便利拡張・設定集 (2013年版)

年末emacs設定大掃除をして、これは捨てられないと思った設定書いてく - $shibayu36->blog;昨年に引き続き、2013年の自分のemacs.dを振り返るのをやろうと思います。今年はemacsでいろいろできるようにする、という方向よりも、emacsでの基本操作をどれだけ…

自分流の .emacs管理

この記事は.emacs Advent Calendar 2013の三日目です。.emacs Advent Calendarということなので、今回は僕自身がどうやって.emacsを管理しているかということについて書こうかなと思います。 .emacsの管理ってなかなか難しくて、init.elにずっと書き続けてい…

golang用にgo-eldocやflycheckなどを入れました

goインストールから、emacsにgo-mode, go-autocompleteを導入するまで - $shibayu36->blog; でgoのemacs用設定を少ししたのですが、もう少し設定を進めました。 go-eldocの導入 勧められたので入れたらだいぶ便利でした。カーソル位置のメソッドのドキュメン…

Emacs 24.3のアップグレードのリベンジです

前回やりたかったこととしては OS Xネイティブのフルスクリーンではなくて、Emacs 23の時のようなフルスクリーンにしたい インラインパッチを当てたい ということでした。今日調べてみたらなんか知見が溜まってきているようなので、もう一度リベンジしました…

goインストールから、emacsにgo-mode, go-autocompleteを導入するまで

最近社内でgo勉強会をしているので、goのインストールとemacsの基本的な設定を行った。 goのインストール とりあえず適当にbrewで入れた。 $ brew install goあと http://golang.org/doc/code.html を参考に適当にGOPATHとPATHを設定した。.zshrc # Go PATH …

Emacsでのテキストハイライトの話

最近、まあまあ複雑なコードを読むときに、これとこれをハイライトしておきながら見たい、ということが多くありました。それでちょうど関西Emacsもあるし、そういうこと聞くかーと思って聞いてみたら、それっぽいものがあったので紹介します。 auto-highligh…

関西Emacs 08に行って来ました

関西Emacsに行って来ました。僕は軽くEmacs上でテストするっていう話をしました。あといろいろ気になってたことの相談とか、便利な拡張とかを教えてもらったりしました。 Emacsでテストする 131026 kansai-emacs from Yuki Shibazaki https://github.com/shi…

helm-c-moccurの代わりにhelm-occurを使うようにした

https://github.com/milkypostman/melpa/issues/1102 githubのmelpa repositoryをwatchしていたら、こんなissueを見つけた。helm-c-moccurはメンテされて無く、helmのrepositoryで同様の機能が実装されているので、消しても良いとのこと。もともとhelm-c-moc…

emacs 24.3へのアップグレードに失敗しました

なんとなくemacsの最新にするかとおもったので、アップデートを試してみました。結果として失敗しました。 以下の記事を参考に。 Mac OS X にインラインパッチの当たった Emacs を Homebrew でインストール | Good Design and Great Hack Better Full Screen…

Emacs実践入門を読みました

Emacs実践入門 ?思考を直感的にコード化し、開発を加速する (WEB+DB PRESS plus)作者: 大竹智也出版社/メーカー: 技術評論社発売日: 2012/03/07メディア: 単行本(ソフトカバー)購入: 22人 クリック: 396回この商品を含むブログ (1件) を見る ようやく読ん…

guide-key.elを導入した

キーバインドを覚えられない問題が顕著だったので、guide-key.elを導入した。guide-key.elは設定したprefix keyを入力した時に、その後に入力できるキーをpopupで表示してくれるもの。 基本的な導入や使い方は Emacs で自動的にキーバインドをポップアップす…

grepバッファでpopwin使うときにちょっとハマった

grepバッファがうまくpopwinで出ていないと思ったら、grep-a-lot.elとか使っていて*grep*とかになるためだった。popwinはregexp指定もすることが出来たのでそれで解決した。 (push '("\*grep\*" :regexp t :height 0.5 :stick t) popwin:special-display-con…

package.elとinit-loader.elの同時利用での問題にハマった

最近elispをpackageとel-get両方で管理する - $shibayu36->blog;で書いたとおり、package.elとel-getで大体の管理をしています。その時にinit-loader周りでハマったことがあったのでメモ。init-loaderとはemacsでinit-loaderを導入してみた - $shibayu36->bl…

perlbrew.elをMELPAに登録しようと思ったら登録されていました

以前perlbrew.elを少し手直ししていたので、MELPAに登録しようと思ったら、何日か前に誰かに登録されていました。どうぞご利用ください。参考 emacsで利用するperlを切り替える(perlbrew.elの紹介) - $shibayu36->blog;

elispをpackageとel-get両方で管理する

関西Emacsに行って、elispをちゃんとpackage管理みたいなので管理しないとなあという機運が高まったので、管理の方法を見なおしてみました。これまでの管理方法としては、 基本的にはelispをcurlで落とし、git管理 最近はel-getを使ってみていた という感じ…

emacsのruby環境を整えています

最近VagrantとかChefとかCapistranoとか、それなりにrubyのプロダクトを触るようになったし、別の言語の良いプロダクトも見ないといけないという気分になったから、とりあえずemacsの環境を整えようと思い出した。まずは基本から。 ruby-mode modeはruby-mod…

el-getを使ってみる(インストール編)

最近emacs-jpなどを見ていて、emacs使ってるのにelispの管理もせず、手作業でインストールしてるのが恥ずかしくなってきた*1ので、el-getを試してみました。とりあえず今回はインストールして、packageをlistしてみて、一つinstallしてみるところまで。 イン…

expand-region.elでperlのコードの範囲選択

expand-region.elの紹介 - Life is very shortで紹介されていたexpand-region.elを使っていたのですが、expand-region.elはmodeごとにいろいろカスタマイズ出来るようでした。しかし、これまでperl用の設定がなく困ってました。で、色々探してたらhttps://gi…

auto-complete.elを少しカスタマイズした

auto-complete.elをちょっとだけ触ったのでメモ。補完周りはエディタにとってかなり重要なので、今後も見ていきたい。まず通常の設定。 (require 'auto-complete-config) (ac-config-default) 辞書ファイル置き場の設定。 (add-to-list 'ac-dictionary-direc…