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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Vim

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

Q&A

1回答

1475閲覧

vim開括弧を消すと閉括弧も消えるようにする。

strike1217

総合スコア651

Vim

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

0グッド

2クリップ

投稿2018/05/02 12:55

編集2018/05/02 13:55

vimの設定で困っていることがあります。

lexima.vimで閉じ括弧を補完する
こちらのプラグインを利用して、開括弧を入力すると自動的に閉括弧が入力されるようになっています。

これを、開括弧を消すと、閉括弧も同時に消えるようにするにはどうすればよいのでしょうか??

C++

1#include<iostream> 2 3int main(){[カーソル] 4}

こんな感じになっている時に、BackSpaceを入れると改行されている中括弧を消えるようにしたいということです。

色々と調べてみましたが、どれもできませんでした。
Vimで隣接した括弧の開き記号を消すと同時に閉じ記号も削除するスクリプト
easybracket.vim

SpaceVimでそのようなことが可能だったのでソース内を調べてみたのですが・・・そのような箇所が見当たりません。

どのようにすればできるか教えてください。

[追記]

C++

1#include<iostream> 2 3int main(){[カーソル]}

このように閉括弧が同じ行にある時は、開括弧を消せばできます。
しかし、閉括弧が改行されていると、できませんでした。

vimで逆改行ってできるのでしょうか??
BackSpace入力時に、特定の文字の地点で閉括弧を逆改行させれば、できるかもしれません。

逆改行で調べてみたのですが、出てきませんでした。

分かる方お願いします。

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

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

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

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

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

guest

回答1

0

お望みの機能とは違ってますが・・・

vim(vi)にはコマンドモードでどちらかの括弧へカーソルを置いた状態で

d%

とすると対応する括弧とそれに挟まれた部分を一挙に削除してくれますよね?これは使う人多いのではないかと思います。自分の場合これで間に合わせてたりしますが、これはどうでしょう?

もっとも質問者さんがおっしゃるように

  • {を入力
  • }が自動的に挿入される
  • BACKSPACEで両方消えてほしい

というケースが便利というのもよくわかりますが。


なおやりすぎは却って困るときもありますね・・・
'('とタイプするのに「うわぁ片側の括弧だけ入力するのがめんどくさ!」なんてことになると少々いらいらします。クォート文字', "を自動補完してくれるエディターを使っているときたまにそういう経験をします。自動補完もほどほどにというところでしょうか・・・

投稿2018/05/02 17:57

KSwordOfHaste

総合スコア18394

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

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

strike1217

2018/05/03 10:54

>なおやりすぎは却って困るときもありますね・・・ それはありますね。 スペルの補完機能とかもおせっかいな時がありますね。 >d% とすると対応する括弧とそれに挟まれた部分を一挙に削除してくれますよね? これは知りませんでした。 今度使ってみます。
KSwordOfHaste

2018/05/03 11:04 編集

viは移動コマンドとd, c, yなどの編集コマンドの組み合わせで様々なバリエーションを表しますよね。'%'は対応する括弧にjumpするコマンドなので上のような動作になるのですが・・・ 多くのGUIエディターは対応する括弧を自動的に強調表示してくれるのでviの'%'による移動は若干古臭い機能に見えますが、編集コマンドと組み合わせたコマンド動作は依然として「わかりやすくかつ便利」に感じます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問