Archive for the ‘software’ Category

JavaScriptエディタとしてのTitanium Studio

ちょっと触っただけの雑感です。本質としてとらえてはいけません。
Titanium (Mobile|Desktop)については全く触れていないため、そういうものについては参考にはならないと思います。
というか、Titanium (Mobile|Desktop)向けのものを書かないのに、Titamium Studioを選ぶ理由はない気がするので、タイトルのような事が目的ならばベースが同じAptana Studio 3を使った方が良いでしょう。

Read the rest of this entry »

ローカルの英辞郎検索やGoogle翻訳も使える翻訳ソフトウェア

簡単に言えばLingoesキングソフト辞書のようなソフトウェアで、文字列を選択した状態でショートカットか文字列をコピーすると翻訳を行えるNILScriptで書かれたソフトウェアです。

元々は英語が読めない人向け、英語技術書の読み方 | Web scratchで書いてたようにLingoesを使っていたましたが、自分向けにもっとあった感じのものがほしかったので作成しました。
機能はハイライト翻訳に絞ってるので、単語帳のようなものなどは特にないですが、シンプルで動作も軽いと思います。
翻訳には単語翻訳(辞書機能)と翻訳サービスを利用した長文の翻訳機能の二つがあります(単語数で自動的にどちらの方法をとるかを決めています)

動作のスクリーンショット

imageimageimageimage

NILtranslatorの導入

NILScriptで実行するソフトウェアなので、NILScriptが必要です。(Autohotkeyみたいな形式だと思ってもらえば)
Githubに置いてあるので、Secure source code hosting and collaborative development – GitHubからzipファイルでレポジトリごとダウンロードするのが単純です。
もちろんgithubなのでgit cloneしてダウンロードするのもありです。(なにかあったらプルリクエストしてもいいですし)

$ git clone git://github.com/azu/NILScript.git

ダウンロードして展開したフォルダにNILtranslatorがあり、NILtranslatorに関係するファイルは全部そこに入っています。(他のものは自分が書いたNILScriptがいろいろと入っています)

NILScriptの使い方と書き方 | Web scratchやNILScriptのreadmeを読んでNILtranslator.ngをNILScriptで実行すれば、ソフトウェアが起動できます。

 

使い方と設定

翻訳は翻訳したい文字列を選択した状態で、クリップボードへのコピーか任意のショートカットで行う事ができます。

NILtranslatorが起動するとタスクバーにアイコンが出るので、右クリックから設定を行う事ができます。

image

動作設定

image

動作設定では、選択した文字列を翻訳するのにどのショートカットキーを使うかや、翻訳するサービスなどを選択できます。

*テキストコピーで翻訳 はそのままの意味でクリップボードにコピーした場合に翻訳する化を決定できます。
*ショートカットキー はNILScriptのHotstrokesユニットで使えるショートカットを指定できます。

デフォルトはShift*2でShiftを二回連続で押すことで翻訳を行えます。

詳細はNILScriptの方に入ってる nil\doc\Hotstrokes.txtnil\sample\Hotstrokes.ngなどを見るのがいいと思います。

簡単にショートカットの例を挙げてみると

"Win" : Winキーを押した時(タップ) 
"Shift+A": Shiftを押しながらAを押す 
"Shift*2": Shiftを二回押す 
"Ctrl+[1] [2]": Ctrl+1 Ctrl+2と順番に押す 
"RButton+WheelDown": 右クリックを押しながらホイールダウン

 

このようにキーボードだけでなく、マウスも使ったいろいろなショートカットの指定が可能です。
(設定ファイルを書き換えて、mapに指定するオブジェクトを作ればもっと自由にもできたりする予定)

指定するキーの名前を知りたい場合はnil\sample\keyboard_hook.ngを実行して見るといいでしょう。

*がついてるものはソフトウェアを再起動後に反映されることに注意

辞書について

辞書はそれぞれ設定できますが、英辞郎はローカルに英辞郎のデータベースファイルを用意する必要があります。
辞書は以下から選択できます。

対応辞書サービス

  • KingSoft辞書
  • 英辞郎辞書ローカル検索(ご自分で英辞郎辞書を用意する必要があります)

英辞郎辞書は同梱していませんのでご自分で購入する必要があります。 http://www.eijiro.jp/

対応翻訳サービス

英辞郎辞書の導入

ローカルの英辞郎辞書を使うためには、英辞郎辞書をデータベース形式に変換する必要があります。
辞書の変換形式はEijiroXと全く同じものを使用しています。そのためEijiroXの利用方法をよく読み、databaseというファイル名のデータベースファイルを生成してください。

手順を簡単にEijiroXの利用方法からまとめると

  1. makedatabase.zip(Windows 用と書かれてるやつ)
  2. zipを展開してできたフォルダに英辞郎から取り出した英辞郎 (EIJI-***.TXT)、和英辞郎 (WAEI-***.TXT)、例辞郎 (REIJI-***.TXT)、略語郎 (RYAKU-***.TXT) の4つのtxtを入れる。
  3. makedatabase.exeを実行(一時間以上かかる)
  4. databaseとdatabase.sqlができる。
  5. database.sqlは削除しても問題ない。databaseをdatabase.dbなど拡張子がdbとなるようにリネームする

データベースファイルはできれば database → database.db(eijiro.dbなど)の拡張子を.dbにリネームした方がよいです(内部処理的に)

設定画面からdatabase.dbを設定し、辞書サービスとして英辞郎を選択すれば利用できるようになります。

image

ポップアップの消滅時間はミリ秒で指定し、翻訳パネルの非表示になるまでの時間を決定できます。

パネルの設定

image

翻訳パネルの配置やサイズなどは、アイコンの右メニュー→パネルの設定から行えます。
数値でも指定できますが、パネルの設定自体がパネルサイズになるようにしています。(動画を参照)

パネルの透明度はアルファ値で指定できます。

一時的に無効にする

image

アイコンの右クリックから→無効を選択すると一時的にショートカットやクリップボードへのコピーで翻訳パネルを出さないようにします。

翻訳パネルの表示を変更

パネルはIEエンジン(triden)で動いていて、divにサイトごとのIDが入るのでCSSで調整することができます。
CSSファイルとSassファイルも同梱されているので、CSSを変更すれば、背景色や文字サイズなども変更できます。

パネルの内部HTMLは以下のようになっています。

<html>
    <head>
        <style type="text/css">
        %style%
        </style>
    </head>
    <body>
        <div id="%siteID%" calss="main">
        %text% この部分に翻訳内容が入る
        </div>
    </body>
</html>
%siteID%はそれぞれ、実行時にサービスにあったものに置換されるため、以下のようにCSSでサービス別に記述する子が可能です。
/* kingsoft */
#kingsoft {

}
/* 英辞郎 */
#eijiro{

}
/* Excite */
#Excite{

}
/* Google翻訳*/
#googleTranslator{

}

これで説明は終わりです。

おわりに

このソフトウェアはNILScriptで書かれていますが、UI部分でコードが少し増えましたが1000行程度でこのぐらいのものが作れてしまいます。

内部から外部APIを読んで翻訳を行ったりしていますが、調子がいいときはローカルで動いてるのと区別がつかないぐらい早く結果が返ってきます。

このようにNILScriptやTitanium DesktopやWebOSやWindows 8などWeb技術(HTML+CSS+JavaScriptなど)といったものでデスクトップアプリケーションが作れるようになるのはとてもおもしろいです。またWebとデスクトップの距離は短くなっていると思います。

謝辞

JavaScriptベースのすばらしいスクリプト実行環境であるNILScriptがないと動きません。

ローカル英辞郎の検索部分はEijiroX を元に作成しました。
@edvakfさんに感謝を

pathogen.vimでプラグイン管理

書いてるうちにVim-users.jp – Hack#215: Vundle で plugin をモダンに管理するのような、Vundleというもっと良さそうな感じのが出ましたが一応書いておく

gvimのフォルダにはgvimrc(GUI向けの設定)とvimrc(エディタ部分)という設定用のファイルが存在してる。
個人用の設定はWindowsだと_vimrcというファイルを作成して書き込む。(他の場合は.vimrc)

pathogen.vimとgitでプラグイン管理。
プラグインなどのファイルをため込む場所はgvimフォルダ/vimfilesに置くことにした(いわゆる$VIM/vimfilesという場所)
Windowsと他で異なるらしいのでvimrc, runtime の優先順位を理解して Windows と Linux で Vim の設定を共有するを読む。
pathogen.vimvimプラグインの読み込みパスを変更するプラグインで、通常だとプラグインをフラットに置かないと行けないのが、 vimfiles/bundle/<プラグイン名>/以下の各ディレクトリもちゃんと読み込んでくれるという感じのプラグインです。(標準でそうじゃないのか…)
Vim標準のフォルダ構成はVim-users.jp – Hack #34: Vimのディレクトリ構成が参考になります。

pathogen.vimの導入は下を参考にする

“.vimrcにpathogenの設定を追加します。”のところまでやったらこんなファイルの配置になる

vimfiles
├.git[DIR]
├.gitmodules
├autoload[DIR]
│  └pathogen.vim(エイリアス)
└bundle[DIR]      
     └vim-pathogen[DIR]

git submoduleを使って読み込んでおけば$ git submodule update でまとめてアップデートできるので、gitと相性が良いらしいです。(pathogen.vim+gitでvimのプラグイン管理 – ケーズメモ)
pathogen.vimはエイリアスでautoloadフォルダに入れた方がアップデートが楽なので、うちの環境だとgit関係でlnコマンドが入ってたのでそれを使いました。(ないならLink Shell Extensionを使う)
ここでpathogeが読み込まれてるかをvim上で:scriptnamesを使って確認します。

読み込まれていたら_vimrcに以下のようにpathogenの設定を追加します。

" pathogen
call pathogen#runtime_append_all_bundles()
call pathogen#helptags()

後は同様の方法で、他のプラグインをgit submoduleでインストールしたり、手動でフォルダにいれて管理したりできるそうです

git submoduleでインストールしたプラグインを削除するとき、git submodule rmのようなコマンドはないので、以下のようにしてコマンドからアンインストール的な事ができますがやや複雑です。

Windowsでもシェルスクリプトみたいなものを書けばgit submodule rmのようなコマンドができる
nyaosでやる例

 

$ git submodule update

Windowsでのコマンドライン環境はConsole2+nyaosで

この記事は主にConsole2の紹介とnyoasのLua拡張についての話です。

Windowsのコマンドプロンプトはとても使いづらいので、コマンドプロンプト代替ツールとしてckwと拡張性が優れたNYAOS(昔はnyacus)などのシェルを合わせて使ってる人もいると思います。
自分も少し前まではckw-mod+NYAOSを使っていました。

現在はタイトル通りConsole2+NYAOSにしています。
ckwやConsole2はターミナルに該当するソフトウェアで、nyaosやgitbashなどはシェルに該当するソフトウェアです。

Console2でnyaosを使うのは簡単で、Settings>ConsoleのShell(またはタブ毎の設定)にnyoas.exeのパスを入れるだけで完了です。

image

Console2の機能紹介

タブ

Console2の特徴してはタブを持っていることがあげられると思います。
image

また、タブ毎に設定を行う事ができ、色や背景画像の設定やシェル(nyaosなど)に使うソフトウェアの指定をタブ毎に決定することができます。

image

日本語表示

以前は日本語がダメだったようですが、現在ver2ではフォントを日本語のものにすれば、日本語の表示も問題なく行えます。(フォントによってはおかしくなるけど)

ウィンドウの透過

ckwでよく紹介されてる機能としてウィンドウの透過機能があると思います。
Console2でもウィンドウの透過機能があります。

image

この透過機能はアクティブ、インアクティブの時それぞれの透明度を設定できるので、フォーカス外れているときだけ透過するなどもできます。

image

マウスやホットキーの設定

Console2はホットキーだけではなくて、マウスの動作、左クリックや修飾キーとマウスの組み合わせなどの挙動も設定できるので、結構細かい動作を決められると思います。
WIndowsのデフォルトであるようなCtrl+Cでコピー、Ctrl+Vでペーストなどの設定もできるので便利です

imageimage

これで簡単なConsole2の機能紹介は終わりです。設定はかなり豊富なので自分好みにできると思います。
まあタブがあるだけでもかなり魅力的なターミナルです。

nyoasの設定

nyaosはUNIXライクな日本語拡張コマンドラインシェルで、とても軽くて、作者さんは日本人(@zetamatta)の方なので日本語の扱いも問題ありません。

キーバインドやコマンドのエイリアスなどを設定して、入力履歴を残せるを保持できるようにするだけでも十分使い勝手がよくなります。

それに加えて、nyaos 3.xの特徴としてLua言語でのカスタマイズ機能あります(シェルスクリプトが書ける)

Lua拡張は_nyaのconfigファイルにもLua_eを使って書くこともできますが、拡張と設定は別ファイルに分けた方がいいと思います。(エスケープの問題とか面倒だし)

自分の場合は_nya_git.luaという感じで拡張毎のluaファイルを作成して、_nyaコンフィグファイルからsourceコマンドで読み込んで使っています。(拡張のテストするときもsourceで再度読み込めば適応されるのでデバッグしやすい)

source D:\Software\nyaos\_nya_git.lua
_nya_git.luaの内容は名前のようにgit関係のコマンドやgitコマンドの補完を作ったものを入れています。
gitのサブモジュールの削除が一発でできるようにgit submodule rmというコマンドを勝手に足したり、NYAOS 3000でいろんなコマンドのサブコマンドを補完する – メモ@wantoraにgitコマンドを追加したものなどが入っています。

image

Lua自体はコンパクトな言語で、若干JavaScriptに似てる感じもあるので調べながらやればなんとか書けるものだと思います

nyaosのLua拡張の書き方は以下を参考にしました。

これでConsole2+NYAOSの紹介は終わりです。

Windowsのコマンドライン環境自体はこんな感じで比較的いい感じにできると思いますが、実行できるコマンドの方が貧弱なのでそっちでVMでLinuxを使うみたいな事もあるかもしれません…(まさに自分…WindowsからVM上のLinuxをSSH経由で利用する開発環境の構築 | Web scratch)

WebStorm上でjQueryのAPIドキュメントを表示する

WebStorm & PhpStorm Blog » Blog Archive » jQuery API documentation at your fingertipsで紹介されていますが、WebStorm上でjQueryのオンラインヘルプをローカルにダウンロードしたものを表示できるようになっていました。(WebStorm/PHPStrom 2.1 以降が対象)

まずはJavaScript librariesの設定(Settings> JavaScript Library)で、Addボタンを押してローカルにおいたjQuery.jsをFileに指定します。
Documentation URLsのSpecifyボタンを押して、http://api.jquery.com を指定してからダウンロードボタンを押すとローカルにjQueryのドキュメントがダウンロードされます。(実際にダウンロードされるのはRaw XML API Dumpですがhttp://api.jquery.comの方を指定する)

2011-04-19-ss1

これでライブラリの追加は終わったので、次は実際にjQueryを使うプロジェクトを開きます。(プロジェクトを開いていない状態で設定すれば常に適応されるグローバルとして設定できると思う、その辺はWebStormのコード補完に新しく候補を追加する方法 | Web scratchと同じかな)
また同じく設定に行き、JavaScript Library>Scopeを見るとそのプロジェクトで適応されているライブラリが分かると思います。jQuery(Addボタン追加したライブラリ名の事)にチェックを入れれば準備は終わりです。(逆をいれば、プロジェクト毎に補完候補に現れるライブラリを指定できるようになっている)

2011-04-19-ss2

後はjQueryのメソッドにカーソルを合わせて、Quick Documentation Look-up(デフォルトCtrl+Q)をすれば、APIドキュメントがパネルに表示されます。

2011-04-19-ss3

Shift+F1か、ポップアップしたドキュメントの矢印ボタンからドキュメントのWebページのジャンプもできる。

2011-04-19-ss4

今回はjQueryだけみたいですが、ちゃんとオフライン向けのドキュメントを発行してくれるライブラリなら対応されるかも知れません。ドキュメントのヘルプページへのジャンプ機能はjQuery以外にも対応しているライブラリがあります。
WebStorm & PhpStorm Blog » Blog Archive » External API Docs Support for Popular JavaScript Frameworks

jQueryの補完もちゃんとできるし、APIドキュメントもすぐに見られるようになったのでjQuery使うのがかなり楽になったと思います。後、自分で追加するJavaScript librariesを設定できるので、ライブラリバージョン別に分けるといった事もできたりすると思います。

参考

おまけ

WebStormが今春のキャンペーンがまだ続いているので半額で購入できるみたいです。
JetBrains公式のNodeJSプラグイン(Node.jsもそのうち公式対応されると思う)の公開が始まったりして、まだ進化のスピードは落ちてない印象なので、安いうちに買っておくのもいいかと思います。

WebStorm & PhpStorm Blog » Blog Archive » 50% OFF personal WebStorm licensesi

http://blogs.jetbrains.com/webide/2011/04/50-off-on-personal-webstorm-licenses/

今使っているWebStormプラグイン

PHPStorm/WebStormプラグインはまだ余り数がないので拡張性はそこまで高くないのですが(JetBrains製IDEで互換性があれば良いのに)、幾つかプラグインを入れてるので紹介
プラグインはSetting->Pluginから検索すれば全部出ると思います

  • Markdown
    名前の通りMarkdown記法のシンタックスハイライトに対応するプラグイン。
    WebStorm内でプレビューも行えるため、Githubのreadme.mdを書くときにものすごく便利
    デフォルトだとFile Typeに*.mdがないため(今は入ってるかもしれない)、mdファイルを開いても有効にならないことあるので、File Typeで*.mdがを追加すると有効になる。
  • FavoriteFolders
    WebStormはJava製なためかファイルダイアログがOS標準とは違うため、目的のフォルダまで移動するのが面倒くさい。
    FavoriteFoldersはファイルダイアログに任意のフォルダまでのショートカットを付けてくれるプラグイン。
  • Scratch
    Alt+C, Alt+Cで一時的に何か書いておけるtxtファイルを開いてくれる。
    わざわざファイルを追加するのは面倒だし、そこにファイルが残ってしまうので地味に便利
  • CoffeeBrew
    CoffeeScriptに対応してくれるプラグイン
    シンタックスハイライトなどは対応してるけど、補完などはできないのでちょっといまいち
  • Pomodoro-tm
    Pomodoro Technique的なタイマープラグイン。
    25分タイマーで計って5分Breakタイムのような設定ができるぐらいで普通のタイマーと変わらないです。
    時間忘れていじってしまうのを防止

    設定画面

今のところこれぐらいです。 (あまり数がないのもあるけど)デフォルトでもかなり機能的に優秀なのでそこまで不便はしないですね。

おまけ

WebStormが今春のキャンペーン中で半額で購入できるようになってるみたいです。(今回は他のIDEはなってなかった)
是非この機会に触ってみるといいかもしれません。

WebStorm & PhpStorm Blog » Blog Archive » 50% OFF personal WebStorm licensesi
http://blogs.jetbrains.com/webide/2011/04/50-off-on-personal-webstorm-licenses/
JetBrains

Windowsで使えるCoffeeScriptコンパイラを書いた

CoffeeScriptをJavaScriptのコードに変換するコンパイラ(coffee-script.jsをラップしただけ)をNILScriptを使って書いてみました。NILScriptはSpiderMonkeyが実行環境に利用されているので、ブラウザで実行できるようために配布されてるcoffee-script.jsをそのまま利用しています。

使い方

NILScriptが必要なので、ダウンロードしておいてください。
CS-Compiler.ng と coffee-script.js(自分で最新のものを持ってきた方がいいです)を適当な同じディレクトリに置きます。

$ng.exe CS-Compiler.ngへパス "FilePath" or "DirectoryPath"

という感じでコマンドプロンプト(自分はConsole2+nyaos)から実行して使用します。(D&Dでも使えるかも)
コンパイルはファイル、ディレクトリどちらに対しても利用できます。
ng.exe CS-Compiler.ngへパスをまとめたリンクファイルを作っておくと楽かも知れません。

コマンドラインの例はutilityTools/CoffeeScript at master from azu/NILScript – GitHubにも書いてあるので参考にしてください。

ファイルの更新に反応して自動的にコンパイルし直すwatchオプションがあるので次のように

$ng CS-Compiler.ng code.coffee --watch

という感じで起動すれば、code.coffeeを書き換えるたびにコマンドプロンプトにコンパイル結果が表示されます。
watchオプション(–watch or -w)はディレクトリにも使えるようになっていて、起動してからその監視対象のディレクトリに新しくファイルを入れた場合もそのファイルが監視対象に加わるようになっています。

 

watchオプションを入れた様子

 

コンパイルの実行速度ですが20Kbほどあるunderscore.coffeeが1-2秒ぐらいでコンパイルできるので、まあまあ使ってられるものだと思います。WindowsでCoffeeScriptをコマンドラインでコンパイルできて、ファイルの変更監視ができるものが見つからなかったのでkennyjのブログ(仮): CoffeeScriptをWindowsで使うを見て何となく書きました。
(Rubyのやつの使い方分からなかったCoffeeScript インストール – sappari wiki)

オライリージャパンのebook(PDF)でコピペする、ファイル名のリネームをする方法

O’Reilly(Japanも)が全ての電子書籍を半額で&売上を日本赤十字社に寄付 | JSer.infoでオライリージャパンも半額電子書籍を販売していたので、オライリージャパンのpdfにはDRMなどの制限があることを知らないで購入した人もいるかもしれません。

販売されるEbookは、印刷、テキストのコピー、ページの抽出、内容の変更を行うことができません。決済時に入力いただいたご購入者のメールアドレスが挿入されます

O’Reilly Japan Ebook Store : 購入規約

英語が読めない人向け、英語技術書の読み方でも言っていましたが、印刷はまだしもコピペができないのは電子書籍として致命的なので、そのDRMの回避方法と、オライリージャパンからダウンロードしたpdfは<16進数の羅列>-<書籍のISBN>.pdfという扱いにくいファイル名なのでそれを手軽にリネームする方法の紹介です。

pdfファイルのリネーム

まずはpdfファイルのリネームです。
オライリー公式でも扱いにくいと言ってて、ISBNからJSONで書籍情報を取得できるAPIを提供しています。
これを使ったリネームスクリプト(Python)がJSON形式による書誌情報の提供をはじめました – O’Reilly Japan Community Blogで公開されているので、これを使うのも良いでしょう。

もうひとつは電子書籍ソフト関係で有名な>>722さんがISBN TitlerというISBNなどからAmazonで検索してファイルのリネームをするソフトウェアを公開しています。使い方は単純で、PDFをソフトウェアにD&Dするだけでリネームをしてくれます。(iTextSharpを使えばpdfのプロパティも書き込んでくれるらしいですが、オライリーのpdfだとDRMの影響かもしれませんがうまくいきませんでした。)
設定からリネームの書式設定や置換の設定などもできるので、自由がきくリネームソフトになっています。

DRMについて

追記: オライリージャパンの電子書籍もDRMフリーになるそうです。
O’Reilly Village/オラの村 – オライリー・ジャパンのEbookがDRM Freeになります

先ほど述べたようにオライリージャパンには印刷、テキストのコピー、ページの抽出、内容の変更ができないなどの制限やメールアドレスをウォーターマーク的に埋め込み(遅延の原因っぽい)があります。
O’Reilly Mediaにはこの制限はありませんし、PDF以外にもepubなどでダウンロードできますし、アップデートも保証してくれます。
なぜ本家ではそのようなDRMを付けてないかはSteal This E-Book – Forbes.com(訳 fladdict » 電子書籍を盗め!)を読むといいです。

 

制限の一覧

 

このオライリージャパンにある制限はPDF-XChange ViewerというPDFビューアーを利用する事で外すことができます。
ファイルメニュー>ドキュメントのプロパティ>セキュリティタブ で”セキュリティの設定”を”なし”にしてからpdfファイルを保存するとコピーなどの制限がなくなります。(メールアドレスのウォーターマークは消えないけど)

なしに変更した場合

 

これで書籍の外観を乱すウォーターマーク以外は通常の電子書籍としてオライリー本を読むことが可能になりました。
(多分、セキュリティ変更に対するパスワードがかかってないためAcrobatなどの他のソフトでもセキュリティ設定の変更を行う事ができると思います)

 

何でこんな記事を書いたかというと、コピペも印刷もできないというDRMがかかってるのはさすがに電子書籍として論外だと思ったからだ。
コピペができないとその場でコードを実行して確かめにくい(サンプルコードをわざわざ見に行くのかい?)と思うし、検索も行いくくなって電子書籍である利点がなくなってしまっていると思う。また、PC(電子書籍端末)じゃ読みにくいから印刷する、大事な部分は印刷して読みたいという需要が存在してるはずだ。そうしたDRMを設定することにどこまで意味があるのかもやや疑問的でもあり、オライリージャパンの立場的にそうしたものを付けないと物事がスムーズに進まないと言った事情もあるのでしょうが、やはりコンテンツの価値を下げてしまってるこのDRMは不要だと思う。

また、オライリージャパンのpdfには各ページの末尾に購入したメールアドレスが埋め込まれるというソーシャルDRM的なものが存在している。

これも、末尾に毎回あるだけでも外観を乱しているのに、PDFリーダーがメールアドレスをリンク(設定で変えられるが)して余計気が散ったりして電子書籍を読みにくくしている。ソーシャルDRMは不正コピーに効果的かもしれないが、これが嫌で購入を避ける人もいるだろう。

 

この記事を出すかは少し迷ったが、いつまでもこのままでは不便きわまりないため書くことにした。
これを書くのに他の国ではどうなっているのかも少し調べてて、オライリーにはUS(UK) 、 ドイツ 、 日本 、 中国、台湾とあり、中国、台湾はオライリーショップがない?(他のショッピングサイトを経由してた)
ドイツは http://www.oreilly.de/ebooks/faqs.htmlにebookのDRMについて記述されているがドイツ語が読めなかったのでよく分からなかった(pdfとepubで販売してて、ウォーターマークありで印刷はできてcut&pasteはできないって読めたけど確証はない、cut&pasteと言うのがよく分からないし、コピペはできるけど加工はできないという意味なのかな?)
本家であるUS(UK)はご存じの通り、マルチフォーマットでDRMなしで、日本の12時間以内にダウンロードしないと無効になるなんて事はなく、書籍のアップデートも保証されている。(後、ラフカット版やsafari onlineの存在は大きい)
もしドイツもDRMがあるようなら翻訳関係でDRMが付けられているのかもしれないが、先の震災により電子書籍を扱うところが増えて動きが活発になってきているこのご時世に、何かオライリージャパンとしての動きがあることを願っています。

参考

使用したソフトウェア

ISBN Titler
http://no722.cocolog-nifty.com/blog/isbn_titler/index.html
PDF-XChange
http://www.tracker-software.com/
http://www.oreilly.de/ebooks/faqs.html

スニペット管理もできるクリップボード履歴拡張ソフトウェア「clipex」

クリップボード履歴拡張ソフトのclipexの紹介です。
しばらくペースターを使っていたのですが、最近になってclipexに移行しました。

clipexの特徴

  • 履歴アイテムの振り分け
  • アプリ別に表示アイテム(定型文とか)を変更できる
  • FIFO/FILO (連続貼り付けみたいな機能)
  • PAP対応
    PAP(Pop up in Application Process)という造語
    アプリケーションプロセス内ポップアップ機能(エクスプローラのファイル名変更等でフォーカスが失われたりしない)
  • スクリプト機能(IronPython、IronRuby、C#) JScript対応しないかなー
  • マクロ記録
  • インクリメンタルサーチ機能 ( 重要! ) + migemo対応

という感じで一通りのクリップボード拡張+検索機能が付いてる感じのソフトウェアです。

オプション

オプションも充実しているので、設定にはそこまで困らない感じがします。(ポップアップとインクリメンタルサーチは別々のショートカットで起動できるようになるともっと良いのだけど)

インクリメンタルサーチ



ポップアップメニュー

インクリメンタルサーチ機能は貼り付けのポップアップとは別々に存在しているので、貼り付けのUIはよく見るコンテキストタイプの形になっているので安心できます。

面白い機能としてフィルター機能があります。これは正規表現や実行アプリ名を元に履歴やアイテムに振り分けることができる機能です。逆に正規表現でマッチしたものは履歴に追加しないなどの設定も行えます。
例えば次のような正規表現にマッチしたものを入れるアイテムフォルダを作っておけば、JavaScriptの関数っぽいものだけを格納できます。

[\s\t]*function +[a-zA-Z0-9_]+ *\([^\)]*\)
[\$a-zA-Z0-9_]+.*?function *\([^\)]*\)

スニペット管理としてのclipex

メインウィンドウでのアイテム設定

メインウィンドウの登録アイテムには任意のフォルダを設定できるので、それをスニペット管理として扱うこともできます。
要はフォルダで分別できる定型文機能なので、自由にフォルダ分けしてその中に好きな定型文を書いていくだけです。
ここで登録したアイテムはポップアップメニューに表示させられるので、そこから選んでペーストするのも良いですがclipexはインクリメンタルサーチが使えます。

インクリメンタルサーチには登録アイテムも検索候補に存在するので、登録しまくった後に検索してペーストできるスニペット管理ソフトとして最適だと思います。クリップボード履歴拡張 と インクリメンタルサーチ という機能を持ったソフトウェアはeclipなど過去にも存在していましたが、イマイチ使い勝手が良くなかったりしていたので、clipexは両方を備えていてとても使い勝手が良いソフトとなっていて素晴らしい。

まだちょっと不安定な所もあって、ポップアップやインクリメンタルサーチの結果から選択してからペーストするまでに無駄に時間がかかったり(ここは何とかして欲しい)、フィルター機能を設定して大きな文字列をコピーするととても重くなったり、設定画面の表示などが重くなったり、クリップボード拡張の鬼門であるOfficeソフトとの相性が余り良くなかったりします。
ただこれはアップデートにより解決される可能性はあり、また現在頻繁にアップデートされているため、clipexにはこれからも期待しています。

eclipからclipexに乗り換えた – 教えてお星様
http://d.hatena.ne.jp/kkk6/20110114/1294978827
Vector: clipex – 新着ソフトレビュー
http://www.vector.co.jp/magazine/softnews/101204/n1012041.html
clipexの詳細情報 : Vector ソフトを探す!
http://www.vector.co.jp/soft/winnt/util/se486732.html

WebStorm/PhpStormの半額キャンペーンが1月10日まで延長

WebStorm/PhpStormの個人向けライセンスがクリスマスキャンペーンで半額になっていますが、ブログ記事では今年いっぱいの期限となっていましたが、購入ページを見ると2011年1月10日までと延長されていました。

Christmas pricing ends Jan 10, 2011.

WebStorm :: Licensing

という訳で、購入を検討している方は忘れないうちに決めるといいですよ。

プロフィール: azu(アズ)
Firefoxの事やソフトウェアの紹介や使い道、Greasemonkeyの作成
  • OS:Windows Vista, 7
  • ブラウザ:Firefox
  • Twitterのアカウントはこちら
  • azu_re
  • メールアドレス(Twitterの方が確実)
  • info@ドメイン名
リンク

WebMoney ぷちカンパ