たけぞう瀕死ブログスマートフォン用の表示で見るたけぞう瀕死ブログ2015-08-042015年のEmacsその昔、自宅PCにLinuxをインストールして頑張っていた頃はEmacsを使っていたり、その延長で職場でもMeadowやxyzzyなどを活用していたものですが、Eclipseを使い始めてからめっきりEmacsから離れてしまっていました。ところがここ最近、MacBookを使い始めたり、仕事柄サーバのメンテナンス等でターミナルを使う機会が圧倒的に増えたり、周囲の影響もあったりして久しぶりにEmacsに復帰してみることにしました。Emacsをちゃんと使うのは10年ぶりくらいですが、同僚のEmacserに教えてもらいながら環境を整備してみました。最近のEmacsはmeplaというリポジトリからパッケージをインストールできるようです。~/.emacs.d/init.elに以下を書いておきます。"http://marmalade-repo.org/packages/"))(package-initialize)するとこんな感じでパッケージをインストールできるようになる模様。'helm))テーマで外観をカスタマイズ最近のEmacsはカラーテーマで外観をカスタマイズできるようです。t)若者っぽくAtomっぽいテーマにしてみました。Emacsが一気にモダンな感じになります。Scala開発環境としてのEmacs仕事ではScalaを書いているのでScalaの開発環境を整備する必要があります。Emacsだとscala-mode2とEnsimeを使うのがいいみたいです。インストールはQiitaのこの記事などが参考になります。使い方はこのへんを参照。デフォルトだとScaladocコメントの自動補完の挙動が微妙だったので以下の設定を追加しています。t))ちなみにEnsimeはEmacs専用というわけではなく、SublimeText、Atom、vim用の拡張も提供されているのでEmacsをお使いの方以外も「普段使っているエディタでScalaを書きたい!」という方はチェックしてみるといいかもしれません。helmでなんでもインクリメンタルサーチhelmはEmacs上でいろんなものを絞り込み検索することができる拡張で、anything.elの後継のようなものらしいです。C-fでファイルを開くときや、M-xでコマンドを実行するときなど様々な箇所でhelmによる絞り込み検索が使えるようになります。helm-miniは様々な候補リストを統合的に表示して絞り込み検索できるインターフェースで、どのような候補を表示するかは設定でカスタマイズ可能です。helm-ls-gitを入れるとGit管理されているファイルを絞り込み検索できたり、helm-agを入れるとagの結果を絞り込み検索できたりして非常に便利です。'helm-ag))ag自体は別途Homebrewでインストールしておきます。rgrepしていたのですが、agはドットディレクトリの中身はデフォルトで検索対象から外してくれるなど気が効いています。agできれば開いているScalaソースのフィールドやメソッド一覧をhelmで絞り込み検索できたりすると最高っぽいのですが、今後の研究課題です。gitの操作もEmacsでEmacsを使っているからにはgitの操作もEmacsで完結したいものです。magitを入れるとEmacs上で様々なgit操作が可能になります。magit-statusで表示できるステータス画面から様々な操作を行います。コミットの履歴をグラフ表示できるなどかなり高機能ですし、最初は取っ付きが悪いですが基本的な操作方法さえ覚えれば細かい操作は画面にガイドが表示されるのでさほど迷うことはないのではと思います。複雑な操作はgitコマンドやGUIクライアントを使ってもいいですし、コミットやプッシュといった日常的な操作がEmacsで完結するだけでもかなり快適になりますね。ace-jumpでどこにでも一発ジャンプvimには画面で見えているどの場所にも3キーストロークで移動できるというeasymotionという拡張機能があるそうなのですが、ace-jumpを使うとEmacsでも同じことができます。SPCを押してミニバッファで移動したい場所の文字を入力すると該当の箇所にポインタとなる文字が表示されるので、そのキーを入力するとそこにジャンプできるというものです。このキーバインドだとC-cがあるので4ストロークになってしまうのが欠点です。ツリー型のファイルマネージャ目的のファイルを開くときはhelmを使えばよいのですが、プロジェクト全体を俯瞰したい場合やファイルやディレクトリの操作を行いたい場合はhelmや標準のdiredだけだとちょっと不便です。できればツリー状のファイルマネージャが欲しいと思い探してみたところいくつか見つかったのですが、試してみたところneotreeがよさそうです。F8でトグルするようにしてみました。'neotree-toggle)そういえば昔はspeedbar使ってたなーと思い出して懐かしい気持ちになりました。Atomのツリーペインみたいにgitのステータスによってファイルの色が変わったりすると素敵なんですが...。3でウィンドウを分割できるのですが、分割したウィンドウのサイズの変更はデフォルトではかなり変態的なキーバインドに割り当てられています。ググってみたところQiitaにこんな記事を見つけました。C-rでウィンドウサイズ変更モードに入り、h、j、k、lでサイズ調整ができるようになります。この他にも使用するプログラミング言語のためのメジャーモードをインストールしたり、タブ幅など細かい設定を加えています。ここ数週間Emacsでコーディングしているのですが、ようやく以前の勘を取り戻してきた感があり、IntelliJを使わなくても大抵のことは困らない状態になってきましたが、同僚の変態vimmerにインスパイアされ、日々Emacs環境の研究を重ねる日々が続いています。書籍はてなブログをはじめよう!takezoeさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。