高見知英の技術ログ

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

プログラミング関連

tkinterで表示するダイアログをマウスカーソル位置に表示する

Pythonで簡単なGUIを表示する場合、標準モジュールで何も追加しなくても使えるtkinterが便利です。 tkinterには、tkinter.simpledialog.Dialogというダイアログを表示するためのひな形クラスが存在するので、それを使用すると割と簡単にダイアログを作ること…

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 実…

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

さてなんとなく他の方の記事を読んで「そういえば書いてないな」と思ったので。 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…

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

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

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

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

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

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

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…