mieki256's diary



2019/09/18(水) [n年前の日記]

#1 [python] Python + curses で時間表示をするスクリプトを書いてみたり

Python + curses で、時間を表示するスクリプトを書いてみたり。環境は Windows10 x64 + Python 2.7.16 32bit。

curses_timedisp_ss.gif

_curses_timedisp.py

Windows + Python 2.7.x 上で動作させるには、curses-*-cp27-cp27m-win32.whl のインストールが必要。

_Python Extension Packages for Windows - Christoph Gohlke

curses は、端末画面上で表示位置を指定して文字列等を描画できるライブラリ。

テキストの描画しかできないので、MZ-700 (8bit PC) + BASIC を使ってプログラムを書いてた時代を思い出した…。あの時代にBASICプログラムをせっせと書いてた人達なら、Python + curses を使って何かしらをサクサクと作れたりしそうだなと。

分かった点をメモ。 :

window.border() を使うと画面端に枠を描画することができる。けれど、DOS窓(コマンドプロンプト、cmd.ex)やConEmu上では右端の枠が妙な表示になってしまったので、使用を諦めた。日本語フォントを使うとずれるのだろうか。よく分からず。

curses.BLOCK を指定すれば、ブロック状の文字を指定できるはずなのだけど。DOS窓やConEmuでは、たしかにブロックっぽい文字が表示されたものの、VMware Player + Ubuntu Linux 18.04 上では「#」になってしまった。仕方ないので、curses.CKBOARD を指定して、チェッカーボードパターンっぽい文字を表示。

他に何ができるかは、公式ドキュメントが参考になりそう。

_15.11. curses --- 文字セル表示を扱うための端末操作 - Python 2.7.16 ドキュメント

#2 [python] termdownを試用

前述のスクリプトを書いた後でググっていて気が付いたのだけど。端末上で、大きな文字で時間を表示するだけなら、termdown というPythonスクリプトを使えば済むらしい。

_trehn/termdown: Countdown timer and stopwatch in your terminal

pip でインストールできる。
pip install termdown
Windowsの場合、termdown.exe というファイルも、Pythonインストールフォルダ\Scripts\以下にインストールされた。

termdown 5 と打てば、5秒でカウントダウンができる。

termdown_countdown_ss.gif

現在時刻を表示したければ、termdown -z もしくは termdown --time。

termdown_time_ss.gif

表示するフォントを変えたければ、termdown -f banner3 のように指定。指定できるフォントは、以下で紹介されている。もっとも、日本語フォントで表示していると _バックスラッシュ が「\」になってしまうので、使えないフォントばかり、なのだけど…。

_FIGlet - hosted by PLiG

termdown_font_ss.gif

qキーを叩けば終了できる。

以上、1 日分です。

過去ログ表示

Prev - 2019/09 - 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

カテゴリで表示

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


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

Powered by hns-2.19.6, HyperNikkiSystem Project