minicom の右枠線がズレる問題へのパッチと gdb の話
minicom の全角対応
先に Before & After のスクリーンショットを出してしまうと、こんな感じ。
関連する問題は、Debian Bug では、#821936 として報告されている。 [i18n] minicom does not live well with multicol characters
情報提供として、送っておいたがかなり前のバグなので、パッチが取り込まれるかどうか。
パッチの方針は、主に src/window.c の中での gmap の取り扱いをなんとかすることで、全角文字については1つおきに使うようにするもの。
実のところ、このヘルプウィンドウが閉じたあとの、全角文字書き戻しに問題が残っている。上のスクリーンショットでいうと、画面左側にある CTRL A Zを押す の次の全角文字が元に戻らない。
Gdb の話
パッチの作成にあたって、というより、その前提となる現状の動作確認において、 gdb に助けられた。
- 知ってはいたものの今回始めて使った機能に、既存プロセスへのアタッチがある。
- gdb と minicom を別ターミナルで動かしたいので、
gdb minicomという起動方法は使えない。 - minicom を先に起動しておき、
gdb -p `pgrep minicom`とするのが楽。
- 今回は、それで間に合う箇所の動きが知りたかったため、大丈夫だった。
- 先にメッセージがつらつら〜と出てしまう部分の動作を追跡するには、また何か考える必要があるだろう。単純に run すればいいのか?
- gdb と minicom を別ターミナルで動かしたいので、
gdb が強力だとはよく聞いていたし、過去にオライリーの本も買っているはずだが、久しく使っていなかった。復習も兼ねて、よく使ったコマンドの羅列。
- print 変数名[,変数名] で、変数の内容表示。複数の変数も一度に表示できる。
- b ソースファイル名:行番号 でブレイクポイント設定
- b 関数名 でも関数入り口にブレイクポイントを設定できる。いちいちファイルのどこに書いてあるのかを確認する必要がなくて便利。
- watch 変数名 で、ウォッチポイント(変数の内容変化監視)設定
- i b でブレイクポイントの一覧表示
- d 単独で、ブレイクポイント、ウォッチポイントなど、一括削除。確認プロンプトあり。
- list で、現在地周辺のソースコード表示。前後各5行くらいか。
おまけ
- 単に Enter キーを叩くと、直前のコマンドを繰り返す。 step とか next とか。
- s (step), n (next) は、回数指定ができる。 s 7 とか。
- 使う場面: 文字列に文字が追加されるのを見ている時、あらかじめ文字数がわかっていて、文末の挙動まですっ飛ばしたいとか。
- cont にも使えると便利だと思うが、だめだった。
« Bluefish 関連ページ 復活 | トップページ | 春日井マラソン 2026 »
「パソコン・インターネット」カテゴリの記事
- wine で LINEを使う(2026.04.10)
- apt-cacher-ng と ftp.jp.debian.org(2026.03.25)
- minicom の右枠線がズレる問題へのパッチと gdb の話(2026.01.04)
- Bluefish 関連ページ 復活(2025.12.29)
- MDN翻訳ミートアップで、運営側は何をしているのか(2025.12.25)



コメント