カテゴリー
everyday life

Google AdSense。

 左横に現れた黒い空白,ナンダッと思うでしょう。実は, Google AdSense に申し込みしてみた。知り合いのサイトが使っていて,ちょっと好奇心とちょっと欲と道連れ(汗)。

 大体こういうたぐいのことって,初め食いついても,続いたためしのない私なのだが,あまり手間がかからなそうな印象なので,つい,食指が動いた(爆)。

 申し込み完了で,「お申し込みを受け付けました。審査完了までしばらくお待ちください。」というページが表示される。1次審査の返事はすぐ来たが,ちゃんと広告が表示されるようになるまで,1週間くらい審査にかかるらしい。さて,どんな広告が表示されるか,興味津々。本当に,記事に関係ある広告が,表示されるのだろうか。

カテゴリー
everyday life

縦書きエンジン「涅槃」について-#2

投稿アップデート情報  追記(11/5) 追記2(2014/6/10) 追記3(2016/5/18)

ヘビさん1
ヘビさん1
ヘビさん2
ヘビさん2
 本題に入る前に,久しぶりに坪でヘビさんを見たので,アップ。今年の正月に書いたように,実は,ヘビは苦手。しかし,本日撮影していて,なかなかかわいい目をしているな,と感じてしまった(汗ッ)。

 朝洗濯した夏蒲団を,しっかり乾かすために日向に干していたが,もうすっかり乾いたのでいれたあと,竿をしまおうと井戸のところに運んで,梁に手をかけたのだが,まさにそこに奴はいた。危うく触るところだったよー,ウウーッ。これ,青大将くんダヨネ。

 我が家は,もともとはヘビの多いうちで,その代わりにネズミを見たことがなかった。庭に弁財天があるんだけど,白蛇を祭ってるらしいし。しかし,このごろあまり見かけない。彼らも暮らしにくい世になったのかなあ。

 さて,本題。
 先日,「涅槃」のバージョンが上がっているのに気づいた。はてなに移られた「縦書き文庫 (id:convertical)」さんが,新しいバージョンについて使い方「縦書き、横書き自由自在! あなたのブログをページ送りで表示させる最も簡単な方法」を書いておられたので,早速アップデートにかかったのだが,いやー,てこずったてこずった。

 もっとも,てこずったのは,前バージョンで我が家用にカスタマイズしていたところのうちのひとつだけ,なのであるが……

 他のところは,上のリンクの説明どおりでまったく問題なかった。

 何はともあれ,各ページが縦書きになるように, <meta http-equiv=”Content-Type” content=”text/html;charset=UTF-8″ /> の直後に,以下のコードをコピペ。
————————————————————————————————————————————————-
<link charset=”utf-8″ rel=”stylesheet” type=”text/css” href=”//nehan.googlecode.com/hg/nehan4.css” />
<link charset=”utf-8″ rel=”stylesheet” type=”text/css” href=”//nehan.googlecode.com/hg/jquery.nehan.css” />
<script type=”text/javascript” src=”//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js”></script>
<script charset=”utf-8″ type=”text/javascript”
src=”//nehan.googlecode.com/hg/nehan4.min.js”></script>
<script charset=”utf-8″ type=”text/javascript”
src=”//nehan.googlecode.com/hg/jquery.nehan.min.js”></script>
<script type=”text/javascript”>
$(function(){
 $(“.nehan-book”).nehan({
  usePager:true, // falseにするとページャーなしで多段組
  direction:”vert”, // 横書きなら “hori”
  fontSize:16,
  width:600,  <<—- 800 に変更
  height:400,  <<—- 500 に変更
  rowCount:1, // 2段組がよければ2にする
  colCount:1, // 見開きがよければ2にする
  readerElements:[“screen”, “pager”], // ページャーを先にしたければ逆順に
  // より軽いページ送りがよければこっち
  //pagerElements:[“left-next”, “right-prev”, “progress”]
  pagerElements:[“left-next”, “indicator”, “right-prev”]
 });
});
</script>
————————————————————————————————————————————————-
 さらに,縦書きにしたいところを, <div class=”nehan-book”>~</div> で囲う。

 変えたのは, width と height だけ。まあ,このままだと,縦書きページが左によってしまうから,中央に来るように <table style=”margin: auto;”> は入れたけど。

 で,うまくいかなかったことの話。
 <icon> タグの仕様が変わったか無くなったかのようで,これを使っていた「⦅」「⦆」の表示がどうしてもうまくいかなかった。

 「⦅」「⦆」は JIS X 0213 に含まれていて,旧いブラウザ (OSも絡むと思う) で表示できないので,画像を使っていたのだが,時代の流れでもあるし,この際,旧いブラウザは見捨てることにした(汗+爆)。
 nehan4.css を調べてみると,90°回転について
          .nehan-rotate-90{
           word-break:normal;
           overflow:visible;
           -webkit-transform : rotate(90deg);
           -webkit-transform-origin : 50% 50%;
           -moz-transform : rotate(90deg);
           -moz-transform-origin : 50% 50%;
           -o-transform : rotate(90deg);
           -o-transform-origin : 50% 50%;
           transform : rotate(90deg);
           transform-origin : 50% 50%;
          }
となっている。で,どの文字を回すかは nehan4.min.js の中でやってくれているようなのだが,当然ながら,「⦅」「⦆」については nehan の考慮に入っていないから回してくれない。というわけで, nehan-rotate-90 を手差しで必要箇所に挿入した。

 それから,「ヰ」と「阿」を小文字として使えるように, custom.css を作り,もともとある2枚の css の直下に,以下を追加。
<link charset=”utf-8″ rel=”stylesheet” type=”text/css” href=”//o6asan.com/~/custom.css” />

 custom.css の中身は,次の通り。
          .nehan-small{
           font-size: 60%;
          }
 たったこれだけだから,わざわざ custom.css にするほどでもないのだが,どこをカスタマイズしたかを忘れる可能性があるので, custom.css は一種の備忘録だ。

 まっ,こんなとこ。

追記(11/5):
 縦書き集の紹介入れるのを忘れてた。お暇なら,覗いてみてください。

追記2(2014/6/1) :
 nehan5 について,「縦書きエンジン「涅槃」について-#3」を書いた。

追記3(2016/5/18) :
 縦書き文庫さんの GitHub のリポの「nehan-book」利用方法について記事を書いた。

カテゴリー
Windows

本家のお世話-#80。(PHP5.5.5へアップデート)

The same article in English

 Oct-17 00:30:06UTC に PHP5.5.5 が出た。

 ChangeLog によれば,20程度のバグフィックスがあり,そのうちのいくつかはビルド関係らしい。

 いつもどおり,我が家用 (Windows7HP+SP1(x86)) として,VC11 x86 Thread Safe 版の php-5.5.5-Win32-VC11-x86.zip を落としアップデート。 VC11 がいるので,インストールがまだの場合は PHP のコンフィグの前に vcredist_x__.exe を入れておく必要がある。

 php.ini-production には実質的な変更はないが,”; This is php.ini-production INI file.” というコメント行が1行増えていた。

 php5apache2_4.dll はオフィシャルバイナリに含まれているので,新旧のファイルを入れ替えて php.ini を放り込み, Apache をrestartするだけ。

 新規に導入する方は,必要なら「Windows7上にWamp系WebServerを建てる-#2。」を参考にしてください。

カテゴリー
everyday life

後の月(2013)。

後の月(2013)
後の月(2013)
 めっきり肌寒くなりましたね。皆さんのところは十三夜の月,見えましたか。我が家の空はどうも雲が多くて,お月見という雰囲気ではありませんでした。

 粘って粘って,何とか雲間から顔を覗かせたお月さんを画像に納めましたが,雲がかかっていて,そのためにシャッタースピードを落としたので,手振れもあるのか,ぼやけてますねぇ。

 毎年,二夜の月見を達成してみたいと思うのですが,なかなか難しいもんです。今年は,達成のうちに入れてもいいんでしょうかねえ。

カテゴリー
everyday life

SDカードのデータ復旧。

 本日,知人のところに行ったら,デジカメ(Canon IXY 430F だったようだ)の SD カードが読めなくなったという。よくある話で,プリントアウトしたもの以外はバックアップを取っていないという状態。プリントするのは人にあげるためだから,本人の手元にはないわけで,ものすごくショックのようだった。そういうわけで,見かねて預かってきた。

 帰ってきてから PC に差し込んでみたら,「フォーマットしてください」が出る。しかし,ある意味,これで安心した。物理的には壊れてないようだから。

 単純なデータ復旧には,いつも,復元(RESTO428.zip)を使ってきたんだが,今回,ふっと色気を出して「SD カード フォーマットしてください データ復旧」でググッて見た。まぁ,いっぱいあるねえ。やっぱ,よくあってみんな困ってることなんだなぁと,妙に納得してしまったよ。

 で,いろいろめっかったフリーソフトを2つ試してみた。というか,1つ目はウームという状態だったので,2つ目も試したということ。

 はじめは, diskdigger.zip 。このソフト, exe 単体で使えて,インストール不要。よかったんだけど,ファイル名が復旧されずに,セクタ名で表示されちゃってネ。しかも,復元力が強力なのはいいんだけど,半端なファイルもすべてサムネイルで見せてくれるので,取捨選択が煩雑になりそうだったので, Give up 。なんせ, 1000 枚近く見つかったもんでさ。

 で,2つ目には, zar92setup.exe を試してみた。これは,インストールが,必要。実のところ,このソフトも,ファイル名が, jpg 付きで表示されたのを除けば,似たような復旧状況だった。つまり,やはり 1000 枚近くファイルが表示されたってこと。しかし,人間て,デジカメ画像の復旧ファイルに jpg 拡張子がついただけで,なんとなく安心するんだよね(爆)。

 まぁ,2ソフトとも似たような結果だったから,この2つでお試しはやめて,ファイルの保存に移った。たった, 8GB の SD カードだったんだけど,全作業に,2時間くらいかかった。一番手間を食ったのは,保存したファイルのうち,まともでないのを削除する作業。まともでないやつの中に,1枚 6GB を超えるとんでもないのがあったが,エクスプローラの特大アイコンとしては,ちゃんと画像が表示されたから,多分, SD カード上にあったときからこの状態だったのだろう。もしかしたら,このとんでもないののせいで,デジカメ本体もカードを読めなくなったのかもしれないな。

 ところで,このソフトについては, 「SDカード復旧方法」というすごく丁寧な使い方ページを発見した。それほど,使い方の難しいソフトではないけれど,ここまで丁寧なチュートリアルはありがたいですねぇ。自分のカードじゃないから,どのくらいの割合復旧できたのかは,今のところ不明だけど,時系列で考えると,多分,90% くらいは拾えたのではないかと思う。

 washo さん,お世話になりました。ありがとうございます。

カテゴリー
Windows

2013年10月マイクロソフト定例。

投稿アップデート情報  追記(10/10)

 2013年10月のセキュリティ情報ということです。 Adobe Acrobat Reader もアップデートが出ました。

 近ごろの我が家,セキュリティネタが少ないと思ってるでしょ。ないんじゃないです。ありすぎてアップアップで,書く気がしなくて,この体たらく。なんかもう,ほんと,おなか一杯,手いっぱい。

 対応する皆様,いずこの方も頑張ってください。零細な自鯖運営者も,及ばずながら,日々,努力しておりますですよー。 m(_”_)m

追記(10/10):
 まぁ, M$ の分だけでも多くて多くて,ほんとにちょっとアップアップなんですが,そうは言いながらも定例がらみで発見したことだけ書いておきます。

 なんかいっぱい緊急があって,なおかつズラズラと謝辞が並んでるなぁ,そういう時代なんだなと2013年10月のセキュリティ情報を読んでたら,謝辞のところに明らかに日系の名前があった。へえ,日系米人かと思ったが,よく見たら,どうもラックの石川芳浩さんですねぇ。

 で,行ったことのなかった LAC Co. をのぞいてみたら,こんなんありました。

 こういう時代なんですねえ。下級な現場のもの(—>自分のことですわ)もしっかりしないと,時代に取り残される。取り残されるだけならいいけど,いつ痛い目に合うかわからんなぁ。

カテゴリー
everyday life

電右衛門さんが……。

 こちらにもよく書き込みをしてくださり,ウォシュレットのときには,約1か月半気長に付き合ってくださった,電右衛門さんが亡くなられてしまった。8月20日だったそうだ。前の日まではお元気で,急なことだったらしい。

 2010年の12月に急性大動脈解離で手術をされたが,その後,順調に回復されていた。ただ,今年の6月には再手術をされた。しかし,お元気になられていたのに。

 先月の19日からおいでがなくて,心配していたのだが。考えてみると前日までおいでいただいたことになる。いろいろ,ありがとうございました。

 心から,ご冥福をお祈りいたします。

カテゴリー
Windows

本家のお世話-#79。(MySQL5.6.14へアップデート)

The same article in English
投稿アップデート情報  追記(9/25)

 自鯖の (Windows7HP+SP1(x86)) の MySQL を 5.6.12 から 5.6.14 にアップデートした。

  1. mysql-5.6.14-win32.zip をダウンロードする。
  2. Zip を展開する。
  3. MySQL のサービスを停止。
    cmd.exe を管理者として起動。
    >net stop mysql
  4. 用心のために, Drive_SV (自鯖のサーバウェア用パーティション) 内の ‘MySQL’ と ‘MyDATA’ をバックアップする。
    注: 通常の ‘MySQL’ の場所は C:mysql , ‘MyDATA’ の場所は C:mysqldata である。
  5. 使用中の ‘MySQL’ 内の同名のものを,以下の4つのディレクトリと1つのファイルで上書きする。 my.ini は残ったままになる。
    • ディレクトリ
        bin
        include
        lib
        share
    • ファイル
        COPYING
  6. 使用中の ‘MyDATA’ 内の同名のものを,以下の2つのディレクトリと3つのファイルで上書きする。ただし, ‘MyDATA’ の mysql にあるdb.MYD, db.MYI, user.MYD, user.MYI の4ファイルは上書きしない。これを上書きすると,ユーザとパスワードを再設定する羽目になる。 auto.cnf は残ったままになる。
    • ディレクトリ
        mysql
        performance_schema
    • ファイル
        ib_logfile0
        ib_logfile1
        ibdata1
  7. MySQL のサービスを開始。
    cmd.exe を管理者として起動。
    >net start mysql

 以上。

追記(9/25):
 このアップデートと関係あるのかどうかは定かでないんだが,一昨日から WordPress のデータベースのひとつについてエラーが頻発していた。よくわからないので, WordPress 関連のデータベースをそっくりドロップし,バックアップと入れ替えてみた。今のところよくなったように見えるんだが,何が原因だったんだろう。

カテゴリー
Windows

本家のお世話-#78。(PHP5.5.4へアップデート)

The same article in English
投稿アップデート情報  追記(9/21)

 Sep-18 23:44:17UTC に PHP5.5.4 が出た。

 PHP 5.5.3 のバグ・フィックスだけらしい。 ( ChangeLog )

 といいながら, php.ini-production の中身は,下記のように,若干変わっていた。

 short_open_tag について
———————————————————————————————————————————————
PHP5.5.3 では —
; このディレクティブは, <? と ?> に挟まれた部分を PHP ソースとして扱うかどうかを判断します。
; ここ何年か,ショートタグ <? ?> の代わりに,フルタグ <?php ?> を使うことが推奨されてきました。
; XML などのように, PHP 以外でこのタグを使うものが増えたため,サーバ上で混乱が起き,間違った解釈が
; 起こることが多くなっています。長い間使われてきた機能であるため,ショートタグは今も以前のバージョンとの
; 互換性を保つために残されています。
; しかし,できる限りこの機能を使わないようお願いいたします。
———————————————————————————————————————————————
PHP5.5.4 では —
; このディレクティブは, <? と ?> に挟まれた部分を PHP ソースとして扱うかどうかを判断します。
; 以前のバージョンとの互換性を保つために,いまだにサポートが続いている機能ですが, XML との併用時の
; 不具合を回避するために,通常はこの機能を使わず,フルタグ <?php ?> を使用してください。
; (注)このディレクティブは shorthand タグ <?= とは関係ないことに注意してください。
;   <?= はここの設定にかかわりなく,使用できます。
———————————————————————————————————————————————

ということなんだが,面白い話を mail-archive.com で見つけた。新しいショートタグが生まれちゃったりして!!

 やっと,session.use_strict_mode についても出現
———————————————————————————————————————————————
PHP5.5.3 では —
 当然ながら,記述なし。
———————————————————————————————————————————————
PHP5.5.4 では —
; Strict session mode を使用するかどうかを設定します。
; On の場合は,未初期化 ID は受容しませんので,ブラウザが未初期化 ID を送ってきた場合に,セッション ID が
; 再生成されることはありません。
; Strict session mode はセッションアダプション脆弱性を使ったセッション固定化攻撃からアプリケーションを
; 保護します。互換性を考慮して,デフォルトでは Off になっていますが, On にされることを推奨いたします。
; https://wiki.php.net/rfc/strict_sessions
session.use_strict_mode = 0
———————————————————————————————————————————————

 まっ,とにかく,我が家用 (Windows7HP+SP1(x86)) として,VC11 x86 Thread Safe 版の php-5.5.4-Win32-VC11-x86.zip を落としアップデート。 VC11 がいるので,インストールがまだの場合は PHP のコンフィグの前に vcredist_x__.exe を入れておく必要がある。

 php5apache2_4.dll はオフィシャルバイナリに含まれているので,新旧のファイルを入れ替えて php.ini を放り込み, Apache をrestartするだけ。

 新規に導入する方は,必要なら「Windows7上にWamp系WebServerを建てる-#2。」を参考にしてください。

追記(9/21):
 徳丸さんが,「PHP5.5.4にてstrict sessionsのバグ(bug65475)が修正されたがテストがないことに気づいた」という記事を書いていた。

 別件。上記の「(注)このディレクティブは shorthand タグ <?= とは関係ないことに注意してください。<?= はここの設定にかかわりなく,使用できます。」について確認してみた。
———————————————
  <? echo “1.使えますか?”; ?>
  <br>
  <?php echo “2.使えますか?”; ?>
  <br>
  <?= “3.使えますか?”; ?>
———————————————
というスクリプトを走らせてみたら,
———————————————

  2.使えますか?
  3.使えますか?
———————————————
になった。自鯖の場合, short_open_tag は off だが,確かに,ショートハンドも使えている。 PHP のマニュアルによれば,

注意:

PHP 5.4.0 より前のバージョンでは、 このディレクティブは、<? echoと同じ形式の ショートカット<?=も影響を受けます。 このショートカットを使用するには、 short_open_tagをonとする 必要があります。 PHP 5.4.0 以降では、<?= は常に有効となります。

ということらしい。

カテゴリー
everyday life

JAVAの話。

投稿アップデート情報  追記(9/27)

 TODOSでの話だが, JAVA のプログラミングについて,初歩の初歩の質問があって,回答のプログラムを書いた。こんなの ( Enzan.java )。

 何しろ,生まれて初めて,ネットを拾い読みしつつ組んだプログラムなので,引き算の答えが負になる場合の処理とか,エラー処理とかなにもやっていないが,まあ,初歩の初歩の回答としては,そのほうがゴチャゴチャしないでわかりやすいかもしれない。プログラムのチェックは, jdk-7u40-nb-7_3_1-windows-i586.exe でやった。

 で,昨日,次のものとして, for 文の使い方についての質問があった。 TODOS に回答を書けばいいようなものの,スレッドの流れからどうも書きにくくなってて,JAVA の勉強にはなるから,ここに書いてしまおうかと。

 ところで,質問文中に「実行結果があやふやなことになりました」とあるが,締めくくりの } が2つないのもさることながら,これでは,実行以前にコンパイルが通らないと思うのだが,実行というのをコンパイルの意味で使っているのだろうか。しかし,コンパイルでははっきりエラーメッセージが出るはずだから,「あやふや」という表現は当たらないよなあ。

 質問文中のプログラムには,まず,何よりもまず最後に } が2つ必要である。さらに,変数の型宣言が for ループの中に入ってしまっているから,これを外に出さないといけない。こんな具合 ( Sample1.java )。これで,コンパイルは通る。これは,私の間違い。もう一度確認してみた。型宣言が中にあっても,一般には通る。しかし, for ループの中が空のときは通らないようだ。
 さらに,追記(汗)―― Sample2_1 は通るが, Sample2_2 は通らない。考えるに, JAVA のコンパイラはお利口さんで, for ループが空だと実質何も行わずに無視するのだろう。したがって,インデックスの宣言と値代入が同位置だと, for ループが空の場合,そこが無視されているから,型宣言が行われていないことになって,あとの print 文の変数が未宣言になってエラーが出ると見た。多分,これで正解。したがって,通常は,インデックスの型宣言は for 文の中で構わないことになる。――追記,ここまで。

 しかし, (int i=1; 1/i<=500; i++) ってどういう意味だろう。多分,条件と for ループの中でやるべき処理とがごっちゃになったんだろう。しかし, 1/i で i が int だと計算結果も int で 1/2 からはずっと 0 になるわけだから,ナンジャラホイということになってしまう。プログラムを実行可能にするためには,せめて, (int i=1; i<=500; i++) じゃないといけない ( Sample2.java )。

 さて,空っぽの for ループの中になにか処理することを入れないといけない。 i をインクリメントさせて, 1/i を加えていくわけだから,計算結果を記憶させる変数が必要だ。彼の考えに沿って行くと, int j=0; を宣言しておいて使うということになるだろう ( Sample3.java )。しかし,これの実行結果は, 1 になる。ここまで来て,「実行結果があやふやなことになりました」というんなら納得できるんだけどな。なんでこんな結果になるかというと,型が int だからだ。 i が整数型だから, JAVA だと, Sample3.java の 1/i の場合, 1/1 以外はすべて 0 になるはずだ。

 追記(9/26): (float)i と明示的に書いてやると, 1/(float)i の結果が float になることを知った。

 この手の計算なら,小数を扱う必要があるから, float か double を使うべきだろう。桁落ちの発生する float や double での 1 + 1/2 + 1/3 + … + 1/500 の計算結果は,誤差が大きくなって大変にまずいわけだが,初級レベルのプログラミングの for 文の使い方でそんなところまで要求するとは思えないから, float でも使っておけばいい。実行結果は, 6.7928243 になる ( Sample4.java )。

 しかし,今回の質問の文章にも,彼は全く悪びれたところがない。この間,りりさんが,「このまま去れられると、別のご相談をしたくなったとき、もう、ここでは応えて貰えないと思いますよ。」と書かれていたのに,この書き方ということは,彼の中では,もう一度来たから「このまま去った」わけではないということなんだろうな。よー分からんが,そういうことなんだろう。

 初心者の場合,相談後,教えてもらったことを使って実際の手順がうまくいっても,掲示板の今後の利用者のために結果を詳細に報告と言われても,どう書けばいいかわからないということはある。だから,「解決しました」しか書かない,いや書けない投稿者も存在する。だからそれはそれでいいのだが,前回の文章に「ありがとうございました」の一文を入れるか,今回の文章に「この間は,失礼しました。遅くなりましたが,改めてお礼申します。ありがとうございました」とか書いてから,今回の質問を書けば何も問題ないんだが。そこがないので,私は流れ上スレッドの続きを書きづらい。

 私としては,もう一度彼に注意を促しながら,回答をしてもいいのだが。 JAVA の勉強にいい機会だと思って付き合いだしたのだが,なんともすっきりしないことになってきたワイ。

追記(9/27):
 りりさんの提案で,彼の投稿をネタに TODOS でトライをやった。「何十も見つかった」という話だったのだが,重複が多かったらしく,9度で打ち止め。9個並べてリンクを貼っておきます。

 「その23」以降は,「JAVAの話-#2。」にリンクしてある。