viで、インデントされたソースを貼り付けるときに、前の行のインデントが次の行に反映されるため、実際のインデント以上に階段状にネストが深くなってしまいます。

これをviの一時的な設定で、元のテキストイメージのままのインデントで貼り付ける方法はありませんか?
ちなみに端末は、PuTTYを使っています。

回答の条件
  • URL必須
  • 1人1回まで
  • 登録:
  • 終了:2007/09/10 21:12:07
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:dev_zer0 No.1

回答回数332ベストアンサー獲得回数25

ポイント30pt

http://www.linux.or.jp/JF/JFdocs/vi-user-usage-7.html

まず、

:set

で現在設定されているviのオプションが表示できます。

viのインデントはautoindent

# vimの場合はsmartindentも設定されているかもしれません

上記の設定を無効にしたい場合はオプション名の前にnoを付与します


具体的にはautoindentを無効にしたい場合は

:set noautoindent

smartindentを無効にしたい場合は

:set nosmartindent

とします


コマンド操作後、:setで設定が変化していることが確認できると思います

変化していることか確認できたら貼り付けてみてください

id:P-mako

ありがとうございました。すばらしいです。

2007/09/10 21:08:00

その他の回答4件)

id:dev_zer0 No.1

回答回数332ベストアンサー獲得回数25ここでベストアンサー

ポイント30pt

http://www.linux.or.jp/JF/JFdocs/vi-user-usage-7.html

まず、

:set

で現在設定されているviのオプションが表示できます。

viのインデントはautoindent

# vimの場合はsmartindentも設定されているかもしれません

上記の設定を無効にしたい場合はオプション名の前にnoを付与します


具体的にはautoindentを無効にしたい場合は

:set noautoindent

smartindentを無効にしたい場合は

:set nosmartindent

とします


コマンド操作後、:setで設定が変化していることが確認できると思います

変化していることか確認できたら貼り付けてみてください

id:P-mako

ありがとうございました。すばらしいです。

2007/09/10 21:08:00
id:withgod No.2

回答回数32ベストアンサー獲得回数1

ポイント5pt

vimのオプションをオフにするか、cat使って書き込みます。

http://www.jp.redhat.com/support/manuals/rhl-gsg-ja-7.0/x7475.ht...

cat > ./hoge.txt[enter]

ここにペースト

[終点で Ctrl+CかD]

id:Kiske No.3

回答回数39ベストアンサー獲得回数2

ポイント15pt

http://www.kiske.info/blog/archives/2007/05/vim.html

コマンドモードで:aと入力したあとにコピペするとインデント維持したまま貼り付けれます。

id:P-mako

ショートカット(?)は便利ですね。

やや入力時の挙動に慣れないですが・・・

2007/09/10 21:09:36
id:noboru No.4

回答回数94ベストアンサー獲得回数0

ポイント30pt

http://q.hatena.ne.jp/ (URLはダミーです)

自動インデントされている状態でペーストすると余計にインデントが入るという意味でしょうか? だとすると下記のように入力すればできます。

:se noai

これでインデントは掛からなくなります。このあと i を入力してペーストし、ESC 後に

:se ai

とすると自動インデントされる状態に戻ります。

id:P-mako

すばらしいです。ありがとうございます。

2007/09/10 21:10:14
id:samejima No.5

回答回数92ベストアンサー獲得回数8

ポイント20pt
:set noautoindent

元に戻すには

:set autoindent

http://hp.vector.co.jp/authors/VA016670/unix/vi_reference.html

id:P-mako

ありがとうございます。

2007/09/10 21:10:21

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません