- ベストアンサー
viエディタの使い方
困っています。素人さんです。 Turbolinuxを使っているのですがviエディタを使っている時に”BS”キーを使うと”^?”と出てきて機能しません。 当然入力モードにはなっています。 挿入モードでも置換モードでも同じです。 なんとかならいのでしょうか? よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
#1の方へのお礼に >.confファイルを編集しようとしても#を消すことすらできない状態です。 とあるので気になったのですが、 ひょっとして # の次の位置にカーソルを持ってゆき、 そこでそのままBSなり、挿入モード(テキストモード)に入ってBSなりしてませんか? 基本的に、BSでは現在の挿入モードで書いた文字しか消せません。 ですから、たとえば挿入モードで abcd と書いて、一旦ESCでモードを抜け、 そのまま a で挿入モードに入って efgh を入力した状態(まだ挿入モード)では、 現在の挿入モードで書いたefghまではBSで消せますが、 それ以前に書いたabcdはBSでは消すことができません。 ということで、ご所望の操作としましては、 カーソル移動モード(コマンドモード)で消したい文字(例では#ですね)の上へカーソルを持ってゆき、 そこで x を押せば、その文字を削除することができます。 その他、使い方は#3の方のご紹介URLが簡潔でわかりやすいと思います。
その他の回答 (3)
- toto2001
- ベストアンサー率30% (4/13)
あまり関係ないですけど、viの使い方がわかりやすく載ったページが ありますので参考までに。
- tailkuppa
- ベストアンサー率53% (52/98)
改行のみで正常です。 Unix のコマンドは、正常終了した場合はなにも言わないものが多いです。 "stty" だけで実行してみて、 出力結果に erase = ^H のような表示がありますか? ない場合は、うまく実行されていない気がします。 ちなみに、^H の入力は、 ~ と H を入力してください。コントロールH とかじゃなくて。 あとは、vi のコマンドですけど、 文字を入力するモードじゃないときに、x キーで一文字削除(del と等価)できます。 あと、dd (d を2 回連続)で一行削除できます。
- alicia-y
- ベストアンサー率40% (85/208)
vi を実行する前に stty erase '^H' を実行してください。 .login に入れておけば毎回実行しなくてもよくなります。
補足
早速のご返事有り難うございました。 とりあえずおっしゃったとおりに行ってみましたが現状変わらずでした。 #stty erase '^H' を実行すればいいのですよね。 実行してみましたが改行するだけでなんかメッセージが出ることもなく終わってしまいました。 とりあえずそのままviエディタを起動してみましたがやっぱり "BS" "DEL" キーはいうことを利きません。 .confファイルを編集しようとしても#を消すことすらできない状態です。 お手数ですがもう一度アドバイス頂けないでしょうか。 よろしくお願いいたします。
補足
ご返事有り難うございました。 早速言われたとおり行ってみました。 #stty speed 38400 baun; line=0; という結果でした。 これでお解りになりますか? よろしくお願いいたします。