前回の記事に引き続き、ヨーロッパ渡航の記録です。今回はその後編、ミュンヘンでの出来事を書いていきたいと思います。
前回はこちら → 初めてのヨーロッパ渡航記#1(アテネ編) | 為せばnull
お久しぶりです。先日、1週間ほどヨーロッパに渡航しておりました。具体的にはギリシャ・アテネとドイツ・ミュンヘンの2都市。せっかくなので、その時の出来事や感想などを述べていきたいと思います。
写真が多めなので2回に分けています。今回はその前編です。
USB 接続のワンセグチューナーを利用してラジオを受信するという、rtl-sdr なるものがあることを最近知ったのですが、それを Raspberry Pi 5 で実践してみました。今回はその過程を記録しておきます。
Raspberry Pi 5 環境の Ubuntu 23.10 にて、リモートデスクトップ環境 xrdp を入れたとき、音声出力ができないという問題にぶち当たりました。
サウンドの設定を見てみると、サウンド出力先に Dummy Output しかありません。
今回はこれを解決し、リモートデスクトップからでも音声を出力できるようにするまでの過程を記録しておきます。
前回に引き続き、Raspberry Pi 5 の話です。
前回:Raspberry Pi 5を購入しました
Raspberry Pi 5 を購入して早2週間、サーバとして利用するうえで色々と設定したり調べたりしなければならない点が多く、書きたいトピックが複数溜まっています。今回はその第1回目、OS のインストール編です。
ざっくりいうと、Raspberry Pi 5 には PWM 制御の CPU ファン機能があり、公式ケースを購入すると付属品として CPU ファンが付いてきます。普通は CPU の温度に合わせて回転数が変化するのですが、Raspberry Pi 5 に Ubuntu 23.10 をインストールしたらファンが全力で回り続けてしまいました。
今年2月に日本で発売されたばかりの Raspberry Pi 5 を先日購入し、昨日届きました。今回はその紹介記事です。使ってみた感想と、今度の運用プランについて軽く書いていきます。
長年愛用しているキーボード「Logicool K270」ですが、最近、Enter キーを押下した時に、押下されたまま浮き出た状態に戻らなくなってしまうことが多々起こるようになりました。
恐らく一人でイキって「カタカタカタ…ターン!」なんてことを繰り返していたからこうなったのでしょう。
今回はそんな Enter キーの修理記録です。
概要
当ブログは収益化していませんし、アクセス数が増えたところで一円も収入が入らないので、普段どれだけアクセスされているかという点についてはそこまで気に留めていませんでした。
ただ、最近興味本位で Google Analytics でアクセス解析を始めて、あまりにもアクセス数が一部の記事に偏りすぎており、おかしいなと感じておりました。
これは解析を始めて2日目の様子ですが、見ての通り、アクセスされているのは「GRUBがデフォルトで起動するOSを変更する」ばかりです。他の上位記事も2021年〜2022年の古い記事ばかりです。
クリック数も記事数の増加に反してずっと横ばいです。
標準入力から文字列を受け取るコマンドラインツールを開発しているとき、場合によってはパイプラインの存在も意識しなければなりません。
基本的にパイプライン入力は標準入力として扱われますが、入力がコマンドラインへの直接入力なのか、あるいはパイプラインからの入力なのかについて判定するにはひと工夫が必要です。判別する必要がないなら問題ありませんが、判別が必要な場合これでは不便です。
例えば:
パイプラインからの入力がない場合に、標準入力の入力待ちになるようなツールを作成したい場合。
この場合、標準入力からの入力は改行コードを以て1行分の入力として扱われる。
パイプラインからの入力があった場合は、全入力内容がパイプから標準入力へと入力される。
しかし、入力の境界は改行コードで判別されるため、パイプラインから入力された文字列の末尾が改行コードで終了していない場合、Enter キーの入力待ちになってしまう。
標準入力からの入力の場合のみ、1行ずつ対話形式で処理を進めるツールを作成したい場合。
パイプラインからの入力に対しても同様に1行ずつ処理が走ってしまう。
複数行まとめて処理させたいが、入力の境界がどこまでなのかが判別できない。
これまでは標準入力への入力を async-std などを使用して1~2秒程度待機し、「起動直後に複数行入力されている & 一定期間キー入力がない」といった状況の場合に、強制的に標準入力待ちを打ち切って処理を続行する、といった荒業で対応していました。
しかし、これを簡潔に解決してくれる便利なクレートがあったので紹介したいと思います。
前回の記事では、feature を用いてバイナリクレートとライブラリクレートの dependencies を分けました。
Rustでバイナリとライブラリでdependenciesを分ける | 為せばnull
今回はもう一つの手法として、dev-dependencies を用いる方法を書き残したいと思います。