1772
コメント:
|
1648
|
削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 |
行 1: | 行 1: |
いろいろ | = 小物類いろいろ = 作りっぱなし置きっぱなし。 |
行 3: | 行 4: |
=== お手軽ストップウォッチ === 1秒未満の精度がいらないとき用。英語の課題でスピーチの原稿を書いているとき、時間が測りたくなって5分足らずで書いた。このとき`difftime()`の存在を初めて知った。 * `clock_t`と`clock()`を使って`(end - start) / CLOCKS_PER_SEC`の方が良かった気がする {{{#!highlight c /* stopwatch.c */ #include <stdio.h> #include <time.h> int main(void) { time_t start, end; puts("Enter to start:"); getchar(); start = time(NULL); puts("Enter to stop:"); getchar(); end = time(NULL); printf("%.0f sec.\n", difftime(end, start)); return 0; } }}} === セルフタイマー付きでスクリーンショットを撮る === 一定時間`sleep`した後、ImageMagickの`import`を使って画面全体のキャプチャをするだけ。 * すぐに制御を返すので、このコマンド自体のコマンドラインを隠せる |
== スクリーンショット == === タイマー付き、画面全体 === すぐに制御を返す。 |
行 48: | 行 22: |
=== クリックしたウィンドウのスクリーンショットを撮る === | === クリックしたウィンドウ === 実行するとマウスポインタが十字になるのでスクリーンショットを撮りたいウィンドウをクリックする。 |
行 53: | 行 28: |
* 実行するとマウスポインタが十字になるのでスクリーンショットを撮りたいウィンドウをクリック * GUIのファイラで見ることを想定して、`date`でファイル名を生成 |
== dwm用ステータスバー == 環境や起動の仕方によってはdwmが終了しても生き残る場合があるので、そのような場合は生存確認をする。 {{{ pgrep -aU $(id -u) dwm if [ $? -eq 1 ]; then exit 0 else sleep 30 fi }}} === バッテリ状態+シンプルな時計 === あまり画面に余裕のないラップトップ用。 {{{#!highlight sh #!/bin/sh while true; do b=$(acpi) state=$(echo $b | awk 'BEGIN{s=" "}/Discharging/{s="- "}/Charging/{s="+ "}END{print s}') remain=$(echo $b | awk '{print $4}'|tr -d '%,') xsetroot -name "$remain$state$(date +"%H:%M")" sleep 30 done }}} === 普通の時計 === 月日と曜日、時刻。 {{{#!highlight sh #!/bin/sh while true; do xsetroot -name "$(date +"%m/%d(%a) %H:%M")" sleep 30 done }}} |
小物類いろいろ
作りっぱなし置きっぱなし。
スクリーンショット
タイマー付き、画面全体
すぐに制御を返す。
クリックしたウィンドウ
実行するとマウスポインタが十字になるのでスクリーンショットを撮りたいウィンドウをクリックする。
dwm用ステータスバー
環境や起動の仕方によってはdwmが終了しても生き残る場合があるので、そのような場合は生存確認をする。
pgrep -aU $(id -u) dwm if [ $? -eq 1 ]; then exit 0 else sleep 30 fi
バッテリ状態+シンプルな時計
あまり画面に余裕のないラップトップ用。
普通の時計
月日と曜日、時刻。