mirror of
https://github.com/zed-industries/zed.git
synced 2024-11-10 05:37:29 +03:00
222 lines
5.5 KiB
JSON
222 lines
5.5 KiB
JSON
[
|
|
{
|
|
"context": "Editor && VimControl",
|
|
"bindings": {
|
|
"g": [
|
|
"vim::PushOperator",
|
|
{
|
|
"Namespace": "G"
|
|
}
|
|
],
|
|
"h": "vim::Left",
|
|
"backspace": "vim::Backspace",
|
|
"j": "vim::Down",
|
|
"k": "vim::Up",
|
|
"l": "vim::Right",
|
|
"$": "vim::EndOfLine",
|
|
"shift-g": "vim::EndOfDocument",
|
|
"w": "vim::NextWordStart",
|
|
"shift-w": [
|
|
"vim::NextWordStart",
|
|
{
|
|
"ignorePunctuation": true
|
|
}
|
|
],
|
|
"e": "vim::NextWordEnd",
|
|
"shift-e": [
|
|
"vim::NextWordEnd",
|
|
{
|
|
"ignorePunctuation": true
|
|
}
|
|
],
|
|
"b": "vim::PreviousWordStart",
|
|
"shift-b": [
|
|
"vim::PreviousWordStart",
|
|
{
|
|
"ignorePunctuation": true
|
|
}
|
|
],
|
|
"%": "vim::Matching",
|
|
"escape": "editor::Cancel",
|
|
"i": [
|
|
"vim::PushOperator",
|
|
{
|
|
"Object": {
|
|
"around": false
|
|
}
|
|
}
|
|
],
|
|
"a": [
|
|
"vim::PushOperator",
|
|
{
|
|
"Object": {
|
|
"around": true
|
|
}
|
|
}
|
|
],
|
|
"0": "vim::StartOfLine", // When no number operator present, use start of line motion
|
|
"1": [
|
|
"vim::Number",
|
|
1
|
|
],
|
|
"2": [
|
|
"vim::Number",
|
|
2
|
|
],
|
|
"3": [
|
|
"vim::Number",
|
|
3
|
|
],
|
|
"4": [
|
|
"vim::Number",
|
|
4
|
|
],
|
|
"5": [
|
|
"vim::Number",
|
|
5
|
|
],
|
|
"6": [
|
|
"vim::Number",
|
|
6
|
|
],
|
|
"7": [
|
|
"vim::Number",
|
|
7
|
|
],
|
|
"8": [
|
|
"vim::Number",
|
|
8
|
|
],
|
|
"9": [
|
|
"vim::Number",
|
|
9
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"context": "Editor && vim_mode == normal && vim_operator == none",
|
|
"bindings": {
|
|
"c": [
|
|
"vim::PushOperator",
|
|
"Change"
|
|
],
|
|
"shift-c": "vim::ChangeToEndOfLine",
|
|
"d": [
|
|
"vim::PushOperator",
|
|
"Delete"
|
|
],
|
|
"shift-d": "vim::DeleteToEndOfLine",
|
|
"y": [
|
|
"vim::PushOperator",
|
|
"Yank"
|
|
],
|
|
"i": [
|
|
"vim::SwitchMode",
|
|
"Insert"
|
|
],
|
|
"shift-i": "vim::InsertFirstNonWhitespace",
|
|
"a": "vim::InsertAfter",
|
|
"shift-a": "vim::InsertEndOfLine",
|
|
"x": "vim::DeleteRight",
|
|
"shift-x": "vim::DeleteLeft",
|
|
"^": "vim::FirstNonWhitespace",
|
|
"o": "vim::InsertLineBelow",
|
|
"shift-o": "vim::InsertLineAbove",
|
|
"v": [
|
|
"vim::SwitchMode",
|
|
{
|
|
"Visual": {
|
|
"line": false
|
|
}
|
|
}
|
|
],
|
|
"shift-v": [
|
|
"vim::SwitchMode",
|
|
{
|
|
"Visual": {
|
|
"line": true
|
|
}
|
|
}
|
|
],
|
|
"p": "vim::Paste",
|
|
"u": "editor::Undo",
|
|
"ctrl-r": "editor::Redo",
|
|
"ctrl-o": "pane::GoBack",
|
|
"/": [
|
|
"buffer_search::Deploy",
|
|
{
|
|
"focus": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"context": "Editor && vim_operator == n",
|
|
"bindings": {
|
|
"0": [
|
|
"vim::Number",
|
|
0
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"context": "Editor && vim_operator == g",
|
|
"bindings": {
|
|
"g": "vim::StartOfDocument",
|
|
"h": "editor::Hover",
|
|
"escape": [
|
|
"vim::SwitchMode",
|
|
"Normal"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"context": "Editor && vim_operator == c",
|
|
"bindings": {
|
|
"c": "vim::CurrentLine"
|
|
}
|
|
},
|
|
{
|
|
"context": "Editor && vim_operator == d",
|
|
"bindings": {
|
|
"d": "vim::CurrentLine"
|
|
}
|
|
},
|
|
{
|
|
"context": "Editor && vim_operator == y",
|
|
"bindings": {
|
|
"y": "vim::CurrentLine"
|
|
}
|
|
},
|
|
{
|
|
"context": "Editor && VimObject",
|
|
"bindings": {
|
|
"w": "vim::Word",
|
|
"shift-w": [
|
|
"vim::Word",
|
|
{
|
|
"ignorePunctuation": true
|
|
}
|
|
],
|
|
"s": "vim::Sentence"
|
|
}
|
|
},
|
|
{
|
|
"context": "Editor && vim_mode == visual",
|
|
"bindings": {
|
|
"u": "editor::Undo",
|
|
"c": "vim::VisualChange",
|
|
"d": "vim::VisualDelete",
|
|
"x": "vim::VisualDelete",
|
|
"y": "vim::VisualYank",
|
|
"p": "vim::VisualPaste"
|
|
}
|
|
},
|
|
{
|
|
"context": "Editor && vim_mode == insert",
|
|
"bindings": {
|
|
"escape": "vim::NormalBefore",
|
|
"ctrl-c": "vim::NormalBefore"
|
|
}
|
|
}
|
|
] |