emacs

C-TABでバッファ切り替え

Emacsのデフォルトパッケージbsに同梱されているコマンド、bs-cycle-nextとbs-cycle-prevを使う。 (global-set-key (kbd "C-<tab>") 'bs-cycle-next) (global-set-key (kbd "C-S-<tab>") 'bs-cycle-previous) 同様の機能はiflipbというパッケージによっても提供されて</tab></tab>…

Emacsにおいてカーソル下の単語をMacの辞書で調べるときのhack

関数の本体はどこかにあった設定を参考にさせていただいた。 my-dictが表題に沿った関数。my-dict2は自分で検索語句を入力する関数。 (defun my-dict () (interactive) (let ((url (concat "dict://" (read-from-minibuffer "Search: " (current-word)))) (b…

EmacsのFrame切り替えを補助するEmacs Lisp

表題について、以下のElispを見つけたので紹介する。frame-movementというパッケージである。 github.com本パッケージにより、'frame-movement/select-next-frame' (次のフレームに移動)と 'frame-movement/select-prev-frame'(前のフレームに移動)とい…

MacからリモートのLinuxマシンにTrampしたときに感じたイライラ

Mac上のEmacsで、Tramp modeを使ってリモートサーバ(Linux)上のファイルを編集することが多々あるんだけども、リージョンをコピーしてからyankするときに、「pbpasteが見つからないよ!」みたいな感じて怒られる。よく設定を見直したら、以下が悪さをしてい…

Tramp Modeの情報をまとめたくて

リモートサーバー上のファイルをローカルマシン上で編集できたりするので大変便利。 /ssh:hoge@fuga:/path/to/file Emacs: まだターミナルで消耗してるの? | 葉月夜堂 fukuyama.cod.hatena.ne.jpd.hatena.ne.jpblog.digital-bot.comnishikawasasaki.hatenab…

swiper-multiの使い方

Use "C-M-m" (`ivy-call') to add or remove one more buffer without exiting. Use "C-m" (`ivy-done') to add one last buffer. Or use "C-M-j" (`ivy-immediate-done') to finish without adding more buffers. Hold "C-M-n" (`ivy-next-line-and-call') …

Company の補完をcase sensitiveにするための設定

companyで補完が走るとき、全部lower caseで補完されるのがストレスフルだから、以下の設定を入れる。 (setq company-dabbrev-downcase nil) 参考 dabbrev - How to make Company mode be case-sensitive on plain Text? - Emacs Stack Exchange

^M (CR改行コード)をLF改行コードに置換

メモ。 M-x replace-string RET C-q C-m RET C-q C-j RET replace-stringはquery-replace (M-%)などでもよい。 また以下のマクロも悪くはない: (fset 'replace-ctrlms [escape ?< escape ?% ?\C-q ?\C-m return ?\C-q ?\C-j return ?!]) (global-set-key "\C…

ace-pinyinをace-isearchで用いるときのやり方

ace-jump-modeはもともと英数字のみを対象にジャンプするコマンドだが、これを日本語文字に対しても利用可能にしたのがるびきち氏であった: emacs ace-pinyin.el : 【念願のMigemo化】ace-jump-char-modeが日本語文字に対応!(元中国語) | MELPA Emacs Lisp…

avyを用いた関数の小ネタ集

avyという便利なパッケージが最近出てきた。 詳細は以下の記事を参考に。 qiita.comさて、このavyを用いて、指定した範囲のテキスト、すなわち指定する2行に挟まれるテキストに対してコピーやペースト、インデントやコメントアウトなどを行う関数を書いてみ…

mewのSummary modeでメッセージを折り返し表示させたいとき

Summary modeで '_' を押下する。また折り返しのカラム数はmew-wrap-lines-columnで指定する。

mewのマルチパートメッセージ作成時にはwhitespace-modeをオフに

mewのマルチパートメッセージを作成するときにはwhitespace-modeをオフにしないとメッセージを送信できないという謎の現象が発生する。 # C-c C-cで送信しようとするとnilとか言われる。忘れないためにここにメモしておく。 #まさに備忘録

popupによる補完候補をページ送りするためのコード(auto-complete使用時)

imakado氏のツイートより。auto-complete.el 交換候補popupのページ切り替えするelisp.探したけど見つからなかったので。 https://t.co/vXLxKqhiwn— imakado (@imakado) 2014, 11月 3補完候補がたくさん出るときに有効。以下のコードを設定ファイルに追記す…

mozc.elの変換候補をpopupパッケージを用いて表示する

Emacsの日本語入力メソッドにmozcが利用できるのは周知の通り。 「emacs mozc」などで検索すれば情報がざくざく出てくることだろう。表題について、以下のページにあるコード(mozc-popup.el)をロードパスの通ったところに置き、 d5884/mozc-popup mozc-popup…

ido-vertical-modeとpopwin併用時の不具合

はじめに ido-vertical-modeが便利なことは以下の記事でも紹介されている通りである。 emacs ido-vertical-mode.el : idoの候補を縦に並べ、helmっぽい見た目にする! | MELPA Emacs Lisp Elisp パッケージ インストール 設定 使い方 スクリーンショット | …

ace-isearch に新オプション項目が追加された話

はじめに 拙作ace-isearchに対して先日プルリクエストを頂き、内容が十分納得できまた動作も問題なかったのでマージさせて頂いた。結果として新しくオプション項目が追加されたので、本稿はその内容を解説することを目的とする。以下が当該プルリクエストの…

helm-next-errorのキーバインド改善ネタ

以下の記事で紹介されていたネタに関して。Emacs Tips: helm/anything.el検索結果を次々と辿る方法 – もはやM-x occurいらないよね | るびきち「日刊Emacs」繰り返し入力を容易にするためにsmartrepを用いた。 (smartrep-define-key global-map "M-g" '(("M-…

mc/mark-all-dwimの改良ネタ

以下の記事で紹介されていたmc/mark-all-dwimを用いた関数の改良ネタである。emacs multiple-cursors.el : Emacsは忍者だった!置換とか矩形編集とか使ってんじゃねぇぇぇぇ!!最強設定を紹介 | MELPA Emacs Lisp Elisp パッケージ インストール 設定 使い…

helm-occurをhelm-migemo対応させた後にすること

以下のhelm-migemoの修正を施した後にやればいいと思われる修正。http://rubikitch.com/2014/12/19/helm-migemo/ (cl-defun helm-moccur-action (candidate &optional (method (quote buffer)) mark) "Jump to CANDIDATE with METHOD. arg METHOD can be one…

ewwを特定のwebページから起動したいとき

以下のコードを評価し、M-x eww-gohomeとする。 (defvar eww-home-page "http://www.yahoo.co.jp") (defun eww-gohome () "Go to the homepage specified by `eww-home-page'." (interactive) (unless eww-home-page (user-error "No `eww-home-page' is fou…

行移動コマンドとace-jump-line-modeを組み合わせるネタ

表題の通り。 以下のコードである。 (defadvice next-line (around my-next-line activate) (if (eq (ad-get-arg 0) 4) (ace-jump-line-mode) ad-do-it)) (defadvice previous-line (around my-previous-line activate) (if (eq (ad-get-arg 0) 4) (ace-jump…

フレーム間のフォーカス移動に便利なframemove

はじめに Emacsでは複数のフレームを立ち上げることが可能なことは周知の通りだろう。 C-x 5 2で新規フレーム作成、などである。 デュアルディスプレイ環境では複数フレームを立ち上げて作業、ということも珍しくはない。本稿では作成したフレーム間でのフォ…

MewでGmailを読むとき,ssl-verify-levelが0の場合のTIPS

MewでGmailを読むことができるのは周知の事実だろう. 関連する記事は検索すればいくらでも出てくるので詳細な解説はしない.以下,計算機環境はgnupack 11.0 on Windowsであるものとして話を進める. #筆者の計算機環境Gmailを読むためにはIMAPサーバ(ima…

find-diredにおいてファイルサイズ表示をhuman-readableにするTIPS

Ubuntuの場合は以下で事足りる. (setq find-ls-option '("-print0 | xargs -0 ls -alhd" . "")) gnupackの場合,私の環境下では,例えば以下のようにしてタイムスタンプから漢字を除外しないと,*Find*バッファから各ファイルへジャンプするときにエラーと…

S式を評価した結果でS式自体を置換したいときには

Emacs にはカーソル直前のS式を評価するためのコマンド eval-last-sexp が存在する. その他,eval-expression や eval-defun など,S式を評価するコマンドはいくつか存在する. S式の評価結果を用いてS式自体を置換してしまう,ということも実は可能だった…

find-grep-diredした後にisearchする方法

M-x find-grep-dired した後,同じクエリでisearch-forward をするためには,ということ. 以下の関数を評価して使用する. isearchを続けていくには M-, を連続で押していけばよい. (defun find-grep-dired-do-search (dir regexp) "First perform `find-g…

find-name-diredを複数ワイルドカードで実行

オリジナルのfind-name-diredではワイルドカードを複数指定することはできない. M-x find-diredのみで実現可能ではあるのだが,タイプ量がかさむ. そこでfind-diredのラッパーとして以下を書いてみた. (defun my-find-name-dired (dir patterns) (interac…

aok.elの紹介及び改善策の提案

はじめに aok.elというパッケージがMELPAに登録されている. http://www.emacswiki.org/emacs-en/aok.el ざっくり言うと,multi-occurのユーザフレンドリーなラッパーである. 本稿ではこのaok.elの紹介およびその改善策について述べる. #color-moccur使え…

拡張子を指定してfind-grep-dired

オリジナルのfind-grep-diredでは拡張子を指定して実行できないので, lgrepからソースを借りてそれを実現してみた. (defun my-find-grep-dired (dir regexp files) (interactive (let* ((regexp (grep-read-regexp)) (files (grep-read-files regexp)) (di…

Ibufferのバッファリストに表示する項目を追加する

バッファリストを表示するツールとしてIbuffer Modeが存在する. カスタマイズするとなかなか便利に使えるツールである. デフォルトで表示可能な項目にはバッファ名やメジャーモード名などがある. 私はこれらに加えて,各バッファの行数を表示したいと考え…