開いたファイルの文字コードが誤ってる場合の修正
2013-03-26-1 / カテゴリ: [emacs] / [permlink]

utf-8のファイルなのに日本語文字数が少なくてshift_jisとして開いてしまった場合、など。

C-x RET r
して utf-8 とか入力。
または revert-buffer-with-coding-system

C-x RET f (set-buffer-file-coding-system)
は覚えてるんだけど、こっちはすぐ忘れる…

タブの入力
2007-02-22-1 / カテゴリ: [emacs][meadow] / [permlink]

struct hoge {
   m_foo;    // foo
   m_bar;    // bar
   m_baz;    // baz
         ^^^^ この辺にタブを入れたい
};
タブキーや C-i はインデント
タブの入力は
M-i
スタイルに関係なく 0x09(ハードタブ) がカーソル位置に挿入される。
表示上のタブ幅はスタイルに影響される。[2006-03-09-1]で言えば tab-width の値。

関数一覧表示
2006-12-08-1 / カテゴリ: [programming][emacs][meadow] / [permlink]

関数を一覧表示する — summarye.el
現在のバッファのソースコード内にある関数定義の一覧を表示する。
navi.el の方が(デフォルトでは)使いやすそうだったけど、あいにく手元の(一覧を表示したい)C++ソースでちゃんと動いてくれなかったんで summarye.el を使用。
便利なり。

read-only で開いたファイルを書込みOK状態にする
2006-03-09-2 / カテゴリ: [meadow][emacs] / [permlink]

C-c C-q
トグル式。も1回やれば読み取り専用になる。
ファイルシステム上のモードが変わるわけではないので、read-onlyのファイルを開いた場合は、1. read only を解除する 2. C-c C-q 3. 保存 にする。
のかな。

タブ幅の変更
2006-03-09-1 / カテゴリ: [meadow][emacs] / [permlink]

基本技、だろーな
(setq tab-width 4)

Cモードのみ、に追加してみた
(add-hook 'c-mode-common-hook
          '(lambda ()
             (c-set-style "stroustrup")
             (setq c-basic-offset 4)
             (setq tab-width 4)
             (setq indent-tabs-mode nil)))
Referrer (Inside): [2007-02-22-1]

選択undo
2006-03-08-1 / カテゴリ: [meadow][emacs] / [permlink]

1. あるバッファの編集を行なう(編集A)
2. 同じバッファの編集を行なう(編集B)

ここでフツーに undo すれば当然「編集B」の箇所が対象だが、「編集A」のみ undo したい場合、対象箇所をリージョン選択し C-/ で、選択範囲のみの undo が可能。

スタイルの変更
2006-03-06-2 / カテゴリ: [programming][c][meadow][emacs] / [permlink]

ずっと Perl やってたからかな? C でも BSD なスタイル(↓)で書いてる.
int function() {
    :
}
(Javaもこのスタイルっぽい)

まぁ,いろいろあって GNU スタイル(↓)に改宗しよーと思い,
int function()
{
    :
}
Meadow でコードを書いてたら,関数は良いが制御構文が…
if (foobar)
  {
    :
  }
えー!? ナニコレ!?

http://www.02.246.ne.jp/~torutk/cxx/emacs/indentation.html
どーやら Emacs では,デフォルトのスタイル(c-set-style で設定)は gnu で,上記の自動インデントを行うみたい.さすがに括弧の位置はインデントしたくないので,stroustrup を使うことにする.これなら関数も制御構文も
foobar
{
    :
}
になってくれた.

.emacs はこんな感じ
(add-hook 'c-mode-common-hook
          '(lambda ()
             (c-set-style "stroustrup")
             (setq c-basic-offset 4)       ; インデントは4文字
             (setq indent-tabs-mode nil))) ; ハードタブじゃなくてスペース

タグジャンプ(定義位置の参照)
2006-03-06-1 / カテゴリ: [programming][meadow][emacs] / [permlink]

あらかじめ
% etags *.{c,h}
としておく.すると TAGS というバイナリファイルができる.
多分 VC++ における bsc ファイルだ.
この状態で Meadow で参照対象にカーソルを合わせ
Esc .  (M-x find-tag)
(または M-.)すればジャンプする.
おまけで,M-/ の補完も賢くなる.
etags.exe は $MEADOW/bin 以下.パス通しとけ.

標準ライブラリの関数や定数なんかも含めたければ,/usr/include/*.h /usr/include/*/*.h も引数に入れれば良い.
が,Cygwin + Meadow 環境では
% etags *.{c,h} c:/usr/include/*.h c:/usr/include/*/*.h
じゃないと「ンなファイルねぇよ」になる.

連続する空行を削る
2006-01-25-1 / カテゴリ: [meadow][emacs] / [permlink]

連続空行の1行目の上の非空行で
C-x C-o
便利だ。

空行中に実行すると、カーソル行上下の空行が削られる。
(その後 C-k すれば全部消える)

バイナリファイルを開く
2006-01-11-2 / カテゴリ: [meadow][emacs] / [permlink]

M-x hexl-find-file
で、ファイル名

または、ファイルを開いている状態で
M-x hexl-mode

いずれも、キーボードからキーのasciiコードなら入力可能
(a -> 61, 0 -> 30 など)
通常モード(テキスト編集)に戻すには
C-c C-c
または
M-x hexl-mode-exit

編集は
M-x hexl-insert-hex-char
または
c-M-x
で、キーボードの文字を16進として入力できる。

制御コードとか、non-printableなコードを入れる場合は面倒だな…

対応括弧へのジャンプ
2005-12-25-4 / カテゴリ: [meadow][emacs] / [permlink]

括弧にカーソルを合わせて
M-C-n (開き括弧へ)
M-C-p (閉じ括弧へ)
ほかは,
M-x show-paren-mode
で,カーソルにフォーカスしているときに対応する括弧が強調される.

.emacs には
(show-paren-mode t)
としておけば有効になるけど,起動時に
Args out of range: 501414, 501414
って出るんだよなぁ… 一応有効になるけど.

emacs で namazu 検索
2005-06-29-2 / カテゴリ: [debian][emacs][namazu] / [permlink]

namazu パッケージに入っている namazu.el を使う。
.emacs に
(autoload 'namazu "namazu" nil t)
(setq namazu-default-dir "/foo/bar/namazu/index")
を追加。

予め、検索対象となるnamazuのインデックスファイルが /foo/bar/namazu/index 直下にあること。

これで、emacs を起動して M-x namazu とし、キーワードを入力すれば検索できる。
検索対象インデックス(のディレクトリ)を変更する場合は、C-u M-x namazu で、対象ディレクトリを指定する。
または
(setq namazu-dir-alist
      '(("irc" . "/var/www/ssl/irc/index")
        ("mail" . "/home/user/Mailindex")))
など設定しておけば、ディレクトリではなく "irc", "mail" と、エイリアス指定できる。

migemo パッケージで簡単インストール
2005-06-29-1 / カテゴリ: [debian][emacs] / [permlink]

# apt-get install migemo
終い :D

.emacs に
(load "migemo")
を追加すれば、ローマ字で日本語インクリメンタルサーチ可能
xemacs の場合は .xemacs/init.el に書けば良い。

/usr/bin/emacs の wl で、cram-md5 認証ができない
2005-06-15-1 / カテゴリ: [linux][debian][emacs][wanderlust] / [permlink]

sarge に upgrade する以前からできてたかも定かじゃないんだけど、、、md5-el がないとかで、送信できない…。locate で見る限り、md5.el やら md5-el やら入ってるんだけどなぁ。しょうがないので、xemacs をインストール。
って、インストールの最中に、ふと気づいて、/usr/bin/emacs を見ると、/etc/alternatives/emacs は /usr/bin/emacs20 を指している。で、システムには、emacs20 と emacs21 が入ってる…
まさかと思い、emacs21 -f wl で起動すると、cram-md5 認証で送信できた…。インストールして損したよ orz

ChangeLogをhtmlに
2005-04-18-1 / カテゴリ: [linux][emacs][xyzzy][changelog][chalow] / [permlink]

http://nais.to/~yto/tools/chalow/
まんま。
入れて実行
css はコピること。

今後はフツーの日記っぽいメモも残そうかな…
Referrer (Inside): [2005-06-04-1]

emacs でツールバー非表示にする(xemacsではない)
2005-04-13-2 / カテゴリ: [linux][emacs][meadow] / [permlink]

.emacs に
(tool-bar-mode 0)
を追加

emacs で開いているファイルの文字コード改行コード変換
2005-04-06-1 / カテゴリ: [linux][emacs] / [permlink]

M-x set-buffer-file-coding-system
で、euc-japan-unix とかを指定すれば OK

Solari で、Emacs を with X でコンパイル
2004-11-22-3 / カテゴリ: [unix][Solaris][emacs][X] / [permlink]

gcc 2.95.3 で ./configure --with-x; make; make install
カンペキ

Solaris8 + Emacs インストール
2004-11-19-1 / カテゴリ: [unix][Solaris][emacs] / [permlink]

gcc 3.3 だとダメぽい
http://www.scn-net.ne.jp/~garakuta/diary/200403.html#17
makeの最後の方で,elispをバイトコンパイルする途中,「./emacs -q -batch -f list-load-path-shadows」のところとその後のところでemacsがセグるという問題が・・・(;´д`).gdbで追おうお思ったんですが,何かbtしてもlibcの中しか見えず・・・.__do_global_dtors_auxってなんじゃぁ,と検索してみたら答えが見つかりました.Solarisだとgcc-3.3系でダメらしいです.gcc-2.95.3に切替えてsrc/wnnfunc.cを少し修正してビルドしたら動きました.
答え: http://mail.gnu.org/archive/html/bug-gnu-emacs/2003-05/msg00211.html
gcc 2.95.3 でGo
カテゴリ: emacs / 1 2 次ページ

最終更新時間: 2013-05-02 16:12