高見知英の技術ログ

技術関係のログをQiitaから移行してきました。プログラミングのほか、使っているアプリの細かい仕様についてなど書いていきます。

Lazarus体験記

Lazarusという開発環境をご存知でしょうか。 Delphiのベースになった言語、Object Pascalの開発環境で、オープンソースで開発が進められています。 www.lazarus-ide.org 今回デスクトップで比較的高速に起動するアプリケーションを作る必要があり、とりあえ…

Let's EncryptのルートCA期限切れに対応する

昨日から、Pythonで作ったプログラムのurllib.request.urlopenがなにやら以下のエラーで失敗するようになっていました。 <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1129)> なんでだろう と考えていて思い立って気付いた結果が、Let's EncryptのルートCA期限切れ。 jp.techcrunch.com 最近のブラウザなどは大</urlopen>…

既存WebアプリにServiceWorkerを追加してPWAっぽくする(たぶん続く)

とりあえず途中まで進んだので記録。 表題の通り既存のWebアプリにServiceWorkerを追加して、PWAっぽく使えるようにします。操作対象は最近いろいろいじっている、CastBackgroundです。今回はキャッシュ処理とmanifest.jsonの設定だけします。 github.com 実…

Bootstrapを呼び出すとき、bootstrap.bundle.min.jsを呼び出したらbootstrap.min.jsは不要

ずっとhonokak使ってたのでハマった。だってコード例ないんですもの。 表題の通りですが、bootstrap.bundle(.min).jsは、bootstrap(.min).jsを内包しているようです。そのため、bootstrap.bundle(.min).jsを読み込んだらbootstrap(.min).jsの読み込み処理は…

pipenv installでエラーが出たら再起動を検討しよう

だいぶハマった。 久しぶりに触るプログラムでpipenv installやpipenv updateをすると、次のようなエラーメッセージが出てくるときがあります。 ValueError: invalid literal for int() with base 10: ... 一番最後に出てくるエラーはUnicodeDecodeErrorだっ…

プルリクエストがマージされた話し

さてなんとなく他の方の記事を読んで「そういえば書いてないな」と思ったので。 neko314.hatenablog.com 元記事ほど大きなプロダクトではないですが、こちらでもPyPDF3に行なったプルリクエストがマージされました。 github.com 問題概要 内容は「PyPDF3*1で…

PyWebViewのURLパラメータにHTTPサーバを指定したときの挙動について

結局ソースコードを追ってデバッグ実行してなんとか対応できた・・・。 PyWebViewというPythonのモジュールを使うと、HTMLをPythonデスクトップアプリのGUIに使うことができます。 pywebview.flowrl.com webview#create_window()というメソッドを使って生成…

stand.fmの音声に独自でBGMを貼り付けるツールを作った

表題の通りですが、先日stand.fm用に録音した音声に、独自に作ったBGMを貼り付けるツールを作りました。 github.com やってることはそんなに難しいことではなく… あらかじめBGMに使えるループ可能なBGMを用意する(1分程度) BGMと録音した音声をPythonのPydub…

PDFのサイズ=インチサイズの72倍ではない

はじめに言おう。**PDFは悪だ** まあそれはそれとして。ある日プログラムでPDFを作成する必要がでてきました。

ゲームサントラのトラック番号をディスクごとの値でなくサントラでの連番に変換するスクリプトを書いた

先日こちらを買いましてん。 ファイアーエムブレム 風花雪月 オリジナル・サウンドトラック(特典なし)アーティスト:VARIOUS ARTISTS発売日: 2021/02/17メディア: CD ゲームのサウンドトラックを買ったことがある方はわかると思いますが、これ、PCにリッピン…

CertUtilは巨大なファイルを処理することができない

とある事情によりファイルをBASE64エンコードする必要が生じました。いちいちソフトを入れるのは面倒くさいのでバッチファイルだけで処理できないかと探してみたところ、CertUtilというWindows標準のツールがBASE64変換の機能を持っているとのこと。 qiita.c…

PowerShellでPowerPointのスライドをセクション別のファイルに分割する

とある事情で、PowerPointの以下のようなファイルを、セクションごとに別々のファイルに分けることになりました。 セクション1 # →セクション1.pptxとして保存 スライド1 スライド2 セクション2 # →セクション2.pptxとして保存 スライド3 スライド4 スライド…

Pythonは複数変数に同時に値を設定できる

たいしたことではないですが覚えておくといろいろ役に立つのでメモ。 Pythonでは、関数の戻り値をtupleで得るなど、複数の値を1度に取得することがたまにあります。 たとえばtkinterでウィンドウの寸法を取得するには、window.geometry()で取得できる値を分…

NT札幌のイベントに参加してきました #NT札幌

一昨日12月26日(土)は、cluster上で行われたイベント、NT札幌に参加してきました。 当日は自分のオンラインイベント動画試聴会をやっていたので、その終わりにふとTwitterを見ていたのですが、ハッシュタグが気になってそのまま参加。こういうことが出来るの…

LogReporterについて

これは、エラー・ロギング Advent Calendar 2020 - Adventar25日目のブログです。 最終日はTkSugarに続き、わたしが公開しているモジュール、LogReporterについてお話ししようかと思います。 pypi.org

ログ出力の基本方針

このブログはエラー・ロギング Advent Calendar 2020 - Adventar18日目のブログです。 今回はプログラミングにおけるロギング処理について書いてみようと思います。 ロギングとは、プログラムの実行中にログを出力する処理。 1ファイルで完結する程度の簡単…

TkSugarについてもう一度

このブログは、はんなりPython Advent Calendar 2020 - Qiita15日目の記事です。 TkSugarというのは、わたしがつくったモジュールで、YAML形式のファイルを読み込むと、それに準じたTkのウィンドウを生成する というモジュールです。 github.com コントリビ…

stand.fmのカバー画像自動生成ツールについて

このブログは、【みんなのITもくもく会】自己紹介 Advent Calendar 2020 - Adventar8日目の記事です。 実はやってたstand.fm。わたしは基本的に、stand.fmはPCで録音して配信しています。 stand.fm stand.fmはスマートフォンでしか使えないアプリなのですが…

リージョンコメント使ってる?

このブログは、Visual Studio Code Advent Calendar 2020 - Qiita4日目の記事です。 さて、Visual Studioにあって、最近(といっても結構前だったと思いますが)から実装されている、リージョンコメントって使ってますか?#regionと書いた行から次に#endregion…

こちらでははじめまして みんなのITもくもく会に関わってきて思うこと

このブログは、【みんなのITもくもく会】自己紹介 Advent Calendar 2020 1日目の記事です。 こちらのカレンダーでは自己紹介と言うことで、何からはじめればいいか分かりませんが、とりあえずカレンダーのタイトルのとおり自己紹介ということで記事を書いて…

Foxit Readerで書き込んだ内容はAdobe Readerに反映されないことがある

さてさっそく。 わたしは最近、PDFリーダーにFoxit Readerというものを使っています。 www.foxit.co.jp Adobe ReaderにはないPDF上に矢印や自由なパスなど様々な図形を簡単に書き込む機能があり、結構重宝しています(書籍の編集さんにオススメされて、以来便…

技術情報をこちらのブログに移行しました。

ひとまず今までQiitaに書いていた技術情報のログをこちらに移行することにしました(既存の記事については、検討します)。 理由はいろいろありますが、Qiitaのポリシーが結構揺れているので、書いていいのかどうか分からない内容がときどきあること。コメント…