fnwiya's quine

自分自身を出力するブログ

102.emacs

hydraで画面分割のサイズ調整を簡単に

C-x 2等で画面分割をすると基本綺麗に等分されるのですが、 メインと出力先みたいな形で画面分割の割合を変えたいことがあります。 ただいちいち[M-x ~~~×調整したい分]とやるのは面倒なのでhydraを導入しました。 今のところほぼサンプルのものそのまんまで…

emacsでRを書く(ESS)

分析系は全部pythonでやろうかとも思ったのですがRのほうが情報が充実してることもあるので。 ESS - Emacs Speaks Statistics (use-package ess :mode (("\\.[rR]$" . R-mode)) :config ;; 起動時にワーキングディレクトリを尋ねられないようにする (setq es…

quickrunで結果を確認しつつ開発する

これでいちいちターミナルに移ってpython yourscript.pyとかしなくてもよくなります。 (use-package quickrun :bind (("<f5>" . quickrun)) :config (push '("*quickrun*" :height 20) popwin:special-display-config) )</f5>

emacsの設定で、該当する設定ファイルがあった場合のみ読み込む

emacsを複数環境で同期しているのですが、 公開できない情報をdropboxで管理していて、 片方の環境ではその設定は使っていません。 そんなときでも同じinit.elで動かせるように、 特定のディレクトリが存在したら設定を読み込む設定をしています。 (use-pack…

emacs内のシェルでプロンプトにm4で出るのを消す

久々に設定やり直したら出てきたのでメモ mkdir -p ~/.terminfo/65/ cp /usr/share/terminfo/65/eterm ~/.terminfo/65/eterm-color

参考にしているdotfilesまとめ

最近dotfilesを再構成しようと取り組んでいるのですが その過程で参考にさせていただいた方々のご紹介です。 今はまだまだですが インストールスクリプト( installation script )を用意する HTTP 経由で利用できるように工夫する deploy と initialize は…

dotfilesに.emacs.dを統合

今までなんとなく別管理してましたが統合しました。 github.com ホントはマージとかしたらいいんでしょうけど色々一新したい気分だったので.emacs.dの.gitは吹き飛ばしました。 おかげでコミット履歴がなくなってgithubの草がさみしくなりましたがこれからま…

emacsライクなキーバインドのtmux

emacs内でmulti-termを走らせるのもいいですが、 たまにシェルにこもるときに快適でありたいのでtmuxを導入し、emacsの操作感に近づけてみました。 まだ凝りきれていない部分もありますが、 pecoと合わせればhelmやidoも再現できる気がするので弄んでみます…

emacs&slime&sbcl(CommonLisp-mode)

emacsでcommon lispを書くときの設定です。 処理系は情報量も多いsbclにしました。 以下の設定の上、M-x slimeで起動します。 最初焦りましたがとりあえず(quit)で終了できることがわかって一安心です笑 (setq inferior-lisp-program "/usr/local/bin/sbcl")…

変数名・関数名で悩んだ時のお助け(codic.el)

英語はあまり得意でないので変数名や関数名で悩むことがあります。 そんな時はcodic codic.jp 本家サイトはこちらですがemacsから開けます。 melpaにあるのでインストールして以下の設定でM-x codicを打って、 日本語を入力すれば該当する英単語を教えてくれ…

{を補完して欲しいときと片方だけでいい時うまく使い分ける(smartchr)

smartparensなどを使っていると{だけ入力するのが意外と大変です。 - {を押す - C-dで}消す みたいな2コマンド必要になります。 かといって普段は{}と補完されたほうが便利なのでうまいことできないかと考えていたのですがsmartchrを使うとうまくいきました…

emacsでhtmlのリアルタイムプレビュー(Impatient Mode)

やっと見つけたリアルタイムプレビューのパッケージです。 他にもいくつかありましたが、外部環境に依存しないのが素晴らしいです。 github.com 使い方はREADMEのとおりですが まず M-x httpd-start 次にプレビューしたいバッファで M-x httpd-start その後…

今開いているバッファ以外をまとめてkillするコマンド

特にタブを使用している人向けですが 大量にバッファを開くとタブが増えてバッファ間の移動が不便になります。 かといって一つ一つバッファをC-kしていくのも面倒なのでまとめてkillするコマンドを設定しています。 (defun my/filter (condp lst) (delq nil …

helmからidoに移行しました

emacsを使うのであれば必須レベルのパッケージhelmですが、 なんか重い気がしたのとtwitter上で作者どうなん的な話がでていたのを受けて 標準搭載のidoに移行しました。 自分の現状の使用方法(M-xとfind-fileとrecentfができればだいたい大丈夫)であればなん…

ファイルの先頭・最後への移動を簡単に(sequential-command-config)

ファイルの最後に移動したい時どうしてますか? デフォルトだとたしかC->みたいな押しにくいコマンドが割り当てられていると思いますが、 もっと便利にしましょう。 (use-package sequential-command-config :bind (("C-a" . seq-home) ("C-e" . seq-end)) :…

emacsでjquery書くならtern-mode

いやぁjquery便利ですね。 基本はvanila.js好きですが、 DOM操作は変な意地を貼らずにjquery使ったほうが早いです。 document.getElementByIdって、、、^^; 以下を参考に設定しました。 EmacsにternをインストールしてjQueryを補完する -- blog.10rane.com (…

emacsからFacebookのチャット

普段ウェブサイトブロッカーという拡張機能で指定時間にFacebookへのアクセスを禁止してるんですが、 チャットだけは必要なことがあったのでemacsから起動できるように設定しました。 ;; Define location of gnutls-cli on OS X, instaled via brew (setq st…

emacsでxmlを編集するときの設定

xmlを書いていると開始タグと閉じタグがごちゃごちゃしてきて対応関係がわからなくなったりしますが こちらの設定を行えば

emacでsqlを書くときに自動でキーワードを大文字化する

SQLを書くときにもうSHIFT押しっぱなしにする必要はありません。 (use-package sql :mode (("\.sql$" . sql-mode)) ) (use-package sqlup-mode :commands (sqlup-mode) :init (add-hook 'sql-mode-hook 'sqlup-mode) (add-hook 'sql-interactive-mode-hook '…

emacsでルート権限が必要なファイルを開く

emacs上でファイルを開くときにルート権限が必要だとReadOnlyになったりしてつらいです。 そこでroot権限が必要なときは自動で切り替えてくれる設定を導入しました。 (defun th-rename-tramp-buffer () (when (file-remote-p (buffer-file-name)) (rename-bu…

emacsおすすめパッケージ"corral.el" 括弧やダブルクオーテーションを単語単位でまとめてつける。

探してた機能が見つかりました。 someword1 some|word2 someword3 上記のような状態(|がカーソル位置)でsomewoed2を""囲おうと思ったら ・単語の先頭に移動 →ダブルクオーテーションを打つ。 →うっかり補完されたりしたらふたつ目のダブルクオーテーションを…

eww使ってみた

emacs組み込みのテキストブラウザeww ちょっとググるだけならいちいちウィンドウを切り替えるのも面倒なのでありかなと思って導入してみました。 自分の場合はブラウザを完全に捨て去るつもりはないので設定は軽めです。 ace-linkを使うとhint-a-hint的にリ…

Emacsの公開したくない個人情報を含む設定ファイルはdropboxに保存しよう

emacsでtwittering-modeを使うときなどは アカウント情報を設定ファイルに書く必要があります。 githubで設定ファイルを管理していて、アカウントのパスワードごと公開するわけにいかないので そういった個人情報を含む設定ファイルのみdropboxに移しました…

windowsにEmacs24.5を導入

インターンシップ先では windows7上でVMを使ってubuntuで開発をしているのですが、 ちょっとwindows側でメモを取るときや簡単なコードを書くときに使い慣れたEmacsが欲しかったのでインストールしました。 やり方はこちらを参考に yohshiy.blog.fc2.com ちょ…

Emacsで設定ファイルを初めてバイトコンパイルする方法とその後自動で更新する方法

タイトルのままです。 バイトコンパイルすると1.5〜2倍ほど起動速度が早くなるとかならないとか。 初めてバイトコンパイルする方法 以下のコードをScratchバッファあたりのすきなところでC-x C-eで実行 ("~/.emacs.d/loader-init"の部分は自分の設定ファイル…

モードラインを機能的かつおしゃれに

通常のままだとなんとも言えない存在のモードライン。 milkypostman/powerline · GitHubを導入してもいいと思いますが 自分にはすこし合わなかったので自作してます。 総行数(現在の行数:列数)を表示 ReadOnly/編集済み/それ以外で色と表示が変わる Gitの…

ubuntuでemacsをインストールして、ランチャーにアイコンを追加する方法

仮想環境でubuntuを利用することになったのでメモ 0.端末から必要なパッケージをインストール sudo apt-get install build-essential sudo apt-get build-dep emacs24 1.Emacs本体のDL&解凍 curl -O http://ftp.gnu.org/pub/gnu/emacs/emacs-24.4.tar.gz ta…

package.elでパッケージを一括管理&いらないパッケージ削除

パッケージ管理はpackage.el(標準のもの)で行っているのですが、 お試しでパッケージを導入していたらelispフォルダ(packageのインストール先)がかなりごちゃごちゃになってしまって、 もう使っていないものもあったので整理しました。 以下のコードをinit.e…

use-package導入してみた

設定ファイルの書き方がなんともいけてないなと思っていたので use-packageを取り入れました。 qiita.com 単一ファイルで管理している方には効果抜群みたいですが、 分割で管理している僕にとっても 遅延ロードの書き方が簡単で助かってます。

twittering-modeでの新規投稿をpopwinに対応させる

画面分割していると非常に狭いところに投稿画面現れるので popwinに対応させたかったのですが思いの外かなりハマりました。 (setq twittering-pop-to-buffer-function 'pop-to-buffer) これだけです。 あとは通常通り (push '("*twittering-edit*" :height 2…