2006-12-01から1ヶ月間の記事一覧

X11不要論スレより

256 名前:名無しさん@お腹いっぱい。 04/01/01 01:45 >>253 Emacsは、対話環境への需要と、その供給のためのハッカーたちの努力をこと ごとく呑み込み、UNIX系OSにおける対話環境を、初心者の手の届かないとこ ろに釣り上げた!!

Emacs style isearch ハック

vim

Emacs のようにインクリメンタルサーチしている最中も全部のマッチ箇所をハイライトするハック。 --- ../src.orig/ex_getln.c Mon May 1 00:32:01 2006 +++ ex_getln.c Sat Dec 30 08:57:11 2006 @@ -1701,7 +1713,7 @@ out_flush(); ++emsg_off; /* So it d…

Emacs で canna を使う

FreeBSD 5.3。Emacs 21.3.1。 /usr/ports/japanese/yc.el/ をインストールして、メッセージにしたがって以下を ~/.emacs に追加でできた。 (load "yc") (global-yc-mode 1) ;; if you need ANK-conversion-mode in all buffers (setq yc-server-host "localh…

デバッグ出力ウィンドウの位置を記憶させよう

vim

「vim + screen + gdbでデバッグしよう」シリーズのつづき http://d.hatena.ne.jp/parasporospa/20060827 終了時にデバッグ出力ウィンドウの位置とサイズを記憶させたい。 そこでデバッグ開始するスクリプト gdbvim を次のように修正した。 #!/bin/bash debu…

漢字をひらがな・カタカナに変換する

自慢の.emacsを貼り付けようスレより $ echo 自慢 | kakasi -JH じまん $ echo 自慢 | kakasi -JK ジマン

checktime ハック

vim

vim はバッファを切り替えたときなどのタイミングで、ファイルが外部で変更されていないかを判定している。 mtime を見るのだと予想していたが、わざわざパーミッションも比較しているようだ。 --- ../src.orig/fileio.c Mon May 1 00:28:57 2006 +++ fileio…

gdb で STL コンテナの中身を表示する

こいつを使う。 http://www.stanford.edu/~afn/gdb_stl_utils/ gcc 3.4.2 では↓のように _M_impl を入れる必要があったけど。 - set $vec_size = $vec->_M_finish - $vec->_M_start + set $vec_size = $vec->_M_impl._M_finish - $vec->_M_impl._M_start 参…

'iskeyword' に含まれる文字一覧

vim

'iskeyword' や 'isfname' に含まれる文字一覧を見たいと思った。 これらのオプションの書式は、基本は簡単だけど、厳密に解釈しようとするとけっこう複雑なので、vim からソースを抜き出してコマンドを作ってみた。 http://www.k3.dion.ne.jp/~jod/src/dump…

一風変わった diff

MarkDiff Word 文書を比較。かしこいらしい。1本 66,000円。 http://www.userssoft.co.jp/markdiffj/index/default.htm wdiff 単語単位の diff。 文字単位で diff をとる。 > 現在、テキストファイルの差分をとるツールを探しています。 > 行単位での差分な…

ユーティリティ

私たちは普段 cp, ls, find, grep などを「コマンド」と言っているが、FreeBSD man ページや古い文献では「ユーティリティ」と呼んでいるようだ。 私たちも「ユーティリティ」と呼んだ方が通っぽくて (・∀・)カコイイ! のではなかろうか。 しかし sh やデーモ…

ファイルリストを番号でソート

ファイラによくある「番号順ソート」をやってみようと思った。 $ ls ero1.jpg ero11.jpg ero12.jpg ero2.jpg hardcore1.jpg hardcore3.jpg$ ls|sed -e 's/^\([^0-9]*\).*/\1:&/;h;s/[^0-9]//g;G;s/\n/:/g'|sort -t: -k2,2 -k1,1n|cut -d: -f3- ero1.jpg ero2…

csplit

csplit (context split) 正規表現パターンにマッチする行が表れるごとにファイルを分割する。 Makefile をルールごとに分割する。 csplit -n4 -k Makefile '/^[^ ][^ ]*:/' '{1000}'mdoc(7) ファイル foo.1 を、各セクション毎に 1 ファイルへと分割します (…

Clewn

vim

はじめて Clewn を使ってみた。 http://clewn.sourceforge.net/index.html Clewn は vim と gdb を統合させるプログラムだが、その実現手段は2通りある。 1つは単体のプログラム clewn を使う方法。 もう1つは vimGdb として vim に対するパッチをあてる方法…

くだらないこと

alias ..='cd ..' alias ...='cd ../..' alias ....='cd ../../..' alias .....='cd ../../../..'このエイリアスのかわりに .() { eval "$@" cd .. }とすれば $ . . . . .で任意階層上がれるなあということ。

gdb で VisualStudio キーバインド

VisualStudio キーバインド http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/vsintro7/html/vxurfvisualstudio70defaultshortcutkeys.asp kterm + screen + vim + gdb でデバッグするとき VisualStudio のキーバインドを使いたい。 まず…

gdb で curses プログラムをデバッグする

には kterm をもう1つ開いて、--tty オプションか tty コマンドでデバッギの端末をそちらの疑似端末に設定してやるとよろしい。 http://www.dirac.org/linux/gdb/07-Debugging_Ncurses_Programs.php しかしその kterm 上で sleep 100000 などとしてシェルを…

gdb で vim をデバッグする

vim + screen + gdbでデバッグしよう http://d.hatena.ne.jp/parasporospa/20060827 のつづき。 結局、gdb で vim を起動するときは $ gdb --args vim -f -g (gdb) runとすると普通にデバッグできる。vim を起動してからプロセスIDを指定してアタッチするよ…

素の vi で superstar

vim

いつのまにか ~/.exrc にこんなマップが書いてあった。 map * "zye o/<Esc>"zp"zddk0@zここで の位置には C-v Esc とタイプして 0x1b そのものを入力。 vim の * (カーソル下の単語を検索)とほぼ同じ動作をするマクロらしい。 …と思ったら、前にも書いた viarchiv</esc>…

プログラミングトリビア

初期のC言語では += でなく =+ と書いていた。 http://cm.bell-labs.com/cm/cs/who/dmr/chist.html K&R 1st edition は5タブだった。 VBの初期の開発コードネームはRubyだった。 http://www.rubyist.net/~matz/20061124.html#c02 sed はチューリング完全であ…

bash で逆方向 menu-complete

これを .inputrc に書けば C-y で逆方向 menu-complete ができるようになる。 \C-y:"\M--\C-i"menu-complete を C-i (Tab) 以外に割り当てている場合は、上の C-i の部分をそのキーに直す。 http://www.tikirobot.net/wp/2006/03/29/reverse-menu-complete-i…

my vimrc

vim

.vimrc もさらしてみる。 全然整理されていないので、もう使っていない設定も入っていたりする。 http://www.k3.dion.ne.jp/~jod/config/.vimrc bashrc と同じく、日曜夜に自動アップロードされます。

sed と vi の :s の違いハック

vim

s/hoge/meso/3としたとき、sed は行内で3番目の hoge を置換するが、vi はカレント行から3行以内の hoge を置換する。 sed 流の方がうれしいので vim もそうなるようにハックにチャレンジしてみた。 複数行にわたる検索パターンが指定されたときは考えないこ…

c_CTRL-D ハック

vim

コマンドラインでの C-d を bash の delete-char-or-list と同じように、行末では候補表示、それ以外では1文字削除にしてみた。 どうも ex コマンドラインのデフォルトキーバインドはイマイチな気がする。readline と同じでいいのに。 ポップアップメニュー…

more-prompt ハック

vim

-- More -- プロンプトが出ているとき、スペースを押しっぱなしにして、メッセージを終了させてしまうことがある。また、そうしてしまわないかと常にビクビクしているのもいやなので、スペースでは more プロンプトを終了しないようにした。 見てみると、既…

fj.editor.vi

vim

http://ftp.jaist.ac.jp/pub/news-archive/fj.editor.vi/ fj.editor.vi のアーカイブをひととおり読んでみた。 面白かったのが: vi にモードはないという主張と showmode に関するこの話題。 http://groups.google.co.jp/group/fj.editor.vi/browse_thread/…

utashiro's perl scripts

http://www.srekcah.org/~utashiro/perl/scripts/ mg と ramble が面白い。

便利なコマンドあげろや(゚Д゚)ゴルァ

http://pc8.2ch.net/test/read.cgi/linux/991931552/ 驚嘆。 685 From:login:Penguin Date:04/01/22 02:59 ID:6BqOt2vg Mail:sage grep -x -F -f text1 text2 #text1 と text2 に共通に含まれる行を表示 797 From:login:Penguin Date:04/10/03 10:04:33 id:l…

真偽値比較表

C 0 のみ偽。 Perl 数値の 0、文字列の "0"、空文字列 ""、未定義値のみ偽。 Ruby false, nil のみ偽。 Python False、None、数値の 0、空文字、空のコンテナ(string、list、tuple、set、frozenset、dict など)のみ偽。 VimScript 数値の 0 のみ偽。文字列は…

:! や :mak 実行時に以前の画面をクリアするハック

vim

vim で :! や :mak を実行すると、画面に以前のコマンドの出力が残っているので、どこからが今実行したコマンドの出力なのかわかりづらい。そこで以前の画面をクリアするようにした。 --- ../src.orig/ex_cmds.c Sun Apr 23 03:56:56 2006 +++ ex_cmds.c Sat…