2017-01-07 Sat

howm で ripgrep を使う はてぶ

以下のページを見かけたので、howm で ripgrep を使えるようにしてみた。

- Out of Dimension: 次世代の高速検索ツール ripgrep を howm で使う
  http://extra-vision.blogspot.jp/2016/10/ripgrep-howm.html
- Out of Dimension: howm + ripgrep のちょっとした問題
  http://extra-vision.blogspot.jp/2016/11/howm-ripgrep.html
- Out of Dimension: 続・ howm + ripgrep のちょっとした問題
  http://extra-vision.blogspot.jp/2016/12/howm-ripgrep.html

基本的には、上記のページに書かれているように設定すればいいのだけど、
Solaris に ripgrep を用意できないので、Solaris では the silver searcher を使うようにしたい。

ripgrep、ag を使う設定をそれぞれ howm-ripgrep、howm-ag という関数にまとめて、
以下のように、rg、ag の有無で切替えるようにした。

(cond
  ((executable-find "rg") (howm-ripgrep))
  ((executable-find "ag") (howm-ag)))

ag 用の設定は以下のページをベースにしている。

- Out of Dimension: Emacs + howm で ag (The Silver Searcher) を使う
  http://extra-vision.blogspot.jp/2016/02/emacs-howm-ag-silver-searcher.html

2014-11-17 Mon

flymake-puppet が puppet-lint へオプションを渡せるようになっていた はてぶ

ので、さっそく、'--no-80chars-check' をわたすようにして、
flymake-puppet の設定は次のように。

(require 'flymake-puppet)
(setq flymake-puppet-options '("--no-80chars-check"))
(add-hook 'puppet-mode-hook 'flymake-puppet-load)

ssh_authorized_key とか 80 文字でおさまらないものがちょこちょこあるし、
それらがひっかからなくなるのは、ちょっとうれしい。

ref. https://github.com/benprew/flymake-puppet/commit/fc4cd25aeac37ed5722bc586d5350fd06ee3067c

2014-01-10 Fri

key-chord.el はてぶ

Execute commands ninja-style with key-chord-mode - Emacs Redux
http://emacsredux.com/blog/2013/04/28/execute-commands-ninja-style-with-key-chord-mode/

下のような設定をすると、'FF' で find-file が実行できる elisp。

(require 'key-chord)
(key-chord-define-global "FF" 'find-file)
(key-chord-mode +1)

短時間のうちに key-chord-define-global で指定した文字列を入力しなければ、
command が呼び出されずに、ただの文字入力として扱われる。

key-chord が反応する時間は key-chord.el で以下のように定義されている。

(defvar key-chord-two-keys-delay 0.1	; 0.05 or 0.1
  "Max time delay between two key press to be considered a key chord.")

(defvar key-chord-one-key-delay 0.2	; 0.2 or 0.3 to avoid first autorepeat
  "Max time delay between two press of the same key to be considered a key chord.
This should normally be a little longer than `key-chord-two-keys-delay'.")

また、

Switch to previous buffer - Emacs Redux
http://emacsredux.com/blog/2013/04/28/switch-to-previous-buffer/

の switch-to-previous-buffer を登録しておくと便利かもしれない。

(defun switch-to-previous-buffer ()
  "Switch to previously open buffer.
Repeated invocations toggle between the two most recently open buffers."
  (interactive)
  (switch-to-buffer (other-buffer (current-buffer) 1)))

(key-chord-define-global "JJ" 'switch-to-previous-buffer)

2014-01-09 Thu

Emacs でカレンダー はてぶ

Vimmerのあなたの為に。最高のカレンダーcalendar.vimを作りました - Vimはアプリケーションプラットフォームの時代に - プログラムモグモグ
http://d.hatena.ne.jp/itchyny/20140108/1389164688

という記事が流れてきたので、Emacs は?とググってみたところ、
すでにあったのでメモ。

[emacs][ui] Emacs用カレンダー calfw v1.2 リリース - 技術日記@kiwanami
http://d.hatena.ne.jp/kiwanami/20110723/1311434175
calfwからGoogleカレンダーを編集するcalfw-gcal.elを書いてみた - sheephead
http://sheephead.homelinux.org/2011/01/18/6559/

calfw-gcal.el は googlecl が必要
googlecl - Command line tools for the Google Data APIs - Google Project Hosting
http://code.google.com/p/googlecl/

2013-01-03 Thu

org-toodledo を試してみた はてぶ

https://github.com/christopherjwhite/org-toodledo

とりあえず、以下のあたりでうまく処理されないようなので使えない。

- リピート(?)
- フォルダ
- ゴール

フォルダとゴールは日本語をがダメなようなので、
英語にすればいいけど、リピート(?)はどうすればいいんだろう。

2011-05-19 Thu

rainbow-delimiters.el はてぶ

Emacs は対応するカッコにをハイライトしたりしてくれるけど,
reinbow-delimiters.el を使うと,
対応するカッコにカッコの深さに応じて色をつけてくれる.

説明が悪いので,以下のページの画像を見てもらった方がいい.
http://emacs-fu.blogspot.com/2011/05/toward-balanced-and-colorful-delimiters.html

とりあえず,以下のような設定をして,lisp-interaction-mode で
rainbow-delimiters が使えるようにする.

(when (require 'rainbow-delimiters nil 'noerror)
  (add-hook 'lisp-interaction-mode-hook 'rainbow-delimiters-mode)
  (add-hook 'emacs-lisp-mode-hook 'rainbow-delimiters-mode))

デフォルトの face の色は見難いので,適当に変更する.

face は rainbow-delimiters-depth-1-face から
rainbow-delimiters-depth-9-face,
rainbow-delimiters-depth-_10-face,
rainbow-delimiters-depth-_11-face,
rainbow-delimiters-depth-_12-face
まで.

via: emacs-fu: toward balanced and colorful delimiters
     http://emacs-fu.blogspot.com/2011/05/toward-balanced-and-colorful-delimiters.html

2011-01-25 Tue

evernote-mode はてぶ

evernote を Emacs から使いたくてググってみたら,
以下を見つけた.

- emacs-evernote-mode - Project Hosting on Google Code
  http://code.google.com/p/emacs-evernote-mode/

とりあえず,インストールして設定したので,
しばらく使ってみる.

2010-08-08 Sun

myrurema.el をインストール はてぶ

- myruremaをemacsから使えるmyrurema.el作ってみた - I am Cruby!
  http://d.hatena.ne.jp/authorNari/20100713/1279027411

Ruby の リファレンスを参照するツール myrurema を Emacs から使えるようにする elisp.

(auto-install-from-url "https://gist.github.com/raw/2875bd46c958ac4c74b2/61d1d41fc587215d3a12499f27657e301319d447/myrurema.el")

M-x rurema
M-x rurema:at-point
とか.

ちょっと試したところ

rurema:search: Symbol's function definition is void: ansi-color-apply-on-region
と言われたので,
M-x ansi-color-for-comint-mode-on
などする必要があるっぽい.

- yhara's myrurema at master - GitHub
  http://github.com/yhara/myrurema

2010-08-08 Sun

hiwin-mode はてぶ

- アクティブな window を可視化する hiwin-mode。 - 日々、とんは語る。
  http://d.hatena.ne.jp/tomoya/20100607/1275862600

タイトル見ただけでは可視化がどういうことかわからなかったけど,
非 active な window の背景を変更することで,
active な window を認識しやすくするというもの.
非 active な window の背景色は調整したいので,
そのあたりはあとで確認.

(追記)
確認した.
すぐわかることだったので,さっさと見ておけばよかった.

非 active な window の背景色は hiwin.el で以下のように定義されている.

(defvar hiwin-color "gray30"
  "非アクティブwindowの背景色")

なので,以下のように設定すればいい.

(setq hiwin-color "gray20")

反映するには,M-x hiwin-mode で一旦 disable にする必要があるっぽい.

黒板系の配色だと,背景が暗くなると,前景が白系の色なので目立ってしまう.
だからと言って,背景を白系に近づけると,window が目立ってしまう.

ということで,前景が暗めな色で使うのがいいっぽい.

2010-08-08 Sun

Emacs テクニックバイブル はてぶ

Emacs テクニックバイブル

購入.

とりあえず,時間のある時にパラパラと読む感じで.

2010-07-02 Fri

ELPA - Emacs Lisp Package Archive はてぶ

- Welcome to ELPA
  http://tromey.com/elpa/

via: 最近の emacs の環境 - HsbtDiary(2010-06-28)
     http://www.hsbt.org/diary/20100628.html#p01

2010-05-12 Wed

RSense 0.3 にアップデート はてぶ

その他、エディタが固まったり、Javaプロセスが落ちたりといった致命的なバグが修正されています。これによりv0.2に比べて断然に安定度が増しています。また、CPU使用率やメモリ使用量などのパフォーマンスの問題も改善されています。

定義元ジャンプなどに対応したRSense v0.3をリリースしました - Monthly Emacs


ということなので,アップデート.



新機能

気になるものだけメモ.

○ 定義元ジャンプ

EmacsではM-x rsense-jump-to-definition、Vimでは:RSenseJumpToDefinitionで利用できます。

ちょっと試したところ,同じファイル内はうまくいった.
別ファイルで定義してるものについてはジャンプできなかった.

まだ実験的段階ということなので,今後に期待.

○ Where Is

EmacsではM-x rsense-where-is、Vimでは:RSenseWhereIsで利用できます。EmacsではM-x rsense-where-is、Vimでは:RSenseWhereIsで利用できます。

現在,どのクラス・メソッドを編集しているか表示.

はじめて実行したときはきちんと表示されるけど,
他のメソッドに移動して再度 M-x rsense-where-is すると
前回の結果が返ってきてしまう.

- RSense - Rubyのための最も優れた開発援助ツール
  http://cx4a.org/software/rsense/index.ja.html
- RSense をインストールしてみた [2010-03-20-1]

2010-05-10 Mon

popup-kill-ring.el 導入 はてぶ

C-y のあとの M-y での yank を pop up で表示してくれる elisp.

popup-kill-ring

popup.el は auto-complete に含まれるので,
auto-complete が入っていれば ok.

auto-install-from-emacswiki で
- pos-tip.el
- popup-kill-ring.el
をインストール.

(require 'popup)
(require 'pos-tip)
(require 'popup-kill-ring)
(global-set-key "\M-y" 'popup-kill-ring)

via: popup-kill-ring.el / Emacs の貼り付け機能を popup.el、pos-tip.el を利用して拡張する。 - とりあえず暇だったし何となく始めたブログ
     http://d.hatena.ne.jp/khiker/20100425/popup_kill_ring

2010-05-07 Fri

Emacs を Cacoo と連携させる cacoo.el はてぶ

- Emacsでスムーズに図形編集ができるようになるcacoo.elを作ってみた - 技術日記@kiwanami
  http://d.hatena.ne.jp/kiwanami/20100507/1273205079

タイトルを見たときは,Emacs 上で図形の編集って
- Emacs picture-modeの拡張 - 屯遁のパズルとプログラミングの日記
  http://d.hatena.ne.jp/tamura70/20100125/ditaa
のようなものかと思ったら,http://cacoo.com/ と連携させるマイナーモードで,
Emacs 上で図形の編集ができるものではなかったけど,
cacoo は使いやすいので,これはこれで便利そう.

できること
- cacoo から画像を取得
  - 公開設定のものだけ(非公開のものも扱えるとうれしい)
- 画像のインライン表示
  - cacoo 上の画像でなくても可
- 画像に対応する cacoo 上のページを開く

インストール

(auto-install-from-url "http://github.com/kiwanami/emacs-cacoo/raw/master/cacoo.el")

設定

(require 'cacoo)
(global-set-key (kbd "M--") 'toggle-cacoo-minor-mode)
(setq cacoo:img-dir-ok t)
(setq cacoo:max-size 600)
(setq cacoo:external-viewer "eog")

外部ビューワは,とりあえず,eog にしてみた.

Keybind

とりあえず,以下だけは覚えておく.

M-- cacoo mode の toggle
C-c , y [img:uri] 形式で貼り付け
C-c , D バッファ上のすべての画像を表示
C-c , T 表示している画像をテキストに戻す
C-c , e 画像の編集ページをブラウザで開く

関連
- The iimage minor mode for Emacs [2006-05-09-8]

2010-04-06 Tue

rabbit-mode はてぶ

RDで書かれた文書をもとにプレゼンテーションを行う Rabbit 用のモード.

theme をごにょごにょしようとして,
sample/ 以下を見ていて気づいた.

できること
- rabbit の起動
- rd 上でスライド単位の移動・編集
- タイトル・画像などの挿入

設定

(autoload 'rabbit-mode "rabbit-mode" "major mode for Rabbit" t)
(add-to-list 'auto-mode-alist '("\\.\\(rbt\\|rab\\)$" . rabbit-mode))

とりあえず,覚えておきたいのは,以下のキーバインド.

Rabbit を起動する C-c C-r
スライド単位で移動 M-n, M-p
タイトルの挿入 C-c C-t
画像のテンプレートを挿入 C-c C-i

- RAA - rabbit
  http://raa.ruby-lang.org/project/rabbit/

2010-03-20 Sat

RSense をインストールしてみた はてぶ

- RSense - Rubyのための最も優れた開発援助ツール
  http://cx4a.org/software/rsense/index.ja.html

demo 動画を見たらすごく便利そうだったので,
とりあえず,インストールしてみました.

インストール
# とりあえず,~/ 直下で.

$ wget -nd http://cx4a.org/pub/rsense/
$ tar jxvf rsense-0.2.tar.bz2
$ export RSENSE_HOME=$HOME/rsense-0.2
$ cd $RSENSE_HOME
$ chmod +x bin/rsense
$ bin/rsense version
RSense 0.2

設定

$ ruby etc/config.rb > ~/.rsense

Emacs の設定

(setq rsense-home "/home/fumi/rsense-0.2")
(add-to-list 'load-path (concat rsense-home "/etc"))
(require 'rsense)
M-x rsense-version で動作を確認

「.」や「::」を入力したあと,
rsense-complete で別バッファに補完候補を表示

ac-complete-rsense で auto-complete を利用した表示
rsense 02

自動的に補完させるには,ruby-mode-hook で以下のようにすればいいらしい.

(add-hook 'ruby-mode-hook
          (lambda ()
            (add-to-list 'ac-sources 'ac-source-rsense-method)
            (add-to-list 'ac-sources 'ac-source-rsense-constant)))


Referrer (Inside):
[2010-05-12-1] RSense 0.3 にアップデート

2010-02-02 Tue

C-aで「行頭」と「インデントを飛ばした行頭」を行き来する はてぶ

- C-aで「行頭」と「インデントを飛ばした行頭」を行き来する - ポロポロ
  http://d.hatena.ne.jp/kitokitoki/20100131/p4

(defun my-move-beginning-of-line ()
  (interactive)
  (if (bolp)
      (back-to-indentation)
    (beginning-of-line)))
(global-set-key "\C-a" 'my-move-beginning-of-line)

コメントに sequntial-command を使った方法があるけど,
「行頭」と「インデントを飛ばした行頭」の移動だけで十分だし,
他に sequencial-command を使うこともなさそうなので,
上の方法を使うことにする.

(define-sequential-command seq-home
  back-to-indentation beginning-of-line beginning-of-buffer seq-return)
(global-set-key "\C-a" 'seq-home)

2009-11-21 Sat

go-mode はてぶ

Go を CentOS にインストールしてみた [2009-11-13-2] の追記.

設定

(require 'go-mode-load)
(add-hook 'go-mode-hook
	  '(lambda ()
	     (setq tab-width 4)
	     ))

デフォルトではタブ幅が 8 なので 4 に変更.

閉じ括弧の挙動について

func main() {
	fmt.Printf("hello, world!\n")
}
と書きたいとき,これだと
func main() {
	fmt.Printf("hello, world!\n")
	}
のようにインデントされてしまう.

func main() {
	fmt.Printf("hello, world!\n");
}
のように,括弧前をセミコロンで終わらせれば,きちんとインデントされる.
ということで,セミコロンは省略しない方がよさげ.

2009-11-13 Fri

Go を CentOS にインストールしてみた はてぶ

Google からプログラミング言語『Go』がリリースされたので,
インストールしてみました.

基本的に,
新プログラミング言語「Go」をCentOSにインストールしてみた « zaru blog
に記載されている通りです.

違いは以下.
- bison のインストール
- Mercurial を rpmforge からインストール
- GOARCH を amd64 に
- go-mode の設定(Emacs)

[ Read More... ]

Referrer (Inside):
[2009-11-21-1] go-mode

2009-09-20 Sun

Emacs 23 で hilight-completion が使えない はてぶ

[2009-08-07-1] に書いた,Emacs 23 で C-x C-f が使えなくなった件.

いろいろと試してみたら,hilight-completion が原因だったっぽい.

hilight-completion は更新されていないし,
[2009-08-07-1] から今まで,なくても困らなかったので,
使わない方向で.

- Highlight completion home page
  http://www.math.washington.edu/~palmieri/Emacs/hlc.html
- ファイル名を自動で補完 ― highlight-completion
  http://www.bookshelf.jp/cgi-bin/goto.cgi?file=meadow&node=highlight-completion

ChangeLog 最新ページ / カテゴリ最新ページ / 1 2 3 4 5 6 7 8 / page 1 (8)