mieki256's diary



2014/10/01(水) [n年前の日記]

#1 [hns] hnsのキャッシュが消去される問題

理由が分かった。~/diary/log/LM/ 内のファイルの所有者?がおかしくなってた。apache 1.x から apache 2.x になった際に user や group が変わったので、そのせいだと思う。

hnsはデフォルト設定だと、以下のファイルが更新された時にキャッシュを全消去する。 これらのファイルが更新されたかどうかは、~/diary/log/LM/ 内にそれぞれ対応するファイルを作成して、双方のタイムスタンプが同じかどうかで調べてる。なので、~/diary/log/LM/* がWebサーバ側から書き換えられないと、古いタイムスタンプのままになって、常に件のファイルが更新されたものと判断されて、キャッシュが全消去され続ける。

解決策は簡単で、~/diary/log/LM/ 内のファイルを全部削除すること。lib/HNS/Cache.pm 内で、~/diary/log/LM/* が無かったら現時点のタイムスタンプでファイルを新規作成してくれるので、整合性が取れる。もちろん、~/diary/log/LM/ のパーミッションは 777 や 707 にしておくこと。

#2 [vagrant][ubuntu] Vagrant + Ubuntu Linux を用意

実験用のサーバ環境が欲しくなったので、Vagrant を使って Ubuntu Linux の仮想PCを用意してるところ。 _2014/07/15の日記_2014/07/21の日記 を読み返しながら作業。

今回は、 _A list of base boxes for Vagrant - Vagrantbox.es の中から、Ubuntu 14.04 i386版を box に追加して用意してみた。
vagrant box add ubuntu14.04i386 https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-i386-vagrant-disk1.box

vagrant-hostsupdaterのインストール。 :

ホストOSの hosts に、ゲストOSのホスト名とIPを追加/削除してくれるplugin。IPアドレスを直接指定しなくても、ホスト名でアクセスできるようになる。インストールは以下。
vagrant plugin install vagrant-hostsupdater

Vagrantfile 内で、ホスト名とIPアドレスを定義しておく。
config.vm.hostname = "hogehoge.devel"
config.vm.network :private_network, ip: "192.168.33.250"

Windows7 の場合、事前に、
C:\Windows\System32\drivers\etc\hosts
のアクセス許可を変更して、Users にフルコントロールを設定しておくこと。そうしないと vagrant-hostsupdater が hosts を書き換えられないらしい。これはこれで、セキュリティ面で問題がありそうな気もするけど…。利便性を取るか、安全性を取るか…。

vagrant up すると、hosts に追記してくれる。また、vagrant halt すると hosts の中から追記した該当行を削除してくれる。

以下、参考ページ。

_VagrantでゲストOSを起動した際に、ホストOSのhostsファイルにゲストOSのホスト名・IPを追加・削除してくれるVagrantプラグイン「Vagrant::Hostsupdater」 | misty-magic.h
_WindowsでVagrant+WordPressの環境作ったよ(導入編) | 鉄王
_Vagrant boxを起動する | WinRoadのLaravel4初心者講座

ユーザ追加と管理権限グループへの追加。 :

ユーザ追加。
sudo adduser ユーザ名
useradd ではホームディレクトリを作らないらしいので注意。

管理権限グループへの追加。sudo が使えるようにする。
sudo gpasswd -a ユーザ名 sudo
usermod -G sudo ユーザ名 では、設定以外のグループの所属が消えてしまうので注意。

以下参考ページ。

_Ubuntuにて新規ユーザにsudoの権限をつける | 日々の活動Blog

rootのままで作業する。 :

sudo -s もしくは sudo su - で作業できる。

_Ubuntuでroot権限で作業をしたい - Qiita

rootパスワードを設定する。 :

sudo passwd root

loadparm.cがエラーを出す問題。 :

ntpをインストール。 :

sudo aptitude install ntp
sudo service ntp stop
sudo ntpdate ntp.nict.jp

/etc/ntp.conf にNTPサーバを記述。
sudo vi /etc/ntp.conf

sudo service ntp start
ntpq -p

euc-jpも利用可能にする。 :

grep ja /usr/share/i18n/SUPPORTED
以下の表示が出てくれば euc-jp を使えるようにできる。
ja_JP.EUC-JP EUC-JP
ja_JP.UTF-8 UTF-8

sudo locale-gen ja_JP.UTF-8
sudo update-locale LANG=ja_JP.UTF-8
/var/lib/locales/supported.d/local に ja_JP.EUC-JP EUC-JP を追加。
sudo vi /var/lib/locales/supported.d/local
sudo locale-gen
locale -a
出力結果に ja_JP.eucjp があれば成功。

_Ubuntuに日本語localeを設定する | dreamedge.net
_Ubuntuでja_JP.EUC-JPを使用する - World Wide Wonderful

#3 [neta] お前はiPhoneか

変な夢を見た。

自転車に乗って力を入れてペダルを漕いでたら、ハンドルがふにふにと少し曲がり始めて。何回かふにふにしてるうちに、とうとうボキッボキッと折れてしまって。思わず、「お前はiPhoneかっ!」…と怒鳴ったところで目が覚めた。

寝惚け頭で、現実の自転車はたいしたもんだなと思ったりして。設計がアレだったり、組み立てがアレだったり、表面加工がアレだったりはするけれど、さすがにハンドルがふにふにと曲がったりはしないよなと。

もっとも、そのうち中国あたりで材料や加工の手間をケチり始めて、ハンドルがふにふにしたり、ボキッと折れたりする自転車が市場に出回ったりする、そんな未来もあるのかもしれないけれど。

それはともかく。「お前はiPhoneかっ!」という台詞は、なんだか使える場面があったりしないかなーと思えてきたのでした。

ラジオ体操をしてるサラリーマン2人。片方の腰が、グキッ。
A 「腰が…姿勢が戻らない…」
B 「お前はiPhoneかっ!」

教室。数人の男子小学生がワイワイ。買ってもらったスマホを自慢してるヤツが居る。
A 「お前、スマホ持ってないの?」
B 「うっ、ウチにもiPhoneが居るよ!」
C 「iPhoneが…“居る”?」
腰の曲がったお爺さんの図。

当て逃げされて曲がってしまったのであろう交通標識。
じっと見つめてる通行人。
通行人 「…iPhone」

スプーン曲げをしようとしてるマジシャン。
マジシャン 「曲がれ〜曲がれ〜」
観客が曲がったiPhoneを持ち出す。
マジシャン 「そっちじゃない」

夜。山奥の山荘。
A 「人が死んでる!」
B 「誰か早く警察を!」
C (黒電話を使いながら) 「ダメだッ! 電話が繋がらない!」
C (黒電話を睨みつけて) 「お前はiPhoneかッ!」

通信ができないのと通話ができないのはまた別なんでしょうか? よく知らないんですけど。東芝製スマホなら電話が使えなかったはずですけど…。

エッチをしている男女。
男 「ここはどうや?」
女 「ああっ! イイ!」
男 「ここはどうや?」
女 「ああっ! そこもすごくイイ!」
男 「ここはどうや?」
女 「(無言)」
男 「(…お前はiPhoneか…)」

特定の場所を指で押さえると電波の反応が鈍くなる不具合って、さすがに現行製品では存在しないのかな。

こんな時、 _コミPo! があったら便利なのかなと思えてきました。

2014/10/02(木) [n年前の日記]

#1 [vmware] VMware VIXを試用

vagrant + VirtualBox のようなことを VMware Player でもできないかな、せめてバックグラウンドで画面を出さずに VMware Player を起動できないか、と思ったのだけど。

ググってみたら、どうやら VMware VIX なるものを導入すると、バッチファイル等からそういうことができるらしいと知ったので、試しに触ってみたり。

_ダウンロード VMware Player 6.0 から、VMware-VIX-1.13.3-1895310.exe をDL。実行してインストール。

C:\Program Files (x86)\VMware\VMware VIX\ フォルダ内に vmrun.exe というツールがあるので、ソレを呼び出せばいいらしい。とりあえず以下のページを参考にしてバッチファイルを書いた。

_VMware PlayerをGUI無しで起動する(VIX) - Qiita
_VMPlayerのvmxをバックグラウンドで起動 - m_shige1979のささやかな抵抗と欲望の日々
_仮想サーバのCUI起動 - 気になったことをいろいろやってみる
_みかんの備忘録

vm.bat
@echo off
set DIR_VMRUN="C:\Program Files (x86)\VMware\VMware VIX"
set CMD_VMRUN=vmrun
set VMX_TARGET="vmxファイルのパスをここに書く"
cd /d %DIR_VMRUN%
if "%1"=="start" goto VMSTART
if "%1"=="suspend" goto VMSUSPEND
if "%1"=="stop" goto VMSTOP
if "%1"=="list" goto VMLIST
goto HELPMES

:HELPMES
echo VMware Player Control (for VMware VIX)
echo vm [start^|stop^|suspend^|list]
goto END

:VMSTART
start %CMD_VMRUN% -T player start %VMX_TARGET% nogui
@rem start %CMD_VMRUN% -T player start %VMX_TARGET% gui
goto END

:VMSUSPEND
start %CMD_VMRUN% -T player suspend %VMX_TARGET%
goto END

:VMSTOP
start %CMD_VMRUN% -T player stop %VMX_TARGET%
goto END

:VMLIST
%CMD_VMRUN% -T player list
echo.
echo Push Any Key
pause > NUL
goto END

:END
VMX_TARGET に、既にセットアップ済みの仮想PC(VMware)の、.vmx のパスを定義しておく。

vm start で起動。vm stop でシャットダウン。vm list で現在実行中の VMware Player の数を表示。みたいな感じ。

Lubuntuをインストール。 :

GUIも使えつつ、少しは軽いOSのほうがいいだろうと思って、ウインドウマネージャが LXDE になってるらしい Lubuntu 14.04LTS をインストールしてみたのだけど、なんだか動作がちょっと妙な瞬間があるような。色々設定作業をしてたけど、やっぱり削除。

Ubuntu 14.04LTS をインストールして、それを Lubuntu化しようと思う。余計なものがゴチャゴチャ入ってしまうけど、仕方ない。

tsoなる設定項目があるらしい。 :

ネットワーク速度が遅い時は、tso なる設定を無効にすると改善する時もある、という話を見かけたので、そのあたりをググって設定したり。TCP/IPオフロードがどうとからしいですけど。

_Windows Vista/7のオフロードを無効化する - 銀の鍵 (The Silver Key)
_VMwareとTCP Segmentation Offload (TSO) - 銀の鍵 (The Silver Key)

まず、システムワイドにTSOをオフとするには、レジストリエントリ"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters"をクリックし、新規でDWORD値を作成する。エントリー名を"DisableTaskOffload"とし、そのDWORD値を"1"とする。

VMwareとTCP Segmentation Offload (TSO) - 銀の鍵 (The Silver Key) より

再起動後、netsh int ip show offload を打ってみた。反映されてるっぽい。

#2 [windwos] NICのドライバがおかしくなってた

VMware Player 上で動くゲストOSのネットワークアクセス速度がなんだか遅い感じがしたので、ホストOSの Windows7 x64 のネットワークアダプタ(NIC?)設定を確認しようとしたところ、詳細設定のタブが存在しなくて。変だなあ。昔はそういうタブがあったし、設定を弄った記憶もあるのに…。

とりあえずドライバをインストールし直し。自分のメインPCのM/Bは、Intel DH67BL なので、Intelのサイトを辿ってドライバをDL。

_Desktop Boards
_サポート: インテル デスクトップ・ボード DH67BL
_LAN: Windows 7* 用インテル ギガビット・イーサネット・コントローラー・ドライバー

LAN_Win7_64_PROWin_19.1.exe をDLしてインストール。再起動。

コントロールパネル → ハードウェアとサウンド → デバイスとプリンター → デバイスマネージャー → ネットワークアダプタ → Intel(R) 82579V Gigabit Network Connection を右クリック → プロパティ、で、詳細設定タブが出てきてくれた。

#3 [anime] バディコンプレックス最終2話を視聴

面白かった…。こういう設定、とても好みですわ…。

展開がガンガン早いあたりも好み。まるで手塚治虫作品を読んでるような感じ。怒涛の展開。

以下、ネタバレ。

ヒロインだけが ループしてるのかと思いきや、 その外側にもループがあったのです、てなあたりが面白い。 タイムトラベル設定が多重ループ状態てのは、もしかすると珍しいのではないかと。そうでもないのかな。どうなんだろう。

昔のスーパーマンが 地球をグルグル回したときは何だソレと思ったけれど、この作品は事前にメカ設定その他を説明して下準備をしてたので、そういう展開もアリに思えたり。

なんとなく、ゲーム文化がシナリオ面で取り込まれてる感も。まどかマギカやEVA新劇場版もそうだろうけど。何度もプレイするたびに選択肢が変わっていく、てな状況は、ゲームではよくあるけど、昔の映画等にはそれほど見られなかったし、実写作品でもそれほど見かけないよなと。アニメとゲームはちょっと近いところにあると思うし、アニメのアレコレをゲームが取り込んで発展してきた面もあると思うけど、ゲームが持ってたプレイ感覚をアニメに逆輸入…なんてのは前から言われてることだから今更ですな。

#4 [nitijyou] メガネの鼻あてを交換

妹が、眼鏡の鼻あて? 鼻パット? の予備を持ってるとのことなので譲ってもらったり。自分のソレは変色しちゃってて、さすがに交換したいと思ってたわけで。

鼻あては、ソフトタイプだそうで。値段は500円ぐらいするらしい。シリコン製だと800円ぐらいするのだとか。シリコン製はふにゃふにゃしてるのかなと思ってたけど、妹が持ってるメガネのソレを確認させて貰ったら、ソフトタイプとたいして変わらない硬さだった。ただ、妹の話では、ソフトタイプより眼鏡がずれにくいそうで。

とりあえず交換。ネジは今まで使ってたものを流用できた。

実に綺麗なメガネの見た目になったので、気分的には満足。もっとも、パーツとしては小さ過ぎるから、他者は全く気づかない変化じゃないかと思うけど。

2014/10/03(金) [n年前の日記]

#1 [ubuntu][vmware] VMware Player上でUbuntu設定中

色々設定中。

ネットワーク速度はそんなに遅くなかった。 :

_speedtest-cli Ubuntuの端末からインターネット速度を測定するコマンド | Ubuntuアプリのいいところ という記事で、ネットワーク速度を調べられる speedtest-cli というツールがあることを知ったので、試しにインストール。

_How to Test Internet Connection Speed using Speedtest-Cli on Ubuntu Server | Ubuntu Server Guide で、python-pip を使ってインストールする方法が紹介されてた。
sudo apt-get install python-pip
sudo pip install speedtest-cli
speedtest-cli
結果は以下。
$ speedtest-cli 

Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Open Computer Network (223.217.224.92)...
Selecting best server based on latency...
Hosted by World's Fastest Indian (Tokyo) [218.87 km]: 45.251 ms
Testing download speed........................................
Download: 15.47 Mbits/s
Testing upload speed..................................................
Upload: 22.59 Mbits/s
10Mbps以上は出てるっぽい。そんなに遅すぎるわけでもなさそう。uploadのほうが速いのが不思議だけど。

LibreOfficeをアンインストール。 :

_apt - How to uninstall LibreOffice? - Ask Ubuntu

sudo apt-get remove --purge libreoffice*
sudo apt-get clean
sudo apt-get autoremove

LXDEをインストール。 :

ウインドウマネージャとしてLXDEを使ったほうが軽いらしいのでそちらをインストール。
sudo aptitude install lxde
sudo aptitude install lubuntu-desktop
以下のパッケージがインストールされた、とメモ。
consolekit galculator giblib1 gksu gpicview gtk2-engines leafpad 
libencode-locale-perl libfile-listing-perl libfm-data libfm-extra4 
libfm-gtk-data libfm-gtk4 libfm-modules libfm4 libfont-afm-perl 
libgif4 libgksu2-0 libglade2-0 libhtml-form-perl libhtml-format-perl 
libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl 
libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl 
libhttp-message-perl libhttp-negotiate-perl libid3tag0 libimlib2 
libio-html-perl libjpeg-progs libjpeg-turbo-progs liblwp-mediatypes-perl 
liblwp-protocol-https-perl libmenu-cache-bin libmenu-cache3 
libnet-http-perl libobrender29 libobt2 libpam-ck-connector 
libvte-common libvte9 libwww-perl libwww-robotrules-perl 
libxmmsclient-glib1 libxmmsclient6 lxappearance lxde lxde-common 
lxde-core lxde-icon-theme lxinput lxmenu-data lxmusic lxpanel 
lxrandr lxsession lxsession-data lxsession-edit lxsession-logout 
lxshortcut lxterminal menu menu-xdg obconf openbox p7zip-full 
pcmanfm scrot xarchiver xmms2-core xmms2-plugin-alsa 
xmms2-plugin-id3v2 xmms2-plugin-mad xmms2-plugin-vorbis 
xscreensaver xscreensaver-data 
abiword abiword-common abiword-plugin-grammar 
abiword-plugin-mathview audacious audacious-plugins 
audacious-plugins-data avahi-daemon blueman desktop-base 
ffmpegthumbnailer fonts-droid fonts-lyx gdebi gdebi-core 
gecko-mediaplayer gnome-desktop-data gnome-icon-theme-full 
gnome-mplayer gnome-system-tools gnome-themes-standard 
gnome-themes-standard-data gnumeric gnumeric-common gnumeric-doc 
gtk2-engines-pixbuf guvcview hardinfo indicator-application-gtk2 
libaacs0 libabiword-3.0 libaudclient2 libaudcore1 libavresample1 
libbinio1ldbl libbluray1 libbs2b0 libcddb2 libchamplain-0.12-0 
libchamplain-gtk-0.12-0 libcompfaceg1 libcue1 libdiscid0 libexo-1-0 
libexo-common libexo-helpers libffmpegthumbnailer4 libgda-5.0-4 
libgda-5.0-common libgdome2-0 libgdome2-cpp-smart0c2a libgmlib1 
libgmtk1 libgmtk1-data libgoffice-0.10-10 libgoffice-0.10-10-common 
libgsf-1-114 libgsf-1-common libgtkmathview0c2a libgtkspell0 libguess1 
libindicator7 libjs-jquery liblink-grammar4 libloudmouth1-0 libmowgli2 
libmusicbrainz3-6 libnet-dbus-perl libnss-mdns libonig2 liboobs-1-5 
libopts25 libots0 libpisock9 libpostproc52 libquvi-scripts libquvi7 
libsdl1.2debian libsidplayfp libtidy-0.99-0 libtie-ixhash-perl libuniconf4.6 
libvdpau1 libwebcam0 libwv-1.2-4 libwvstreams4.6-base libwvstreams4.6-extras 
libxfce4ui-1-0 libxfce4ui-common libxfce4util-bin libxfce4util-common 
libxfce4util6 libxfconf-0-2 libxml-parser-perl libxml-twig-perl 
libxml-xpathengine-perl light-locker light-locker-settings 
lightdm-gtk-greeter link-grammar-dictionaries-en lm-sensors 
lubuntu-artwork lubuntu-artwork-14-04 lubuntu-core lubuntu-default-session 
lubuntu-default-settings lubuntu-desktop lubuntu-icon-theme 
lubuntu-lxpanel-icons lubuntu-software-center lxappearance-obconf 
lxlauncher lxpanel-indicator-applet-plugin lxsession-default-apps 
lxtask mplayer2 mtpaint ntp pidgin pidgin-data pidgin-libnotify 
plymouth-theme-lubuntu-logo plymouth-theme-lubuntu-text 
python-gudev python-psutil python-pysqlite2 sylpheed sylpheed-doc 
sylpheed-i18n sylpheed-plugins system-tools-backends transmission 
uvcdynctrl uvcdynctrl-data wvdial xfburn xfce4-notifyd 
xfce4-power-manager xfce4-power-manager-data xfconf xfonts-100dpi xpad
これをアンインストールすれば元通りになる、のかな。たぶん。怪しいけど。

ログイン時に、右上の方で「Lubuntu」を選んでおかないと、いつも通りに unity が起動してしまうので注意。

全然関係ないけど、3Dゲーム制作ツールの Unity と、Ubuntuデスクトップの unity があって、調べるときに面倒臭いなと。他にも unity というツールがあるようで、どうして皆、そんなに unity という単語を使いたがるのかと…。

IPv6を無効にできない。 :

IPv6を無効にしたいのだけど、働いてくれない。OSは、Ubuntu 14.04 i386。

一般的には以下でいいはず、なのだけど。
sudo vi /etc/sysctl.conf
以下の行を追加。
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
反映させる。
sudo sysctl -p

sudo sysctl -p を実行した段階で、ifconfig を打ってみると、たしかに無効になってる。

ところが、再起動すると、また IPv6 が有効になっている…。

_Ubuntu - Disabling IPv6 support に従って、以下も試してみた。
sudo vi /etc/modprobe.d/blacklist.conf
以下を追加
blacklist ipv6

しかし、これでも再起動するとipv6が有効になってしまう。

kernel にオプションを渡してみる。
sudo vi /etc/default/grub
kernel オプションに以下を追加。
ipv6.disable=1
grubに反映させる。
sudo update-grub

これでようやくIPv6が無効になってくれた。しかし、どうしてだろう…。

sambaが動いてくれない。 :

sambaの設定をしているのだけど、Windows7 x64 からアクセスできない…。

/etc/samba/smb.conf に
netbios name = ホスト名
とか書いておけば、nmbd がイイ感じにしてくれる、てな情報を見かけたけど。ping ホスト名 は通っても、Windows7 の「ネットワーク」から辿ると「ネットワークパスが見つからない」と言われてアクセスできない。

余計な指定をしていたらしい。以下をコメントアウトしたらアクセスできた。
# interfaces = eth0 127.0.0.1 192.168.1.
# bind interfaces only = yes

一応、以下の指定で、アクセスできるIPを制限しておく。
hosts allow = 127.0.0.1, 192.168.1.
hosts deny = 0.0.0.0/0

少しググった感じでは、interfaces とか bind interfaces only は、NICが複数ある場合に使う設定、らしい…?

#2 [anime] Free!2期最終話を視聴

録画してたソレを視聴。

面白かった。一見すると半裸の美少年ばかりが画面に出てるから女性向けアニメと勘違いされそうだけど、別にそういうわけでもないよなと。監督が女性だからそういう方向もしっかり狙ってるだろうけど、自分のようなおじさんが見てもフツーに面白かったので、ちゃんと一般向けのバランスになってたと思うのですけど。

以下、全体的な印象・感想をメモ。

水と筋肉に立ち向かった稀有な作品。 :

前にも書いたけど、手描きアニメにおいて、水の表現や筋肉の描写は難しいとされてるわけで。しかしこの作品、水泳がテーマだから、水と筋肉から逃げられない。スタッフ自ら設定面において背水の陣を引いた印象。しかも、映画ならともかく、TVアニメですよ。

それなのに、2クール分も描ききったのだから、それだけでも称賛されてしかるべきだよなと。アニメにおける水の表現を学ぶ際の映像教材になるのではないか、とすら。あるいは、2014年の時点で日本の手描きTVアニメはここまで表現できたという一種の金字塔、てな部分もあるんじゃないかと。さすが京アニ。

手描き云々じゃなくて、撮影技術で頑張った部分だろうけど、最終回の最初のあたりの、小川の水面の表現は、感心して何度も巻き戻して見てしまいました。フィルム撮影時代なら、波ガラスを置いてどうにかするか、あるいは水面の一部の動きを宮崎アニメよろしく動画で描いて疑似表現するぐらいしか無かっただろうけど。デジタル技術導入で試行錯誤がしやすくなったせいか、レベルが一段上がっているよなと。
  • 波フィルタを使って1コマずつちゃんと動いてるように見せられるし。
  • 水面の反射を表現する透過光を別レイヤーで何枚も置けてキラキラしてるし。
  • 水面に落ちる影にも波フィルタをかけられるからリアルに見えるし。
他にも色々なレイヤーを置いて画作りをしてたのだろうけど、ウットリするほどに綺麗な水面の表現ができていたと思います。

また、これは脚本・演出面だろうけど、小川の中に居る魚が実にイイ。その場に居る主人公達の人数が、2人→4人になるのに合わせて、魚の数も2匹→4匹に変わって。しかも、3匹が1匹を心配してる雰囲気で。これはアニメならではだなあ、実写じゃこんなのできないよー、と感心。実写だったら、3匹が1匹を心配する光景なんて、一体何日張り込めば撮れるのかさっぱり予測できないし、そもそも小川に魚を4匹放流した時点でどこかに逃げてくよ! みたいな。CGで魚作って実写風景に合成するしかないよなと…。地味でさりげないカットだけど、全てをコントロールして、こういう見せ方もできてしまうあたりが、アニメの強みだなと再認識。

キャッキャウフフ。 :

個人的に、この作品、「けいおん」の美少年版として捉えているのですが。楽器がプールになり、美少女が美少年になった、みたいな。「けいおん」が女子高生達のキャッキャウフフなら、「Free!」は男子高校生達のキャッキャウフフだよなと。

「けいおん」は女性監督が担当してたけど、それで行くと「Free!」は男性監督のほうが合ってたのだろうか。いや、男性監督では、こうはならないよな。おそらく試合結果がどうとかの、競争意識だけが前面に出てくる、ギスギスした内容になりそう。おそらく、キャッキャウフフは女性作家のほうが上手に描けるのではないか、などと思えてきたり。

しかし、「Free!」の脚本は横谷昌宏氏なわけで。そういや横谷氏はケロロ軍曹もやってたっけ。アレだって、少年達のキャッキャウフフと言えなくもないよな…。つまり、少年少女を問わずキャッキャウフフさせたいなら横谷氏に仕事をお願いすると上手にやってくれそうだ、てな話になるのかしら。

「けいおん」のメインライターだったであろう吉田玲子氏も、SFロボットアニメの「マジェスティックプリンス」でキャッキャウフフを描いてた気もするけど、何かが違ったような…。女性脚本家が描く少年達のキャッキャウフフと、男性脚本家が描く少年達のキャッキャウフフは、何か違う気がする。その違いの正体が分からないですけど。

逆に、男性脚本家が描く少女達のキャッキャウフフは、女性視聴者から見て「何かが違う」と思われたりするのだろうか。どうなんだろう。よくわかりません。

以下ネタバレ。 :

※ 隠してある部分は、クリックすると外れます。

「けいおん」の男女反転版が「Free!」と捉えていたので、 卒業がどうとかで主人公達が泣き始めたシーンでは、「ハイハイハイ、キタキタキター。やっぱり来たよー」って感じでした。成功体験を踏襲してるな、みたいな。

もちろん、学生さんにとって 卒業は重要イベントだし、進路云々も面倒な問題なので、これを利用しない手はないよなと。アレで正解だと思いました。

記憶を上手に引き出せるアニメは強い。 :

CMを挟んでのラストカットには、「そう来たか…」と唸りました。あのカットは、たしか、 京アニのTVCMとして流してたパイロット映像のラストカットと同じレイアウトだったはず。

制作途中で紆余曲折があったはずだけど、しかし、ラストカットを同じにしたことで、「初志貫徹ができました!」てな雰囲気を出せている・そういう部分でも演出ができているよなと。一本筋が通った瞬間を目撃できたかのような、ある種の清々しさを感じたわけで。ここでこのカットを出してくるのは上手い、と感心を。

また、あのラストカットは、視聴者側の「記憶」を引き出すトリガーなわけだから、これは「強い」ぞ、と思えたり。

個人的には、視聴者の持ってる「記憶」を上手に引き出すアニメって「強い」と思うわけですよ。例えば、「となりのトトロ」とかそうですし。
  • メイがおたまじゃくしの群れに手をツッコんだ時のおたまじゃくしの動き。
  • 蚊帳の中で寝ている家族。
  • 何軒か農家が集合してる場所の小道の風景。
  • etc。
そういう土地、そういう時代を暮してきた人達が、すっかり忘れていた記憶を呼び覚ますトリガーだらけ。なので、そういう層にもドカンとウケたわけですけど。…あまりにウケ過ぎちゃって、そういう世代から、自然保護がどうとか、昔に戻せとか、変な話まで出てきて少し困ったわけですけど、それはさておき。

で。「Free!」の場合、 パイロット映像を見るという行為が、視聴者にとって「体験」だったわけで。「なんですか、このクオリティの高い映像は?」「この美少年達は誰なの?」「これはTVアニメなの? 映画なの?」「『京アニの新しい挑戦』って一体どゆこと?」等々疑問を抱かせて期待させる、てな体験を与えてた。

そして、「体験」させたことで、視聴者側に「体験の記憶」が作られる。その「記憶」を、本編ラストにトリガー仕込んで、まんまと呼び出す…てなことができていたのかもしれないなと。これは計画通りなのか、たまたまそうなったのか分からないけど、何にしてもこれはたぶん強いんじゃないか、てなことを思ったのでした。

「境界の彼方」でも、毎回聴かされて出来上がってる、OP曲という「記憶」を上手に使ってたし。考えてみれば、「けいおん」の 卒業云々だって、学生時代を体験したことのない人はまず居ないのだから、共通して持ってる「記憶」を上手に使ってた、と言えるのかもしれず。さすが京アニ、なのかしら。

見たことのない景色。 :

「見たことのない景色」の映像は、正直、初見時は、「なんじゃこりゃ」と思ってしまったのですけど。しかし、後になって制作状況を妄想したら、これはこれでと思えてきたり。

例えば監督から、
「最終回なんだから、四人に『見たことのない景色』を本当に見せてやりたいんですよ! …じゃあ、あとよろしく!」
と発注されたら、脚本家さんは頭抱えるよなと。

あるいは、仮面ライダーシリーズの井上脚本のように、脚本上では、
「四人、『見たことのない景色』を見る。
 試合終了。湧き上がる歓声」
と、さらっと書かれてたら、今度はコンテマン・演出家が頭を抱えるよなと。

そんな状況を妄想すると、あのシーンは、あれはあれでアリなんじゃないかなと…。どの職種が頭を抱えたのか分からないけど、無茶な発注によく応えた! みたいな。

まあ、実際には会議で決まったのだろうと想像するのですけど。今時のアニメは、なんでも会議で決めていくらしいですし…。

「『見たことのない景色』ねえ…。どんな景色なんだろう」
「うーん。生物が海で暮らしていた頃の原初的な記憶が再現されるとか」
「エサのプランクトンが目の前にたくさん見えるぜ、今日は御馳走だ! みたいな?」
「プランクトンはちょっと…」
「そこはせめて魚じゃないの?」
「魚…? サバか!」
「それハルにしか通じない! 他の三人ポカーンだから!」
「サバの大群か…。CG班にお願いしないと」
「真面目に考えなくていいから! サバは無し! 却下!」
「魚は生臭い感じがして嫌だなあ。俺、魚嫌いなんだよね…目も怖いし…」
「庵野監督みたいなこと言わないでください」
「なら、 イルカはどう?」
「ソレだ! その方向で行きましょう」
「皆が イルカを見てもつまんないよね」
「じゃあ、 クジラとか シャチとか。他に何があるかな」
「一人ぐらい変なの見てもいいんじゃない?」
「レイはちょっとずれてるから変なの見そうですね」
「アイツだけ イワトビちゃんが見えたりして」
一同笑。
「さすがに イワトビちゃんはマズいよ。せめて イワトビペンギンとかさあ」

そんな妄想をしてから件のシーンを思い返してみたら、アレはアレでアリだな、スタッフは頑張ったよなあ、と…。

「見たことのない景色」って、どんな景色なんでしょうね。

2014/10/04() [n年前の日記]

#1 [pc] Windows上でWebサーバを動かそうとしてるところ

仮想PC上の Linux で Webサーバ Apache を動かして、CGIの動作確認をしようとしていたのだけど、エディタその他の関係で、なんだか作業が面倒臭いなと。なので、Windows7 x64上でWebサーバを動かして、CGIの動作確認ができないものかと。

普段、ちょっとしたCGIを動かす時は、 _04WebServer を使っているのだけど。URL書き換え(Apache の mod_rewrite 相当)ができないので、ちと厳しくて。 *1

IISを使おうとして挫折。 :

しばらく前に、IIS 7.5 を導入したので、ソレを使ってCGIを動かせないものかと少し試してたのだけど。フォルダのアクセス権云々がちゃんと設定できてないようで、思ったように動かず。結局諦めた。

XAMPP の Apacheを使う。 :

XAMPPもインストールしてあるので、ソレを使ってCGIを動かそうとしたものの、これまた動かず。

原因は、.cgi の1行目に書いてある Perl のパスだった。

Linux 環境なら、えてして、
#!/usr/bin/perl
#!/usr/local/bin/perl
を指定してあるものだけど。04WebServer はその1行目を無視してCGIを実行するので今まで困らなかったわけで。

ところが XAMPP の Apache は、.cgi の1行目をちゃんと見てるので、Windows 環境の perl のパスにしないと動いてくれない。
#!"C:\xampp\perl\bin\perl.exe"
#! C:/xampp/xampp/perl/bin/perl
みたいな。

しかしこれでは、cgi をLinux上にFTPアップロードしようとする時に、毎回パスを書き換えないといけないので困ってしまう。

以下のページによると、解決策は2つあるらしい。

_Unix の CGI ファイルを Windows 上で動かす
_Windows + xampp + perl-addonによるMovable Typeプラグインの開発 | kwLog

一つは、C:\usr\bin\perl.exe を作ってしまう方法。これはシンボリックリンクを使えば作れる。ただし、C:\usr\bin\ 内に Perl しか存在しない妙な構成になる。Apache + Perl しか使わない、という状況ならいいけれど…。

もう一つは、httpd.conf 内で ScriptInterpreterSource Registry-Strict を指定して、レジストリで .cgi と Perl.exe を関連付けてしまう方法。

今回は後者を試してみた。以下の内容で execcgi.reg というファイルを作成。perlのパスは自分の環境に合わせておくこと。
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.cgi\shell\ExecCGI\Command]
@="C:\\xampp\\perl\\bin\\perl.exe %1"

エクスプローラで右クリックして「結合」を選択。レジストリに、「.cgi はこのプログラムで動かせ」と登録される。

httpd.conf に指定。今回は userdir に指定した。C:\xampp\apache\conf\extra\httpd-userdir.conf を開いて、1行追加。
# -*- mode: apache -*-
<IfModule userdir_module>
UserDir "C:/home/web/localapacheusers/*/public_html"
<Directory "C:/home/web/localapacheusers/*/public_html">
    AllowOverride All
    Options ExecCGI MultiViews Indexes FollowSymLinks Includes
    Require all granted

    # 以下を追加
    ScriptInterpreterSource Registry-Strict

</Directory>
</IfModule>
要するに、 <Directory "〜"> 〜 </Directory> の中に、
ScriptInterpreterSource Registry-Strict
を追加する。これで、.cgi の1行目を無視して、Windowsのレジストリに登録されたプログラムで .cgi を呼び出すようになる。

しかしこれでは、.cgi を Perl でしか動かせないような…。

XAMPP の Apache について気付いたこと。 :

エラーログ C:\xampp\apache\logs\error.log を眺めていたら、NameVirtualHost *:80 という指定が云々とエラーが出ていた。Apache 2.4 からは、該当指定はしなくてもよくなったらしい。

_Apache2.4ではconfの書き方が変わりました。 - Qiita

*1: ちなみに、i-mode用アプリを作ってた頃は、04WebServerは帯域制限が手軽に設定して動作確認できたので重宝してました。

#2 [hns] XAMPP上でhnsを動かすと画像サイズ取得が正常動作しない

Windows + Perl で hns を動かすと画像サイズ取得がおかしくなるのでメモ。hns-lite-2.19.9.tar.gz で確認。 解決策は、open 直後に binmode(IN); を入れて、「バイナリデータとして扱え」とPerlに教えてやること。

ちなみに、jpeg に対しては binmode(IN); がちゃんと呼ばれてた。

2014/10/05() [n年前の日記]

#1 [hns] hns-liteを弄ってる

将来的には、この日記ページをレンタルサーバ上でも動かせるようにしたいので、今まで動かしてきた hns と見た目が同じになるように hns-lite を弄ってるところ。

hns は、ログインしてシェルが使えるサーバじゃないとインストール作業ができない。なので、ftpアップロード、かつ、cgi が動かせるサーバ用に、hns-lite という版が存在してる。コレを修正していけば、引っ越しも可能になるんじゃないかなと。

試している作業は以下のとおり。 以前は他に何を弄っただろうか…。完全に忘れてる…。

検索に使う、Namazu for HNS をどうするかで悩んでいたり。一般的な namazu はバイナリコマンドっぽいので、おそらくレンタルサーバ上では導入が難しいのだろうから…。hns-lite で namazu を使いたいなら、pnamazu なる Perl版を使って、インデックスファイルはローカル環境で作ってftpアップロードすることになるそうで。そのあたりの導入・設定の手順を調べてみないと…。

hns から別の何かに乗り換えたい気もするのだけど…。Jekyll、Octopress 等も興味があるのですが、コメント機能の有無がよく分からなくて…。

#2 [aanime][neta] アホ毛グッズって無いのかな

漫画やアニメのキャラによくついてくる「アホ毛」。アレを実際につけるグッズってないのかなと急に電波を受信。

どこかの会社で販売してたりしないのかなと思って「アホ毛 グッズ」でググってみたら、アホ毛を予防するグッズばかりがリストアップされて。違うんだ、そうじゃないんだ。

考えてみたら、コスプレしてる人はフツーに再現してそうだな…。どんな素材で作るんだろう…。

どうせなら動くアホ毛のほうが面白そうだなあ…。サーバント×サービスや、物語シリーズのアレのように、ブンブン動いたり、萎れたり。どういう機構なら実現できるのか想像つかないけど。

「ウィッグ アホ毛」「アホ毛のつくりかた」でググったら、一部で販売されてるし、作り方も大体決まってるらしい。さすがに、動くアホ毛は見かけなかったけど。技術的に難しいのだろうな…。ピーンとさせながら「父さん! 妖気です!」とかウケそうだけどなあ…。

2014/10/06(月) [n年前の日記]

#1 [namazu][perl] Namazu for Windowsを導入しようとして四苦八苦

_ハイパー日記システムでpnamazuを使おう によると、pnamazu を使うには Namazu が動かせる環境が必要らしいので、Windows7 x64上で namazu を動かせないものかと試行錯誤。

_Index of /win32 から、kakasi-2.3.4.zip をDLして解凍。及び、 _全文検索システム Namazu for Windows から、nmz2.0.21.001-win32.zip をDLして解凍。しかし、DLページの説明や、README-ja.txt を眺めていて困ってしまった。
nmz2.0.21.001-win32.zip に同梱されてた ppm-inst.bat を眺めると、“最低限”必要なPerlモジュールは以下の4つ。 これを、現行の ActivePerl 5.16.x にインストール出来ればいいのだけど…。 File-MMagic だけは ActiveState でも公式(?)に用意してくれてるらしい。残るは3つ。

とりあえず、手元の ActivePerl をアンインストールしてから、現行版 ActivePerl-5.16.3.1604-MSWin32-x86-298023.msi をDLしてインストール。

最近の ActivePerl は cpan が使いやすくなっているらしいので、試しに cpan と打って install Text::Kakasi をしてみた。エラーが出た。kakasi関係のヘッダファイルが無いぞと言われてるっぽい。

cpan を使えるように構成してあるらしい Strawberry Perl も試しにインストール。もちろん環境変数PATH等も変更。これも cpan して install Text::Kakasi をしてみたけど、ヘッダファイルが無い云々のエラーが出てくる。

ググってたら、ActivePerl 5.16.x x64用のパッケージもあるらしい。x86用は無くて、x64用であることに注意。 _Index of /PPMPackages/1600 で公開されてる? ように見える。

ActivePerl x64版をインストールしてみた。
ppm install http://www.akaneiro.jp/PPMPackages/1600/NKF.ppd -force
ppm install http://www.akaneiro.jp/PPMPackages/1600/Text-Kakasi.ppd -force
ppm install http://www.akaneiro.jp/PPMPackages/1600/Search-Namazu.ppd -force
NKF と Text-Kakasi はすんなり入ってくれたけど、Search-Namazu が存在しない。これは必要なのか、それとも無くてもどうにかなるのだろうか。しかし、README-ja.txt には、あくまで“最低限”必要なモジュールを ppm-inst.bat でインストールできる、と書いてあるし…。であれば、Search-Namazu も必要なんじゃないかな…。

cpan で install Search::Namazu をしてみた。nmz-config なんてコマンドはねえよ、とか、namazu/libnamazu.h なんてファイルはねえよ、とか、とにかくエラーだらけ。

kakasiそのものをコンパイル・ビルドできたらまた何か違うのだろうかと思えてきたので MinGW/MSYS を使って試してみたけど大量のエラーが。

この記事へのツッコミ

Re: Namazu for Windowsを導入しようとして四苦八苦 by opengl2772    2015/01/25 08:42
Search-Namazu は必須ではありません。
なくても Namazu for Windows は動きます。

#2 [anime][neta] 山賊の娘ローニャを2話分まとめて初回放送するらしいけど

TV番組表を見てたら、宮崎吾朗監督の新作アニメ、山賊の娘ローニャを2話分まとめて初回放送するらしいと知ったのですけど。

スケジュールがヤバイヤバイと番宣内で散々ネタにするぐらいヤバイらしいのに、どうしてそんな無謀なことをするんだ…と思ってしまいました。後になって、「あそこで1話ずつ放送してたらギリギリ間に合ったのに」てなことにならないかと心配です。

たしか、宮崎駿監督作品「未来少年コナン」も、何かの特番が1回入ったことで助かった、てな話があったはず。アニメージュ文庫のコナン本に書いてなかったかな…。別の本だったかな…。

庵野監督作品「ふしぎの海のナディア」も、たしか戦争関係の特番が入ったことで少しだけ助かった、てな話があったような。それでも島編が登場してしまったわけですけど。

それら過去の事例を鑑みるに、たった1回分でも余裕を持てるか持てないかって効いてくるのだろうなと。なのに、自分達からわざわざ1話分を先に放送しちゃうのってマズくね? と。その1話分が、シリーズの明暗を分けるかもしれないのに…。

でもまあ、放送が決まってしまったのだから、今更言っても…。それに、危なくなっても特番を入れればいいのか…。 妄想してるうちに、そっちはそっちで楽しみになってきました。特に、宮崎駿・高畑勲監督がピッピの話を延々喋って穴埋めとか実現したらお宝映像。ありえないけど。

もちろん本編も楽しみなのですけど、万が一の場合はどうやってしのぐのか、そこでどんなアイデアを披露するのか、そういう方向でも期待してます。原作が原作だから、ネタはたくさんありそうだし。

#3 [neta] 浣腸部隊

変な夢を見たのでメモ。

地球に宇宙人が攻めてきた。この宇宙人、人型タイプなのに滅法強くて。腕や足が吹き飛ばされてもその場で復元しちゃう。地球人大ピンチ。

地球人側は対抗策として巨大ロボットを開発。脳波がどうとかシンクロ率がどうとか、そういう設定のロボットで。成績の良かったテストパイロットを殺して解剖して調べたり、パイロットの養成学校を作って少年少女を実験体としてどんどん輩出したり等、宇宙人を倒すという名目を振りかざして非道を繰り返す地球人側。

ところがその後、宇宙人の倒し方が判明。宇宙人を指浣腸すると宇宙人はゲロ吐いて死ぬ、という。

急遽構成される精鋭揃いの指浣腸部隊。荒廃した都市上空を舞う飛行機から、隊員達は次々にパラシュートで落下。地上に降りると最新装備の光学迷彩装置をON。
「こちらアナル1。所定の位置に着いた。どうぞ」
「こちらアナルリーダー。今からヤツラをそちらに追い込む」
「行け行け行け!」
「ゴーゴーゴー!」
レーザー光線が飛び交い、高層ビルの破片が爆音と共に降り注ぐ中、必死の形相で駆け回る隊員達。しかし狙うは宇宙人の尻。尻。尻。スケールの大きいBGM+スローモーション映像で叫びながら突進してるけど、上半身のポーズは指浣腸のソレ。

巨大ロボット開発とかテストパイロット解剖してホルマリン漬けとかあのハードな展開は何だったんだ、と呆れたところで目が覚めました。なんでこんな夢を見たんだろう…。

寝惚け頭でなんとなく思ったけど、マーズアタックってこういう感じの映画なのだろうか。見たことないから知らないですけど。オチが酷いってところだけ、たぶん似てそう。

2014/10/07(火) [n年前の日記]

#1 [naamzu][perl] Text::kakasiその他のインストールをまだ試してたり

ActivePerl 5.16.3 + CPAN でインストールできないか、まだ試してたり。環境は Windows7 x64。

_ぶたときどき真珠〜深沢千尋のブログ〜 Strawberry Perl で Text::Kakasi や、 _あまつぶ: Memo/Text-Kakasi という記事を見かけて、ActivePerl でも試したところ、Text::Kakasi だけはどうにかインストールできた、ような気がするので自分も手順をメモ。

事前に、 _kakasi-2.3.4.zip をDL・解凍して、C:\kakasi にコピーしておくこと。その中に、 等が入っていて、Text::Kakasi のインストール時にそれらのファイルを必要とするらしい。

DOS窓で cpanp と打つ。cpan じゃなくて cpanp を使うことに注意。以下の入力待ちになる。
 CPAN Terminal>
使い方は、help と打てば出てくる。

以下を打つ。
d Text::Kakasi
z Text::Kakasi
それぞれ、 といった指定。z hoge で、どこに解凍されたか分かるはず。

解凍後のディレクトリ内にある、Makefile.PL をエディタで開いて、修正して保存。自分の環境に合わせたパスを指定しておくこと。
    'INC' => '-IC:/kakasi/include',
    'LIBS' => ['-LC:/kakasi/lib -lkakasi'],
    'LDDLFLAGS' => '-mdll -L"C:/Perls/Perl516/lib/CORE" -static-libgcc',
修正と保存が終わったら、DOS窓上で exit を打って cmd.exe を抜ける。「CPAN Terminal> 」の入力待ちに戻ってくる。

以下を打って、インストール開始。
i Text::Kakasi
しばらく待てば、下のようなメッセージが出てくるはず…。
CPAN Terminal> i Text::Kakasi

Installing Text::Kakasi (2.04)
Running [C:\Perl\bin\perl.exe -e use strict; BEGIN { my $old = select STDERR; $|++; select $old; $|++; $0 = shift(@ARGV); my $rv = do($0); die $@ if $@; } C:\home\mieki256\.cpanplus\5.16.3\build\Text-Kakasi-2.04\Makefile.PL]...
Set up gcc environment - 3.4.5 (mingw-vista special r3)
Have \perl\lib
Want \perls\perl516\lib
Your perl and your Config.pm seem to have different ideas about the
architecture they are running on.
Perl thinks: [lib]
Config says: [MSWin32-x86-multi-thread]
This may or may not cause problems. Please check your installation of perl
if you have problems building this extension.
Generating a dmake-style Makefile
Writing Makefile for Text::Kakasi
Writing MYMETA.yml and MYMETA.json
Running [C:\Perl\site\bin\dmake.exe test]...
C:\Perl\bin\perl.exe "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib\lib', 'blib\arch')" t/*.t
t/01-func.t .... ok
t/02-obj.t ..... ok
t/03-encode.t .. ok
All tests successful.
Files=3, Tests=164,  0 wallclock secs ( 0.05 usr +  0.03 sys =  0.08 CPU)
Result: PASS
[ERROR] IPC::Run version '0.55' is required on MSWin32 in order to capture buffers. The logfile generated may not contain any useful data, until it is installed

*** Install log written to:
  C:\home\mieki256\.cpanplus\install-logs\Text-Kakasi-2.04-1412639421.log

Module 'Text::Kakasi' installed successfully
No errors installing all modules
なんだか途中でエラーっぽいメッセージが出てるけど、「Module 'Text::Kakasi' installed successfully」って言ってるから、一応インストールに成功したのかなと。壊れたファイルがインストールされてるかもしれないけど。

q を打って、cpanp から抜ける。

モジュールが登録されてるか、一応確認。以下を打つ。
perl -MText::Kakasi -e ""
-M オプションで、使うモジュール名を指定、-e は、次に続く文を実行せよ、てなオプション。この場合、空文字列だから何もしない。つまり、これを実行して、何も表示されなければ、そのモジュールは登録されてることになる。

もし、モジュールが登録されてなければ、以下のように、「そのモジュール名、俺には見つけられなかったッス」とエラーが出てくるはず。
> perl -MText::NiseKakasi -e ""
Can't locate Text/NiseKakasi.pm in @INC (@INC contains: C:/Perl/Perl5163/site/lib C:/Perl/Perl5163/lib .).
BEGIN failed--compilation aborted.

実際にコレで動くのか、動作確認したいのだけど。そこらへんの手順は、まだ調べてなかったり。

もう少し頑張れば ppd まで作れるらしいけど。自分、ppd って何だろう、てな状態なので…。

NKF.pmはCPANに無い。 :

同じノリで NKF もインストールしようとしたのだけど、cpan NKF と打ってみたら、「そんなモジュールはねえよ」と言われてしまった。ググってみたら、NKF (MKF.pm?)はCPANに登録されてないらしい。どこから入手すればいいのだろう…。

Perl 5.8.x も入れてみた。 :

HDDの中を漁ってたら、
  • ActivePerl-5.8.9.826-MSWin32-x86-290470.msi
を発見。試しにソレもインストール。たしかに ActivePerl 5.8.9 なら、Namazu for Windows に同梱の ppm-inst.bat がすんなり実行できた。

ググってみたら、その後、
  • ActivePerl-5.8.9.827-MSWin32-x86-291969.msi
  • ActivePerl-5.8.9.828-MSWin32-x86-294165.msi
  • ActivePerl-5.8.9.829-MSWin32-x86-294280-v2.msi
てな版も出ていたらしい。どうしても 5.8.x を入手しないといけないなら、各ファイル名でググ(以下略。ただ、同じファイル名でもファイルサイズがそれぞれ違っていたりしていて、どれがどれやら。 _手元の版 は、たしかにインストールできる版だけど、少しバージョンが古いし…。

現バージョンの ActivePerl で、Text::Kakasi、NKF、Search::Namazu をインストールする手順を見つけておかないと、手詰まりになるなあ…。

2017/03/19追記。 :

DropboxのPublicフォルダが死んだのでファイルを置き直し。

#2 [perl][windows] Windows上で異なるバージョンのPerlを切り替えたい

_2014/10/08追記。 Strawberry Perl とも切り替えられるbatファイルを書きました。

ActivePerl 5.16.3 と ActivePerl 5.8.x を切り替えて使いたい。環境変数 PATH の中をその都度書き換えれば済みそうではあるけど…。

例えば、 に ActivePerl をインストールしたとして。

batファイルの中で、
set PATH=C:\Perls\Perl58\bin;C:\Perls\Perl58\site\bin;%PATH%
とすれば、PATHの最初に ActivePerl 5.8.x の指定がくるので、perl -v で表示されるバージョンは 5.8.x になる。つまり Perl 5.8.x を選んで使える状態になると言えばなるのだけど。

これを繰り返していくと、PATHの最初のほうに Perlのパスがいくつも並んだ状態になってなんか嫌だなと。

ふと、Windows Vista や Windows7 で使える _シンボリック・リンク を使えばいいのではと思えてきた。
mklink /d 作成リンク名 元フォルダ
とすれば、フォルダのシンボリックリンクが作れる。作成リンク名にアクセスすると、元フォルダにアクセスしてるも同然の状態になる。

例えば、
mklink /d C:\Perl C:\Perls\Perl58
mklink /d C:\Perl C:\Perls\Perl516
を使い分ければ…。PATH には C:\Perl\bin;C:\Perl\site\bin だけ追加しておいて、それ以上弄らない。後は、C:\Perl が Perl 5.8.x と Perl 5.16.x のどちらを指してるのか変更すればいい。

と思って、切り替え用のbatファイルを書いてみたけれど。mklink は管理者権限じゃないと使えないことをすっかり忘れてました。これではちと不便。でもまあ、頻繁に切り替えるものでもないだろうから、別にコレでもいいか…。

一応batファイルの中身を晒しておきます。

plch.bat
@echo off
if "%1"=="58" goto SETPATH1
if "%1"=="516" goto SETPATH2

echo Perlのパスを切り替えます。(mklink /d を使ってシンボリックを張り直し)
echo.
echo 1 : Perl 5.8
echo 2 : Perl 5.16
echo.

set USERINPUTSTR=
set /P USERINPUTSTR="切り替えたい番号を選んでください : "

if "%USERINPUTSTR%"=="1" goto SETPATH1
if "%USERINPUTSTR%"=="2" goto SETPATH2

echo.
echo Usage:  plch 58
echo         plch 516
goto END

:SETPATH1
set PPATH=C:\Perls\Perl58
goto SETPERLDIR

:SETPATH2
set PPATH=C:\Perls\Perl516
goto SETPERLDIR

:SETPERLDIR
@echo on
rmdir C:\Perl
mklink /d C:\Perl %PPATH%
@echo off
echo.
echo Perlのパスを %PPATH% に設定しました
echo.
pause

:END
DOS窓を管理者権限で開いて、plch 58 とか plch 516 とか打てば切り替えられる、みたいな。

ちなみに、*NIX環境なら perlbrew なる切り替えツールが使えるそうで。

Windows 版の perlbrew は無いのかなとググってみたら、 _May I use Strawberry Perl and ActiveState Perl simultaneously in one computer? - Stack Overflow に情報が。 _App-perlbrew | Perl Package Manager Index (PPM) | ActiveState Code があるよ、との話。

ところが、ActivePerl 5.16 は perlbrew に対応してないようで。今現在入手できる ActivePerl って 5.16 しかないじゃないですか。つまり使えないじゃないですか。なんだかな。

2014/10/08(水) [n年前の日記]

#1 [namazu][perl] Search::Namazuをインストールしようとしたけど

Windows7 x64 + ActivePerl 5.16.3 で Search::Namazu を cpanp でインストールしようとしてるけど、なかなか難しい。
cpanp
d Search::Namazu
z Search::Namazu
exit
i Search::Namazu

少しググってみたら、nmz-config はシェルスクリプトらしい。シェルスクリプト…ってことは、このモジュールは、*NIX環境に限定したモジュールなのかな。

_Search-Namazu for Windows でエラー発生: ナマズのブログ で、Makefile.PL を書き換えて試した事例が公開されてた。自分も修正して試してみたり。
use ExtUtils::MakeMaker;

# my $cflags = `nmz-config --cflags`;
# my $libs = `nmz-config --libs`;

WriteMakefile(
    'NAME' => 'Search::Namazu',
    'VERSION_FROM' => 'Namazu.pm',
    'INC' => '-IC:/namazu/include',
    'LIBS' => ['-LC:/namazu/lib -lnmz'],
    'clean' => {'FILES' => "t/index"}
);
C:\namazu\ に Namazu for Windows を解凍して置いてあるけど、その中に include/ と lib/ があるからソレを指定する、ということらしい。

やっぱりエラーだらけ。
CPAN Terminal> i Search::Namazu

Installing Search::Namazu (0.96)
Running [C:\Perl\bin\perl.exe -e use strict; BEGIN { my $old = select STDERR; $|++; select $old; $|++; $0 = shift(@ARGV); my $rv = do($0); die $@ if $@; } C:\home\mieki256\.cpanplus\5.16.3\build\Search-Namazu-0.96\Makefile.PL]...
Set up gcc environment - 3.4.5 (mingw-vista special r3)
Checking if your kit is complete...
Looks good
Have \perl\lib
Want \perls\perl516\lib
Your perl and your Config.pm seem to have different ideas about the
architecture they are running on.
Perl thinks: [lib]
Config says: [MSWin32-x86-multi-thread]
This may or may not cause problems. Please check your installation of perl
if you have problems building this extension.
Warning (mostly harmless): No library found for -lkernel32
Warning (mostly harmless): No library found for -luser32
Warning (mostly harmless): No library found for -lgdi32
Warning (mostly harmless): No library found for -lwinspool
Warning (mostly harmless): No library found for -lcomdlg32
Warning (mostly harmless): No library found for -ladvapi32
Warning (mostly harmless): No library found for -lshell32
Warning (mostly harmless): No library found for -lole32
Warning (mostly harmless): No library found for -loleaut32
Warning (mostly harmless): No library found for -lnetapi32
Warning (mostly harmless): No library found for -luuid
Warning (mostly harmless): No library found for -lws2_32
Warning (mostly harmless): No library found for -lmpr
Warning (mostly harmless): No library found for -lwinmm
Warning (mostly harmless): No library found for -lversion
Warning (mostly harmless): No library found for -lodbc32
Warning (mostly harmless): No library found for -lodbccp32
Warning (mostly harmless): No library found for -lcomctl32
Warning (mostly harmless): No library found for -lmsvcrt
Generating a dmake-style Makefile
Writing Makefile for Search::Namazu
Writing MYMETA.yml and MYMETA.json
[ERROR] MAKE failed:  cp Namazu.pm blib\lib\Search\Namazu.pm
Running Mkbootstrap for Search::Namazu ()
C:\Perl\bin\perl.exe -MExtUtils::Command -e chmod -- 644 Namazu.bs
C:\Perl\bin\perl.exe C:\Perl\lib\ExtUtils\xsubpp  -typemap C:\Perls\Perl516\lib\ExtUtils\typemap  Namazu.xs > Namazu.xsc && C:\Perl\bin\perl.exe -MExtUtils::Command -e mv -- Namazu.xsc Namazu.c
C:\Perl\site\bin\gcc.exe -c  -IC:/namazu/include        -DNDEBUG -DWIN32 -D_CONSOLE -DNO_STRICT -DPERL_TEXTMODE_SCRIPTS -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -D_USE_32BIT_TIME_T -DHASATTRIBUTE -fno-strict-aliasing -mms-bitfields -O2       -DVERSION=\"0.96\"  -DXS_VERSION=\"0.96\"  "-IC:\Perls\Perl516\lib\CORE"   Namazu.c
C:\Perl\bin\perl.exe -MExtUtils::Mksymlists \
     -e "Mksymlists('NAME'=>\"Search::Namazu\", 'DLBASE' => 'Namazu', 'DL_FUNCS' => {  }, 'FUNCLIST' => [], 'IMPORTS' => {  }, 'DL_VARS' => []);"
Set up gcc environment - 3.4.5 (mingw-vista special r3)
C:\Perl\site\bin\dlltool.exe --def Namazu.def --output-exp dll.exp
C:\Perl\site\bin\g++.exe -o blib\arch\auto\Search\Namazu\Namazu.dll -Wl,--base-file -Wl,dll.base -mdll -L"C:\Perls\Perl516\lib\CORE" Namazu.o   C:\Perls\Perl516\lib\CORE\perl516.lib C:\namazu\lib\libnmz.a dll.exp
C:\namazu\lib\libnmz.a(libnamazu.o): In function `nmz_msg':
C:/msys/1.0/home/www/namazu-2.0.21/nmz/libnamazu.c:217: undefined reference to `libintl_vsnprintf'
C:\namazu\lib\libnmz.a(libnamazu.o): In function `nmz_set_dyingmsg_sub':
C:/msys/1.0/home/www/namazu-2.0.21/nmz/libnamazu.c:235: undefined reference to `libintl_vsnprintf'
C:\namazu\lib\libnmz.a(util.o): In function `nmz_warn_printf':
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:293: undefined reference to `libintl_fprintf'
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:296: undefined reference to `libintl_vfprintf'
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:300: undefined reference to `libintl_fprintf'
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:284: undefined reference to `libintl_fprintf'
C:\namazu\lib\libnmz.a(util.o): In function `nmz_debug_printf':
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:323: undefined reference to `libintl_fprintf'
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:326: undefined reference to `libintl_vfprintf'
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:330: undefined reference to `libintl_fprintf'
C:\namazu\lib\libnmz.a(util.o): In function `nmz_strerror':
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:578: undefined reference to `libintl_gettext'
collect2: ld returned 1 exit status
dmake.exe:  Error code 129, while making 'blib\arch\auto\Search\Namazu\Namazu.dll'


[ERROR] Unable to create a new distribution object for 'Search::Namazu' -- cannot continue

[ERROR] IPC::Run version '0.55' is required on MSWin32 in order to capture buffers. The logfile generated may not contain any useful data, until it is installed

*** Install log written to:
  C:\home\mieki256\.cpanplus\install-logs\Search-Namazu-0.96-1412724320.log

Error installing 'Search::Namazu'
Problem installing one or more modules
*** You can view the complete error buffer by pressing 'p' ***
何が起きてるのかさっぱり分からない。なんだか色んなものが足りてないような雰囲気だけど。

ExtUtils::FakeConfig をインストール。 :

「ExtUtils::FakeConfig を使えば〜」というコメントを見かけたので、何のツールかよく分からないけどインストール。

_MinGW + MSYS 環境で Text::Kakasi と MeCab をビルドする - あまつぶ@はてなダイアリー に従って作業。

MinGW/MSYS をインストール済みの環境なので、C:\MinGW\msys\1.0\ 以下で作業する。

C:\MinGW\msys\1.0\home\アカウント名\perl-modules\ でフォルダを作成。 _Mattia Barbon / ExtUtils-FakeConfig - search.cpan.org から、ExtUtils-FakeConfig-0.12.zip をDL。解凍。
wget ExtUtils-FakeConfig-0.12.zip
unzip ExtUtils-FakeConfig-0.12.zip
cd ExtUtils-FakeConfig-0.12
perl Makefile.PL
nmake
nmake install
make じゃなくて、nmake を使うのがポイントらしい。nmake.exe をどこかから入手する必要があるけど。

自分のHDD内を検索したら、
  • C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\nmake.exe
  • C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\nmake.exe
  • C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\nmake.exe
  • C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\nmake.exe
といったあたりが見つかった。Visual Studio 2010 Express とか Visual Studio 2013 Express をインストールすると、nmake.exe も入手できるのかもしれない。

さておき。以下のような出力メッセージになった。
> perl Makefile.PL

Set up gcc environment - 3.4.5 (mingw-vista special r3)
Checking if your kit is complete...
Looks good
Have \perl\lib
Want \perls\perl516\lib
Your perl and your Config.pm seem to have different ideas about the
architecture they are running on.
Perl thinks: [lib]
Config says: [MSWin32-x86-multi-thread]
This may or may not cause problems. Please check your installation of perl
if you have problems building this extension.
Generating a nmake-style Makefile
Writing Makefile for ExtUtils::FakeConfig
Writing MYMETA.yml and MYMETA.json
Using: 'nmake'
> nmake

Microsoft (R) Program Maintenance Utility   Version 1.50
Copyright (c) Microsoft Corp 1988-94. All rights reserved.

        C:\Perl\bin\perl.exe script/fill_template.pl spec/Config_ap.txt spec/ap_mingw_510.txt blib\lib/Config_m.pm cc=gcc pack_name=Config_m
cp lib/Config_u.pm blib\lib\Config_u.pm
cp lib/ExtUtils/FakeConfig.pm blib\lib\ExtUtils\FakeConfig.pm
cp lib/Config_m.pod blib\lib\Config_m.pod
> nmake install

Microsoft (R) Program Maintenance Utility   Version 1.50
Copyright (c) Microsoft Corp 1988-94. All rights reserved.

Installing C:\Perls\Perl516\html\site\lib\Config_m.html
Installing C:\Perls\Perl516\html\site\lib\Config_u.html
Installing C:\Perls\Perl516\html\site\lib\ExtUtils\FakeConfig.html
Installing C:\Perls\Perl516\site\lib\Config_m.pm
Installing C:\Perls\Perl516\site\lib\Config_m.pod
Installing C:\Perls\Perl516\site\lib\Config_u.pm
Installing C:\Perls\Perl516\site\lib\ExtUtils\FakeConfig.pm
        C:\Perl\bin\perl.exe script\make_implib.pl --output-dir="C:\Perls\Perl516\lib\CORE" --target=mingw "C:\Perls\Perl516\bin\perl516.dll"
Appending installation info to C:\Perls\Perl516\lib/perllocal.pod
.pm が、ActivePerl 5.16.x のインストールフォルダの中にコピーされたっぽい。

別のDOS窓を開いて、モジュールが登録されているか確認。
perl -MExtUtils::FakeConfig -e""
登録はされてるっぽい。

Search::Namazuのインストールに再挑戦。 :

_NOKUBI Takatsugu / Search-Namazu-0.96 - search.cpan.org から、Search-Namazu-0.96.tar.gz をDLして試してみる。

C:\MinGW\msys\1.0\home\アカウント名\ 以下で。
wget http://search.cpan.org/CPAN/authors/id/K/KN/KNOK/Search-Namazu-0.96.tar.gz
tar zxvf Search-Namazu-0.96.tar.gz
cd Search-Namazu-0.96
Makefile.PL を修正して保存。

おそらくは、ExtUtils::FakeConfig とやらを使った形で Makefile を作らせる。
perl -MConfig_m Makefile.PL
nmake
エラーが出た。
> nmake

Microsoft (R) Program Maintenance Utility   Version 1.50
Copyright (c) Microsoft Corp 1988-94. All rights reserved.

cp Namazu.pm blib\lib\Search\Namazu.pm
Running Mkbootstrap for Search::Namazu ()
        C:\Perl\bin\perl.exe -MExtUtils::Command -e chmod -- 644 Namazu.bs
        C:\Perl\bin\perl.exe C:\Perl\lib\ExtUtils\xsubpp  -typemap C:\Perls\Perl516\lib\ExtUtils\typemap  Namazu.xs > Namazu.xsc && C:\Perl\bin\perl.exe -MExtUtils::Command -e mv -- Namazu.xsc Namazu.c
        gcc -c  -IC:/namazu/include  -O2 -DWIN32 -DPERL_IMPLICIT_CONTEXT -DPERL_MSVCRT_READFIX -O2    -DVERSION=\"0.96\"  -DXS_VERSION=\"0.96\" -DHASATTRIBUTE "-IC:\Perls\Perl516\lib\CORE"
   Namazu.c
        C:\Perl\bin\perl.exe -MExtUtils::Mksymlists  -e "Mksymlists('NAME'=>\"Search::Namazu\", 'DLBASE' => 'Namazu', 'DL_FUNCS' => {  }, 'FUNCLIST' => [], 'IMPORTS' => {  }, 'DL_VARS' => []);"
Set up gcc environment - 3.4.5 (mingw-vista special r3)
NMAKE : fatal error U1073: don't know how to make 'C:\Perls\Perl516\lib\CORE\libperl510.a'
Stop.
「C:\Perls\Perl516\lib\CORE\libperl510.a がねえよ」と言われてる? libperl510.a って何だ?

NKF.pmのインストールに挑戦。 :

よく分かってないけど、 _nkf Network Kanji Filter プロジェクト日本語トップページ - SourceForge.JP から nkf-2.1.3.tar.gz をDLして解凍。INSTALL.j を眺めると、
Perl モジュールを作るには、
    make perl
です。NKF.mod 下にできます。そちらで、perl Makefile.PL; make
でもOk。 Perl 5 以上で動作します。5.6, 5.8 で動作確認しています。
と書いてあった。

Makefile の perl の箇所を眺めると、
perl:
	( cd NKF.mod ; \
	$(PERL) Makefile.PL  ; \
	make ; \
	make test )
と書いてあったので…。
  1. cd NKF.mod
  2. perl Makefile.PL
  3. make
  4. make test
をすればいいんじゃないかなと想像。

試してみたけど、エラーが出る。
> perl Makefile.PL

Set up gcc environment - 3.4.5 (mingw-vista special r3)
Have \perl\lib
Want \perls\perl516\lib
Your perl and your Config.pm seem to have different ideas about the
architecture they are running on.
Perl thinks: [lib]
Config says: [MSWin32-x86-multi-thread]
This may or may not cause problems. Please check your installation of perl
if you have problems building this extension.
Generating a dmake-style Makefile
Writing Makefile for NKF
Writing MYMETA.yml and MYMETA.json

> make

make: rem: Command not found
make: *** [blibdirs] Error 127
もしかして、「make なんてコマンドは知らねえよ」と言われているのだろうか。 C:\MinGW\msys\1.0\bin\make.exe にあるはずなんだけど…。それとも、「rem って何だ? 知らねえコマンドだなオイ」と言われてるのだろうか。

ふと、perl Makefile.PL をした際に、
Generating a dmake-style Makefile
と言われてることに気がついた。「dmake 用のフォーマットで Makefile を作ったぜ」と言ってるのかな。

which dmake をしたら、C:\Perl\site\bin\dmake.exe に入ってる模様。ActivePerl が dmake を用意してくれてるっぽい。

make の代わりに、dmake と打ってみた。なんだかそれっぽいメッセージが出てきた。blib\arch/auto/NKF/NKF.dll てのが作られた、のかな?

dmake test をしてみた。
> dmake test

C:\Perl\bin\perl.exe "-Iblib\lib" "-Iblib\arch" test.pl
Can't load 'blib\arch/auto/NKF/NKF.dll' for module NKF: load_file:メモリ ロケーションへのアクセスが無効です。 at C:/Perl/lib/DynaLoader.pm line 191.
 at test.pl line 29.
Compilation failed in require at test.pl line 29.
BEGIN failed--compilation aborted at test.pl line 29.
dmake.exe:  Error code 130, while making 'test_dynamic'
エラーが出てるらしい。

Strawberry Perl でも試してみた。 :

ActivePerl ならハマるけど Strawberry Perl ならすんなり行く、ということはないのかなと思えてきたので、試しにインストール。先日は strawberry-perl-5.20.1.1-32bit.msi をインストールしたけど、今回は strawberry-perl-5.18.4.1-32bit.msi をインストールしてみた。

Text::Kakasi は、 _昨日 と同じような手順でインストールできたように見える。動くかどうかは分からないけど。

Search::Namazu は、ActivePerl と同じような感じのエラーが出た。libperl510.a がどうのこうのとエラーが出てる。何者なんだ、libperl510.a って。

NKF.pm のほうは、C:\MinGW\msys\1.0\home\アカウント名\perl-modules\ 以下にDLして、
tar zxvf nkf-2.1.3.tar.gz
cd nkf-2.1.3
cd NKF.mod
perl Makefile.PL
dmake
dmake test
と打ってみたら、ずらずらと「OK」「OK」と表示された。なんか上手く行ってるっぽい?

インストールもできるのかな?
dmake install
> dmake install

Files found in blib\arch: installing files in blib\lib into architecture dependent library tree
Installing C:\Perls\strawberry518\perl\site\lib\auto\NKF\NKF.dll
Installing C:\Perls\strawberry518\perl\site\lib\NKF.pm
Appending installation info to C:\Perls\strawberry518\perl\lib/perllocal.pod
できてるかもしれない。

モジュールとして登録されてるだろうか。
perl -MNKF -e ""
エラーは出ない。登録されてるっぽい。

Search::Namazu が困ったちゃんだなあ…。コイツがどうにかなれば、Namazu for Windows を動かすために必要な最低限のモジュールが揃うのだろうけど。

libperl510.a 云々。 :

_Re^2: Missing nmake - 64bit, Windows 7 に、libperl510.a でエラーが出る問題について情報が。site\lib\Config_m.pm 内を書き換えろ、と書いてある。
libperl='libperl510.a'
↓
libperl='libperl518.a'
ファイルは読み取り専用になってるので、書き込み可にしてから修正して保存。

Search::Namazu のインストールを再度試した。もちろん Makefile.PL は前述のとおり修正。
cd Search-Namazu-0.96
perl -MConfig_m Makefile.PL
nmake

出力メッセージがちょっと変わってきた。
> nmake

Microsoft (R) Program Maintenance Utility Version 12.00.21005.1
Copyright (C) Microsoft Corporation.  All rights reserved.

Skip blib\lib\Search\Namazu.pm (unchanged)
Running Mkbootstrap for Search::Namazu ()
        C:\Perl\perl\bin\perl.exe -MExtUtils::Command -e chmod -- 644 Namazu.bs
        gcc -c  -IC:/namazu/include  -O2 -DWIN32 -DPERL_IMPLICIT_CONTEXT -DPERL_MSVCRT_READFIX -O2    -DVERSION=\"0.96\"  -DXS_VERSION=\"0.96\" -DHASATTRIBUTE "-IC:\Perls\strawberry518\perl\lib\CORE"   Namazu.c
        dlltool --def Namazu.def --output-exp dll.exp
        g++ -o blib\arch\auto\Search\Namazu\Namazu.dll -Wl,--base-file -Wl,dll.base -s -mdll -L"C:\Perls\strawberry518\perl\lib\CORE" Namazu.o   C:\Perls\strawberry518\perl\lib\CORE\libperl518.a C:\namazu\lib\libnmz.a dll.exp
C:\namazu\lib\libnmz.a(libnamazu.o): In function `nmz_msg':
C:/msys/1.0/home/www/namazu-2.0.21/nmz/libnamazu.c:217: undefined reference to `libintl_vsnprintf'
C:\namazu\lib\libnmz.a(libnamazu.o): In function `nmz_set_dyingmsg_sub':
C:/msys/1.0/home/www/namazu-2.0.21/nmz/libnamazu.c:235: undefined reference to `libintl_vsnprintf'
C:\namazu\lib\libnmz.a(util.o): In function `nmz_warn_printf':
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:293: undefined reference to `libintl_fprintf'
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:296: undefined reference to `libintl_vfprintf'
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:300: undefined reference to `libintl_fprintf'
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:284: undefined reference to `libintl_fprintf'
C:\namazu\lib\libnmz.a(util.o): In function `nmz_debug_printf':
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:323: undefined reference to `libintl_fprintf'
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:326: undefined reference to `libintl_vfprintf'
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:330: undefined reference to `libintl_fprintf'
C:\namazu\lib\libnmz.a(util.o): In function `nmz_strerror':
C:/msys/1.0/home/www/namazu-2.0.21/nmz/util.c:578: undefined reference to `libintl_gettext'
collect2.exe: error: ld returned 1 exit status
NMAKE : fatal error U1077: 'C:\Perl\c\bin\g++.EXE' : return code '0x1'
Stop.
libperl510.a 云々でエラーは出てないようだけど、やっぱり色々言われてる。C:/msys/1.0/home/www/ 以下に namazu-2.0.21/ というフォルダがあるつもりで何かしてるあたりが気になる。libnmz.a とやらが作られた時の環境が表示されてるのかな?

Namazu for Windows は導入がとにかく大変。 :

「Namazu for Windows は、ActivePerl 5.8.x でしか動きません」と仰る理由がよく分かったような気になりました。他のバージョンではダメだ。こりゃ大変だ。

せめて、StrawberryPerl を前提にしてモジュールを用意してあれば良かったのかなと思えてきたり。ActivePerl は過去の版を入手しづらい状態になってしまったので、「ActivePerl 5.8.x はどこからDLできるんでしょう?」てな初っ端のあたりからハマるけど。Starwberry Perl なら、 _Strawberry Perl for Windows - Releases から過去の版も入手できるように見えるので、そういう部分でハマったりはしなかったのかもしれないなと。

昔は ActivePerl の旧版も入手できていたような気がするけど、ActivePerl を選択すること自体がトラップになるとは…。や、ActiveState社も商売が厳しくてこうなったのだろうし、ActivePerl の ppm も当時は便利だったのだろうし、昔は ActivePerl しか選択肢が無かったのだろうから、仕方ないよな…。

#2 [perl][windows] ActivePerl や Strawberry Perl を切り替えるbatファイルを書いた

_昨日 、ActivePerl の異なるバージョンを切り替えるbatファイルを書いたけど、もうちょっと頑張れば Strawberry Perl とも切り替えられるかなと思えてきたので試したり。

以下のような場所に、それぞれインストール。 Strawberry Perl のフォルダ構成と合わせるために、ActivePerl のインストールフォルダに対して、以下の空フォルダを作成。
環境変数 PATH に、以下を追加しておく。既に Perlインストールフォルダがいくつか登録されていたら、それらは消しておく。
C:\Perl\c\bin
C:\Perl\perl\site\bin
C:\Perl\perl\bin

batファイルは以下の通り。

plch.bat
@echo off

set PERLPATH1=C:\Perls\activeperl58
set PERLPATH2=C:\Perls\activeperl516
set PERLPATH3=C:\Perls\strawberry518

set PPATH=
if "%1"=="58" set PPATH=%PERLPATH1%
if "%1"=="516" set PPATH=%PERLPATH2%
if "%1"=="518" set PPATH=%PERLPATH3%
if not "%PPATH%"=="" goto SETPERLDIR

echo Perlのパスを切り替えます。(mklink /d を使ってシンボリックを張り直し)
echo.
echo     1 : ActivePerl 5.8
echo     2 : ActivePerl 5.16
echo     3 : Strawberry Perl 5.18
echo.

set USERINPUTSTR=
set /P USERINPUTSTR="切り替えたい番号を選んでください : "
if "%USERINPUTSTR%"=="1" set PPATH=%PERLPATH1%
if "%USERINPUTSTR%"=="2" set PPATH=%PERLPATH2%
if "%USERINPUTSTR%"=="3" set PPATH=%PERLPATH3%
if not "%PPATH%"=="" goto SETPERLDIR

echo.
echo Usage:
echo     plch 58
echo     plch 516
echo     plch 518
goto END

:SETPERLDIR
@echo on
rmdir C:\Perl
mklink /d C:\Perl %PPATH%
@echo off
echo.
echo Perlのパスを %PPATH% に設定しました
echo.

:END

管理者権限でDOS窓を開いて、plch 58 とか plch 516 とか plch 518 とか、あるいは plch とか打てば、C:\Perl というシンボリックリンクが作られる。perl -v と打ってみて、バージョンが変わってることを確認。

注意事項。事前に C:\Perl というフォルダがあって、中にPerl一式が実体として入ってたら、rmdir C:\Perl で全消去されそうな予感。C:\Perl というシンボリックリンク名じゃなくて、違うリンク名にしておいたほうがまだ安心、かもしれない。

この手の専用のツールって作れないかな。 :

環境変数PATHの中身を置換できるツールがあれば済むのだろうけど…。誰か作ってないのかな…。もっとも、セキュリティ面でアレな気はするけれど。

ググってみたら、環境変数を置換する方法はあるらしい。 _炎のコマンドプロンプト入門/バッチファイル/環境変数 で解説されてた。
%[環境変数]:[置換元文字列]=[置換先文字列]%
set NEWPATH=%PATH:C:\Perl=C:\Perls\Perl516%
echo %NEWPATH%
なんだかbatファイルでもどうにかできそうな気がする。それをシステム全体に再設定できるかは、また別の話だろうけど。

2014/10/09(木) [n年前の日記]

#1 [perl][windows] perlbrewとかplenvとかについて少し調べたり

Perlのバージョンを切り替えるツールとして、perlbrew とか plenv とかがあるらしいので、どういうものなのかほんのちょっと調べたり。とりあえず、ActivePerl 5.8.x、5.16.x、Strawberry Perl 5.18 あたりを共存というか、切り替えて使いたいのだけど。つまり Windows 上で使いたいのですけど。使えるのかな。

_App-perlbrew | Perl Package Manager Index (PPM) | ActiveState Code によると、perlbrew は、ActivePerl 5.8.x では使えるけど、5.16.x ではダメっぽい。

_plenv | Perl Package Manager Index (PPM) | ActiveState Code によると、plenv は ActivePerl 5.16.x では使えるらしい。5.8.x はダメっぽい。

そもそも仕組みが分からないな…。どういう処理をしてるんだろう。

Ruby なら pik とか uru。 :

#2 [perl][windows] Strawberry Perl 5.8.x で ActivePerl 5.8.x の代用になるかどうか

_[覚書] strawberryperl - てきとーにやる で、Strawberry perl には ppm コマンドもある、という話を見かけて、ということは ActivePerl 5.8.x の代用として Strawberry Perl 5.8.x が使えたりしないのかなと思ったわけで。

試しに、strawberry-perl-5.8.9.5.msi をDLしてインストール。

問答無用で、C:\strawberry にインストールされてしまった。インストール先フォルダを変更したかったのに…。どうやら昔の Strawberry Perl はインストール場所を決め打ちしちゃってるようで。

それはともかく。
ppm install http://www.akaneiro.jp/PPMPackages/800/File-MMagic.ppd -force
と打ってみた。

ダメっぽい。
> ppm install http://www.akaneiro.jp/PPMPackages/800/File-MMagic.ppd

Installing package 'http://www.akaneiro.jp/PPMPackages/800/File-MMagic.ppd'...
Error installing package 'http://www.akaneiro.jp/PPMPackages/800/File-MMagic.ppd': Read a PPD for 'http://www.akaneiro.jp/PPMPackages/800/File-MMagic.ppd', but it is not intended for this build of Perl (MSWin32-x86-multi-thread-5.8)

まあ、そうだろうな…。代用できるなら、その旨書いとくだろうし…。

この記事へのツッコミ

Re: Strawberry Perl 5.8.x で ActivePerl 5.8.x の代用になるかどうか by opengl2772    2015/01/27 05:32
Strawberry Perl の PPM 対応が実にいい加減で対応が不十分なんです。
Strawberry Perl でも正しく処理できるように PPD ファイルを書き換えてやれば、Strawberry Perl にもインストールできることを確認しています。
書き換えた内容は未公開ですけど...。

#3 [namazu][perl][windows] Namazu for Windowsの動作テスト

とりあえず ActivePerl 5.8.x を有効にした状態で、Namazu for Windows の動作テストをしてみたり。README-ja.txt によると、
cd C:\namazu\pltests
perl alltests.pl
を実行して、
All XX tests passed
と表示されれば動作テストに成功、らしい。

自分の環境は、環境変数 HOME を設定済みなので、Namazu for Windows の「HOME を設定せよ」という要求とは競合してしまう。そこで、別途batファイルを用意して、ソレを実行して環境変数を設定してから Namazu for Windows を試すことにした。

namazuvars.bat
@rem namazu setting
@echo off

SET NAMAZUDRIVE=C:
SET NAMAZUPATH=\namazu
SET NAMAZUHOME=%NAMAZUDRIVE%%NAMAZUPATH%
SET KAKASIHOME=C:\kakasi
@rem SET CHASENHOME=C:\usr\local
@rem SET MECABHOME=C:\usr\local

PATH %NAMAZUHOME%\bin;%PATH%

SET LANG=ja_JP.SJIS
SET LANGUAGE=%LANG%
SET LC_ALL=%LANG%
SET LC_MESSAGES=
SET LC_CTYPE=

SET NAMAZURC=%NAMAZUHOME%\etc\namazu\namazurc
SET MKNMZRC=%NAMAZUHOME%\etc\namazu\mknmzrc
SET NAMAZULOCALEDIR=%NAMAZUHOME%\share\locale
SET pkgdatadir=%NAMAZUHOME%\share\namazu

SET KANWADICTPATH=%KAKASIHOME%\share\kakasi\kanwadict
SET ITAIJIDICTPATH=%KAKASIHOME%\share\kakasi\itaijidict

@rem SET CHASENRC=%CHASENHOME%\etc\chasenrc
@rem SET MECABRC=%MECABHOME%\etc\mecabrc

@rem if NOT "x%HOME%" == "x" goto Lable_end_HOME
@rem if "x%HOMEDRIVE%" == "x" set HOMEDRIVE=%NAMAZUDRIVE%
@rem if "x%HOMEPATH%" == "x" set HOMEPATH=%NAMAZUPATH%
@rem set HOME=%HOMEDRIVE%%HOMEPATH%

set HOME=%NAMAZUHOME%

@rem :Lable_end_HOME

echo HOME=%HOME%
echo LANG=%LANG%
echo NAMAZURC=%NAMAZURC%
echo MKNMZRC=%MKNMZRC%
echo NAMAZULOCALEDIR=%NAMAZULOCALEDIR%
echo KANWADICTPATH=%KANWADICTPATH%
echo ITAIJIDICTPATH=%ITAIJIDICTPATH%
echo CHASENRC=%CHASENRC%
echo MECABRC=%MECABRC%
echo pkgdatadir=%pkgdatadir%

それはともかく、perl alltests.pl を実行してみたところ、
PASS: namazu-4.pl
FAIL: namazu-5.pl
PASS: namazu-6.pl
...
====================
1 of 43 tests failed
====================
naamzu-5.pl でエラーが。うーん。

_[Namazu-win32-users-ja 722] Re: Namazu for Windows 2.016のalltests.pl実行にてnamazu-5.plがFAILになる で解説されてた。また、README-ja.txt にも記述があった。
・Microsoft Office をインストールしている環境では、Microsoft Office 付属の一太郎文書コンバータを予めインストールしてください。
・Microsoft Office 2000、Office XP、または Office 2003 をインストールしている環境では、「Word/Excel/PowerPoint 2007 ファイル形式用 Microsoft Office 互換機能パック」を予めインストールしてください。また、Office 互換機能パックの最新のサービスパックをインストールしてください。
Office 2003、2007をインストールしてる関係で引っ掛かったらしい。 FileFormatConverters は、 _Download Word/Excel/PowerPoint 用 Microsoft Office 互換機能パック from Official Microsoft Download Center からDLした。

上記2点を実行してから再度試したところ、処理途中で何度も何度も、一太郎文書コンバータのオプション指定ダイアログが開いた。コレ、自動化できないのかな…。

とりあえず、テストは全部通ったらしい。
PASS: kakasi-2.pl
PASS: kakasi-3.pl
===================
All 43 tests passed
===================

_nmzchkcnv.pl で、一太郎文書コンバータのインストール状況を調べるPerlスクリプトが公開されてた。試しにDLして動かしてみたり。
> perl nmzchkcnv.pl

Microsoft Word 11.0
 r- ichitaro7:jfw jvw
 r- ichitaro8:jtd jtt
 rw meword12:docm
 r- mspab:pab
 -w msword6rtfexp:doc
 rw msworkswin6:wps
 r- oasyswin345:fmt oa2
 r- outlook:olk
 r- recover:*
 r- splus:scd
 rw wks632:wps
 rw word12:docx
 r- wordperfect6x:wpd doc
 r- wrdprfctdos:doc
最初に「-」がついてたら、それは未インストール状態、ということらしい。2文字目の「r」は読み込み対応を示してるそうで、つまりこの状態は、一応どれも読み取りには対応してる、ということになるのかな…。

この記事へのツッコミ

Re: Namazu for Windowsの動作テスト by opengl2772    2015/01/27 05:15
一太郎文書コンバータのオプション指定ダイアログは、一太郎文書コンバータが出すもので抑止できないのですよね。
古い Office のバージョンではダイアログ出ずに処理できるので、機能としては残してあるのですが、実質使い物になりません。

#4 [perl][windows][namazu] Strawberry Perl + Namazu for Windows で動作テスト

ActivePerl 5.16.x では、NKF.pm だか NKF.dll が正常動作しないので Namazu for Windows を動かせなかったけど。Strawberry Perl 5.18.x ならどうなるのか気になったので試してみたり。

Namazu for Windows の動作に必要、かつ、cpan でインストールできるモジュールは、以下の通り、だったような気がする。
cpan File::MMagic
cpan MP3::Info
cpan IO::stringy
cpan OLE::Storage_Lite

.zip や .tar.gz をDLして、C:\MinGW\msys\1.0\home\アカウント名\ 以下でビルド?できたモジュールは、以下の通り。
ExtUtils::FakeConfig は、以下のような感じ。だったと思う。少し記憶が怪しいけど。
wget http://search.cpan.org/CPAN/authors/id/M/MB/MBARBON/ExtUtils-FakeConfig-0.12.zip
unzip ExtUtils-FakeConfig-0.12.zip
cd ExtUtils-FakeConfig
perl Makefile.PL
nmake
nmake test
nmake install

Text::Kakasi は、 _2014.10.07の日記 と似たような手順で作業できた。
wget http://search.cpan.org/CPAN/authors/id/D/DA/DANKOGAI/Text-Kakasi-2.04.tar.gz
tar zxvf Text-Kakasi-2.04.tar.gz
cd Text-Kakasi-2.04
(Makefile.PLを修正。INC,LIBS,LDDLFLAGSのパス指定を変更)
perl Makefile.PL
dmake
dmake test
dmake install
だったような気がする。

NKFは、 _nkf Network Kanji Filter プロジェクト日本語トップページ - SourceForge.JP から、nkf-2.1.3.tar.gz をDLして解凍。
cd nkf-2.1.3\NKF.mod
perl Makefile.PL
dmake
dmake test
dmake install

あと、Search::Namazu というモジュールも必要らしいけど、これはビルドしてもエラーが出てインストールできなかった。とりあえず、Search::Namazu 無しでどの程度動くのか試してみようかなと。

さて、この状態で、cd C:\namazu\pltests\ をして、perl alltests.pl を実行してみた。

結構「PASS」が出てきて喜んだけど、やっぱり問題が。
PASS: mknmz-18.pl
FAIL: idxdiff-1.pl
FAIL: idxdiff-3.pl
PASS: namazu-1.pl
...
====================
2 of 43 tests failed
====================
惜しい…! 2つほどPASSしてくれなかった。test-log に結果が残ってるので確認してみると…。
  *** starting idxdiff-1.pl
diff c:/namazu/pltests/idx1/NMZ.p c:/namazu/pltests/idx2/NMZ.p
diff c:/namazu/pltests/idx1/NMZ.pi c:/namazu/pltests/idx2/NMZ.pi
  *** starting idxdiff-3.pl
diff c:/namazu/pltests/idx5/NMZ.p c:/namazu/pltests/idx6/NMZ.p
diff c:/namazu/pltests/idx5/NMZ.pi c:/namazu/pltests/idx6/NMZ.pi
  *** ..\bin\namazu.exe --help 
本来ここで「diff 〜」が表示されなければOK、ということなのだろうか。わからんけど。

エラーは出たものの、これってつまり、Search::Namazu モジュールがインストールできてなくても、ある程度は動く、ということだろうか? それとも、Search::Namazu が無いと、全てのテストをPASSしない、ということなのだろうか?

ところで。
MP3::Info
IO::stringy
OLE::Storage_Lite
をインストールしたら、perl alltests.pl 実行時に、一太郎文書コンバータのオプションダイアログが一々開かずに処理をしてくれたのだけど。どれかのモジュールが、そのあたりをイイ感じに処理してくれているのだろうか?

idxdiff-*.plについて調べる。 :

idxdiff-1.pl と idxdiff-3.pl を開いて眺めてみた。
  • idxdiff-1.pl は、idx1/NMZ.* と idx2/NMZ.* を比較して、違うファイルがあったら 1(= 失敗)を返す。どれも同じファイルなら 0(= 成功)を返す。
  • idxdiff-3.pl は、idx5/NMZ.* と idx6/NMZ.* を比較して、違うファイルがあったら 1(= 失敗)を返す。どれも同じファイルなら 0(= 成功)を返す。

WinMerge を使って、idx1/ と idx2/、idx5/ と idx6/ を比較してみた。たしかに、NMZ.p、NMZ.pi の内容が違っている。

また、idx*/ は、alltests.pl を実行した時に自動生成される。

こちらとしては、「idx1/NMZ.* と idx2/NMZ.* は違いがないよ。テストにPASSしたよ」という結果が出てくることを期待しているわけだけど。しかし実際には、idx1/NMZ.* と idx2/NMZ.* の中は一部が違ってる。

要するに、「idxdiff-*.pl が失敗ステータスを出してるのだから、idxdiff-*.pl の中で変な動作になってるのだな」と考えるのは早計で、実際は、idx*/NMZ.* を自動生成する時に、予想外の動作になってる可能性が高いわけで。

ちなみに、ActivePerl 5.8.9 に切り替えて同じテストをしてみたところ、以下のような状態だった。
  • idx1/NMZ.p と idx2/NMZ.p は同じ。
  • idx1/NMZ.pi と idx2/NMZ.pi は同じ。
  • idx5/NMZ.p と idx6/NMZ.p は同じ。
  • idx5/NMZ.pi と idx6/NMZ.pi は同じ。

てなわけで、Strawberry Perl を使うと、NMZ.p、NMZ.pi が意図通りに生成されない状態になる模様。

さて、idx1/ だの idx2/ だのを自動生成してるのは、どの .pl なのだろう。grep をかけてみた感じでは、mknmz-1.pl、mknmz-2.pl が自動生成してるらしい。中身をざっと眺めてみたけど…何が何やら。

ActivePerl 5.8.9 の出した test-log と、Strawberry Perl 5.18 の出した test-log を見比べてみた。何か登録されてるモジュール数が違うんじゃないかと思ったけれど、別にそういうわけでもないような。

もちろん、NKFのバージョンなどは違っていて、ActivePerl側は 2.07、StrawberryPerl側は2.13 だけど…。もしかしてそこが原因だったりするのかな。NKF 2.07 と 2.13 は動作が微妙に違っていて、出力される index も違ってくるとか? そこを合わせれば解決する?

試しに、 _nkf Network Kanji Filter プロジェクト日本語トップページ - SourceForge.JP から、nkf207.tar.gz をDLしてきて、C:\MinGW\msys\1.0\home\アカウント名\ 以下でビルドして、その状態でテストしてみた。…やはり idxdiff-*.pl でエラーが出る。idx1/ と idx2/ の中の、NMZ.p、NMZ.pi が一致してない。NKFのバージョンを合わせれば問題解決するわけではなさそうだなと。

Strawberry Perl のバージョンを変えてみる。 :

そういや、Strawberry perl 5.18 で動作確認してるけど、現在の推奨バージョンは 5.20 なんだよな…。そちらもインストールしてみようか。

と思ったら。strawberry-perl-5.20.1.1-32bit.msi を実行したところ、「古い版が入ってるからインストールできねえよ」と怒られた。今の Strawberry Perl って、異なるバージョンをインストールできないのか…。5.8.9 と 5.18 は共存ができたのに…。

仕方ないので、Strawberry Perl 5.18 をアンインストールしてから、5.20 をインストール。

5.18 の時と同じようにモジュールをインストールしていったけど、Text::Kakasi の時に大量の警告が。
Warning: .drectve `-defaultlib:MSVCRT ' unrecognized
Warning: corrupt .drectve at end of def file
これがずらずらと表示される。dmake test は PASS と表示されるのだけど…。とりあえず無視してそのままインストール。

cd C:\namazu\pltests\ して、perl alltests.pl を実行。…警告が出てくる。
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LC_ALL = "ja_JP.SJIS",
        LANG = "ja_JP.SJIS"
    are supported and installed on your system.
perl: warning: Falling back to the system default locale ("Japanese_Japan.932").
  *** starting alltests.pl
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LC_ALL = "ja_JP.SJIS",
        LANG = "ja_JP.SJIS"
    are supported and installed on your system.
perl: warning: Falling back to the system default locale ("Japanese_Japan.932").
PASS: env.pl
ja_JP.SJIS なんて無いよ、と言われてるのだろうか。Perl 5.20 からそのあたりの定義が変わったのかな…?

仕方ないので、set LANG=ja_JP.SJIS を、set LANG=Japanese_Japan.932 に変えてみたり。これって、後で何か問題が起きそうだよなあ…。既存の .pl が、ja_JP.SJIS があることを前提にして書かれてたりしそうだし。

とりあえず、結果は…。
C:\namazu\pltests>perl alltests.pl
  *** starting alltests.pl
PASS: env.pl
PASS: mknmz-1.pl
...
PASS: mknmz-18.pl
FAIL: idxdiff-1.pl
FAIL: idxdiff-3.pl
FAIL: namazu-1.pl
FAIL: namazu-2.pl
FAIL: namazu-3.pl
PASS: namazu-4.pl
FAIL: namazu-5.pl
PASS: namazu-6.pl
...
PASS: namazu-12.pl
FAIL: namazu-cgi-1.pl
FAIL: namazu-cgi-2.pl
PASS: namazu-cgi-3.pl
...
PASS: namazu-cgi-12.pl
====================
8 of 40 tests failed
====================
ダメだこりゃ。

意味も分からず SET LANG=ja_JP.EUC-JP にしてみたけど結果は同じ。

Strawberry Perl のバージョンを上げたら動作が変わってしまったということは、過去の版を使えばテストが通ったりするのだろうか?

Strawberry Perl 5.16.3.1 をインストールして試してみた。
> perl alltests.pl
  *** starting alltests.pl
PASS: env.pl
PASS: mknmz-1.pl
...
PASS: mknmz-18.pl
PASS: idxdiff-1.pl
PASS: idxdiff-3.pl
PASS: namazu-1.pl
...
PASS: kakasi-3.pl
===================
All 43 tests passed
===================
おお。通った…。

Strawberry Perl 5.8.9.5 をインストールして試してみた。しかし、こちらはそもそも Text::Kakasi がビルドできない。

Namazu for Windows + ActivePerl じゃなくて、Namazu for Windows + Strawberry Perl でも動作するなら…。Namazu for Windows が、仮に Perl の特定バージョンでしか動かない状況だとしても、Strawberry Perl の古い版なら入手可能だからなんとかなるかな、てなことを思って試していたのですけど。ちょっとなんとかなりそうな雰囲気っぽいかもしれず。

でも、Search::Namazu が入らないのがちと気になりますけど。

この記事へのツッコミ

Re: Strawberry Perl + Namazu for Windows で動作テスト by 名無しさん    2014/10/11 22:12
Strawberry Perlの5.18以降はなにかおかしいですね。こちらではWin32::Unicode::ConsoleがテストにFAILしてインストールできないのでバージョンを5.16.3.1から上げられません。
Re: Strawberry Perl + Namazu for Windows で動作テスト by opengl2772    2015/01/27 05:09
Search::Namazu は Namazu for Windows を実行するのに必須ではありません。
Re: Strawberry Perl + Namazu for Windows で動作テスト by opengl2772    2015/01/27 05:11
Namazu for Windows では、ja_JP.SJIS か C しかサポートしていません。
日本語なら ja_JP.SJIS しか選択肢はありません。
Re: Strawberry Perl + Namazu for Windows で動作テスト by opengl2772    2015/01/27 05:23
一太郎文書コンバータを使うのは、Office を使って変換する OLE フィルタを使った場合です。
記憶が不確かですが、OLE::Stoage_Lite をインストールと別フィルタを使って処理するので、一太郎文書コンバータは使われず、ダイアログは出なくなります。

#5 [perl][windows] Strawberry Perl の異なるバージョンの共存について少し調べたり

いくつかのバージョンのインストールを試してみたり。

.msi 版を実行してみた際に、インストール先がどこになるか。 なので、.msi を使ってインストールしつつ古いバージョンと共存したいなら、(5.8|5.10) + (5.14|5.16) という組み合わせになるのかなと。

ただ、Strawberry Perl は .msi の他にも、zip版、portable版があるので、ソレを使えばもっと色んな組み合わせができそうな気もする。しかし、ちょっとアレな点も。 zipを解凍して、解凍場所をPATHに設定してやればそれで済むわけでもないっぽい。

Strawberry Perl 5.8.9.5の注意。 :

cpan がすぐに使える状態にはなってない模様。
cpan
o conf
o conf init
o conf
をして、wget.exe を使えるようにしたり等の設定が必要っぽい。

#6 [nitijyou] 家のペンキ塗り工事が始まった

数日前に足場を組む作業、外壁の汚れを水で吹き飛ばす作業をしてたのだけど。今日からペンキ塗りの下準備、おそらくは錆を削ったり剥がれてるペンキを削り落としたり、という作業が始まった模様。とメモ。

前回ペンキ塗り工事をしたのは何時だったろう…。自分がこっちに帰ってきてからやってたような気がするんだけど…。検索してみたら、 _1999/05/13 にペンキ塗りがどうとか書いてあった。日記って、つけておくもんだなあ…。

本当は、震災前にそろそろ塗り替えようという話が出ていたらしのだけど。震災で、業者側の仕事が一気に増えて余裕が全然無くて云々、という話も聞いたような記憶が。とメモ。

2014/10/10(金) [n年前の日記]

#1 [perl][windows][namazu] Namazu for Windows と Strawberry Perl の組み合わせ

だらだらと作業メモを残してるうちに自分でもわけがわからなくなってきたので、ちょっとまとめておこうかなと。

必要なファイル。 :

nmz2.0.21.001-win32.zip。 _全文検索システム Namazu for Windows から辿って入手。解凍して、namazu フォルダを C:\namazu\ にコピー。

strawberry-perl-5.16.3.1-32bit.msi。 _Strawberry Perl for Windows - Releases から入手。実行してインストール。

_kakasi-2.3.4.zip 。解凍して、C:\kakasi\ にコピー。

nkf-2.1.3.tar.gz。 _nkf Network Kanji Filter プロジェクト日本語トップページ - SourceForge.JP から入手。

もしかすると、MinGW/MSYS も必要なのかもしれないけど、よく分かってません。とりあえず自分は入れてるけど、入れなくてもなんとかなったりしないのかな。どうなんだろう。

とりあえず、MinGW/MSYSのインストール方法もメモ。 _MinGW プロジェクト日本語トップページ - SourceForge.JP から、mingw-get-setup.exe をDLして実行。C:\MinGW\ にインストール。手順は、 _WindowsにMinGWをインストールしてC/C++で開発(32bit版) | 虚ろなるパソコン技術ノート for Windows で分かりやすく解説されていて助かりました。

環境変数PATHの設定。 :

環境変数 PATH に、
C:\namazu\bin
C:\kakasi\bin
を追加。

Namazu for Windows に添付されてる alltests.pl がPASSするかどうか。 :

  • Strawberry Perl 5.8.9.5 ... そもそも Text::Kakasi がビルドできないので話にならない。
  • Strawberry Perl 5.16.3.1 ... 全部PASSした。
  • Strawberry Perl 5.18.4.1 ... 一部が失敗する。NMZ.p、NMZ.pi の生成がおかしい?
  • Strawberry Perl 5.20.1.1 ... かなり失敗する。
他のバージョンは試してないけど、とりあえず 5.16.3.1 なら全PASSすることを確認。

alltests.pl を実行するのに必要になったモジュール。 :

  • Text::Kakasi
  • NKF
  • File::MMagic
  • MP3::Info
  • IO::stringy
  • OLE::Storage_Lite
本当は、もう一つ、
  • Search::Namazu
も必要らしいけど、これだけが何故かビルドできなくて。

cpan ですんなりインストールできたモジュール。 :

cpan File::MMagic
cpan MP3::Info
cpan IO::stringy
cpan OLE::Storage_Lite
cpan モジュール名、でインストールできる。

zip や tar.gz をDLしてインストールしたモジュール。 :

  • Text::Kakasi
  • NKF

Text::Kakasi のビルド/インストールは以下。
wget http://search.cpan.org/CPAN/authors/id/D/DA/DANKOGAI/Text-Kakasi-2.04.tar.gz
tar zxvf Text-Kakasi-2.04.tar.gz
cd Text-Kakasi-2.04
(Makefile.PLを修正。INC,LIBS,LDDLFLAGSのパス指定を変更)
perl Makefile.PL
dmake
dmake test
dmake install
Makefile.PL は、以下の部分を修正。
    'INC' => '-IC:/kakasi/include',
    'LIBS' => ['-LC:/kakasi/lib -lkakasi'],

NKF のビルド/インストールは以下。
tar zxvf nkf-2.1.3.tar.gz
cd nkf-2.1.3\NKF.mod
perl Makefile.PL
dmake
dmake test
dmake install

環境変数の設定。 :

Namazu for Windows を動かすには環境変数の設定が必要。

nmz2.0.21.001-win32.zip の中の、add-to-autoexec-ja.txt、あるいは README-ja.txt を参考にすればいいかと。

自分は _batファイルを書いて どうにか。

余談。 :

Namazu for Windows + ActivePerl 5.16.x x64 用の ppm は存在する・準備中らしいので、そのうち Namazu を Windows 上で動かすことになるのかもしれない人は、ActivePerl 5.16.x x64版を今のうちにDLしておいたほうがいいような気がします。ActivePerl は、お金を払わないと旧版が入手できないらしいので、5.16.x が公開されてる今のうちにDLしてHDDの片隅にバックアップしておくべし。みたいな。そのうちDLできなくなりますから…。

余談その2。 :

今時の Windows は、Windows Search なる検索システムが標準で入ってるし、最初からバックグラウンドで動いてるので、単にローカルに入ってるファイルを検索したいだけならそれで十分かもしれず。

_121ware.com > サービス&サポート > Q&A > Q&A番号 015165
_ASCII.jp:速くて使いやすくなった、Windows 7の「検索」 (1/2)|あなたの知らないWindows

#2 [zatta] 青色発光ダイオードでノーベル賞云々

朝食時にラジオから、「中村さん、バンザーイ」と叫んでる人達の声が流れてたのだけど。

たしか当時、「発明に対する正当な対価を」と主張して裁判を起こした中村氏は、日本企業・マスコミからガンガン叩かれて、結果、日本が嫌になって海外に行ってしまった、そんな記憶があって。なもんで複雑な気分。日本人ってこの手の場面での手の平の返しようが酷いなと思いました。でも、ノーベル賞をとっても尚、叩き続けるよりはマシかもしれんのか…。

2014/10/11() [n年前の日記]

#1 [perl][namazu][hns] hns-lite + pnamazu をローカルで動かしてテスト

hns-lite + pnamazu で検索機能を提供できるかどうか実験中。

手順は、 _ハイパー日記システムでpnamazuを使おう で説明されてる。順にやっていけばどうにか。

仕組みとしては…。 pnamazu は、Perl で書かれた Namazu なので、Perl CGIを動かすことしか許可してないサーバ上でもNamazuが使える、ということらしい。

揃えた環境・ファイル。 :

とりあえず今回は、以下の環境・ファイルで動作確認。

Namazuのインデックスファイル作成。
  • Windows7 x64
  • Strawberry Perl 5.16.3.1
  • nmz2.0.21.001-win32.zip
  • kakasi-2.3.4.zip
  • nkf-2.1.3.tar.gz
  • namazu_for_hns-2.0-pl5.tar.gz

Apacheサーバ側。
  • Windows7 x64
  • XAMPP 1.8.3 (Apache 2.4.10, Strawberry Perl 7.0.42 Portable)
  • hns-lite-2.19.9.lzh
  • pnamazu-2006.12.23.tar.bz2

_Strawberry Perl for Windows - Releases
_全文検索システム Namazu for Windows
_kakasi-2.3.4.zip
_nkf Network Kanji Filter プロジェクト日本語トップページ - SourceForge.JP
_HyperNikkiSystem Project プロジェクト日本語トップページ - SourceForge.JP
_XAMPP Installers and Downloads for Apache Friends
_hns-lite のインストール
_namazu 検索プログラム perl 版 (pnamazu)

ローカルPC上でインデックスファイルを作成。 :

  • C:\namazu_hns\ というフォルダを作成。中に、template\ フォルダ、mknmzrc.win32 を作成。
  • C:\namazu\var\namazu\index\diary\index\ というフォルダを作成。ここにインデックスファイルを作成して保存していく。

mknmzrc.win32 は、C:\namazu\etc\namazu\mknmzrc-sample.win32 をコピーして作成。修正した箇所は以下のような感じ。
package conf;  # Don't remove this line!

$ADDRESS = 'メールアドレスを記述';

$ALLOW_FILE =	'.*.hnf';

$DENY_FILE = ".*\\.(gif|png|jpg|jpeg)|.*\\.tar\\.gz|core|.*\\.bak|.*~|\\..*|\x23.*";

$ON_MEMORY_MAX   = 50000000;

$KAKASI = "module_kakasi -ieuc -oeuc -w";

$LIBDIR      = 'C:/namazu/share/namazu/pl';
$FILTERDIR   = 'C:/namazu/share/namazu/filter';
$TEMPLATEDIR = 'C:/namazu_hns/template';

$hnf::hns_version = 2;          # hns major version, 2 or 1
$hnf::diary_uri = "";
$hnf::author = 'メールアドレスを記述';
$hnf::alias_file = "conf/alias.txtの場所を記述";
$hnf::grp_hide = 1;   # 1 -> don't show GRP section, 0 -> show GRP section

$hnf::link_templ = '%year%month%day.html';   # one day
$hnf::link_templ は、mod_rewrite を使うこと前提で指定してるので、mod_rewrite を使わないならコメントアウト。

以下のbatファイルを作成して呼び出すことにした。

hns-index2.bat
@rem Namazu for HNS

@rem namazu setting
@echo off

@rem ----------------------------------------

@rem インデックスファイルの作成場所
set NMZIDX=C:\namazu\var\namazu\index\diary\index

@rem mknmzに渡す設定ファイル
set RCFILE=C:\namazu_hns\mknmzrc.win32

@rem mknmzに渡すtemplate
set TEMPLATEDIR=C:\namazu_hns\template

@rem hnfファイルが入ってるフォルダ
set HNFDIR=C:\home\diary\public_html_new\diary_data

@rem ----------------------------------------
@rem Namazu を動かすための環境変数を設定

SET NAMAZUDRIVE=C:
SET NAMAZUPATH=\namazu
SET NAMAZUHOME=%NAMAZUDRIVE%%NAMAZUPATH%
SET KAKASIHOME=C:\kakasi
@rem SET CHASENHOME=C:\usr\local
@rem SET MECABHOME=C:\usr\local

set LANG=ja_JP.SJIS
@rem SET LANG=ja_JP.EUC-JP
@rem SET LANG=Japanese_Japan.932

SET LANGUAGE=%LANG%
SET LC_ALL=%LANG%
SET LC_MESSAGES=
SET LC_CTYPE=

SET NAMAZURC=%NAMAZUHOME%\etc\namazu\namazurc
SET MKNMZRC=%NAMAZUHOME%\etc\namazu\mknmzrc
SET NAMAZULOCALEDIR=%NAMAZUHOME%\share\locale
SET pkgdatadir=%NAMAZUHOME%\share\namazu

SET KANWADICTPATH=%KAKASIHOME%\share\kakasi\kanwadict
SET ITAIJIDICTPATH=%KAKASIHOME%\share\kakasi\itaijidict

@rem SET CHASENRC=%CHASENHOME%\etc\chasenrc
@rem SET MECABRC=%MECABHOME%\etc\mecabrc

@rem if NOT "x%HOME%" == "x" goto Lable_end_HOME
@rem if "x%HOMEDRIVE%" == "x" set HOMEDRIVE=%NAMAZUDRIVE%
@rem if "x%HOMEPATH%" == "x" set HOMEPATH=%NAMAZUPATH%
@rem set HOME=%HOMEDRIVE%%HOMEPATH%

set HOME=%NAMAZUHOME%

@rem ----------------------------------------
@rem Strawberry Perl 5.16.3.1、Namazu、Kakasi のパスを、PATHの最初に追加

set PATH=C:/Perls/strawberry-5.16.3.1/c/bin;%PATH%
set PATH=C:/Perls/strawberry-5.16.3.1/perl/site/bin;%PATH%
set PATH=C:/Perls/strawberry-5.16.3.1/perl/bin;%PATH%
set PATH=%NAMAZUHOME%\bin;%PATH%
set PATH=%KAKASIHOME%\bin;%PATH%

@rem :Lable_end_HOME

REM echo HOME=%HOME%
REM echo LANG=%LANG%
REM echo NAMAZURC=%NAMAZURC%
REM echo MKNMZRC=%MKNMZRC%
REM echo NAMAZULOCALEDIR=%NAMAZULOCALEDIR%
REM echo KANWADICTPATH=%KANWADICTPATH%
REM echo ITAIJIDICTPATH=%ITAIJIDICTPATH%
REM echo CHASENRC=%CHASENRC%
REM echo MECABRC=%MECABRC%
REM echo pkgdatadir=%pkgdatadir%
REM echo NMZIDX=%NMZIDX%
REM echo RCFILE=%RCFILE%
REM echo TEMPLATEDIR=%TEMPLATEDIR%
REM echo HNFDIR=%HNFDIR%
REM echo.

if "%1"=="-h" goto HELP
if "%1"=="clean" goto CLEANJOB
if "%1"=="" goto MAKEIDX

:HELP
echo hns-index2       --- append index
echo hns-index2 clean --- delete all index
echo hns-index2 -h    --- show this help
goto END

:CLEANJOB
echo on
del /q %NMZIDX%\*
@echo off
goto END

:MAKEIDX
@echo on
mknmz -O %NMZIDX% --include=%RCFILE% --media-type=text/hnf --template-dir=%TEMPLATEDIR% %HNFDIR%
@echo off
goto END

:END
hns-index2 で、インデックスファイルを作成。2回目からは、追加された .hnf だけ、インデックスを作成・追加してくれる。何かインデックスがおかしくなったら、hns-index2 clean と打ってインデックスファイルを全消去。再度 hns-index2 を実行してインデックス作成。

問題は、template をどうやって用意するか。namazu_for_hns-2.0-pl5.tar.gz を解凍して出てくる template を使うべし、ということになってるけれど。namazu_for_hns-2.0-pl5.tar.gz は、シェルスクリプト(.sh)を実行することで template/* 内を自動生成するようになってるので、解凍後の template だけをコピーしてもファイルが足りないわけで。

自分の場合は、既に動かしてる hns から template/* をコピーしてきたけど…。もしかすると仮想PC上でLinuxを動かして namazu_for_hns をセットアップして template だけを取り出す、てな面倒なことをしないといけないのかもしれず。あるいは、*.in を参考にしながら自分で作成していくとか。

もっとも、C:\namazu\share\namazu\template\NMZ* をそのまま使っても、実用上は問題無いような気もするけど。

Apacheサーバ上で動かす。 :

pnamazu-2006.12.23.tar.bz2 を解凍して、pnamazu.cgi を hns-lite のフォルダにコピーして namazu.cgi にリネーム。

hns-lite のdiary フォルダ(hnfやログファイルが入るフォルダ)の中に、フォルダを作成してファイルをコピー。
  • namazu2\index\ を作成。ローカルで作成したインデックスファイル群をコピー。
  • namazu2\template\ を作成。C:\namazu_hns\template\NMZ* をコピー。
ローカル環境だからコピーしてるけど、サーバが相手なら、各ファイルをftpでアップロードすることになるはず。

hns-lite のフォルダ内に、.namazurc を作成。今回は以下のように修正。インデックスファイルの場所、template の場所、Lang を指定。
Index    ../diary_data/namazu2/index
Template   ../diary_data/namazu2/template

#Replace       /home/foo/public_html/  http://www.example.jp/~foo/
#Logging       off

Lang        ja_JP.SJIS

#Scoring       tfidf

EmphasisTags  "<strong class=\"keyword\">"   "</strong>"

#MaxHit	10000
#MaxMatch	1000

ContentType	"text/html; charset=EUC-JP"

#Suicide_Time	60
#Regex_Search	off

config.ph を修正。
$UnagiUse = "ON";
$UnagiURL = "./namazu.cgi";

2014/10/12() [n年前の日記]

#1 [nitijyou] 某所に行ってきた

PCのメンテナンス作業。PM01:10-PM04:00まで作業。USB接続外付けHDD内にlinuxBeanを入れて持っていった。詳細はGRPでメモ。

DELL製PCに外付けHDDを繋いで linuxBean の起動テストをしたけれど。OS再起動後、数回は linuxBean の起動を確認したものの、シャットダウン状態からの電源投入では外付けHDDを認識できず、元のOSが起動する始末。その上、再起動して linuxBean を起動しても、今度はウインドウマネージャが起動しない。たぶんHDD内の何かしらのファイルが壊れたのではないかと。

BUFFALO製の古い外付けHDDだから、電源投入時のHDD認識処理についてこれないんじゃないか。PC本体との相性問題とでも思うしかないのかも。

2014/10/13(月) [n年前の日記]

#1 [nitijyou] 風邪ひいたかも

昨日の昼頃から調子が悪かったのだけど、ちと本格的に寒気と喉が。とりあえず寝る。

#2 [nitijyou] 台風が近づいてる

雨が激しくて犬小屋に吹き込んでるらしく、時々鳴き声が。どうにかしたいところだけど、せっかくカバーっぽい何かを用意しても、食い千切って破壊されてしまうし…。

2014/10/14(火) [n年前の日記]

#1 [pc] SHARP製ノートPCについて調べてる

先日某所に行った際、復活を試みたけど歯が立たなかったSHARP製ノートPCについて調べていたり。型番をメモしておくのを忘れたのは大失敗。でも、Windows XP、RAM 256MB、型番にCLという文字列があった記憶があるので、 _SHARP Mebius PC-CL1-C1B じゃないのかなと。

ググってるうちに、冷却ができてないから落ちるのでは、てな話を見かけたり。

_パソコン シャープメビウスPC-CL1-C1B - ミニチュアダックス☆メイプル、はな、もも、そらの部屋 - Yahoo!ブログ
再度電源を入れると今度はすぐに落ちる。落ちるまでの時間がだんだん短くなっているのでこれは冷却不良ではと思い排気口を確認。

パソコン シャープメビウスPC-CL1-C1B - ミニチュアダックス☆メイプル、はな、もも、そらの部屋 - Yahoo!ブログ より

ああ、なんかコレっぽい。

件の記事では、シリコングリスが硬化して冷却できなくなってたのが原因らしい。そこまで手を入れなきゃいかんのか…。厳しいな…。自分で買ったPCなら、ダメで元々、壊れても諦める、てなノリでそこまでやれなくもないけど。他人様のPCを分解してCPUクーラーを強引に引き剥がして、なんてことしたら失敗した時に大変だから絶対やりたくない…。

SHARP製ノートPCのCPUクーラー周りを分解してる記事に遭遇。

_wakky.info Sharp Mebius PC-CB1-M5 PowerUp CPU換装編
_使用中に電源がいきなり切れるトラブル
_ランシモ: シャープ・メビウスPC−GP2  クーリングファンのお掃除
_CPUが錆びてます 山梨県 甲府市 ホームページ 制作・作成

これは大変そう。

それにしても、ググるとこういう事例が出てくるということは、当時のSHARP製ノートPCはそんなもん、ってことなのかな。

#2 [pc] UBCDをCD-Rに焼いた

UBCD (Ultimate Boot CD) は、メモリチェックツールやHDDチェックツールを全部盛りした起動CD。

_Ultimate Boot CD - Overview

PCのメンテナンスをする際に、これがあると便利。

CD-Rを発掘するのに手間取ったり。DVD-Rはあるんだけど、CD-ROMドライブしかついてないPCでは使えないし。…考えてみたら最近めっきりCD-Rを使う機会が少なくなってきたような。ファイルを持っていくだけならUSBメモリでいいし。

#3 [anime] ナノ・インベーダーズが気になる

TV東京系のアニメ。BS-JAPANで放送された1話を視聴。てっきり中国製アニメなのかと思っていたら、監督・キャラデザ・総作監等は、名前からすると日本の方のようで。

作画やレイアウトはかなりアレだけど、テンポがいいのか、これが意外にそこそこ面白くて。アニメの面白さってどこで決まるのだろうと考え込んでしまったり。

それにしても、ググっても全く情報が出てこない。ここまで出てこないのは逆に不思議。中国で放送されたのか、放送されてないのか。放送されたなら人気のほどはどうだったのか気になるわけで。小さい子供さんにはウケそうだなと思ったけれど、実際はどうなんだろう。

2014/10/15(水) [n年前の日記]

#1 [anime] トッキュウジャー、主人公達の秘密が明かされる回を視聴

なるほど、そういう設定だったとは…。

以下ネタバレ。

名探偵コナンで、 「体は子供。頭脳は大人!」のコピーがあるけれど。それをネタにして 「体は大人。頭脳は子供!」てな文をネットでよく見かけるわけですよ。でも、その笑える(?)パロディの一文も、煮詰めたら、こういうちゃんとした設定にできるのだなあ、などと感心したわけで。や、別に煮詰めたわけじゃなくて、全然違うところから考えていって同じところに辿り着いたのだろうけど。もしかすると、何かを見て笑った後で、「待てよ。これアレンジできないか」とチラリと考えることができていたら、面白い設定等を出せたりするのかなあ、などと思ったりもして。

それはともかく新ロボットのゴージャス感パねえです。なんとなく「太陽の子エステバン」を連想。

#2 [anime][neta] ライダードライブ、1〜2話視聴

まだライダー鎧武を全然見終わってないのですが、どんどん見ていかないと溜まる一方なので…。

変身できるナイトライダー、みたいな感じの設定で、個人的にはかなり好み。それと、加速とかアクセルとかスピードとかそういう言葉が自分は好きなんだなと自覚させられたり。

必殺技シーンがあまりにカッコよすぎて笑ってしまったり。素晴らしい。特に好きなのは「タイーヤ、コウカーン」「タイーヤ、フエール」ですけど。叫び方次第で何でもカッコよくなるなと…。小さいお子さんが居る御家庭で、「アサーダ、オキール」「ゴハーン、タベール」「オフーロ、ハイール」「トイレイッテ、カラネール」等々活用できないものかと。

2014/10/16(木) [n年前の日記]

#1 [anime] ローニャ、1〜2話を視聴

録画してたソレをようやく視聴。見せてもらおうか、NHK+ゴロー監督+ポリピクのアニメの実力とやらを! なんちてぽくん。

以下、思ったことをだらだらとメモ。

失礼ながら正直なところ、もっと酷い出来を想像してたので、「これは意外と…いいんじゃね?」てな印象。3DCGでも名作劇場っぽい映像が作れるのだなと感心。

業界のアニメーターさんがtwitter上で、「3DCGなのに近藤勝也キャラデザなんてもったいねえ」と呟いてた場面を見かけた記憶があるけれど。3DCG側からしたら「近藤キャラデザ、ありがてえ」かもしれず。あのキャラデザじゃなかったら、こんな見た目には絶対にならなかったはず。近藤キャラデザは強い。もちろん、モデリングした人達は苦労しただろうと想像するけれど。お疲れ様です。コレ、イケてるほうだと思います。ガッツポーズ取ってください。

モーションは、ちと海外アニメっぽい動かし方がチラホラあって、そこは少し気になったけど。日本風の動かし方をしているつもりが、3DCGになると何故か海外風に見えてしまうのか、それとも最初から普段やってる海外風で付けているのか、素人目では判断がつかなくて悩んだりもして。まあ、面白ければどっちでもいいですわな。

背景美術で随分助けられてる部分はあるなと。背景美術の方々は、「この作品をソレっぽく見せてるのは俺達の手腕」と胸張って自慢してもいいような気が。もちろん、キャラデザや3DCGが無ければ完成映像にならないので、スタッフ全員の仕事振りが作品を成立させてるわけだけど。その中でも背景美術の功績はかなり大きい気がしたり。番宣番組内で美術の方が「コレもうTVアニメのクオリティじゃねえだろ…助けて…」と嘆いてたけど、苦労した分の成果は画面に出てる、のではないかなあ。

影付けはなんだか引っ掛かったり。光源等を計算してリアルについてるはずなのに、何故か不自然に見える…。手描きのほうが、はるかにインチキでテキトーでいい加減でぞんざいな、不自然な影の付け方をしているはずなのに…。かといって、影をつけないとショボイ画になるのは容易に想像できるし。そういや随分前に、OLMが影の形をコントロールするツールを開発してたっけ…。このあたり、セルアニメ風映像を3DCGで作る際の課題なんだろうなと。どのスタジオでも苦労してそう。

事前の番宣で、「とにかくゆっくりした作品だから、ゆっくりした気持ちで見てほしい」とプロデューサーさんが主張してたので、テンポが悪いとか、間がおかしいとか、そのへんは無視して見てみたり。一応それぞれ、「ここでこういう間を置くことで笑いを取ろう」という意図はちゃんと見えるので、何も考えずにコンテ切ったり編集してるわけでもなさそうだから、まあいいやと。経験値が圧倒的に足りてない監督さんだし望んでもしょうがない。最後まで作り終わった時に経験値が溜まることを期待というか。

たぶん一応最後まで見そうな気がする。というのも、「名作劇場ノリ」「子供向け」という企画が現在皆無なので。そういう企画を通そうとした際に、「あのゴロー監督の新作」「3DCGアニメ」「ジブリが協力」という売り文句は効果的に働いたんじゃないか、逆に考えると、そういう工夫でもしない限り、あの手のジャンルの企画は通らない現状がありそうだなと。なので、今ではもう絶滅危惧種に近いジャンルのアニメだから、一応最後まで見ておきたいかも、と思っていたり。

これが成功すれば、ジブリが3DCG制作に移行する展開だってあり得るかもしれない…。それはそれで見てみたいので、そこそこ成功してくれるといいなと。結局、現在の完成度を評価するのではなくて、これが育ってくれたらと期待して眺めてる、てなところが自分の中にあるのかなと。

肝心要の子供達の反応が気になるところ。子供さんは、とにかくシビアだから…。
「ゴロー監督の新作か。どれ、御手並み拝見といくか」
「ふむふむ。これが日本の3DCGアニメの技術力か」
などと言いながら見てくれる子供は絶対に居ないので。「おもしろーい」「つまんなーい」で即断だから、チョー怖いよなと。

たしか宮崎駿監督も、コナンを作ってた時、子供達の反応が怖かったと言ってたはず。息子さん(子供時代のゴロー監督?)がファンになってくれたから、気持ち的には救われた、と漏らしてたような。

さて、ゴロー監督は自身のお子さんを、この作品のファンにできるのだろうか…。お子さんに喜んでもらえたら、ひとまず成功だろうけど。逆に「お爺ちゃんのアニメ、おもしろーい。お父さんのアニメ、つまんなーい」だったらキッツイわあ…。ソレは避けたいわあ…。ここは踏ん張りどころですな。子供達をハートキャッチ! ゴロー。なんちてぽくん。

2014/10/17(金) [n年前の日記]

#1 [nitijyou] 犬が鳴き続けてる

親父さんが写真撮影で外出したので、朝の犬の散歩を自分がやったのだけど。帰ってきても犬が鳴き続けてうるさくて。どうも親父さんが散歩をさせてる時と何かが違っていたらしい。

全然違う散歩ルートを歩いてしまったのが原因かなと思って、仕方ないから再度散歩。途中で雨が降り出してやっかいなことに。

#2 [anime][neta] ジブリ病

コレ、前にも書いてたかな…。確認するの面倒臭いから、もう一度メモしちゃおう。あくまで思考メモですけど。

米林監督とゴロー監督が出てるNHKの番組を見ていた時になんとなく思ったのだけど。ジブリ病って呼称・概念はどうかなと。既に誰かが別の定義で提唱してるかもしれないけど。

番組を見ているうちに、二人とも、そこにこだわってどうするんだってところでリテイク出してる感じがして。そういったコストパフォーマンスの悪さが、ジブリの制作費増大に繋がってきたのかなあ、みたいな想像を。

例えばゴロー監督は、山の上の砦の地面が坂になってないとおかしいと言い出して。その場所が坂になると、接地モーションの調整作業が増加するので、3DCG班はやりたくないわけですよ。しかしゴロー監督は熱弁。「山の上だよ? 坂になってなきゃ不自然でしょ?」

自然か不自然かなんてどうでもいいよ。心底どうでもいい。リアルがイイなら実写で作れや。なんでアニメ作ってんの。と思ってしまったりして。

アニメの各カットにおいてリアルを追求するのは、あくまで手段に過ぎなくて。リアルにすることで観客の心理をある方向に誘導できる効果が期待できるからリアルにするわけですよ。逆に言えば、観客の心理に大した変化を与えられないなら、そこで苦労する意味無いですよ。だけどジブリ関係者は、どうもリアルにすることが手段じゃなくて目的になってる節があるよなと。おそらく宮崎駿監督から日頃徹底的にダメ出しされ続けて、そうしなきゃいけないと思い込んでるのだろうけど。

砦の地面が坂だったら、視聴者の子供達の気持ちには何か変化があるのかと。ねえよ。全然ねえよ。そんなどうでもいいことに拘るより、砦に滑り台つけて主人公を滑らせたり、家畜小屋の横に小窓付けて「おはよう! ○○ちゃん!」と挨拶させたり、露天風呂置いて母娘に夜空を見上げさせたりしたほうが良くね? 秘密基地っぽい感じをガンガン増して、見てる子供達に「こういうところに住んでみたいなあ」と夢を見させろよと。砦の地面が坂だったら子供達は夢を見るのか。見ねえよ。てことは、そこは拘らなくていい場面ですわ。もっと効果的な拘り方を探すべきで。と思うわけなんですけど。

米林監督は、またちょっと違う、変な拘り方をしてて。とあるカットで、ヒロインの背景の草を動かしましょうとリテイク出してたのですけど。それらの草を、手描き動画で動かせと。

いやいや、そこはCGで動かせば済むでしょ。何で手描きで動かすの。手描きなら動きの制御がしやすいんだと言われそうだけど、そのカットは単に「背景の草がヒロインの心情と一致して動いているのです」と記号で伝われば十分なカットなんだから、正確な動きの制御とか要らない・アニメーターの手を煩わせる必要はないだろうと。宮崎駿監督の真似して何でも手描きで動かさなくていいよ。俺達ファミコン世代なんだからコンピュータ使おうぜ。みたいな。

米林監督はアニメーター出身だから、どうも手描きで動かすコストを安く見積もり過ぎてる気もするし(いざとなれば自分で描いちゃえば済むから…)。手を動かせば動かした分、観客に何かが伝わるはずだと信じ込んでる節もありそうで。たしかに伝わることは伝わるけど、ドカンと伝わる場面とちょっぴりしか伝わらない場面があるんじゃないかなあと。投入したリソースに見合うリターンが期待できるかできないか、その手法を選ぶことで見てる人達の気持ちをどんな風に動かせるか、考えているのか怪しいよなと。

まあ、ジブリアニメも、ローニャも、こんなに拘って作ってますよ、どうです、凄いでしょう、と思わせられないと番宣の意味が無いのでアレなのでしょうけど。自分はそれらの拘りを見ていて、「無意味なことやってんなあ。コストパフォーマンス考えてないよなあ」と思ってしまったのでした。で、そういうアレコレを「ジブリ病」と称したら楽かなあ、と思ったりしました。

とは言え、ローニャの3DCG映像見て、影が不自然だなと引っ掛かってしまった自分も居て。演出意図がそこにあるわけでもなく、見てる人に引っかかりを持たせちゃうのも、良くないよなあ…。

でも、ソレって、叩かれないように、叩かれないようにと、ビクビクオドオドしながら作ってる状態に近い気も。何かこう、一点豪華主義みたいな作りだってあってもいいよなと。…ナウシカやラピュタの頃は、○点豪華主義みたいな作りだった気もするけど。

とりあえず、「ココを坂にすれば子供達大爆笑だよ? だから坂にしようよ」とか「ココを手描きで動かせば号泣間違いなし! だから手描きで」とか、見てる人達の表情を想像しながらリテイクを出す出さないを決めてかないとキリがないだろうなと思ったけれど、まあ、難しいですよね。「この粗を直さないと、また怒られる…」みたいな思考が癖になってそうだし…。

2014/10/18() [n年前の日記]

#1 [nitijyou] そろそろ寒い

部屋の温度、14度。そろそろファンヒーターを使わないとアレかな。

2014/10/19() [n年前の日記]

#1 [nitijyou] 足場を外したらしい

家のペンキ塗り工事で使う足場を、今日片づけていたらしく。結構作業は進んだ、ということなのかな…。

#2 [anime][neta] コンテにちょっとプリプリ怒ってしまったのでメモ

某アニメを見ていたら、作画がかなり厳しくて。もうちょっとで「おっ、まぶしっ」になりそうな雰囲気で、ハラハラドキドキしつつ見てたのですけど。

そんな状況なのに、モブの振り向き動画カットが出てきて。自分、ソレを目にしてブッツンして、なんだか頭の中のモードが切り替わっちゃって。
「このモブ動かす必要あるか? ねえだろが」
「この頷く動画は要らん」
「この腕の振りも要らん」
「このカットも動かしてる。あっ、また動かした。どうして止め絵にしないんだ」
「キャラが台詞吐くたびに、律儀に画面にそのキャラ出さなくてええんやで」
「顔映すな。口パク描かなきゃいかんだろ」
「いっそコイツ人形にしろ」
「馬鹿正直に何人も歩かせんな。せっかくの夕焼けなんだから、出崎演出真似てハーモニーすれば台詞の3つや4つ消化できるだろ」
などと、自分は一体何を見て、どう楽しんでるのかさっぱりわからない状態に。

状況が厳しいのに、通常運転のコンテ描いてちゃいかんよな…。でも、コンテ描いてた時はそういう状況と知らなかったのかもしれないし。先輩達が生み出してきた色んな技を全く知らない人がコンテ描いてるとは思えないので、状況認識さえできてれば見事な省エネ作画追求コンテを描いてくれたはず…。

ド素人がこんな頓珍漢で生意気な感想持ってスミマセン。でもホント、あの状況でモブを動かすことを要求するコンテはあんまりだよ。と思ってしまったのでメモ。

2014/10/20(月) [n年前の日記]

#1 [anime] ワールドトリガー2話を視聴

本編中の設定説明シーンがわかりやすくてなんだか感動。図解が効いてる。原作でそういうコマがあったのか、アニメ版で付加したのか分からんけど。こんなに丁寧な説明をしてるのだから、小さい子供さんでも設定を理解して楽しめるんじゃないかな…。楽しんでくれたらいいな…。

本編の説明シーンがきっちりちゃんと御仕事してたので、最後の設定説明コーナーがやることなくなって復習タイムになっていて。こんなアニメはなんだか珍しいなと。もちろんあのへん理解できないと、綾波君とメガネ君の力量の差が感じ取れないので、そこらへんの説明は大事だなと思ったり。

2014/10/21(火) [n年前の日記]

#1 [nitijyou] 体調悪い

どうも体がガタガタ震えてちょっとよろしくない感じで。

しかし親父さんが出かけて居ないので、代わりに犬の散歩を。途中で雨が降ってきた。なんかもう今日は色々とキツイ。

2014/10/22(水) [n年前の日記]

#1 [anime][neta] 妖怪ウォッチを見てる子供達をハートキャッチできるGレコってどんな感じなんだろう

某所を眺めてたら、某アニメ評論家さんが、「Gレコわけわかんない」「これじゃ妖怪ウォッチ見てる子供達は絶対見ない」と発言してたらしいという話を見かけて。「妖怪ウォッチを見てる子供達がハートキャッチされちゃうGレコってどんなGレコなのだろう…」と気になり始めたりして。

ガンダムで妖怪集めるとか? 直球過ぎてアウトか。

ガンダムでガンダムを集めるとか? 「あの森には珍しいガンダムが居るんだ」とかなんとか。

「ゼータガンダム! 君に決めた!」「ゼータゼータ!」。うむ、ポケモンなんですけどね。

妖怪ウォッチはドラえもんを参考にして考えたという話を聞いたことがある。ならば…。

アムロ「ねえ、ガンダム。セイラさんの気を引くにはどうしたらいいかな」
ガンダム「きみのようなネクラオタクが気を引けるわけないだろ。いさぎよくあきらめろ」
アムロ「ひどいこというなあ。君はボクの戦友じゃないか。力を貸してくれよ」
ガンダム「めんどうくさいなあ…(ゴソゴソ)…ビームサーベル!(パッパカパーSE)」
アムロ「…これで何をどうしろと…」

ガンダムさんかよ。

どういうガンダムなら小さい子供達も喜んで見るのかなあ…。ビルドファイターズは、ちとおじさん向けっぽい気配があるし…。いや、ダンボール戦機がウケてたらしいことを考えると、ビルドファイターズも子供さんにウケないかと想像してたのですが。なんだかそのあたり、アレだったという話も見かけたし。うーん。

ちなみにコレ、Gレコの固有名詞が一切書いてないのは、自分もGレコわけわかんなくて何かしら覚える努力を全て放棄してるからでして。おそらく何度も視聴して設定を理解することが前提の作りなのかなと思って眺めてますが。なんとなく逆シャアを思い出したり。アレも1回見て、「うむ! わからん!」で終わりました。まあ、Gレコは、「おじさんは見るな」という気持ちで作ってるらしいので、自分はこっそり盗み見してる、そんな気分で眺めております。1stガンダムの、子供の食事をちょっとアレしちゃったお爺さんみたいな。もっとも、パクッと食べてる感じじゃなくて、ペロッと味見してる感じ。

#2 [pc][neta] キーボード入力とフリック入力

ここ数日、「最近の若者のPC離れ」「若者はキーボード入力ができない」という記事をチラホラ見かけたのだけど。それらの記事に「またジジイ共が俺達を馬鹿にしてる」的な怒りのコメントがついてたりして。それを見て、なんだか興味深い現象だな、と思ったり。

どうせ、どの入力方法が主流になるかなんて世間の方々が空気で決めていくものだから、このあたりの話は結論も出ないし、当然オチもつかないのでアレなのだけど。とりあえず、なんか色々考えちゃったので、ひとまずメモ。ただの思考メモです。

誤解する人が居るかもしれないから先に書いとくけど。自分は、キーボード入力が廃れてフリック入力が主流になる未来もありえるし、キーボード入力が延々続く未来もありえるし、どうなるかわからん、と思ってます。

ハードウェアとしてどうか。 :

キーボード入力は、キーボードと言うハードウェアを使うし、フリック入力は、タッチパネルというハードウェアを使うわけですけど。
  • 文字入力すること“だけ”を目的として考え出されたのかキーボード。
  • 座標入力すること“だけ”を目的として考え出されたのがタッチパネル。
ハードウェアだけを見れば、文字入力しかできない専門バカが、座標入力しかできない専門バカに、入力速度の点で負けるとか追いつかれるってのは、まずありえないよなと。「キーボード入力のほうが速いよ」と言われたら、「そりゃそうだよ。それしかできない入力機器だよ? 遅かったら存在意義ねえだろ」って話になりますわ。

ちなみに、文字入力速度だけを見るとキーボードは勝つけれど、だからと言って「キーボード最強」とはならんわけで。だってキーボードで絵は描けないし。その点タッチパネルなら、絵も描けるし文字だって描ける。

要は、何の情報を入力したいか、何をやりたいか、何を優先するかで、入力機器の種類をその都度選んだほうがいいだろうと。餅は餅屋って話なだけですけど。

でも、座標入力しかできないはずのタッチパネルで、実際には文字入力できてるわけで。はて、なんでだろ。

そこはソフトウェアが頑張って、「フリック入力」を提供してくれてるから、ですわな。ハードウェアだけではできないことも、ソフトウェアと二人三脚することで実現可能になる。ハードウェアだけを見たら頭打ちでも、ソフトウェアの改良・改善・革命で、さらにレベルが上がる可能性はある。

そしてソフトウェアの改善は、別の入力機器にフィードバックできたりもする。「フリック入力も改良されてそのうち速くなる」なら、その改善点がキーボード入力にも反映される可能性もあるわけで。

なので、「フリック入力はそのうちキーボード入力より速くなる!」という反論?を目にした際、「その頃にはキーボード入力も同じソフトウェア技術を利用して、もっと速くなってるかもなあ…」と自分は思いましたです。特に入力支援機能はキーボード入力でも使えることが多いし。

マイ○○○。 :

そんなわけで、入力機器は色々な種類があるのだから、適材適所で選ぶべき、という話でしかないよなと思うわけですけど。しかし、おそらくは若い人から、「フリック入力を馬鹿にすんな」という声が上がる。なんだか妙だなと思ったり。ただの道具の話じゃん。何故そこまで怒るんだ。

もちろん、元記事が、「今時の若者はこんなこともできんのだ」てな悪意に満ちた記事になってそうなあたりが一番大きいだろうと思うのですけど。どうもそこだけじゃないのかもしれんと。

そこで飛躍して考えたのが、タッチパネル+フリック入力と言う文字入力スタイルが、今時の人にとっては自分のスタイルでありファッションであり自分自身である、という認識になってるのではないか、てなオレオレ仮説だったり。

昔、「マイコン」って言葉があったんですわ。「マイクロコンピュータ」の略とも、「マイコンピュータ」の略とも言われてますが。マイコンピュータ。私のコンピュータ。マイコンを持つことは当時の人達にとって夢だった。マイホームみたいなもんですわ。

今時の人にとってのマイコンって何か。ちょっと前はケータイだったし、今はスマホですわな。そして、スマホで文字入力と言えばフリック入力がほとんど。要は、スマホという「私専用のコンピュータ」で使える入力方法はフリック入力だから、フリック入力=私の文字入力スタイル=私自身の能力 ―― そんな感覚があるのかもしれんなと邪推したわけで。

誰だって、自分の何かを批判されたら怒るじゃないですか。「お前のアニメの趣味は悪い」とか「お前の顔はブサイクだ」とか「お前走るの遅いよな」とか。「私」を否定されると大体は怒る。

フリック入力は数ある入力方法の一つでしかないので、「フリック入力は遅いよ」と言われたら、「そりゃそうだよ。タッチパネルと言う汎用性の高い入力機器でソフトウェア使って実現してる文字入力だもん。モバイル用途を考えた時、キーボード持って歩かなくて済む分、手軽で便利で、だから普及した入力方法だよ。入力速度まで要求するとか、お前、馬鹿じゃねえの」と返して済むわけですけど。

だけど、「マイ入力方法」「私の入力方法」「私の能力」として無意識に捉えちゃってるもんだから、「私が否定された!」みたいな感情になるのかな、てなことを思いました。外してるかもしれないけど。

コレ、同じことを8bitPC時代もやってた気がするのです。NECのPC派、富士通のFM派、SHARPのMZ/X1派、色々ありましたけど。ユーザ間で、半分冗談、半分本気で、ある種の戦争が頻繁に起きてた。他の派閥から、自分の使ってるコンピュータの弱点を指摘されると、「私が愛してるこのコンピュータを馬鹿にすんな!」と怒っちゃう。…まあ、その怒りが元で、文字しか表示できないMZ-700でゼビウスやスペハリ作っちゃう無茶な人が出てきたりして面白かったんですけど。なので、そういう錯覚って悪いことばかりじゃないよな、そこから何か出てくることもあるし、そういう方向に行けばそれはそれで、とも思うんですけど。

まあ、そういう感覚があるのかもなー、と想像しただけの話で。実際どうなのかはわからんです。

キーボードは「古い」 :

自分はおじさんなので、コンピュータに情報を入力する手段が今まで色々考え出され、随分と変化してきたことを、一応ちょっとぐらいは知ってるわけですけど。

ちょっと書き出してみるか…。
  • 8+16個のスイッチをパチパチとON/OFFして2進数を入力するソレ。工業高校の授業でやりました。コレ、ゲンナリしますぜ。
  • 紙テープ。タイプライターみたいな機械でガッチャンガッチャンと紙テープに穴を空けて、でっかいコンピュータに読ませるのです。コレも高校の授業でやった。古い。古過ぎる。今時コレはねえ。と当時ですら思いました。
  • キーボード。さすがに8bitPCだって、いくらなんでもキーボードぐらいはついてます。
  • アナログジョイスティック。座標入力するのに使えないかと買ったんですが、使いづらくてガックリ。
  • デジタルジョイスティック。方向を入力する機器。ゲーセンのゲームは大体コレ。自分はコレでお絵描きしようと頑張ってました。
  • ジョイパッド。ファミコンについてた。親指痛い。
  • ライトペン。座標入力機器。雑誌の広告を見て、欲しいなあ、コレがあったらお絵描き楽だろうなと夢見てました。ちなみにライトペンの子孫が、スマホのタッチパネルだと思ってます。
  • マウス。大学生の時に出てきて、こりゃ便利だ、コレならお絵描きができると喜びました。
  • トラックボール。マウスは肩が痛くなるので、軽減できないかと一時期買いまくったり。
  • ペンタブレット。今ではコレなしではお絵描きできませんわな。
書き出すだけでウンザリ。他にも色々あるですよ。Webカメラ、Wiiコントローラ、キネクト、DTMなら鍵盤とかドラムパッド…。

しかし、考えてみたら、Windows95が出た1995年あたり、今から20年前に、マウス+キーボードという入力機器の組み合わせで世間一般は固定されちゃったよなと。最近ようやくタッチパネルが普及してきた感じだけど。

自分が子供の頃はマウスなんて無かったけど、今時の人が物心ついた時には、キーボードとマウスがついてるPCを目にしていたわけで。そこで最近タッチパネルが出てきたのだから…。単純に、キーボードを見たら「古い」と思うし、その「古い」入力方法を使えることをジジイ達が自慢してやがるぞケッ、みたいな印象になって当たり前かもなー、と思えてきたり。たぶん学校のIT教育でキーボード叩いた時も、「やらされてる」「なんで今時こんな古いやり方を」「スマホのフリック入力使わせろよ」と思ってそう。

でも、そこには見落としがあるよなと。それぞれの入力機器が何を目的として生まれてきたか、そこからして違うのだから、そこを見て判断すべきだよなと。「古い」「新しい」で即断すべきじゃないんだよなあ…。

自分も、紙テープ使った入力方法を体験して、「今時コレはない」「古い」と思ったけれど。何故そう思ったかと言えば、
  • 自分の部屋に帰ればマイコンあるし
  • 別の教室にはMZ-2000がずらりと並んでるし
  • これからは、一人一台でコンピュータを使える時代が絶対来るはずだ。ていうか、もうなってるじゃん。
  • バカ高いコンピュータを1台しか買えなくて、しかも性能が低くて端末動かせなくて、ソレを複数の人が交代して使うなんて状況は今後ありえんやろ
  • つまりここで学んだスタイルは現場ではまず役に立たん
  • 昔、高い金だしてこんな大掛かりなシステムを買ったから、その元をとらなきゃいかんと思ってこんな授業を今でもやってんだろうな
などと色々考えたから「今時コレは無い」「これは古い」と判断したわけで。単純に、パッと見で「古い」「新しい」と切り捨てたわけでは ―― 「キモイ」「カワイイ」みたいな浅い感覚で入力機器の是非を決めつけてたわけではないわけで。

でもなあ。自分のソレは、高校生の時の話だからなあ…。小学生の時にそういう授業があったら、まるでアニメを「おもしろーい」「つまんなーい」と即断するように、各入力方式を「カッコイイ」「ダサイ」で決めつけて、その後もずっとその印象を引きずってたかもしれない。

もしかすると、学校の授業でキーボードに触るようになった点も関係してるのだろうか。子供の頃に触ったものだから、「これは古い」「こんなものに価値は無い」と決めつけているところがあるのかも。子供の頃から身近にあるものって、不当に低い評価になりがちなんだよな。あって当たり前になってるから…。

そういえば、TVゲーム映像やハリウッド映画もそういう感じだなあ。おじさんが見ると魔法にしか見えないけど、子供達は「ふーん」だし…。いや、娯楽映像は利便性とか作業効率とか関係ないからまたちょっと違うか。

覚える数が少ないほうが勝つ。 :

キーボードで日本語を入力する際、かな入力とローマ字入力があるけれど。今はローマ字入力が主流なわけで。
  • かな入力は50個近いボタンの配置を覚えなきゃいけない。
  • ローマ字入力なら26個ぐらいで済む。
半分覚えれば打てるのだから、そりゃローマ字入力になるわと。キーボード入力って、キー配置を覚えさせるという体育会系なところがあるので、楽な方に流れてくのは当然。

フリック入力なら、さらに覚える数が少なくて済む。10+αで済むわけだから…。かな入力からローマ字入力になってきたことを考えると、同じ調子でフリック入力になる可能性もあるなと。覚える数が少ないほうが勝つ。習得が楽な方が勝つ。みたいな。

しかし、かな入力に比べると、ローマ字入力は1文字入力するのに2回キーを叩くわけで。これがもし、ガラケーで主流だったテンキー入力なら、最悪5回ボタンを連打しないといけない。

つまり一般的には、覚える数が少なくなればなるほど、1文字を入力する手間が増えるのですよ。そりゃ入力速度は遅くなって当然。習得をサボった分、別のところに皺寄せがくる。

それを考えると、フリック入力は結構バランス取れてる感が。自分、あまり使ってないからアレですけど、たしか1回叩いて1回スライドですわな。回数だけ着目するとイケてるよなと。

ただ、フリック入力は、目で見て操作しないと確実に入力出来てるか分からない点がアレですけど。タッチパネルは手触りも無いから誤入力も多いし。ガラケーをポケットに入れてテンキー入力はできたとしても、スマホをポケットに入れてフリック入力はかなり難易度が高いはず。文字入力で視覚を奪われるということは、打ってる文章を眺めて構成を考えるための視覚と脳処理のリソースを文字入力に奪われるわけで、文章作成作業に影響を及ぼすとも思えるし。結局はそういうところに皺寄せがきてるんだろうと。

そのへん考えると、覚える数の多さ少なさと、入力速度、そのバランスが取れてる方法が主流になるのかもしれぬ。と思ったりもするのです。ちょうどいいところで落ち着くだろうなと。

でもなあ。キーボードだって意味不明なQWERTY配置が主流になってしまったあたり、入力機器界隈は、合理的な理由で普及するわけでもないんだよなあ…。だから、今後どうなるかは読めんよなと。世間様の空気で決まるんだろうなと。自分はそう思うのでした。

2014/10/23(木) [n年前の日記]

#1 [pc] SDL2についてちょっと調べてるのだけど

導入ってどうすればいいんだ…。dllだけ解凍してどこかにおくのではいかんのか。

2014/10/24(金) [n年前の日記]

#1 [nitijyou] SDL2について調べてるけど

調べてるけど、やっぱり何が何だか。

2014/10/25() [n年前の日記]

#1 [nitijyou] 妙に気温が高い

夕方、犬の散歩をさせたら、外は羽虫だらけで。羽虫の雲の中を歩いてるような感じ。今日は気温が高かったから、一気に孵化でもしたのかなと。

2014/10/26() [n年前の日記]

#1 [nitijyou] 福島県自治選挙に行ってきた

お袋さんが投票に行くというので、車に乗せてもらって行ってきたり。

まあ、誰が当選するかは、どうせ既に決まってるんだろうけど。

夜のニュースを見て、まあそうだよね、と思ったり。

#2 [nitijyou] ペンキ塗り工事は終わったらしい

一通り全ての作業は終わったらしい。お疲れ様でしたありがとう、みたいな。

#3 [nitijyou] HDDレコーダが一杯になってた

ここ一週間ほど色々あって全くアニメを見てなかったのだけど。HDDレコーダの電源を入れたら「空き容量は全くありません」のメッセージ表示。確認してみたら本当に空き容量が0だった。

USB接続外付けHDDに、ライダー鎧武その他の録画を移動。まだ視聴できてないのだけど、いつ消化できるのやら…。

「M3〜ソノ黒キ鋼〜」なるアニメも録画してたけど、そもそも前半は放送されてなかったから全く見ていないし、総集編は見たけど何が何やらだし、最終回は別のアニメと放送時間が重なりまくっていて録画できなかったし。もう視聴は諦めることにして削除。

DR録画しかしてないので容量的に厳しくて。圧縮録画すればもうちょっと、とは思うけど、東芝製HDDレコーダはDR録画以外をするとフリーズするという噂があるから怖くて。

2014/10/27(月) [n年前の日記]

#1 [pc][nitijyou] 久々にブルースクリーンを目撃

気づいたら Windows7 x64機がブルースクリーンに。久々に見たな…。なんでだろ。

一応 memtes86+ でメモリチェックしてみたけど、2回ほどpassしたからメモリが壊れてるわけではナサゲ。

#2 [anime] SHIROBAKO、3話まで視聴

アニメ制作現場を舞台にしたアニメ。こういう作品とは全く知らなくて、再生開始早々、自分は大喜び。こういうのを見てみたいとちょうど思ってたので。

面白い。面白けど、見ていて心臓がバクバクしてくる。ドラゴンだの魔法使いだのが出てきてこれは勝てそうな気がしねえ、みたいなファンタジー設定よりも、仕事でとんでもない大失敗をしちゃうかもしれない、みたいな設定のほうが、はるかにドキドキハラハラして胃のあたりがキリキリしてくるなと…。

さておき。視聴者が知らない世界・業界を紹介していく作品は強いんじゃないかと常々予想していたのだけど、この作品を見ていて、やっぱりその仮説は当たってそうと思えてきたり。途中で、作業工程を示す図解が出てきて感心を。どれだけ大変な仕事なのか、ちゃんと伝わるなと。更に、泣けるシーン、感服するエピソードもあちこちに配してあって、作りとして本当に上手い。また、実際の現場はもっとギスギスドロドロしているのだろうけど、ドン引きされない程度にマイルドにしている気配もあって。それでいて監督自身がやらかした(?)過去の作品ネタも盛り込むそのサービス精神にも感服。作家はここまで自分の身を切り売りしないといかんのか、みたいな。何にせよ、絶妙のバランス感覚がそこにある、ような気がしたり。

とにかくこのアニメは素晴らしい。アニメオタクだったら絶対に見ておくべきじゃなイカ? と思いました。

できれば昔の中村プロのエピソードも混ぜてくれると…。日本刀振り回す社長の図を見たい…。もちろん該当カットでは、「この作品はフィクションです。実在の〜」テロップを表示して…。いや、せっかくマイルドにした雰囲気がブチ壊しになるから無理だけど。別のアニメになるよな。

考えてみたら、「日本刀を振り回す社長」ってフレーズから違うキャラ作れそう。
「君達下がってなさい」
「社長!」
「とうとうコレを抜く時が来ましたか…」スラッ
そうなったシチュエーションが全く想像できませんが。

#3 [anime] 暁のヨナ、3話目まで視聴

OPのタイトルロゴを映してるカットがめちゃくちゃカッコイイ。太陽とタイトルロゴ、それぞれの円の一部が重なって。更に、タイトルロゴの赤と、逆光でシルエットになってるヒロインの髪の毛の赤が重なって。しかもそこに流れてくる壮大さを感じる音楽。コレ、本当に少女漫画が原作なのかと思えるぐらいにカッコイイ。どうやったらこんな構図を考え付くんだ…。

2014/10/28(火) [n年前の日記]

#1 [anime][neta] 「ピコーン」「ビビビッ」

「オオカミ少女と黒王子」というアニメのED曲で、途中で入る「ピコーン」という音がお気に入りなのです。それまでの曲の流れを寸断するようにスパッと入ってくる音で、イイ感じのアクセントになってるよなと。また、映像も、ヒロインが胸に下げてるハート形のペンダントがフラッシュするカットになっていて、絵と音がピッタリ合ってて実に気持ちがイイなと。

そのあたり、もしかすると、異性を見てピーンと来た、の「ピーン」を音として入れてみた、てな話だったりするのかなと想像しているのですけど。

そこから思い出したけど。 _「ホアーッ」 の人がヒロインをやってたキャンパスライフアニメ *1 の最初のOPも、途中に「ビビビッ」という音が入ってたなと。それもおそらく、異性を見てビビビッと来た、の「ビビビッ」を音として入れてみたのかなと当時想像したのです。 *2

そういった、小説や漫画で見かける擬音を、アクセントとして曲に入れるのは面白そうだなと。 色々遊べそう。

しかしコレ、ピンクレディーのUFOの振り付けの、「山の上からUFOが出てくるイメージで、頭の上で手をヒョイっとやって『UFO』の声に合わせる」みたいなノリに近いのかもしれない。や、客を楽しませることができるならどれもOKだろうけど。
*1: タイトルど忘れしたけど、ググった感じではおそらく「ゴールデンタイム」だったような。
*2: 余談。当時の自分はその「ビビビッ」が下痢便の音に聞こえちゃって、毎回「うーん」と悩んでた記憶が。自分、どんだけ下痢ばっかしてるんだか。

2014/10/29(水) [n年前の日記]

#1 [nitijyou] 近所の池が埋め立てられていた

犬の散歩をしながら少し遠くまで歩いたのだけど、国道4号線の向こう側にある池がいつの間にか埋め立てられていて、その上に、子供向けの色んな遊具をずらりと揃えた公園が作られてた。いつからこんな状態に…。

お袋さんに尋ねたところ、随分前に埋め立てが始まっていたとのこと。知らなかった。

自分、なんとなく池が好きだったり。というか、水がある風景が好きで。しかし気付いてみれば、近所の池は軒並み埋め立てられているし、水がすっかり無くなっていたりで。ザリガニ釣りをしたあの池も、鮒を釣って遊んでたあの池も、今はもう影も形も無く。…周囲の田んぼが無くなって、家やアパートが立ってしまったから、もはや貯水池は必要ないのだろうな。

2014/10/30(木) [n年前の日記]

#1 [pc][nitijyou] 久々にドキュメントスキャナを使用

Canon DR-150 を発掘して数枚ほどスキャン。使い方をすっかり忘れてる。

2014/10/31(金) [n年前の日記]

#1 [anime] ローニャ、砦探検回を視聴

鳥女を空中から捉えるカットがイイ感じ。鳥女をfollowしてるだけなのに、空間の広さが感じられる。勘違いかもしれないけど、背景画をパースを意識して変形させてる? 以前バディコンプレックスの1カットでも思ったけど、大きい平面を3Dで配置してカメラを動かすのって、それだけでも高い効果が得られるのだなと。

湖の中を泳ぐローニャのカット。どうして色を変えなかったんだろう…。ゴロー監督、未来少年コナンを見返してないのかな…。ジブリの保田道世さんあたりから「アンタ、もっと色を上手に使いなさいよ」と、あのピリピリした調子で怒られそう。それとも透明度の高い湖だし浅いところを泳いでるから、そのままの色のほうが良いと判断したのだろうか。かもしれん。

なんてことのないカットのはずだけど、木の下に隠れてる時の表情がイイ感じ。偶然なのか意図したのかわからんけど、への字口についてるちょっとした影が雰囲気出してる。3DCGでもこういう微妙な表情を出せるのかと。下手すると、手描きの萌え系アニメより、はるかに表情が上手いのでは。でも、膨大な数のリグ?を操作して表情付けてるのだろうし、その作業風景を見たらアニメーターさん10人中10人が「手で描いたほうが早い」と言うのだろうなと。しかし手で描いたら、動画と仕上げの人を呼んでこないといけないわけで…。

砦内を探検するシーンが、完全にダンジョン探索。コレは面白い気がする…。こういうのを子供が喜んでくれたらいいのだけど。閉鎖空間から屋上に出た際の開放感。絶望的な高さを感じさせるシーンもなかなか。ゴロー監督のコンテは空間を感じさせるなあ…。父親譲りの空間把握能力を持ってそうな気配が。と思ったけどスタッフリストを確認したら3話以降はゴロー監督以外の人もコンテ描いてたのですな。そっちか? そっちの人が上手いのか? どうなんだろう。

そんな具合に結構楽しんで見ております。なんだか楽しみ方がおかしいような気もしますが。

#2 [anime] 四月は君の嘘、4話を視聴

演奏シーン、凄かった…。「坂道のアポロン」の演奏シーンも凄かったけど、コレもなかなか…。

やっぱり、音楽の力ってあるよなと。ちゃんと取り込めると強いなと。この回は、素晴らしい。

#3 [anime] サイコパス2期、4話を視聴

4話でいいのかな。たぶん4話だと思うけど。AKIRAの鉄雄がモブで出てくる回。

前々からなんとなく思ってたけど、やはり塩谷監督はグロ表現大好きっ子なのだろうなと。それが、大量虐殺大好きっ子の熊谷脚本と出会ってしまって、ブレーキが明後日の方に吹っ飛んでいった印象。これはもう公共の電波で流していいアニメじゃないなあ…。OVAでやろうよ。まあ、OVA市場が壊滅してるから、こういう事態になるのかなと思ったりもするのですが。

スタッフ違うと結構違ってくるなと。 :

思考メモ。

サイコパスの1期は、本広克行総監督+塩谷監督+虚淵シリーズ構成+深見脚本。

2期は、塩谷監督+冲方丁シリーズ構成+熊谷脚本。

布陣が変わったことで、作品の方向も変わったのかなと感じているのだけど、どうなんだろう。

アニメで管理社会モノ? ディストピアモノ? と言うと、自分などは「銀河鉄道999」「地球へ…」あたりを思い出しちゃうのだけど。その手の管理社会は、主人公が反逆して倒すべき対象でしかなく。そして、倒すべき対象に見せるためには、強大な悪として描く必要があり、故に、管理社会に対して、非合理性、凶暴性、残虐性、幼稚性、異常性、その他を内包させて「コレは倒さないといかんよな」と観客・視聴者に思わせるのが常で。

しかし、その社会の有り様を見て、観客・視聴者は疑問を持つわけで。「どうしてこんなアホ社会が存在してるの? ありえねえだろ」。ソレが存在することに説得力が無くてシラケちゃう。

で。管理社会云々に限らず、その強大な悪が存在する理由を説明して観客の疑問を補完するために、ラスボスキャラあたりがどうしてこういう状況を作ったのか言い訳を始めたりするのだけど。これがまた、中学生ですらもっとマシなこと考えるだろと思えるほどに、穴だらけ、ツッコミどころだらけの酷いロジックばかりで。いや、ロジックになってないのがほとんどですが。

てなわけで。その手のアニメを見ていると、十中八九、「アニメの脚本書く人って、頭悪い人ばかりなんだなあ…」「建前すら上手に構築できないのか…」と思ってしまうことが多かったのですよ。

ところが、サイコパスの1期は、そこらへんがちょっと違ってた印象で。

現実の日本社会でも、犯罪を未然に防ぐシステムの登場が望まれているわけですが。たとえば、
  • ストーカー被害にあった人が警察に駆け込んだら、警察はちゃんと動くべきだ。犯罪を未然に防がないと。
  • ネットに犯罪予告が書き込まれたら、たとえそれが冗談の書き込みだとしても、書き込んだヤツを逮捕すべきだ。犯罪を未然に防がないと。
  • 大人になってもアニメを見てるヤツは犯罪者予備軍だ。そのうち幼女を殺し始める。近所にそういうヤツが居たら注意深く監視しないといけない。犯罪を未然に防がないと。
等々。この社会は誰しもが、犯罪を未然に防ぎたいと願ってるよなと容易に想像できる。

1期は、そういう希望を叶えるシステムとしてシビュラシステムができました、という世界設定で。しかもオマケで、職業の適性診断までかなり高い精度でやってくれる。便利。快適。安心。一般市民様にとっては、間違いなく夢のようなシステム。まあ、娯楽作品だから当然のごとく、夢と一緒に悪夢もついてきますけど。

そのあたりの作りが、“既存アニメと比べたら”ちゃんとしてたほうなので *1 、常守監視官と言うキャラが ―― システムのカラクリを把握しつつも、その存在の是非の判断で葛藤してしまうキャラとして存在することもできたし、そのことで作品が(多少は)深みを持てた、とも言えるわけで。

しかし、2期はちょっと違うかもなと。シビュラシステムが、只の強大な悪として描写されるだけ。ソレが存在することに対してフォローがされてない感じがして。 *2

個人的には、そういうのはもういいよと。またかよと。頭悪い系の脚本は子供の頃から見せられてるからウンザリ。一工夫欲しいなと。これじゃ常守が只の馬鹿になっちゃう。や、わざと馬鹿に見せるためにやってんのかなとも思いますが。

1期がイクラの軍艦巻なら、2期はイクラの代わりに納豆が乗ってた印象。どっちも丸いツブツブだから同じだろと言われても…。納豆は二日に一度は食べてるからもういいよ。しかも臭うし。ってどんな喩えなんだ。

それにこのままだと、シビュラ倒して万歳三唱して…
  • で、続きどうするの?
  • 商品としてのシリーズ展開どうすんの?
  • 現代風のパトレイバー作るって話じゃなかったの?
  • それってつまり、その気になれば延々と続きを作れるタイトルを新規作成することを目的としてたんじゃないの?
  • このスタッフ、劇場版パト2でシリーズの息の根止めるつもりだった押井監督にでもなったつもりなの?
ってことになっちゃうし。倒さなければ倒さないで、強大な悪は残り続けるのです、てな結末で視聴者にはストレスしか残らないし。どうすんだコレ、と。

要は、シビュラは存在してないと困るし、存在していても困る。どうしよう困ったなあ、てな絶妙のバランスで描写せんとシリーズにならんだろと思うのですけど。2期はそのあたり、片方に寄せ過ぎてる感じがして。これで大丈夫なのかなー、と。

でも、まだ始まったばかりなので、後になってから「この展開を見せるためにアレをやったのか。構成上手いなあ」「これなら続きも作れますな。やりますなあ」と感心する場面が出てくるかもしれない、などとうっすら期待していたりもするのでした。さて、どういう展開になるのかな。

まあ、2期を作るのって色々大変なんだろうなー、スタッフ違うとノリも違うなー、と思ったという、ただそれだけの話でした。とっぴんぱらりのぷう。

*1: 「あれでちゃんとしてたって言うのかよ!?」と絶対言われるだろうけど、他のアニメはもっと酷いんだってばよ。
*2: 1期でそのへん見せたから2期はやらんでいいだろ、1クールしかないし、という判断かもしれませんが。

以上、31 日分です。

過去ログ表示

Prev - 2014/10 - Next
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project