nDiki : Perl

Perl

Naney がよく使用しているプログラミング言語。 この nDiki を提供している DiKickerPerl で記述されている。

ちなみに ``Perlプログラミング言語を指し、``perl はその実装を指す(perlfaq1)。

ライブラリ

WindowsPerl

PerlGUI

2018年11月6日 (火)

今日のさえずり: 秋葉原って勤務地としていい場所だよなー。ヨドバシカメラあるし。

2018年11月06日

[ 11月6日全て ]

2019年2月14日 (木)

今日のさえずり: 間違いない、奴だ、奴が来たんだ! (月曜日の朝からくしゃみが出始めた)

[ 2月14日全て ]

2020年1月24日 (金)

Flickr Pro をやめることにする

2018年に $44.95(2年)で更新した Flickr Pro、来月の更新は $49.99(1年)かーと思っていら、一昨日に $59.99(1年)に値上げするというメールが……。

2005年2月に登録し、その年の5月には Flickr Proアップグレード。ここ最近はほとんどアップロードしなくなったけれど「nDiki 上の過去記事の多くで Flickr 上の写真を表示している」のと「Twitter に投稿した Flickr への URL をデッドリンクにしたくない」のとで Flickr Pro を維持してきた。

nDiki 上の記事の写真の移行が進んでいないのでもう1回更新かなあと思っていたのだけれど、さすがにこの金額はもう無理。2月4日の更新前に移行作業をやりきることにした。

写真をエクスポートする

Flickrアップロードする写真自体は全部ローカルにあるので失っても問題ない。

だけれど Flickr (Pro) をやめることで写真削除となった時に、Flickr 上でのフォト ID に対応する写真がどれだったが分からなくなるのは困る。ということで Flickr からまず写真をエクスポートすることにした。

Account settings ページの「Request my Flickr data」でまずダウンロードリクエストを行う。準備ができるとダウンロード用のリンクがそこに表示される。

自分の場合は「Account data」の ZIP ファイルが1つと「Photos and videos」に ZIP ファイルが7つできた。

前者はメタデータなどが入っており、後者には写真動画ファイル(以下写真ファイル)そのものが入っている。全部で 3,052 写真ファイルだ。

写真ファイルの名前を「<フォト ID>.拡張子」にする

写真ファイルのファイル名に微妙にタイトルが入っていたり入っていなかったりと統一されておらず扱いづらい。幸い必ずフォトID(7桁以上の数字列)が含まれていたので、リネームスクリプトを Perl で書いて「<フォト ID>.拡張子」に変換した。

画像を回転する

www.naney.org に転送してそのまま nDiki に貼れるように Exif Orientation をみて画像を回転させる。

 jhead -autorot *.jpg

画像をリサイズする

nDiki では画像ファイルの画像サイズは長辺 1,200px ピクセル以下にするようにしている(記事)。長辺が指定サイズより大きい画像ファイルだけをまとめてリサイズできる Th-MakerX

を利用した。

www.naney.orgアップロード

出来上がったファイルを1つのディレクトリに入れて www.naney.orgアップロード(同期)。これで Flickr 上にあった写真(を調整したもの)を www.naney.org 上に置くことができた。

nDiki の過去記事で Flickr 上の写真を表示させているものをいくつか編集して www.naney.org 上の写真を表示するようにしてみたところうまくいっている感じ。

思ったより早く移行できちゃうかも。

[ サブスクリプションサービス ]

[ 1月24日全て ]

2020年1月25日 (土)

さよなら Flickr

nDiki 上の過去記事の多くで Flickr 上の写真を表示している」のと「Twitter に投稿した Flickr への URL をデッドリンクにしたくない」のとで Flickr Pro を維持してきた(記事)のだけれど、繰り返す値上げにはついていけないのでやめることにした。

Flickr からエクスポートして www.naney.org にアップロードするところまで昨日できたので、 nDiki 記事中に表示しているところやリンクしているところを書き換えたり削除したりする。

nDiki 記事中の表示を差し替え

レイアウト崩れがないか確認しつつと思って最初は画像指定を手作業で書き換えていたけれど、時間がかかりすぎそうなので Perl スクリプトを書いて一気に書き換えた。記事データがただのテキストファイルnDiki はこういう時の処理が簡単で良い。

アルバムは削除

アルバム(フォトセット)は16個あったのだけれど、どれも残さなくてもいいかな。必要になったら Google フォト上にでもまた作ればいいかと。

いくつかのアルバムは nDiki 記事からリンクしていたので、それを削除しつつアルバムを削除。

Tweet アーカイブ中のリンクはいったん後回し

自分の Tweet まとめ記事にある Flickr 写真へのリンクはデッドリンクになる。短縮 URL を展開すればフォト ID が割り出せると思うけれども、いったんこれは放置でもいいかな。

Flickr から写真を削除

解決すべき Flickr 依存が無くなった。 Flickr Pro から Free に戻った時点で Free の上限 1,000 を超える写真の扱いがどうなるか良くわからないので、すぱっと全削除しておく。

Flickr の Camera Roll で最初の写真を選択後、最後の写真を shift + クリックして全選択し、削除。

Flickr Pro キャンセル

最後に Account settings で Flickr Pro をキャンセル。

終わった。

Flickr 今までありがとう。

[ サブスクリプションサービス ]

[ 1月25日全て ]

2021年8月13日 (金)

Next.js で nDiki を作り直そうと考えて引っ込めた

Web サイトの移行の話が出た流れで、この Web 日記についてちょっと考えたりした。

Perl で書いた自作の日記システム (CGI プログラム) で問題なく動いているが、手を入れずに使い続けているので将来環境(Perl やライブラリ)のアップデート時にハマるのではというのがあると、このまま記事が増え続けた時に問題が起きるのではというのがあり、気掛かりではある。

配信環境に依存しないように静的サイトジェネレータで生成する形に変えたらいいのではと、以前から思ったりしている。

ちょっとしか使ったことがない JavaScript を学ぶ機会としても Next.js とかどうかなとちょっと調べてみた。

個別記事ページを静的ページとして生成するのはいいとして、自動リンク機能で実現しているキーワード別ページとそのページングがちょっと厄介そう。やれるとしても今の URL 体系も一部変えなければいけないな。

今の日記システムに手を入れるのを再開して、 Markdown 対応させるのが先かな。

[ 8月13日全て ]

2022年3月26日 (土)

convmv でファイル名をまとめて NFC Unicode 正規化する

convmv を使うとファイル名をまとめて NFC/NFD Unicode 正規化できる。

Perl スクリプトで 内部的には Unicode::Normalize::NFC と Unicode::Normalize::NFD を使って正規化しているので UTF-8-MAC にできるわけではないようだ。

インストール

 $ brew install convmv

正規化する

カレントディレクトリ以下にあるファイルのファイル名を再帰的にチェックし NFC Unicode 正規化されたファイル名にリネームする。

dry-run

 $ convmv -f utf8 -t utf8 --nfc -r .

で変換されるファイル名を確認。問題なければ

 $ convmv -f utf8 -t utf8 --nfc -r . --notest

で実際に実行する。 NFD Unicode 正規化した場合は --nfc の代わりに --nfd を指定する。

[ 3月26日全て ]

2022年7月28日 (木)

Perl で $0 を上書きして ps の表示を変える話

Perl で $0 を上書きして ps の表示を変えてみたという話を聞いて、懐かしいなと思って Web 日記を確認したら自分も2004年にやってた(記事)。

Perl 面白いよね。

今日のさえずり: 懐かしいなと思って Web 日記を確認したら自分も2004年にやってた

[ 7月28日全て ]

2022年8月23日 (火)

今日のさえずり: Perl パッケージ名が時たま絵文字コードと解釈されているのが微笑ましい

[ 8月23日全て ]

2022年8月31日 (水)

さくらのレンタルサーバのサーバ移設

2022年2月16日からさくらのレンタルサーバで新サーバの提供が始まった。「SSD化をはじめとした機材の刷新を行い、表示速度および処理能力が従来の最大5倍」になったという。

IP アドレスが変更になるので提供されている新サーバへの移行ツールは使わず、今日のメンテナンスによるサーバ移設に任せることにした。

OS アップデートを含むサーバ移設につき、ユーザー自身でビルドしたものは動かなくなる場合があるとのこと。自分でビルドした Perl 上にモジュールをインストールしその上でこの nDiki のスクリプトを動かしているので、メンテナンス明けに動かなくなっているかも。その場合は新サーバ上でビルドし直しだなと思っていたのだが、幸い問題なく動いていた。Unison もそのまま使えているし、すんなり移行できたようだ。

良かった良かった。

[ 8月31日全て ]

2023年6月12日 (月)

今日のさえずり: 久しぶりに Get The Perl T シャツ着てきた

[ 6月12日全て ]

About

Naney Naneymx

Naney (なにい) です。株式会社MIXIで SNS 事業の部長をしています。

※本サイトの内容は個人的見解であり所属組織とは関係ありません。

Process Time: 0.045135s / load averages: 0.12, 0.22, 0.24