思う所あって、Emacs を CUI で使う事にした。僕は zsh + tmux を使っているので、その上に Emacs を載せる事になる。 その時のメモ。 理由 最近、開発は vagrant で VM 立ちあげて sshfs で Mac にマウントしてそのマウントされたファイルに Emacs でアクセスして作業する事が多い。 この sshfs でマウントした状態っていうのがおそらく問題で、Emacs の git 系の拡張の動きがすこぶる遅い。特に気になるのが helm-ls-git で、起動するのに体感5秒位かかっている状態。この拡張をまともに使えないのはすごくもったいないので、それがかなりストレスになっている。挙げ句の果てには find-file も2秒位かかる状態。ストレスフル。そして、この開発環境の VM 化は今後ずっと続くだろうから(利点の方が大きい)、解決しなくてはいけない。
補完はよくある TAB ですが、履歴は他のコンソールのシェルと違って C-p, C-n はバッファの行移動になり、 Alt(Esc) と組み合わせた p, n および矢印キーの上下が履歴となります。 ただし、 eshell は途中まで書いたものにマッチしたもの中から探します。 $ ls ~/t [↑] # コマンド履歴のうち、先頭が "ls ~/t" で始まる # ひとつ前の履歴を表示する 他のシェルのような単純な履歴操作をしたい場合には、 Ctrl キーと組み合わせた矢印キーで行います。 パス区切り ディレクトリの区切り文字は Windows 環境でも \ ではなく / を使用します。 Windows 環境では \ を使用することもできますが、 \ はエスケープ文字になっているので、 使用する場合には \\ と書く必要があります。 Emacs 関数の実行 eshell ではプログラムだけ
僕はこれまで下記のようなインデントで ruby のコードを書いてきました。 SuperLongClassName.super_long_name_method(hoge: 'fuga', foo: 'bar', baka: 'aho') 理由は、Emacs の ruby-mode による標準インデントが上記のような形になっているからです。今ひとつだなーと思いながら幾年月。すばらしい設定を発見しました。 (setq ruby-deep-indent-paren-style nil) とすると下記のようにインデントできます。 SuperLongClassName.super_long_name_method( hoge: 'fuga', foo: 'bar', baka: 'aho' ) おお!すばらしい…かと思ったら閉じ括弧が微妙ですね。ぐぐったらこんな設定を見つけました。 (defadvi
Scalaを書くにはIntelliJを使うのが良さそうだったのだけど、使ってみたらいつもの感覚で使うのがけっこう難しかった。そこでEmacsでの環境構築を行ってみた。今回はscala-mode2とensimeを利用した。特にensimeに関してけっこうはまってしまったので、そのあたりを多めに書く。 scala-mode2 最近はscalaをemacsで書くならscala-mode2を使うみたい。セットアップは簡単でM-x package-list-packagesしてscala-mode2をインストールした後、以下をどこかに書いておけば良いだけ。 ;;; scala mode (require 'scala-mode2) これでひとまずハイライトなどを行うことが出来た。 ensime(セットアップ編) 続いてensimeのセットアップを行う。ensimeを利用することで、型を利用した補完、
Emacsをつかっていても、Eclipseみたいにタグジャンプしたい! そんな情念に突き動かされて、タグジャンプの方法をしらべました。 Ctagsを利用する# タグジャンプを利用するためには、ctagsがRubyに対応しているようだ。 まずは、ctagsをインストール。linux mintでは以下で入る。 sudo apt-get install ctags Exuberant Ctagsというものがctagsの代わにインストールされた?まあいいや。 ルートディレクトリで以下を実行。 ctags-exuberant -a -e -f TAGS –tag-relative -R * TAGSが生成される。これをemacsからつかえばよい。試しに M-x find-tagsを入力して、タグジャンプが発動すればOK。 M-. find-tags タグジャンプ M-* ジャンプ元に戻る。 ripp
肝心のGraphvizが入っていないといけない。 http://www.graphviz.org/Download..php ダウンロードしてインストールするだけ。 パスが通っていればコマンドラインからdot –helpでヘルプが出る。 Emacs側では org-babel-load-languages の設定にdotを加えておく。 ちなみに、これを記述している時点のEmacsとOrgModeのバージョンは次の通り。 emacs-versionGNU Emacs 23.3.1 (i386-mingw-nt6.1.7601) of 2011-08-15 on GNUPACK org-versionOrg-mode version 7.8.03 #+begin_src dot :file dot_example0.png digraph { A->B; } #+end_src #+begin_
今回は,graphvizとditaaの図の埋め込み方法についてまとめてみる. なおUbuntu 8.04 LTSとEmacs22上で, org-6.34c (2010年1月10日リリース)の利用を前提にしている. リンク Org-Mode OrgMode - Emacs上のアウトライナー Graphviz Graphviz http://d.hatena.ne.jp/tamura70/20100119/graphviz ditaa ditaa http://d.hatena.ne.jp/tamura70/20100123/ditaa http://d.hatena.ne.jp/tamura70/20100125/ditaa graphvizの図の埋め込み インストール Ubuntu 8.04 LTSの場合,以下のようにしてインストールする. $ sudo apt-get install g
multi: method is no longer supported, ... ubuntu を dapper から hardy さらに amd64 へとアップデートして、ついでに開発環境に関しても何か新しい物はないか探していたが、幾つか見つかった中で、今日は tramp の最新版をいじってみた。 hardy のパッケージに入っているのは 2.0.55。ftp://ftp.gnu.org/gnu/tramp/ をのぞいてみると最新版は 2.1.15 でリリース日が 2009/02/01 になっている。早速ダウンロード・インストールしてみることにした。 emacs のバージョンは GNU Emacs ver 22.1.1。 $ pushd tmp $ wget http://ftp.gnu.org/gnu/tramp/tramp-2.1.5.tar.gz $ pushd tramp-2.
とりあえずIt's All Textをダウンロード・インストール。 おう、なかなか迷ったぜ。だが、解決した。 自分の環境Windows 7のEmacs23では簡単な既知のバグ的なものがあったらしい。 まずEmacs Clientというものを動かしておいて、それに関与させてファイルを開けば、一々新しいフレームを作らずに新規ファイル的なものを現在開いているEmacsに渡せるということを理解していた。 Emacs Wikiにそれなりのボリュームの文章があった。全部は読まなかったが一応少しは目を通して見た。 http://www.emacswiki.org/emacs/EmacsClient >>EmacsClient allows one to open a file for editing in an already running Emacs. Because it doesn’t star
elscreenにほしかった以下の2つの機能を追加しました screenの順番を手軽に変更 現在開いてるscreenの順番を入れ変える機能がほしくて探してみたとこ、 elscreen-swapしかないようでした。 elscreen-swapは、左隣りのscreenにしか入れ変えできず不便だったので 左右のscreenと入れ変えできるようelscreen-swap-next、elscreen-swap-previousを用意しました。 これで現在選択中のscreenを左右好きな順番へ手軽にズラすことができます (defun elscreen-swap-previous() "Interchange screens selected currently and previous." (interactive) (cond ((elscreen-one-screen-p) (elscreen-m
作業をしていると elscreenのタブが溜まってきて消していくんですが、 面倒なんでまとめて消せないかなって思っていました。で elscreenには そのような機能がなさそうなので自分で作るかって考えていたんですが、 helm-elscreenを使えばできることがわかったのでその方法を示します。 方法 helm-elscreenとマーク(helm-toggle-visible-mark)を使えば実現できます。 helm-elscreenでタグ一覧を表示する 消したいタブをマーク(Ctrl-Space)する TABを押して "Kill Screen(s)"を選択する マークしたタブが消える(ウインドウのタイトルバーの変化に注目) おわりに helm(anything)のマークの機能ってあったなっていう程度でどういうときに 使っていいかわからなかったんですけど、こういうときに使えたんですね。
The Simple Solution: Counting Words on Demand1. Select a region. 2. Run M-=, or M-| wc for older versions of emacs. 3. See the count of lines, words, and characters, in the mode-line. Show the number of words in the mode-lineThe minor mode ‘word-count-mode’ displays the number of words in the current buffer. It is quite handy: http://taiyaki.org/elisp/word-count/src/word-count.el (down on Nov. 1,
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く