目次

役に立たないお話

48.mp4のメタデータから作成日時を取り出す

pythonからffprobeを利用してmp4などの動画ファイルから作成日時を読み出す。データは協定世界時(UTC)なので日本標準時(JST)への変換も必要になる。create_timeデータが含まれないものはファイル名のUNIX時間、それもだめならファイルのタイムスタンプを使う。

47.UNIX時間から得た撮影日時をExifへ書き込む

Exifの撮影日時データがないファイルでも、1608975591739.jpgなどのファイル名から日時を取り出せます。最悪でもタイムスタンプから撮影日時を(無理なら保存日時を)Exifに書き込んで写真の整理に役立てようというお話。Debian11上のpython3を端末上で使う。Pythonのバージョンは3.9.2 pythonの使用例として、bashの変数展開した引数の使用、datatimeオブジェクト、ファイルのタイムスタンプの利用、Exifデータの読み書き、正規表現、pathlibによるファイルの読み込み、argparseによる引数の管理 などに触れている。

46..lzhファイルの展開で文字化け

日本語ファイル名のアーカイブは展開できなかったり文字化けしたりすることがある。unarでうまく展開できる。環境はDebianのGNOMEデスクトップ。jlha-utilsも使える。

45.awffullのDebian11機への移設

「08.アクセス解析(awffull)の導入」でDebian9機に入れたawffullの移設である。レンタルサーバーが提供している毎日のアクセスログを1,2週に一度ダウンロードして、ローカルなPCのawffullで月ごとの記録を取ろうといういうもの。

44.複数ファイルをsedで書き換える

sedを使って文字列置換と行の追加を全部のファイルにワンライナーでおこなった記録

43.awkでファイル名とタイムスタンプを変更するスクリプトを作る

スクリーンショットの名前から日時を取り出し短縮してファイル名を変更する。また、タイムスタンプも変更する。awkを使ってbashスクリプトを作り、それを実行することでたくさんのファイルを一度に変更することができる。

42.Unicode,TeX,MathJaxで空集合の記号に似た記号

TeXやMathJaxで\emptyset というコマンドでゼロに斜線の記号になる。Unicodeでゼロに斜線はU+2205の異体字(SVS)になっていて、本来の字形は○に斜線。TeXやMathJaxでこれを出すには\varnothing というコマンドを使う。調査の過程でギリシャ文字ファイの2つの小文字がUnicodeでは両方登録されているのに対してJISでは一つだけであり、例示字形が合っていないという問題を発見。ゼロの異体字にも触れています。

41.localなApache2でSSL通信(https)を使う

Debian 10.0(buster)のApache2で、SSL(https)を動かした。インストール時に自動的に作られているSSL証明書を使うとすんなり動いた。(2022-01-22)

40.pdfからjpgトリミング回転のまとめ

convertとexiftranの併用で一括処理する手順を改めて書いています。加えてOrientationやThumbnailを正しく持っている画像を exiftran, convert, GIMP がどの様に取り扱うかを検証します。(2021-07-11)

39.Exiftranによる画像回転とexiv2による訂正

convertではトリミングだけにしてexiftranで回転するのがよい。詳しく調べる道具はexiv2がよい。(2021-07-05)

38.画像のトリミングと回転などをコマンドで一括に

ImageMagickのconvertを使って多数の画像ファイルをトリミング、回転する方法を紹介。加えて変更前の残ったexif情報を頼りにする機器があって取り除かなければならなかったという話。(2021-06-23)

37.Juliaのバージョン

Juliaのバージョンによってdiagm()関数の動きが異なるというお話。(2021-05-30)

36.Juliaで行列の計算

たまたま Julia にひっかかったので、ちょっとメモを作っておく。行列の計算の補助に使いたい。(2021-05-22)

35.ubuntuのtexlive

lualatexを使うのにtexliveだけでは不足なものを探してインストール。apt searchを使って探す。(2021-05-01)

34.MathJaxとTeXで行列,長い式,色指定

MathJaxとTeXの違いを意識して最小限かつリーズナブルな移植を可能にする方針で、作業中に出会った課題ごとに解説。(2021-04-30)

33.MathJaxでウェブページに数式を入れる

Texの数式記述方法をほとんどそのままhtmlに持ってくることができるMathJaxも試してみる。その第一歩。(2020-11-18)

32.モバイルユーザビリティで問題検出-その2

再び、Google Search Console Team からメールが来た。コンテンツの幅が画面の幅を超えている等というが、かなり前から掲載しているページ。問題がないのでそのまま「修正を検証」させると、後日修正されたと報告された。(2020-10-25)

31.pdfの連結と回転にqpdfが便利

端末でのコマンド操作。qpdfで連結と回転・分割は満足できる操作性。poppler-utilsパッケージのpdfimages(-list), pdfinfo, も知っていると便利かも。(2020-10-16)

30.TeX 同じ一歩

第一歩と同じpdfを作成してみる。あまり変わっていない。uplatex か lualatex かという選択肢も同じ。(2020-10-14)

29.busterにtexliveインストール

Debian10(buster)にtexliveをインストールして何が入ったかを調べる。(2020-06-28)

28.モバイルユーザビリティで問題検出

Google Search Console Team からメールが来た。コンテンツの幅が画面の幅を超えているというのだが、もう一度チェックさせると、モバイルフレンドリーだと言う。(2020-06-12)

27.python3でexifを扱うパッケージのまとめ

PILの_getexif, exifread, piexif, GExiv2 による読み出しのまとめ(2020-06-12)

26.gexiv2によるexifの読み取り

gexiv2を用いたexifデータの抽出方法。Rationalを使った加工方法。 exifdataの変更と書き戻しについては、convertに任せる。(2020-05-22)

25.不具合か? exifread

ImageMagickのconvertを使って加工したファイルではMakerNoteが狂ってしまいまうことが判明。Eye of GNOME という GNOME デスクトップの公式画像ビューアーでは問題がないので、多分exifreadの問題と考えられる。(2020-05-12)

24.IfdTagクラスの内容(exifreadを使う)

exifread で取り出したタグの値から.valuesで得られるものは、str(文字列)またはlistです。 listの場合、大抵の場合要素は1つだけで、要素の型はintかexifread.utils.Ratioです。Ratioはfractionsまたはsympy.Rationalに似た仕組みで有理数(分数)を保持する仕組みです。(2020-04-20)

23.python3でexifデータを取り出す

PIL.ExifTags か exifread で取り出すことができる。それぞれ全部のタグを抽出する方法と特定の値を得る方法。(2020-04-18)

22.PHPで作る掲示板のような追記形メモ

入力した見出しと記事を画面に付け加えて行くPHPプログラムを作ります。(2020-01-23)

21.PHPのエラー表示とログの設定

各ページに置くコマンド(ini_set()など)を使ってエラー表示を一時的に出すようにし、また、ログの出力先を変更します。(2020-01-16)

20.PHPのインストールから簡単な動作確認まで

Wi-Fiルータなどで構成されるローカルネット内でIPアドレスでアクセスし、ドキュメントルートのhtmlファイルを表示するまでに必要なこと。ドキュメントルートの変更も説明する。(2020-01-15)

19.VirtualHostの追加

Wi-Fiルータなどで構成されるローカルネット内で、ウェブサーバーへ他のホストからドメイン名によるアクセスと、VirtualHostの追加をします(2020-01-14)

18.ローカルネットでノートPCをウェブサーバーに

Wi-Fiルータなどで構成されるローカルネット内でIPアドレスでアクセスし、ドキュメントルートのhtmlファイルを表示するまでに必要なこと。ドキュメントルートの変更も説明する。(2020-01-13)

17.Windows powershell は日本語表示に問題あり

chcpでUTF-8対応という話だったが、どうもおかしい。仕様書も見つけられないし振る舞いもあやしい。それに比べるとLinuxの仮想端末は立派になっていると思う。(2019-10-30)

16.ねむの木の開花の動画

1分ごとに撮影した写真からffmpegで動画をつくりました。小さく丸まった雄しべが広がって扇状になるのは感動的です。(2019-10-18)

15.Javaにおけるプリンタの検索と選択

ダイアログでプリンタを選択する方法は3つ。(2019-7-30)

14.Javaで表示するスクリーンを選ぶ

大きい方のディスプレイを使うようにプログラムしたい。(2019-6-21)

13.JavaのPrintServiceのメソッド

入門書であまり解説されていないgetSupportedAttributeValues()メソッド。これを使えばMediaSizeに登録されているのに、MediaSizeNameにない用紙を PrintRequestAttributeSetに指定することができるようになる。加えてPrintServiceの使えそうなメソッドについていろいろ試してみる。(2019-5-31)

12.Java SE API仕様のMediaSizeに関する間違い15年

タイトルを変更しました。旧題名は「PrintRequestAttributeSetにMediaSize指定を追加する?」です。Javaの本家の仕様解説文で、MediaSizeNameと書くべき所、MediaSizeと間違っていたという話です。一部はまだ間違ったままです。(2019-5-21)

11.中古Windows10機購入

Windows機は買わない方針と妥協して中古を購入(2019-4-13)

10.詐欺メールの可能性があります

Thunderbirdの警告の理由(2019-04-01)

9.awffullの調整

awffullでのアクセス解析。GeoIPの利用やHideReferrerでの参照元の調整をする。(2019-02-17)

8.アクセス解析(awffull)の導入

レンタルサーバーで提供されているアクセス解析がとても使いにくい。 そこで、別に提供されているナマのログをダウンロードして、webalizer後継のawffullで利用統計をlocalで取ることにした。(2019-02-14)

7.TeX 第一歩

Debian9(Strech)でaptでインストールして日本語の文章をpdfにしてみる。uplatexかlualatexコマンドを使うのが良さそうというところまで。(2018-12-19)

6.CUPSとJava印刷:用紙の選択

OSはDebian9(Strech)64bit、CUPS 2.2.1、プリンタはCanon MP493、javac 1.8.0_181 で用紙の選択がうまくできない問題を回避する方法(2018-12-10)

5.Firefoxのbuttonが小さくならない理由

幅を小さくすると文字がはみ出るようになっていた。background-image: none;で改善するが、角丸はなくなる。そのうち直るとは思うが。(2018-11-08)

4.固定IPを設定する

dhcpで使っていたDebianデスクトップのIPアドレスが頻繁に変わるようになったので固定IPにした。sambaでファイルサーバーとして使うようになって必要となった次第。(2018-10-30)

3.大きな整数の計算

2の64乗を整数で計算するのは今のプログラム言語では難なくできてしまう。(2018-09-14)

2.Bywater BASIC で動かすための改変例

N88-BASICのプログラムを Bywater BASIC で動かすための改変例です。(2018-9-11)

1.Linux上のBASICインタプリタ

いまさらBASICのプログラムを書こうと思ったわけではなくて、昔書いたN88-BASICのプログラムを読む前に動かしてみれば読む必要があるかどうかの判断が早いかとちょっと調べてみました。少ない改変で動かせるのは Bywater BASIC というのが結論。(2018-9-11)