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

Excite翻訳で英語を日本語に翻訳するスクリプト

Excite翻訳で英語を日本語に翻訳するスクリプトを作ってみた。 Eng-ToJapan.ps1 param([string]$word) if($word.Length -eq 0 -or $args[0] -eq "-?") { $commandName = [IO.Path]::GetFileNameWithoutExtension($MyInvocation.MyCommand.Name) Write-Host @…

goo辞書を使って英単語を検索するスクリプト

PowerShellからgoo辞書を使いたくなったので作ってみた。 Find-Word.ps1 param([string]$word) if($args[0] -eq "-?" -or $word.Length -eq 0) { $commandName = [IO.Path]::GetFileNameWithoutExtension($MyInvocation.MyCommand.Name) Write-Host @" Name:…

C#3.0でMix-in(みたいなの)ができる件

ある型Aからある型Bへの変換をする処理を書く時にはよくTypeConverter型を継承して型コンバータを書いている。型コンバータの利点は、.NET標準の機構であるというのもあるけど、変換元の型にカスタム属性で型コンバータを関連付ければ、 ↓こんな風に TypeCon…

.tfs-ignoreファイルを作るスクリプト

CodePlexにソースをアップするためにTeam Explorerを使っているが、これがとにかく使いにくい。普段SubclipseやTurtoiseSVNなんかの使い勝手のいいソース管理クライアントを使っているので、それらと比べるとどうしても見劣りしてしまう。Visual Studioのプ…

オープンソース始めました

会社ではライブラリやらフレームワークやらを好き勝手に色々作っているが、今まで個人でフリーソフトを作ったりして公開した事が一度もなかった。というか仕事以外でちゃんとしたアプリを最後まで組んだ事がない。なぜかと言えばモチベーションが維持できな…

ASP.NET MVC Framework x Spring.NET

MVCフレームワークの調べ物はまだ途中だけど、ちょっと脱線してSpring.NETとの連携を考えてみる。Spring.NET自体はASP.NETに対応していてWebフォームへのインジェクションを実現している。しかしMVCフレームワークではWebフォームの役割は純粋なビュー(表示…

ASP.NET MVC Frameworkをさわってみる 2

前回はページの表示のみだったので、次はURLにクエリを渡してみる。単純に「Home/Index」というURLに対して、「message」というクエリ名で値を渡すとする。普通ならこのクエリの値はHttpRequestのQueryStringプロパティで取得するが、ASP.NET MVC Framework…

名前空間エイリアス

とあるCOMアプリケーションをラップするライブラリをC#で開発している。COMアプリケーションを扱うにはもちろんTlbimp.exeを使いRCWのアセンブリを生成し、それを参照するわけだが、このCOMアプリケーションには複数のバージョンが存在し(例えば2005、2006…

ASP.NET MVC Frameworkをさわってみる 1

最近TurboGearsをさわっていて、URLをコントローラクラスのメソッドにマップするというシンプルなアーキテクチャがすごく直感的で、すごい生産性が高くて衝撃を受けた。同じMVCパターンにしてもJavaのStrutsとPythonのTurboGearsでここまで違うのかと、設定…

Spring.NET Web Frameworkをさわってみる

Spring.NET 1.1がリリースされたので、さっそく気になる機能をさわってみる。 まずはSpring.NET Web Frameworkから。これはASP.NETでMVCパターンを使った開発をできるようにするもの。具体的には画面遷移の部分、いわゆるコントローラの部分が抽象化されてい…

NAnt 0.86 Beta1 Release

昨日のSpring.NETに続いて、.NET製のビルドツールであるNAntも最新版である0.86Beta1がリリースされた。NAnt - A .NET Build Toolこちらは.NET 3.5などの新しいプロットフォームへの対応のみ。 長いことほったらかされていたので、てっきり開発が中止された…

Spring.NET 1.1 Release

.NET製DIコンテナフレームワークSpring.NETのバージョン1.1がやっとこさリリースされた。Spring.NET - Application Framework新機能としては Inversion of Control Container Aspect-Oriented Programming Framework Aspect Library ASP.NET framework ASP.N…

画像ファイルのサイズを変更するスクリプト

エロ画像コレクションをサムネイル付きで一覧表示するHTMLを生成するスクリプトを作るために、画像からサムネイル画像を作るスクリプトを作ってみた。 Resize-Image.ps1 param([string[]]$fileNames, [int]$width=150) if($args[0] -eq "-?") { $commandName…

PowerShellのコレクション比較演算子について

PowerShellのコレクションに対して-eq演算子で比較すると不可解な結果が返ってきてずっと頭をかしげていた。 PS > $a = @(1,2,3,4,5) PS > $a -eq 2 2なんて比較をするとbool値じゃなくて比較した右オペランドの値と同じ値が返ってくる。この挙動の意味がさ…

PowerShellにGrep(みたいなの)が標準である件について

前にPowerShellでGrep機能のあるスクリプトを作ったけど、標準のコマンドレットの「Select-String」というのがまんまGrepの機能を持ってたorz...しかもこっちはパイプラインからの入力も受け付けるし、はるかに高機能ときた。とりあえずAlias設定しといた。 …

TurboGearsでメモ帳アプリを作る 5

前回までで「編集画面」を表示するところまで作ったので、次はその画面で[更新]ボタンをクリックした時の処理を実装する。「pynote/controllers.py」を開いて、「update」メソッドを定義する。このメソッドはファイル名とその内容を引数に取る。 pynote/cont…

TurboGearsでメモ帳アプリを作る 3

前回で「新規作成画面」に入力値検証機能を組み込んだ。次は「メイン画面」に作成したファイルの一覧を表示する。「pynote/controllers.py」を開いて、「contents_dir」ディレクトリのファイルの一覧を戻り値のディクショナリに追加する。 import os content…

TurboGearsでメモ帳アプリを作る 4

前回で「メイン画面」にファイルの一覧を表示する機能とファイルの内容を表示する機能を追加した。今回はまず「メイン画面」に残りのコマンドへのリンクを作成する。「pynote/templates/index.kid」を開く。 pynote/templates/index.kid