• ベストアンサー

viの動作が異常

環境:FreeBSD4.3 FreeBSDサーバーに対して、windows98からtelnetでのリモートアクセスで 作業をしているのですが、おかしな事象が発生してしまいました。 viエディターで、ある文書を開きます。(例えばreadme.txt) その状態から、画面を下にスクロールさせるために下キーを押すとします。 すると画面が下にスクロールせずにアルファベットの「B」が入力されてしまうのです。 同様に上キーを押すと「A」が、左キーだと「D」が、右キーだと「C」が入力されてしまい、 どうにもなりません。 それ以降は「:q」を入力しても何をしても無視されてしまいます。 telnetを強制終了するしか、そこを抜け出す手段がなくなります。 こうなってしまったタイミングはわかりません。 気がついたらこんな状態でした。 コマンド入力とかは普通にできます。 「vi」の動きだけがおかしくなってしまったのです。 ちなみにこの事象が起きるのはリモート操作の時のみです。 直接UNIXマシンで作業をすれば、正常にviを使えます。 こんなワケのわからない状態なのですが、何か解決方法があるのでしょうか? すみませんがアドバイスをよろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • mph
  • ベストアンサー率54% (39/72)
回答No.5

おかしいですね。 手元の環境ではwindowsのteraterm proからtelnetでログインして環境変数をvt100に設定している状態では矢印キーも効きます。 試したのはPC互換機のwin2000でHHKの場合とノート(IBM ThinPad)win2000日本語キーボードの2つです。 利用しているtelnetクライアントソフトがなにか知りませんが、矢印キーを押したときに送信されるキーコードがfreebsdのターミナル設定(terminfo)で定義されている矢印キーのキーコードと一致していないだけかもしれません。 これを確認するために初めてviで矢印キーを使いました。普通はhjklでしょう? windowsで使っているtelnetクライアントソフトがなにか知りませんが、そいつのマニュアルとログインしているfreebsdマシンの環境変数(term)を確認するのが最初かとおもいます。 freebsdとnetbsdにログインして確認したところterminfoはありませんでした。失礼。 /usr/share/etc/termcapがあるのでman 5 termcapをみながらオリジナルターミナル設定ファイルを書けばなんとでもなるでしょう。

その他の回答 (4)

  • mph
  • ベストアンサー率54% (39/72)
回答No.4

winのtelnetクライアントが送信するキーコードがサーバもしくはviの理解できない(または変なエスケープシーケンス)になっているのではないでしょうか? ファンクションキーや矢印キーやテンキーはキーコードが別なのでそれが原因だと思います。 今、netbsdとfreebsdにteraterm proのsshプラグインとteratermでログインしたらそのような現象には遭いませんでした。 telnetクライアントを交換すればよいと思います。 もちろん、端末設定をサーバがわにする方法もありますが、terminfo書けます?わたしはかけません。 あと、キーボートも多少関係するかもしれませんね。 今、HHKです。

masamisss
質問者

補足

telnetする端末が違っても結果は同じなんですよね。 クライアント側から操作する限りは。 ということはサーバー側の問題なんでしょうか。 ということはterminfoとかいうのをいじらなければならないんですか? そんなもの見たことも聞いたこともありません(^_^;

回答No.3

私も似たようになることがあります。 矢印キーはなったことはありませんが・・・ SSHでログインしているとまずテンキーがまったく使えません。(Viの時だけ) :q もつかえなくなるときがあります。 :q! で対応できるときもありますが不確実です。 ご存知かもしれませんが!を付加してあげれば強制的に終了になります。又書き換えもW!とすればリードオンリでも書き換えできます。 私が推測したことはキーボードの設定が違うことからうまく認識しないのでは?ということです。 何も解決策がでなくて申し訳ないです。

noname#1891
noname#1891
回答No.2

私は、PCからtelnetでAIXにつなぐときになったことがあります。 上下などのボタンを押す前にESCキーを押せば使えました。 (理由はわかりませんが。)

masamisss
質問者

補足

ESCキーを押した後、上下左右ボタンを押しても 結果が同じなんですよね。。すみません。

  • mixi
  • ベストアンサー率40% (143/356)
回答No.1

こんにちわ。 私はSolarisマシンへコンソール端末から接続した際になりました。この時はコンソール端末のせいでした。別のコンソール端末なら問題が無かったのですよ。 矢印キーの変わりに、HJKLの各キーでカーソルが動きます。これはどうでしたか?

masamisss
質問者

補足

HJKLの各キーなら上下左右の移動が可能です。 これらのキーに慣れるしかないんですかねぇ。。。 ちなみに、別のコンソール端末でも同様の事象が起きてしまいます。

関連するQ&A

  • Windowsでtelnet経由のviを使用した場合

    Redhat9にWindows2000よりtelnet接続しviを使用しています。 長文(1画面に収まらないもの)を編集する際のことでお尋ねします。 カーソルを下に移動して、そして、カーソルが画面の一番下に達した時、Redhatのターミナルでのviでは画面全体がスクロールする(下に新しい行が追加されると上の行が消える)のですが、Windowsのtelnetからのviだと、最下行のみ新しい行に置き換わって残りの上部の行はそのままで残ります。 これは仕様なのか何か設定が悪いのかどうなんでしょうか?

  • viでの日本語入力

    ホストにあるUNIXに接続して、 プログラムを書いたりしたいのですが、 viエディタを使ってすると日本語入力がうまくいきません。 telnetで接続して、 viエディタを起動させて、 日本語を入力すると文字化けを起こしてしまいます。 receiveの設定もtransmitのコード設定も間違っていないはずなんですが、 ほかに原因がわかりません。 muleを使うっていう方法もあるのですが、 個人的にviが使いやすいので、なんとかviでやりたいです。 ほかに原因が分かる方教えてください。

  • TeraTermからViエディタを使用するとDelete、BackSpaceキーがきかない

    すみません、 TeraTermでTelnetでサーバーにログインして Viでプログラムを修正しようとしてるのですが、 急にDelete、BackSpaceキーがきかなくなりました。 普通にUNIXコマンドではDelete出来ます。 TeraTermのKeyboadの設定でもTransmit DEL by の設定で Delete、BackSpaceはチェックしてあります。 よろしくお願い致します。

  • Tera Term でvi のスクロールが思ったとおりにならない

    ubuntuに立てたtelnetdにWindowsからTera Termを 使用して、遠隔ログインしています。 viでソースを開いて、Ctrl + E, Ctrl + Yとしても 思ったとおりにスクロールしてくれません。 具体的には、Tera Termのスクロールバー内の四角はちょこっとづつ 上に行ったり、下にいったりするのですが、画面自体は 動かない。といった状況です。 しかし、そのちょこっとづつうごいているスクロールバーの 四角がスクロールバーの一番上、または一番下に達すると 期待した通り画面がスクロールします。 これはどこを設定したら、うまく動くようになるのでしょうか?

  • マウスホイールのスクロール異常動作

    タイミングが不明ですが、マウスホイールでのスクロールの動きがおかしくなりました。 ・環境  WinVista64bit  BUFFALO BSKBW02 光学式マウスです ・異常動作とは ホイールを回転させると、起動しているソフトのウインドウ内が上下に震動したような動きをします。 下に動かすと下に動くものの、次の瞬間には上に跳ね上がる状態です。(逆もしかり) プルプルスクロール…とでも言えばいいのでしょうか。 普通にスクロールできない状態で、上も下も気持ちそっちへスクロールしつつ、反対に戻る…という動きです。 スクロールバーで左ボタンを使用し、ドラッグ&ドロップで画面スクロールする場合は特に問題ありません(グラフの問題ではない?) IE・Word・メモ帳等、全てのソフトで動作異常が発生します。 かなり困っています。宜しくお願いします。

  • FreeBSDでリモート端末からのキーボード配列の変更

    FreeBSDのホストにTELNETでリモート端末からログインしたときに、使っているキーボードの配列を変更するにはどうしたらいいでしょうか? kbdcontrol -k device -l keymap のコマンドを使い、試しているのですが、device の指定方法が分かりません。 keymap は、us.unix.kbd を指定したく、/dev/console からこのコマンドを実行すると望みのように設定されます。 TIA

  • PCのキーを押しっぱなし状態にする方法

    固定キー機能というのでしょうか、パソコンのあるキーを押しっぱなし状態にしたいのですが、どうすればよいですか? 前回の質問と関連しているのですが、画像一覧のページを下にスクロールしていると、途中から画像の表示更新が遅くなり時間がかかります。なので、パソコン上で別の作業をしている時にページを最後までスクロールしておきたく、下矢印、またはEndキーなどを押しっぱなし状態にしたいです。画面上にそのページが表示されていない別作業中でも押しっぱなし状態を継続したいのですが、方法があれば教えてください。 なお、windows10、ブラウザはgoogle chromeです。

  • viエディタのexモードで「:i」と入力したら他のモードに戻れなくなった

    CentOSを使っています。Linux初心者です。 viエディタでexモードに移行した後、誤って:iと入力したところ、 一見入力モードのような状態になってしまい、 Excキー他、何を入力してもコマンドモードに戻れなくなりました。 (Excキーを押すと"^["と入力されます) この現象の原因や対処法をご存知の方、ぜひご教授願います。

  • 特定キーのみShiftキー同時押しが利きません

    ノートPC(Vista)を使用しています。 いつ頃からかは覚えてないのですが、特定キーについて[Shift]キーを押下しながらの文字入力ができなくなってしまっています。 全パターン試してはいないのですが、アルファベット入力(A~Z)においては、c, m, v, x の4文字が[Shift]キーを押下しながらの入力が利かない状態になっています。 通常のアルファベット入力において、大文字入力をしようとしていたら、上記4文字のみ大文字入力([Shift]キーと同時入力)ができない状態です。 (→CAPS LOCKすれば、大文字入力は可能です。が、[CAPS LOCK]キーも[Shift]キー押下しながらの入力が利かなくなってしまっています。) 外部キーボードをUSBで接続してみても、事象は変わりませんでした。 色々試していたところ、上記4文字について[Shift]キーを離した直後に入力することで大文字入力できました・・・(CAPS LOCKについても、[Shift]キーを離した直後に押下することで有効になりました) 事象から察するに、何か特殊な設定が入ってしまったのではないかと思うのですが、解決の糸口がつかめていない状況です。 本事象について[Shift]キーと同時入力ができるようにする方法をご存じな方がいましたら、ご教授いただけないでしょうか。 また、その他調査した方がいいようなことなどありましたら、アドバイス頂けると助かります。 よろしくお願いいたします。

  • キーボードの動作が変なんです。

    ちょっと前に、千円代の日本語キーボードを買って使っているのですがどうも動作がおかしいのです。 アルファベットや数字は普通に入力できるのですが記号などの入力がうまくいきません。もっと具体的にいいますと、@マークを打つためにはなぜか、最上段の数字列[2]キーをShiftキーを押しながら打たなければ入力できません。[@]キーを打つと別の記号が入力されます。ほかの記号に関しても、配置がバラバラな感じて非常に使いにくい状態です。といっても、もうだいぶなれてきましたけど・・・。 もし、原因の分かる方いらっしゃいましたら教えてください。