質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

Vim

VimとはUnix / Linux 系のOSに標準搭載されているターミナル上で動くテキストエディタです。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

保存

保存(save)とは、特定のファイルを、ハードディスク等の外部記憶装置に記録する行為を指します。

Q&A

解決済

2回答

484閲覧

vim 改行 削除 操作

PPAP_AWS

総合スコア105

ファイル

ファイルとは、文字列に基づいた名前又はパスからアクセスすることができる、任意の情報のブロック又は情報を格納するためのリソースです。

Vim

VimとはUnix / Linux 系のOSに標準搭載されているターミナル上で動くテキストエディタです。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

保存

保存(save)とは、特定のファイルを、ハードディスク等の外部記憶装置に記録する行為を指します。

0グッド

0クリップ

投稿2021/01/17 07:04

vim

1~ 2Test42 3~ 4~ 5~ 6~ 7~ 8~ 9~ 10~ 11~ 12~ 13~ 14~ 15~ 16~ 17test 1842 19~ 20~ 21test42 22 23~ 24~ 25test.42 26 27~ 28~

上記のように記載し、:wqで上書き保存し〜間を移動したいのですが、insentにしてから移動はできないのでしょうか。
各モードの使い方は理解したのですが、削除、保存したファイルの書き換えはどの様にすればよろしいでしょうか。

また、ファイルを消して、再度同じ名前で作り直したのですが、作った内容がコードの様に残ってしまっているのですが、
保存した後に再度vimを開いて前の作業を削除して1から描き直したいの対処法を教えてください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

まず、各モードがわかったのであれば

  • normal : カーソルの移動、文字の削除やレジスタからの挿入
  • insert : 基本は打ったとおりに文字を入れる、normalからは i や a などで入る

です。

なので、normalの時に移動操作するのが基本だとは思います。

なおinsertでの移動であれば、例えば

vim

1inoremap <silent> <C-n> <C-O>j

のようにすると Ctrl-n で一行下に移動したりできます。


一度古いファイルを削除して再度作りなおしたときに残っている、については環境がわからないためなんとも言えません。

普通はあまりそいういうことはないし、vimの本体設定でなるとは思えないですが...


保存した後に再度vimを開いて前の作業を削除、であれば、ggVGd などとしてバッファの中身を全削除するなどがあると思います。

投稿2021/01/17 07:40

tsuyoshi_cho

総合スコア189

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

PPAP_AWS

2021/01/17 08:13

ご返信あり御がとうございます normal : カーソルの移動HJKLだと思うのですが、 ノーマルモード時に打って見たのですが、動かないのですが、何が問題なのか、、。
guest

0

Vimはインサートモードでも上下左右キーでカーソルを移動出来ますが、

Vim流のファイル編集の思想として、
「履歴を作って.で複製する」を重視するので、
カーソルの移動は基本的にノーマルモードでやりましょう。

インサートモードの上下左右キーを使うと、
履歴が打ち切られるので.による恩恵をあまり受けられません。

とりあえずEscキーを連打しまくれば、
基本的にどんな状況でもノーマルモードに戻れるので、
困ったら「Escキー」を連打するようにしましょう。


上記のように記載し、:wqで上書き保存し〜間を移動したいのですが、insentにしてから移動はできないのでしょうか。

各モードの使い方は理解したのですが、削除、保存したファイルの書き換えはどの様にすればよろしいでしょうか。

ファイラを使いましょう。

Vimには標準でnetrwというファイラが付いてきます。
別にこのファイラは自由にすげ替える事が可能なので別のものを使えば良いです。
(興味があれば調べてみてください)

参考記事: vimの標準ファイラnetrwは普通に良さそうな話し - Qiita

ファイルの編集が済んだら:wで保存(終了を意味するqは使わない)
そしてファイラに画面遷移:Ex

私は.vimrcを編集してze:Exを実行するようにして居ます。
nnoremap ze :Ex<cr>


また、ファイルを消して、再度同じ名前で作り直したのですが、作った内容がコードの様に残ってしまっているのですが、

保存した後に再度vimを開いて前の作業を削除して1から描き直したいの対処法を教えてください。

  1. ggと入力してファイルの先頭にカーソルを移動
  2. dGと入力してファイル最終行までの全ての情報を消去

削除を示すdはオペレータと呼びます。
そしてdの後に続けて「何処までを対象とするのか」という情報が必要になります。
その「何処までが対象となるか」をモーションと呼びます。

参考記事: Vimのオペレーターとモーションについて

公式マニュアルのモーションでは
Gには「カウントの前置がなければ最後の行に移動します。」の意味があり、
一度ファイルの先頭にカーソルを置いてからdGを入力すると全ての情報を削除という意味になります。

投稿2021/01/17 08:48

miyabi-sun

総合スコア21203

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問