2013年3月8日

[lo]ImpressをAndroidから操作できる

LibreOffice 4.0.1がリリースされた。
知らなかったのだが、LibreOffice4にはAndroidからプレゼンテーションソフトである「Impress」を操作できるらしい。
4.0.1ではWindowsもサポートされたのこと。

https://wiki.documentfoundation.org/Development/Impress/RemoteHowTo/ja
これを見ながらやってみた。

image

相手はNexus7。
スライドの一覧が表示されて、タッチするとImpress側の画面も変わる。
おおー、と素直に楽しめた。

 

苦労したのは・・・ペアリング。
やりかたがよくわからず、PC側で検索したけど見つからず・・・あ、Android側を有効にしないと・・・パスフレーズ?・・・あ、PC側に一瞬出てたけど気付かなかった!・・・

などと、同じようなことを繰り返していたのだ。
NFCでペアリングという商品を見ていて「最初しか使わんやん」と冷たい見方をしていた私だったが、このつながらなささはかなりいらいらさせられた。
うん、そういうのなら私も賛成だよ。

2013年3月7日

[tizen]gbsできず、あせる

いろいろあって、せっかく作っていたxubuntu12.04でのTizen環境がなくなってしまった。
というよりも、xubuntu12.04のパーティションごと消してしまった。。。

やむなく、xubuntu12.10で環境を作り直した。
あれからTizenのページも変わったので、順番にやっていこう。


まず、gitなどのツールをインストール。
これは、ここを見ながらやった。。。と書いている間に変わっているかもしれんので、書いておく。


  1. sudo vi /etc/apt/sources.list 
  2. 一番最後に「deb http://download.tizen.org/tools/latest-release/Ubuntu_12.10 /」を追加(12.10の次に半角スペースを開けて/)。
  3. sudo apt-get update
  4. sudo apt-get upgrade
  5. sudo apt-get install gbs mic
  6. sudo apt-get update
  7. sudo apt-get upgrade

 updateとupgradeをやりすぎてるような気はするが、よくわからんので繰り返しておいた。

Gerritのアカウントは作っているし、ssh関係のファイルは残っているものがあるので(Windowsと共通にしているのでね)、あとはsshで認証?させるだけ。

  1. sudo ~/.ssh/config
  2. Host tizen
      Hostname review.tizen.org
      IdentityFile ~/.ssh/id_rsa
      User Gerritのユーザ名
      Port 29418

ここまで書いたら「ssh tizen」とすると、前と同じようにwelcomeメッセージが表示された。

あとはgbsで何かとってくるだけなのだが、これがなかなかうまくいかんかった。
$ gbs clone review.tizen.org:kernel/linux-3.0.git
などとやるのだが、接続できないと言われる。
うーむ。

 ようやくわかったのが、.ssh/configに書いたHost名が、コロンの前にくるということ。
つまり、
 $ gbs clone tizen:kernel/linux-3.0.git
となるのだ。

まあ、考えればわかるんだろうけど、なかなかそこまでは、ね。

2013年3月6日

[html]閉じたり閉じなかったりの理屈がわからん

わからんシリーズだ。

<canvas>は、</canvas>で閉じないといかんみたい。
<canvas ・・・ />としてはいかんみたい。少なくとも、Firefoxではうまくいかんかった。

 

<form>は、</form>で閉じる。
これはいいのだが、その中に<input>を書くときは、それは</input>ではなく、<input ・・・ />でもなく、閉じないらしい。

 

この理屈がわからんのだ・・・。
<form>の中に書く場合は閉じない、とかならまだわかるけど、<button>は閉じるようだし。
覚えるしかないのか?

 

<input>は</input>を書いても怒られなかったから、それでよしとするか。
でも、そしたら<br>は「<br></br>」と書くのか?と自答してしまった。

いや、全部同じにしたいわけじゃないんだ。
ルールを知りたいだけなのだ。
そういう意味では、<canvas>の方が罪(?)が重たい。
これが「<canvas ・・・ />」も許容するなら、「1行で済むものは /> で閉じてもよいし、閉じなくても改行までとする」みたいなルールでよかったのに。

2013年3月5日

[js]最初に呼ばれる処理

今のところ、JavaScriptの処理を埋め込んだHTMLファイルを見ているが、2種類あった。

  • function定義があったりなかったりするが、それ以外にfunctionではない処理がある。
  • 全部function定義で、イベントが発生したときに指定したfunctionが呼び出される。

 

そもそも、JavaScriptって、それ自身では「特定のプラットフォームを動かすための中間言語」みたいなものだと思っている。
中間言語というと変だけど、JavaScript自身は最小限の言語セットしか持っていなくて、JavaScriptで書いたものは「JavaScriptコンパイラ」みたいなものが読み込んで、うまいことプラットフォームが持つAPIを呼び出したり、結果を返したりという間を取り持っている、というものだ。

SeaMonkeyっていうJavaScriptエンジンがある(あった?)けど、それを動かせるようにするときに、そんなことを考えていた。
今回は単に、プラットフォームがHTMLクライアントというだけのことだ。


そんなわけで、JavaScript自身の言語仕様はそんなに複雑ではないんじゃなかろうか、と思っている。
もちろん、言語仕様がそう落ち着いた背景などはいろいろあるのだろうが、JavaScriptはそこまで仕事に関わってこないと思うので、把握はしないことにしよう。

 

話を戻して、JavaScriptで最初に呼ばれる処理についてだ。
今まで見た範囲だと、

  • functionでない処理を最初に呼ぶ
  • 全部functionなら、イベント発生で呼ばれない限りは呼び出されない

なのだと思っている。

JavaScriptは、<script></script>の中に埋め込むか、<script src=”ファイル名”></script>として別ファイルにすることができるようだ。
どっちの場合も、特に書き方は変わらない。
<style>を別ファイルにするのと同じようだ。


では、最初に動かしたい処理がある場合、地の文に書くのと、イベント呼び出し(onLoadらしい)するのと、どちらがよいか?

・・・どっちでもいいんだと思う。
私としては、全部functionにしておいた方が、あとで最初に呼び出したい処理を差し替えるのが楽かな、とは思う。

しかしそれは、JavaScriptのコンパイラがどう解釈していくかによるけど、何となく遅くなる方向になるような気がする。
コンパイラの気分で見ていくと、JavaScriptの部分は上から順に処理していくことになるだろう。
でも、「function」と書いてあったら、「それは後で呼び出されたときに考えればいいや」と思うかもしれない。functionを作るだけ作って、呼び出されないかもしれないし。
読んでいって、イベント処理の部分が出てきて、それでも関数を登録するまでにしておくだろう。「次にイベントが発生したときに呼び出す場所だけ覚えておこう」という考え方だ。
最後まで処理を読んで、「あ、onLoadだ」と思って、そのとき初めて登録したfunctionを呼びに行く。。。

まあ、最近は賢いので、onLoadになりそうなfunctionは先に処理するような最適化がありそうだがね。
それに、ネットの通信速度はそんなに速くないので、ナノ秒単位で処理するコンピュータにとってはどうでもいいことかもしれん。
いや、どうでもいいことであってほしいものだ。

[js]idは前方宣言しとかないかんようだ

環境が落ち着いてきたので、HTML5の勉強を再開しよう。
まあ、勉強といっても、簡単にやれることを見ておこうというだけのものだ。
Webデザイナーになる、とか、そんな野望はまったく抱いていない(いや、なれるんだったら歓迎なんだけど。。。)。

今日は、canvas。
サンプルを見ながら打ち込む。
そのまま打ち込むと寂しいので、少しアレンジしながらやる。

  <script>
    var cnvs1 = document.getElementById("cnvs1");
    var ctx = cnvs1.getContext("2d");
    ・・・省略・・・
  </script>
  <canvas id="cnvs1" width="300" height="300"></canvas>
これは、だめだった。
cnvs1がnullになったのだ。
なんでnullになったのがわかったかというと、Firebugというツールで確認したからだ。
Firebugをどうして使おうという気になったかというと、何も表示されなかったからだ。
 
動かすには、<canvas>を<script>より前にしておく必要があった。
そうすると取得できた。
ほほぅ。
varみたいに型宣言を特に必要としない変数の扱いをするくらいだから、こういう部分も曖昧でいいかと思ったが、そうはいかんようだ。
 
とりあえずの私は、こういう基本的なところを知っていく必要があるようだ。

[TortoiseGit]XPからWin7にして権限がいるようになった

XP(32bit)からWin7(64bit)にして、いろいろと違いに困っている。
たぶん、XPからWin7にしたことよりも、32bitから64bitにしたことに起因していると思う。
ブルースクリーンでよく死んでしまうのだが、XP時代に使っていたソフトで32bitのものが関係しているように思う。

 

さて、プログラムならまだしも、ファイルになるとわかりづらい。
今回困ったのは、TortoiseGitで管理していたファイル。
Githubにpushしようとしたのだが、ppkファイルの設定ができずにエラーが・・・。

Pagentを別に実行してしまっておけばなんとかなるのだが、せっかくなので自動起動させてしまいたい。
となると、やっぱりSettingsから設定しておいた方がよかろう。
Settingsの実行ファイルのプロパティで「管理者権限で実行」にチェックを入れたのだが、解決しなかった。
うーむ。。。

結果としては、.git/configファイルのアクセス権限を変更すればよかった。
32bit/64bitうんぬんの前に、NTFSか何かの書き込みアクセス権がなかったので怒られていたようだった。

となると、他のファイルも同じようになるということか。。。
めんどうだな。
アカウントの設定に何かしておけばいいのかもしれんが、ようわからんわ。

2013年3月3日

[tizen]なんかできたようだ

イメージの作成ができないというところで、もう別のことでもやろうと考えていたのだが、検索するとなにやら出てきた。http://moguriqt.hatenablog.jp/entry/mic_01

micコマンドを使うとか、その辺はそれでよさそうだ。
興味深いのは、情報として書かれている、ksファイルに書くURLのところだ。
snapshotsではだめだったけど、releaseならよかった、という話。

それだけではなく、サイトに書かれているURLは何か日付が入ったようなディレクトリ名になっている。
今のところ私はlatestしか試していないけど、最新版だからまだ整理できていないのではなかろうか?

そんなわけで、repoするURLをあれこれ試してみたが、とりあえず1つうまくいってなにかできたような気がする。
まあ、結局はlatestなんだけど、深くは考えまい。


まず、ksファイルはこれを使った。
http://download.tizen.org/snapshots/2.0/common/latest/builddata/image-configs/

ここの、RD-210.ksを使うことにした。
あと2つあるけど、そっちは試していない。

repoのURLはこうなっていた。

repo --name=Tizen-main --baseurl=https://download.tizen.org/snapshots/2.0/common/@BUILD_ID@/repos/main/armv7l/packages/ --save --ssl_verify=no
repo --name=Tizen-base --baseurl=https://download.tizen.org/snapshots/2.0/common/@BUILD_ID@/repos/base/armv7l/packages/ --ssl_verify=no

あれ・・・。
今までとそんなに違いが無いような。
前回試したのは、これ。

repo --name=Tizen-main --baseurl=http://download.tizen.org/releases/@BUILD_ID@/2.0/repos/main/armv7l/packages/ --save --ssl_verify=no
repo --name=Tizen-base --baseurl=http://download.tizen.org/releases/@BUILD_ID@/2.0/repos/base/armv7l/packages/ --ssl_verify=no

ちょっと違うな。
前回はreleasesだったけど、今回はsnapshots。2.0の位置もちょっと違うし。

あとは、ksファイルの中身がずいぶん違う。
ksファイルの見方はわからんのだが、%packages、というブロックの違いが気になったな。
今回は、RD-210.ksをそのまま編集していないので、いいとしよう。


micコマンドは、こう使った。

$ sudo mic cr loop --taring-to=test-rs.tar.gz RD-210.ks --release=latest --logfile=lb.log

ほぼそのままだ。
これをすると、前回はしばらく見ていたらエラーで終わっていたのだが、今回はダウンロードやらインストールっぽいのやらマウントっぽいのやら、いろいろ動いていた。

ログはこちら。223KBくらいある。
https://sites.google.com/site/hiro99ma/home/files/other/lb.log?attredirects=0&d=1

できあがったのは、たぶんtest-rs.tar.gzというファイル。
320MBくらいある。
armv7lでビルドしたけど、今のところ動かす環境を持っていないので、ここまでだ。

で、私が期待したのは、イメージを作るときにダウンロードすると思われたソースファイル一式だ。
micを動作させたフォルダの中には、5つしかファイルがない。
もしかして、ビルド済みのファイルをダウンロードして、ひたすらtar.gzにまとめていっただけなのか??

謎は尽きないが、今日はここまでだ。

2013年3月2日

[tizen]Create Imageしてみようとするも、失敗

なぜかWindows Live Writerが起動しなくなったので、Zoundry Ravenで書いてます。

さて、週末と言うことで、LinuxからTIZENのビルドをするとしよう。


まず、ksファイルをダウンロードする。
Kick Startの略らしい。
そして、その中のrepoを書き換えるようだ。

パスが変わったのか、そのままではだめだった。

repo --name=Tizen-main --baseurl=http://download.tizen.org/releases/@BUILD_ID@/2.0/repos/main/armv7l/packages/ --save --ssl_verify=no
repo --name=Tizen-base --baseurl=http://download.tizen.org/releases/@BUILD_ID@/2.0/repos/base/armv7l/packages/ --ssl_verify=no

とりあえずパスは通ったようなのだが・・・repoが2つほど失敗して、ビルドできなかった。

[03/02 11:06:21 JST] mic 0.17 (Ubuntu 12.04 precise)
[03/02 11:06:21 JST] Substitute macro variable @BUILD_ID@/@ARCH@ in ks: lb.ks
[03/02 11:06:21 JST] Retrieving repo metadata:
[03/02 11:06:21 JST] Retrieving repomd.xml ...
[03/02 11:06:22 JST] Retrieving 6a902338a60b79ff6922a932a34bc88962790ff1df6e808139d037d7ad95a440- ...
[03/02 11:06:24 JST] Retrieving b989452bc4531939ddee96e3ef67d5d9f3df4e2cc2a89d38c9e5a3a99375ec96- ...
[03/02 11:06:24 JST] Retrieving 2e4c0e59c5962fcc1ec5243569b13ec285b3aa9d888245acca9e81ea6af35881- ...
[03/02 11:06:24 JST] Retrieving repomd.xml ...
[03/02 11:06:25 JST] Retrieving 37b3e49fd6c2d8b06c917e51a7419532b11ecf77f3f06783a61432969c77051c- ...
[03/02 11:06:26 JST] DONE
[03/02 11:06:26 JST] Use detected arch armv7l.
[03/02 11:06:26 JST] Creating tizen bootstrap ...
[03/02 11:06:26 JST] Retrieving mic-bootstrap-x86-arm-1.0-1.3.armv7l.rpm ...
[03/02 02:07:24 UTC] Installing: mic-bootstrap-x86-ar ++++++++++++++++++++++++++++++++++++++ [1/1]
[03/02 11:07:43 JST] Start mic in bootstrap: /var/tmp/mic-bootstrap/tizene1AP6U/bootstrap
[03/02 11:07:46 JST] mic 0.17 (Tizen 2.0.0 Tizen)
[03/02 11:07:46 JST] Substitute macro variable @BUILD_ID@/@ARCH@ in ks: lb.ks
[03/02 11:07:46 JST] Retrieving repo metadata:
[03/02 11:07:47 JST] Retrieving repomd.xml ...
[03/02 11:07:48 JST] Retrieving repomd.xml ...
[03/02 11:07:48 JST] DONE
[03/02 11:07:48 JST] Use detected arch armv7l.
[03/02 11:07:48 JST] Loading failed, skip plugin backend/yumpkgmgr
[03/02 11:07:55 JST] Refreshing repository: Tizen-main ...
[03/02 11:08:02 JST] Refreshing repository: Tizen-base ...
[03/02 11:08:08 JST] zypp architecture is <armv7l>
[03/02 11:08:08 JST] repo problem: nothing provides ffmpeg needed by pattern:tizen-c210-.noarch,
[03/02 11:08:08 JST] repo problem: nothing provides pwdutils needed by pattern:tizen-bootstrap-.noarch,
[03/02 11:08:12 JST] found 2 resolver problem, abort!

ffmpegとpwdutilsがないようだ。
うーむ。


では、x86版だとどうだろうか?

repo --name=Tizen-main --baseurl=http://download.tizen.org/releases/@BUILD_ID@/2.0/repos/main/ia32/packages/ --save --ssl_verify=no
repo --name=Tizen-base --baseurl=http://download.tizen.org/releases/@BUILD_ID@/2.0/repos/base/ia32/packages/ --ssl_verify=no

こんなんでいいんじゃなかろうか。
さあ、どうだ?

[03/02 13:27:20 JST] mic 0.17 (Ubuntu 12.04 precise)
[03/02 13:27:20 JST] Substitute macro variable @BUILD_ID@/@ARCH@ in ks: lb_x86.ks
[03/02 13:27:20 JST] Retrieving repo metadata:
[03/02 13:27:21 JST] Retrieving repomd.xml ...
[03/02 13:27:22 JST] Retrieving repomd.xml ...
[03/02 13:27:22 JST] Retrieving b8304b2a6a38e18a6877de77c2af7ba9f8d817594dcc49ff9799e708fb532386- ...
[03/02 13:27:23 JST] DONE
[03/02 13:27:23 JST] Use detected arch i586.
[03/02 13:27:23 JST] Creating tizen bootstrap ...
[03/02 13:27:24 JST] Retrieving mic-bootstrap-x86-arm-1.0-1.3.i586.rpm ...
[03/02 04:28:17 UTC] Installing: mic-bootstrap-x86-ar ++++++++++++++++++++++++++++++++++++++ [1/1]
[03/02 13:28:30 JST] Start mic in bootstrap: /var/tmp/mic-bootstrap/tizen92nZvB/bootstrap
[03/02 13:28:32 JST] mic 0.17 (Tizen 2.0.0 Tizen)
[03/02 13:28:32 JST] Substitute macro variable @BUILD_ID@/@ARCH@ in ks: lb_x86.ks
[03/02 13:28:32 JST] Retrieving repo metadata:
[03/02 13:28:32 JST] Retrieving repomd.xml ...
[03/02 13:28:33 JST] Retrieving repomd.xml ...
[03/02 13:28:33 JST] DONE
[03/02 13:28:33 JST] Use detected arch i586.
[03/02 13:28:33 JST] Loading failed, skip plugin backend/yumpkgmgr
[03/02 13:28:41 JST] Refreshing repository: Tizen-main ...
[03/02 13:28:49 JST] Refreshing repository: Tizen-base ...
[03/02 13:28:53 JST] zypp architecture is <i586>
[03/02 13:28:53 JST] repo problem: nothing provides ffmpeg needed by pattern:tizen-c210-.noarch,
[03/02 13:28:53 JST] repo problem: nothing provides eglibc needed by pattern:tizen-bootstrap-.noarch,
[03/02 13:28:55 JST] found 2 resolver problem, abort!

こっちは、ffmpegとeglibcがないらしい。
うーむ。。。

2013年3月1日

[html]HTML5だけだとあんまり面白くないので、JavaScriptもやったほうがよいようだ

HTML5がんばろう、と思って見ているのだが・・・。

HTML5だけだと、あんまり面白くない。
CSS3とか、JavaScriptとか、なんかそういうものがないと、単に静的なHTMLが表示されました、というだけのことになってしまいそうだ。

CSSは後回しにするとして、JavaScriptをやらんといかんのか。。。


<script>~</script>は、<head>~</head>の中か、<body>~</body>の中に書くらしい。
ほうほう。

<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="utf-8" />
    <title>
        <script>
            document.write("もうすぐ焼き肉");
        </script>
    </title>
</head>
<body>
    <script>
        document.write("食べよう");
    </script>
</body>
</html>

これは、だめだった。
タイトルに「<script>・・・」が全部表示されてしまった。

<head>~</head>ならどこでもいいわけではないようだ。
<body>はどうなんだろう?


<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="utf-8" />
    <title>
        <script>
            document.write("もうすぐ焼き肉");
        </script>
    </title>
</head>
<body>
    <h1>
        <script>
            document.write("食べよう");
        </script>
    </h1>
</body>
</html>

<h1>の中は、大丈夫だった。
なんか、ルールがよくわからんな。。。

document.title = “xxx”;とbody側に書くと変更ができることはわかったのだが、titleに書くとそのまま表示されてしまうというルールがよくわからんのだ。


http://www.asahi-net.or.jp/~sd5a-ucd/rec-html401j/struct/global.html#h-7.4.2
これはどうやら、titleタグの仕様らしい。
「コメントを含め、他のマークが現れてはいかん」となっている。

それなら、納得だ。

[nfc]月刊NDEF 3月号(卒業号)

あんまり見直していないが、疲れた・・・。
間違いが少ないといいな・・・。



「NDEF」とでかでかと書いているのに「NDEFはないよ」ってのはいいのか?
まあいいや。。。