Linuxコンソールは文字「q」をランダムに印刷します。

Linuxコンソールは文字「q」をランダムに印刷します。

私はLinuxコンソール(XのないデフォルトのTTY端末)を設定しようとしています。私はasciinemaでこの問題をキャッチしようとしましたが、興味深いことに、そこには現れなかったので、私のカメラでキャプチャしました。ビデオリンク

ただ現れるのではなく、[n]vim完全にランダムで、時にはコマンドラインに表示されます。フォントとはまったく関係がないとわかっています。以前このような奇妙な動作を経験した人がいますか?

編集する:

追加情報:ArchLinuxを使用していますが、OSのインストール方法に問題があるようです。過去には/usr/。この問題は後で発生しました。gnu-corepacstrap

トラブルシューティング:

私は試しましたが役に立ちresetませんでした。私はLC_ALL=en_US.UTF-8 nvim test.txtそれがLC_ALL=C nvim test.txtロケールにも関連していることを確認しようとしましたが、それも役に立ちませんでした。

答え1

手がかりは、行末の右上の文字にあります。 Linuxコンソールは、VT100ライン描画エスケープ(移動/移動)を部分的にサポートします。ロケールが正しく設定されていない場合(vimがどのバイトに有効な文字が含まれているかを混同する場合)、たとえば、バイナリファイルを端末に送信して代替文字セットモードにした場合、次のような奇妙な動作が発生する可能性があります。 。

端末環境変数が正しく設定されているとします。たとえば、次のようになります。

export TERM=linux

このresetコマンドは代替文字セットの問題を解決する必要があります(ただし、ロケールや端末の実際のエンコーディングには役立ちません)。

答え2

いいですね。問題の原因は次のとおりです。

ネオビームが提供するguicursorオプションX11内部でサポートされているグラフィック端末を使用している場合にのみ設定してください。ベアTERM=linuxttyではこのオプションはサポートされていません。

Neovimの代わりにVimを起動したときに問題が正常に解決されました。 Vimはこのオプションを提供していないので、私はそれを経験しませんでした。分離するのが難しいのは、Neovimを終了しても持続するという事実なので、これが一般的な問題だと思います。

関連情報