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

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

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

Q&A

解決済

1回答

1177閲覧

VSCodeのVimで空行挿入コマンドを設定したい。

tkshp

総合スコア174

0グッド

0クリップ

投稿2018/08/27 03:30

編集2018/08/28 01:57

前提・実現したいこと

Visual Studio CodeのVimのプラグインで、コマンドモードのときに空行を挿入するコマンドを設定したいのですが、
その書き方をご教示いただけませんか?

また、こちらのサイトではスペース+エンターキーでその設定をしているのですが、
自分としては、SkypeやLINEはShift+Enterキーで改行処理となるので、
Shift+Enterキーで空行挿入処理を設定しようと思うのですが、おかしくはないですか?

該当のソースコード

こちらのサイトで、コマンドの設定方法が書かれていますが、
どのように書けばよいかわかりません。

Shift+Enterで、O+Escのコマンドが実行されるように設定したいです。

{ "vim.normalModeKeyBindingsNonRecursive": [ { "before": [ "u" ], "after": [], "commands": [ { "command": "undo" } ] }, { "before": [ "<C-r>" ], "after": [], "commands": [ { "command": "redo" } ] } ] }

追記

ご教示いただいてメモ。

keybindings.jsonの編集方法。

[ファイル]メニュー → [基本設定] → [キーボードショートカット] で、keybindings.jsonのリンクをクリック。
前に改行を挿入したい場合は、insertLineAfterじゃなくて、insertLineBefore。

[ { "key": "shift+enter", "command": "editor.action.insertLineBefore", "when": "editorTextFocus && !editorReadonly" }, ]

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

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

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

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

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

guest

回答1

0

ベストアンサー

こんにちは。
コマンドモードというかノーマルモードですね。
Shift-Enterをマッピングしようとしたらなんだかうまくいかなかったので、
手っ取り早く実現するならVSCodeの標準キーバインドのほうkeybindings.jsonに入れてしまう方法があります。

json

1{ 2 "key": "shift+enter", 3 "command": "editor.action.insertLineAfter", 4 "when": "editorTextFocus && !editorReadonly" 5},

こんな感じでどうでしょうか。


VSCodeVim側でも、本来ならこんな感じでマッピングできるハズなんですが……

json

1// settings.json 2"vim.normalModeKeyBindingsNonRecursive": [ 3 { "before": ["<Enter>"], "commands": ["editor.action.insertLineAfter"]}, // Enter単体ならマッピングできたけどS-Enterはできなかった(何故?) 4],

投稿2018/08/27 12:02

tamoto

総合スコア4103

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

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

tkshp

2018/08/28 02:33 編集

ご回答ありがとうございます。 ご教示いただいた内容を基に、自分もsettings.jsonで、 ["<Shift><Enter>"]や、["shift+enter"]などいろいろ書き換えて試してみましたがダメでした。 ご教示いただいたkeybindings.jsonで設定させていただくことにしました。 (これだと入力モード(挿入モード?)のときもキーが効いてしまうんですね。) ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問