vimでUWSCの予約語をハイライトしようと思って調べたのですが、
なかったので、vimに自作のsyntaxを追加する方法について調べてみました。
[まとめ]
runtime/syntax/*.vim → 各言語用のsyntax ファイル (uwsc.vimとして作成)
runtime/filetype.vim → ファイルの拡張子⇒syntax への振り分けの定義
filetype.vimへの追加行
" UWSC
au BufNewFile,BufRead *.uws setf uwsc
uwsc.vimの作成内容
ひとまず、java.vimをコピペ。
k2Editor用のハイライト定義があるので、それを参考にするとよさそう。
PR
最近パケットを見ることが多くて、今さらだけど、
詳解TCP/IP Vol.2 実装編買っちまったぁ。
たけー
でも、おもしろそー
ムックの持ってた
デザインパターンの本も読んでるけど、ためになるいい本やね。ただ、個々のパターンにも解が数通りあって、どれを当てはめればいいかは開発の経験が相当ないと厳しいと思った。積極的に使わないと身に付きませんね。
WinPcapのライブラリを調べてたら、packet.dllに以下のような関数を見つけました。
パケットの送信も可能なのですね。しかも、Ethernetフレームレベルでのパケットなので、発信元、送信先のMACアドレスも指定できるようです。(逆にEthenetヘッダを作成しないといけないので、リンク層の知識も必要になる。)この関数の有用な使い方が何か無いか、現在模索中です。また、PacketReceivePacket関数は受信側だけでなく、送信側のパケットも読み取れるので、
WinSock2のダミーDLLと組み合わせれば、パケットの改変等の荒技もできそうです。
CVSを利用していたら、頻繁に以下のエラーが出てチェックアウトが止まってしまう状況に陥っていました。
cvs [checkout aborted]: cannot rename file CVS/Entries.Backup to CVS/Entries: Permission denied
すかさず、CVSROOT内のパーミッションを全部調べてみたけど、全部write権限がついていて問題がありませんでした。そうなると、何かのプロセスがEntriesファイルをロックしているのだろうと思い、FilemonでEntriesを読み込んでるプロセスを調べた所、TortoiseSVNのキャッシュプログラムがEntriesを確かに読み込んでいました。このプロセスを早速KILLして、再度チェックアウトを試みましたが一向に状況は改善されず…
2,3日放置してましたら、ふとひらめいて原因がわかりました
Avira Antivir(優秀なウイルススキャン)Σ(゜エ ゜かよっ
おそらくCVSで1つのファイルをアップデートする度に、Entries.Backup→Entriesにリネームしていくのでしょうが、この頻繁さ故に彼にロックされる危険性が増してたわけですね。Subversionに移行ですかね。。