読者です 読者をやめる 読者になる 読者になる

emacs

Mastering Emacsのすすめと、意外と便利な数引数の話

この記事はEmacs Advent Calendar 22日目の記事です。前日はEmacs Lispでシェルコマンドを活用するでした。 最近Mastering Emacsという本を読みました。Emacsの本を購入したのは久しぶりですがかなり面白かったです。洋書なので読むのが大変でしたが苦労して…

org-modeとopen-junk-fileで始める快適メモ生活

この記事はEmacs Advent Calendar 2014の10日目です。 org-modeというEmacsの高性能メモ機能があります。 見出しでTABを押すことでON/OFF出来るアウトラインプロセッサ ソースコードをメモ内に書いてその場で実行(文芸的プログラミング!) ソースコードはち…

Emacsのテキスト検索の使い勝手をあげるace-isearchとhelm-swoopが便利

ace-isearchはisearchの文字入力に合わせて自動でace-jumpやhelm-swoopを起動してくれます。helm-swoopは超強力なoccurです。 詳しくは各作者さんのページをどうぞ。 Emacs - isearchとace-jump-modeの連携 - Qiita - GitHub helm-swoopでEmacsを位置同期検…

(kantou-emacs #x01) #関東Emacs にいってきました

(kantou-emacs #x01) #関東Emacs : ATND 関西Emacsに行きたいけど遠方でなかなかいけなかったので関東で開催されないかなぁと待ち望んでいました。普段はネットの情報に頼ることが多いので実際に使っている人達のノウハウを見ることが出来たら刺激になりそう…

EmacsでObjective-C, Objective-C++を編集する

RubyKokuban(ofrubyに改名予定)のiOS版を作っています。 OSXの時はほとんどC++で書けたので気にならなかったのですが、iOS用に作る時はObjective-C(拡張子.m)やObjective-C++(拡張子.mm)の編集が必要です。 さっそくEmacsで編集出来るように設定を行いました…

A Tour of Go を一通りやってみて、 Go言語の印象に残った機能や特徴などの感想

はじめてのGo言語 - ブログのおんがえし に続いて A Tour of Go を最後までやってみました。 コードを実際に実行させながら基本的なGoの使い方を学ぶことで出来るのでおすすめです。日本語版もあります。 英語の勉強にもなるので私は英語版を使いました。ど…

Emacsでexpand-regionをvim-region中に使えるようにしたら便利になった

前回からバグ修正したりしながら地味にバージョンをアップをしています。 ふと思いついてmagnars/expand-region.elをvim-region中に"+","-"で使えるようにしたらなかなかにいい感じになったのでご紹介です。expand-regionについてはこの辺が詳しいです。 git…

動作検証やプラグイン開発に便利!Emacsを複数起動したり最小構成で起動する方法

これは.emacs Advent Calendar 10日目の記事です。 emacsのM-x shellから子emacsを起動 複数個起動する MacのEmacs.appだと意外に面倒なのです。 # Console $ emacs # OSX(Emacs.app) $ /Applications/Emacs.app/Contents/MacOS/Emacs # 並列に起動 $ /Appli…

2014年、おんがえしのアドベントカレンダー

アドベントカレンダーは数が増えすぎました。 ってことで毎日巡回用のランディングページを作ることにします。おすすめのアドベントカレンダーとかあったら教えて下さい。 巡回 .emacs D言語 mruby Ruby 全文検索エンジンGroonga マイナー言語 Unity Clojure…

複数行の検索に対応、Emacsからファイルを直接開けるように - ソースコード検索エンジンMilkode

0.9.9 になりました。個人的にずっと欲しかった複数行検索を入れるのに一ヶ月かかりました。 複数行の検索(ワイド範囲検索) 検索オプションに'w:'を追加 ブラウザで見ているファイルを直接開けるように インストール $ gem install milkode 詳しくはこちらを…

ブラウザで見ているソースコードのファイルをエディタから一瞬で開く

個人的にお気に入りな開発環境を構築出来たので紹介します。どういうものかというと、 Milkodeを使ってブラウザからソースコードを検索 目的の関数を見つけたら、ジャンプしたい行をクリックしてマークお エディタ(Emacs)に移動して M-x milkode:jump-from-b…

今週Qiitaに投稿した記事、まとめ 2013/02/27〜03/05

今週Qiitaに投稿した記事、まとめ 2013/02/27〜03/05 その日見つけた小さなTipsをQiitaにさっと書き込むようにしてます。 自分のGithubのソースコードをオフラインで高速に検索出来るMyGithub (148 Views) Emacsで今見ているバッファの行数を数える (93 View…

今週Qiitaに投稿したまとめ ~Hash#keysの順番は保証されるのか?~

その日見つけた小さなTipsをQiitaにさっと書き込むようにしてます。それをページビューの多い順に並べてみました。 Hash#keysの順番は保証されるのか? (109 Views) C#でRubyっぽいデバッグ表示(Dictionary編) (104 Views) EmacsからFirefoxをリロードする (…

emacs-jpで今日読んだスレッド

Issues · emacs-jp より emacs-jp.github.com用の静的サイトジェネレータについて Jekyll お勧めの色設定やテーマについて話しましょう みんなのEmacsの色使いについて Macでの(バックスラッシュ)入力について OSXのEmacsでバックスラッシュが上手く入力出来…

Emacsの日本語コミュニティ、emacs-jpが出来たのでおすすめページなど

emacs-jpはじめます - Life is very short@syohexさんがemacs-jpというコミュニティを作られました。日本人のEmacsユーザーは結構いると思うのに日本語コミュニティがなくて悲しかった・・。分からないことを質問したりelispを紹介出来る場所が出来て嬉しい…

エラーメッセージから原因箇所への移動を超絶簡単にするjump-to-line

M-x find-file, M-x goto-line の流れが面倒だったので作りました。ongaeshi/jump-to-line · GitHub行番号付きのテキストにカーソルを合わせて移動することが出来ます。ジャンプ前の位置に戻る事も可能です。 /path/to/a.txt:5 ; /path/to/a.txtの5行目にジ…

Emacsでリファクタリングに超絶便利なmark-multiple (複数行同時編集)

まずはこちらの動画をどうぞ。(特に24〜29秒辺り) テキストを選択 同時に変更したい箇所を追加 テキストを編集すると・・ 選択した箇所も一緒に書き換えてくれる!! が出来るようになります。変数名の一括変換に便利です。 インストール MELPAに登録されて…

.emacs.d/init.el を複数のプラットフォームで安定して動かすためのplatform-p

platform-p/platform-p.el というライブラリをGithubに置きました。大部分はtomoyaさんのひとつの .emacs で設定を書き分けるための Tips。 で紹介されていたものです。後で検索しやすくするために変数名に ''platform-'' プレフィックスを付けました。 イン…

Emacsでプラグインを簡単にインストールするためのpackage.elを使ってみる

手動でダウンロード、インストールしていたプラグイン(以下パッケージ)を簡単にインストールすることが出来るようになります。Emacs24に標準搭載される予定でEmacs23にも簡単にインストールすることが出来ます。 手動インストールやauto-installとの比較 コ…

日々の定型作業を自動化する auto-shell-command.el を作りました

ongaeshi/auto-shell-commandファイルセーブ時に指定したシェルコマンドを非同期で実行するelispです。似たようなツールとして flymake や autotest , Guard といったものがあります。 ファイル名をキーに実行するコマンドを指定するため、同じ拡張子のファ…

Emacsに現在行や選択範囲を複製するduplicate-thing.elをパワーアップさせました

数値プレフィックス指定による繰り返しと、 コメントアウトしながら複製する機能を付けました。syohexさんに添削して頂いたコードを元にさらに改良を加えました。 M-cを押すと、現在行を複製します。 選択範囲が指定されている場合は範囲をまるごと複製しま…

Emacsに現在行や選択範囲を複製する機能を付けたら思いのほか作業効率が上がった

バージョンアップしました、MELPAからもインストール出来ます。 Emacsに現在行や選択範囲を複製するduplicate-thing.elをパワーアップさせました - おんがえしの日記 行や範囲のコピー&ペーストを一手で出来るようにしました。 ongaeshi/duplicate-thing - …

行間をいじって、Emacsのフォントをもっと見やすくする(特にWindows)

WindowsでNTEmacsやMeadowを使い始めると、不満に感じるのがフォントのみづらさです。どうしてもメモ帳やVisualStudioより汚く見えてしまう・・・。 色々いじってみて、大分綺麗になる設定を見つけました。これでVisualStudioの見え方とほぼ同じになるはず。…

C, C++の#include指定をanythingで補完入力可能にする、anything-include.elを作りました。

EmacsWiki: anything-include.elをemacs-wikiにupしました。 #includeって何回も色々な場所で打ち込む可能性が高いものなので、履歴管理と補完入力が出来ると便利だと思って作成しました。 これは何? C, C++向け。 #includeの履歴を保持して再利用可能にす…

Emacsのキーバインドを整頓する(2) 〜使用頻度順に並べてみる〜

さて、キーバインド + 使用頻度を調べて解析していきます。ちなみに私のEmacs使用頻度を先に書いておくと、 ほとんどC++ たまにmakefile さらにたまにruby メールやメモ書きなども、ブラウザ以外ほとんどのものはEmacs上で行っている shellはEmacs上で1枚、…

Emacsのキーバインドを整頓する(1)

さて、わざわざemacs-keybindというツールまで作ったのには理由がありまして、ずっとEmacsのキーバインドを整頓したいという思いがあったからなのです。Emacsは多機能で、その気になればどんな機能でも追加することが出来たり、人が作ってくれたりするので他…

tortoise-svn.elをemacs wikiにアップしてみた

練習も兼ねてアップしてみました。tortoise-svn.el新規にページを作る方法が見つからなくてリンクの作成から行ったけど、もしわざとだとしたらいい仕様だと思いました。 Pukiwki等では新規作成ボタンがあるけど、良くデッドリンクなページが生まれてしまうの…

tortoise-svn.el を追加

TortoiseSVNをemacsから呼べると便利だと思ったので作成してみました。 結構便利かも。 使い方 キーバインドはなんとなくvc-modeにあわせてあります。C-x v l ログを表示 C-x v L ログを表示(ディレクトリ、もしくはファイル指定)C-x v = 差分を表示C-x v b …

emacs-keybindが未公開になっていました。

すいません、SourceForgeの設定をとちっていてプロジェクトメンバー以外はダウンロード出来ない状態になっていました・・。 先ほど公開したので、これで皆さんの所でダウンロード出来るようになっていると思います。 失礼致しました。 ※ツール自体の概要はこ…

Emacsのキーバインドをブラウザで視覚的に表示出来る、emacs-keybindをリリース

概要 Emacsのキーバインドをブラウザで視覚的に表示できるelispです(スクリーンショット1枚目) 自身が使用したEmacsコマンドを履歴に保存し、Emacsコマンドの使用頻度を一緒に調べることも可能です。(スクリーンショット2枚目、赤が良く使っているコマンド、…

Emacsのキーバインドをhtmlで出力させるツール

Emacsのキーバインドは複雑で、テキストで一覧表示されてもなかな覚えられなくて困っていました。 そこでEmacsのキーバインドを図示するrubyスクリプトを作ってみました。 使い方 M-x help b でキーバインド一覧を表示させます そのテキストをコピペして、sr…

GNU Emacs拡張ガイドを読み直す(2)

3, 4章を読みました。 3章 コマンド間の協調 4章 バッファの中を検索し、変更する 3章では関数に文脈を導入するためグローバル変数を定義します。 以下、備忘録。 シンボルには"シンボル属性"というものが定義できる。これはどのようなシンボルに対しても設…

GNU Emacs拡張ガイドを読み直す

最近 Emacs Lisp を久しぶりにいくつか書き始めて、そういえばきちんとEmacs Lispの勉強をしたのってEmacs Lispプログラミング入門以来ないなあ、と反省。と思ったら、なんとなく買って余りきちんと読んでいない本を本棚から発見。 しおりがページの半分位に…

文脈を予想しながら適切にコピーと切り取りをしてくれるコマンド

カーソル周辺の文字列を適切に取ってくれるthing-at-pointがとても便利です。 ただ、いちいち切り取る文脈を指定するのが複雑だと感じていました。そこで、(thing-at-point 'symbol)は'('等の上ではnilを返すことを利用して、 (thing-at-point 'symbol) 失敗…

EmacsWikiの、RubikitchAnythingConfigurationを読む(3) 〜anything-at-point〜

anything-at-pointという関数がすごく便利です。 仮引数を渡して起動すると、カーソル位置の単語を拾い出してanythingの入力に渡してくれます。''引用'' (defun anything-at-point (arg) (interactive "P") (if arg (anything nil (concat "\\_<" (thing-at-…

anythingにページの概念を追加する

anythingを使い込んでいくと、たくさんのanythingソースを追加したくなってきて、段々と重くなってきます。また、anything-c-source-google-suggestやanything-c-source-locate(便利だが若干重い)、anything-c-source-emacs-functions等、普段は使わないよう…

EmacsWikiの、RubikitchAnythingConfigurationを読む(1)

EmacsWikの、EmacsWiki: Rubikitch Anything Configurationはanythingの様々な設定がいっぱいで、とても勉強になります。まずはキーバインド辺りを読んで見ました。anything-next-source, anything-previous-source、ソース種類を切り替えます。 anything-so…

EmacsWikiの、RubikitchAnythingConfigurationを読む(2) 〜google検索をanythingから〜

anything-c-source-anything-google-fallback というのがありました。 これは、Meadow/Emacs memo: インターネット関連にあるgoogle.elをanything.elから呼び出す仕組みです。 ソースから引用↓ ;; (@* "google fallback") (defvar anything-c-source-anythin…

anythingを利用して、rubyのプログラムをリアルタイムに実行させる

id:rubikitchさんや、id:IMAKADOさんの記事を読んでanythingの勉強中です。 習作にrubyのインタプリタを実行させるanythingソースを作ってみました。 (defun anything-c-has-print (input) (if (string-match "print\\|puts" input) t nil)) (defun anything…