ツール

定義ファイルの公開は難しい:エディタとシンタックスハイライトに関する考察

プログラマの端くれなので、使用するテキストエディタには大抵シンタックスハイライトの機能が付いている。世の中には沢山のプログラミング言語が存在するわけで、大抵のエディタはシンタックスハイライト等の定義を追加できるようになっている。追加した定…

vimにWindows PowerShellの編集環境を追加する

これも備忘録。id:eel3:20110701:1309532287 のGoに続き、今度はPowerShellの編集環境を整えてみたので、その作業内容も記録しておく。しかし何というか、vimでWindows用のプログラミング言語の類を編集するというのも妙な気分ではある。でも便利だからなあ…

vimにGoogle Goの編集環境を追加する(後だし増補版)

これは備忘録。Windows上のvim香り屋版にGoogle Goの編集環境を整えたのだが、ネット上に日本語のまとまった情報を見つけられなかったので*1、作業内容を記録しておく。基本方針はこんな感じ。 現在は、追加した編集環境を使用する。 将来、Go編集モードが最…

ラインエディタ体感ツアー――vi/vimの「動作モード」なるものの謎に迫る

相変わらずvi/vimの操作方法は初めて使うユーザを惑わせるものだ。よく「viには動作モードが2つある」的な説明がされる。「ノーマルモード」と「入力モード or 挿入モード」だ*1。この説明は昨今のユーザにも理解しやすいものだが、しかし「何でそんな『動作…

カーナビ三部作その1:Ubuntu 10.04 LTSでCDをリッピングしてMP3にしようとしてつまづく

「カーナビ三部作」となっているが、カーナビ絡みだがカーナビとは斜め45度ぐらいの方向にて苦労した話だ。カーナビにSDメモリカードのリーダが付いていた。SDメモリ内のMP3ないしWMAファイルを再生できるらしい。そこで手持ちのCDをリッピングしてMP3に変換…

Windows・Busyboxのtftpクライアントの使い方

これは備忘録。仕事の都合でtftpを使うことになった。Linuxマシンにtftpdを立てて、クライアントマシンからtftpでファイルを取得するのだ。クライアントが組み込みLinuxで、Busyboxのtftpぐらいしかファイル転送用のツールが無かった*1。この準備の過程でコ…

Ubuntu 10.04のgvimが ~/.vim/after/ftplugin/*.vim を読み込……んでくれた!

id:eel3:20110317:1300326487 で ~/.vim/after/ftplugin に置いた *.vim なファイルが読み込まれなくて悩んでいたが、ようやく解決した。Ubuntu用のvimの設定一式をDebian 5.0にコピーしたら同じ問題が起きたので、これはほぼ間違いなく自分の設定に不備があ…

REXX……というかReginaでワンライナーの方法が分からないので、力ずくで。

これは恐らくバッドノウハウ且つマイナーネタ。手元のWindows PCにはREXXの処理系としてReginaが入っているのだが、コマンドプロンプトからワンライナーする方法が分からない。 D:\tmp>regina -v REXX-Regina_3.5(MT) 5.00 31 Dec 2009 D:\tmp>regina -h Reg…

Ubuntu 10.04のgvimが ~/.vim/after/ftplugin/*.vim を読み込まない?

C言語やC++を使うときはタブ(半角4文字分)でインデントするので、vimの標準設定(.vimrc にて設定)はそれに合わせている。が、言語によっては別の設定にしたくて、例えばRubyの場合は半角スペース2文字でインデントしたい。という訳でこんなファイル(rub…

pForthをMinGWでビルドする

スタック指向のプログラミング言語を何か勉強したいと考えていて、処理系を探している。言語の候補としては、 Forth PostScript Mind こんなところだと思う。で、まずはForthの処理系を探している。要求事項はこんな感じ。 Windowsで動く。インストール不要…

コマンドプロンプトからWindows PowerShellを活用するあれこれ

Windows PowerShellは確かに良いツールだ。それは認めよう。しかしUIとしては未だにウィンドウを最大化できないのは正直問題じゃないかと思う*1。何よりコマンドプロンプト上で構築してきた既存の資産もある訳で、全面的にPowerShellに移行するよりも、既存…

oedit/otbeditのシェルスクリプト編集モード用設定ファイルを作った

id:eel3:20100426:1272273402 でotbeditにRuby用編集モードを追加したのに続き、今度はシェルスクリプト用の編集モードを追加した。例のごとく設定ファイルを作ったので晒してみる。 シェルスクリプト編集モードの設定ファイル シェルスクリプト用キーワード…

oedit/otbeditのRuby編集モード用設定ファイルを作った

id:eel3:20100412:1271061507 でotbeditにLua用編集モードを追加したのに続き、今度はRuby用の編集モードを追加した。例のごとく設定ファイルを作ったので晒してみる。 Ruby編集モードの設定ファイル Ruby用キーワード設定ファイル Ruby編集モードは、少しは…

oedit/otbeditのLua編集モード用設定ファイルを作った

id:eel3:20100221:1266756393 でotbeditにAWK用編集モードを追加したのに続き、今度はLua用の編集モードを追加した。例のごとく設定ファイルを作ったので晒してみる。 Lua編集モードの設定ファイル Lua用キーワード設定ファイル Lua編集モードは、需要がある…

Thunderbird 3 + Enigmail 1.0.1で受取人ごとのルールを編集できない

Enigmailを1.0から1.0.1に上げたら、妙なところで問題発生。こんな環境。 Windows XP Professional SP3 (32bit) Thunderbird 3.0.4 テーマ Defaule 3.0.4 アドオン Enigmail 1.0.1 ImportExportTools 2.3.2 普通に暗号化/復号化する分には、さしあたって問…

oedit/otbeditのAWK編集モード用設定ファイルを作った

id:eel3:20100215:1266229881 でotbeditにバッチファイル用編集モードを追加したのに続き、今度はAWK用の編集モードを追加した。例のごとく設定ファイルを作ったので晒してみる。 AWK編集モードの設定ファイル AWK用キーワード設定ファイル しかしAWK編集モ…

oedit/otbeditのバッチファイル編集モード用設定ファイルを作った

id:eel3:20100124:1264342306 でotbeditにVBScript用編集モードを追加したのに続き、今度はバッチファイル用の編集モードを追加した。例のごとく設定ファイルを作ったので晒してみる。 バッチファイル編集モードの設定ファイル バッチファイル用キーワード設…

oedit/otbeditのVBScript編集モード用設定ファイルを作った

id:eel3:20100118:1263816915 でotbeditにJavaScript用編集モードを追加したけど、実際のところはJScript用に使っている。最近はJScriptと並んでVBScriptも使うことがあるので、編集モードを追加した。例のごとく設定ファイルを作ったので晒してみる。 VBScr…

oedit/otbeditのJavaScript編集モード用キーワード設定ファイルを作った

id:eel3:20100105:1262693568 でotbeditにC#用編集モードを追加した勢いで、よく使う言語用の編集モードを幾つか追加してみることにした。手始めにJavaScript用の編集モードを追加した。といってもHTMLファイル埋め込みのコードではなくて、JavaScriptのみで…

oedit/otbeditのC#編集モード用キーワード設定ファイルを作った

最近.NET Framework上でのプログラミングを勉強しようと思い立ち、その過程でC#なんぞ触ってみようと思ったのだけど、手元のどの軽量級テキストエディタもC#の色分けに対応していなかった。対応していたのはvimとNotepad++だけど、vimは個人的に腰を据えてガ…

oedit/otbeditのC/C++編集モード用キーワード設定ファイルを大幅改訂した

作業用に何種類かテキストエディタを使用しているのだけど、最近はちょっとした作業用のエディタとしてotbeditを使っている。otbeditはデフォルトでC言語やC++のシンタックスハイライトやキーワード入力補完に対応している。腰を据えてコードを書くときはvim…

gcovのログファイルをマージするgccr.plのバグ退治をした

id:eel3:20090326:1238028836 で入手したgccr.plで、10000行以上のソースファイルのログをマージしようとしたらパースに失敗した。ちょっと悩んだのだけど、要はパースの時に例えば「/^\s+-:\s+(\d+):(.*)/」のような正規表現でマッチングしていて、 -: 10:…

続・Notepad++がレジストリに書き込みを行なうタイミング

暫く使っていないうちに、Notepad++ EUC-JP対応版のバージョンが上がっていたので、久しぶりに使ってみることにした。ということでv5.4.5-6 euc-jpにv5.0.3-3 euc-jpの時の設定を移植したのだけど、正直めんどい。設定のXMLファイルを一々見比べてマージして…

Windowsのnet userコマンドのオプション/randomがダメっぽい

季節は秋。サーバのお引越しの時季である(嘘)。色々あって、サーバのリプレース作業を手伝っていた。OSはWindows Server 2003 R2。Unix系のOSでないのは、何か問題が発生した時に対応できる人材がいないかららしい。新サーバにユーザアカウントを追加する…

vim(vi)を勉強するメリット(マイナー編)

メジャーなメリットについては既に色んな人が書いているので、マイナーなのを1つ。exモードを弄るようになると、sedが使えるようになる。exモードのテキスト編集系のコマンドとsedのコマンドは結構似ているし、コマンドの書き方自体も似ている。反対に、sed…

OCamlのソースからWindowsネイティブな実行ファイルを生成する(Native MS版バイナリで)

これは備忘録。Objective Camlで書いたソースコードは、 ocamlで使用する。 ocamlcでバイトコードにコンパイルして使用する。 ocamloptでネイティブなオブジェクトファイルにコンパイルしたり、実行ファイルにしたりする。 などの使い方ができるはずなんだけ…

Exuberant CtagsのJavaScript解析能力を向上させたので、それをvimのtaglist.vimに適用してみた

id:eel3:20090326:1238028321 の続編。コードを書く時は基本的にvim派*1なので、関数などのオブジェクトを一覧表示してくれるtaglist.vimを愛用している。taglist.vimは背後でExuberant Ctagsを使っているので、ctagsの解析能力が向上すれば関数一覧に表示さ…

手持ちのExuberant Ctagsが対応している言語を調べるだけの裏技っぽい何か

正攻法なら「--list-languages」を使う。 D:\temp>ctags --list-languages Asm Asp Awk Basic BETA C C++ C# Cobol Eiffel Erlang Fortran HTML Java JavaScript Lisp Lua Make Pascal Perl PHP Python REXX Ruby Scheme Sh SLang SML SQL Tcl Vera Verilog …

gcovのログファイルをマージするツールを拾った && 手直しした

Cで書いたコードの単体テストにgcovを使っている。gcovは*.gcovなログファイルを出力するのだけど、そのログファイルにはどの行を何回実行したか/未実行の行はどこかが表示されていて、非常に便利だ。ただ、手元で使っていて1つだけ不便な点が生じてきた。g…

ツールに振り回されて時間を費やした

vimのtaglist.vimを使っていて、背後で動いているctagsのJavaScript解析機能を向上させようとしたらうまくいかなくて、試行錯誤して時間を消費。 一応、解析能力の向上には成功。 vimでJScriptなツールを書いたり修正したりするが少し楽になった。 gcovが吐…