Archive for 9月, 2010

slideshareのスライド内にでる広告を消すGreasemonkey

最近になってSlideShareではスライドの下部に広告が出るようになったので、それを自動で閉じて非表示にするGreasemonkeyです。

広告の閉じるx部分を自動でクリックする事で消しています。
全く興味のない広告をコンテンツを覆うように表示する広告は嫌いです。
UstreamのFlash動画内広告を消す方法 | Web scratchとかでも同じような方式広告が出ていますが、何度もでてきてウイルスみたいだ。
CNETとかマイコミジャーナルとかあの辺の広告も理解できない。

Node.jsで動作するHTML5+JavaScript製のIDE「Cloud9」

Node.jsで動作しブラウザから使用できるJavaScript IDEである「Cloud9 IDE」 alpha版が公開されました。
ブラウザから使用できるので、クラウドとかありきたりな名前が付いてる気がします。(+Plan9?)
Win/Linux/Macで動作するようです。

インストール方法(Windows)

詳しい使い方はajaxorg’s cloud9 at master – GitHubに書いてあるので読むといいです。
まずはダウンロードですが、githubではzipでソースをダウンロードできますが、それではなくgit cloneしてダウンロードする必要があるみたいです。
というわけで、gitをインストールした状態でコマンドプロンプトから

$ git clone git://github.com/ajaxorg/cloud9.git

するとcloud9のディレクトリができるので、binフォルダに入っているcloud9-win32.batを実行すると必要なファイルをどんどんダウンロードしてくれます。(インストーラーみたいで面白い)
ダウンロードが終わってもう一度cloud9-win32.batを実行すると http://localhost:3000 にアクセスするように促されるので、FirefoxやChromeなどでhttp://localhost:3000にアクセスすればCloud9 IDEが使用できます。(別途にNode.jsをインストールしてなくても動作した)

まだα版なので、ファイル管理とエディタとコンソールぐらいしかありませんが、ブラウザ上でこういうものが動いてるのは面白いです。エディタはBespinとかと同じく日本語入力が残念仕様です。
最近BespinはSkywriterというプロジェクトへと移行したので、そのうちエディタに変化が起きるかも知れませんね。
入力したコードはNode.js上で実行されてるような気がします。JavaScriptを書いてその場で実行やデバッグができるのは普通のIDEとしてはよくありますが、JavaScriptなIDEとしては面白いですね。

通常のソフトウェアとしてのJavaScript IDEを使いたい人はJavaScript対応のIDEをまとめてみた | Web scratchを参照するとよいと思います。(今WebStorm凄いよ状態でいろいろ試しています)

JavaScript対応のIDEをまとめてみた

JavaScriptに対応してるIDEのメモまとめ。

全部試したわけではないですが、個人的にはAptanaDreamweaverなど有名な所のできは悪くないです。
Aptanaは無料で使えて機能も充実してるので、重くなければもっと使われてる気がします。(JavaScriptだけなら通常のエディタでも十分通用するので好みによりますが)
IDE全般としては、クロスプラットフォームに対応しているのが殆どだったりします。
エディタとIDE、どちらが優れているとかではなくどっちも優れている部分を持っているので使い分けるのが良いと思います。

いろいろ巡った感想としてjQueryをサポートしてますって書いてるものが多いなーと思った。
IxEditとか見てると、JavaScript言語とは別にjQuery言語があるって思われる日がやってきそう。

元ネタ

Good JavaScript IDE with jQuery support – Stack Overflow
http://stackoverflow.com/questions/209126/good-javascript-ide-with-jquery-support
Open Komodo

JavaScript関係のツールまとめてみた

最近使ってたりするJavaScript関係のツールまとめてみた。
主にWebサービスです。

またニコニコ動画見てるGreasemonkeyのOAuth対応版

2010.8月末にTwitterのBASIC認証が終わったので、今までのまたニコぐりもんは動かなくなっていると思います。
なのでOAuth認証に対応してるまたニコニコ見てるを作ってみました。(作ったのは結構前だけどね)

使用方法

まずはニコニコ動画の動画ページでステータスバーのGreasemonkeyアイコンを右クリック→ユーザースクリプトコマンドからOAuth認証をする必要があります。

コマンドを実行するとOAuth認証のパネルが出てくるので、ボタンからTwitterへ行きOAuth認証してPINコードをコピーしてテキストエリアに入力すると準備完了です。

認証済みだったら動画タイトル部分にまたニコのボタンが出るので、それをクリックしてコメントを入力してまたボタンを押せばTwitterへ投稿できます。(nico.msのURLを使って投稿します。

オリジナルの機能としてはコメント入力欄の右側に文字数のカウンターが付いてるぐらいです。

mataniconicomiteru for Greasemonkey
http://userscripts.org/scripts/show/83795

 

Jetpack SDKで生成したアドオンの名前にスペースなど入れる方法

xpiの名前変えたいのだけどよくわからん。パッケージフォルダ名とpackage.jsonを書き換えて同名にしてもcfx xpiでエラーでる。

コード整形とシンタックスハイライトするjetpackを作った – Cherenkovの暗中模索にっき

Jetpack SDKでcfx xpiによってxpiファイルを生成して、そのアドオンをインストールするとpackage.jsonのnameに書かれていた名前がアドオンの名前になります。
しかし、package.jsonのnameはパッケージの名前なので大文字やマルチバイト文字やスペースなどが使えず自由に名前をつけようとするとエラーになります。
名前を自由につけるにはpackage.jsonにfullNameというキーを追加して、そこにスペースや大文字(マルチバイトをつけるとエラーになった…)を使った名前をつけることで、cfx xpiによって生成されたアドオンの名前に反映されます。

{
 "id": "jid0-xxxxxxxxx",
 "version": "0.1",
 "description": "test",
 "name": "test-package",
 "fullName" : "THIS is TEST package",
 "author": "azu"
}

実際の生成の流れとしてはpackage.jsonにfullNameがなかったら、nameの中身がfullNameとして扱われるようになっているみたいです。
fullNameに日本語入れる方法はよく分かりませんでした。ユニコードエスケープしてもエラーになる。
生成されるxpiファイル自体のファイル名はnameの中身が使われるようです。

Google Web Historyに見たページを自動記録するアドオン(Jetpack SDK) | Web scratch
http://efcl.info/2010/0809/res1872/
Labs/Jetpack/JEP/31 – MozillaWiki
https://wiki.mozilla.org/Labs/Jetpack/JEP/31#Packages

GoogleのJavaScriptコーディングスタイルチェッカー「Closure Linter」

GoogleではJavaScriptは特定のコーディングスタイルで統一されるようにClosure Linterという専用のスクリプトを使用しているそうです。
Google JavaScript Style Guide(Google JavaScript Style Guide 和訳)という規則に従ってjsのコードは書かれていて、その規則に沿っているかを確認するgjslintとその規則に合うように修正するfixjsstyleからなるスクリプトです。

インストール方法

How to Use Closure Linter – Closure Linter – Google Code
pythonで書かれているのでeasy_installを使ってインストールします。
まずはPythonをインストールしてなかったらインストールして、次にeasy_installコマンドを使うためにsetuptoolsを自分のPythonにあったものをインストールします。
WindowsならC:\Python26\Scriptsに環境パスを通せば、コマンドプロンプトからeasy_installが使えるようになるので、

> easy_install http://closure-linter.googlecode.com/files/closure_linter-latest.tar.gz

と打ってたらインストールできます。(パス通してないならC:\Python26\Scriptseasy_install でも大丈夫)

*注意 (修正済み)
現在配布されるやつはfixjsstyleがTypeError: ‘NoneType’ object is unsubscriptableのようになって動かないので、

easy_install -Z http://closure-linter.googlecode.com/files/closure_linter-latest.tar.gz

という感じでファイルを展開するオプションをつけてインストールしてから、/python2.6/site-packages/closure_linter-2.2.1-py2.6.egg/
closure_linter/fixjsstyle.py の36行目にargfとなってるtypoがあるのでそれをargvにすれば動きます。

使い方

使い方は単純でHow to Use Closure Linter – Closure Linter – Google Codeを見ると分かりますが、

gjslint path/to/my/file.js
fixjsstyle path/to/file1.js path/to/file2.js

のようにファイルやディレクトリを指定して実行するだけです。
–strictオプションやディレクトリに対してまとめてやる再帰オプションもあります。またGoogleのコーディングスタイルではJsDocを使う事になってるので、それを無視するオプションもあります。

fixjsstyleはE4Xとか特殊なものは認識してないっぽいので無理に書けると構文エラーを出すようになったりしますが、
Googleのコーディングスタイルはそこまで特殊ではないので、ちょっとした確認に使えたりして便利です。
JavaScriptの整形にはOnline javascript beautifier(これ自体がJavaScriptで書かれているのでEmeditorやNILScriptで動かせるgist: 453042 – クリップボードのJavaScriptコードを整形してクリップボードに返すNILScript – GitHub)とかと併用すると面白いかも。

Introducing Closure Linter – Closure Tools Blog
http://closuretools.blogspot.com/2010/08/introducing-closure-linter.html
プロフィール: azu(アズ)
Firefoxの事やソフトウェアの紹介や使い道、Greasemonkeyの作成
  • OS:Windows Vista, 7
  • ブラウザ:Firefox
  • Twitterのアカウントはこちら
  • azu_re
  • メールアドレス(Twitterの方が確実)
  • info@ドメイン名
リンク