add alacritty

Changed files
+895
alacritty
+895
alacritty/alacritty.yml
··· 1 + # Configuration for Alacritty, the GPU enhanced terminal emulator. 2 + 3 + # Import additional configuration files 4 + # 5 + # Imports are loaded in order, skipping all missing files, with the importing 6 + # file being loaded last. If a field is already present in a previous import, it 7 + # will be replaced. 8 + # 9 + # All imports must either be absolute paths starting with `/`, or paths relative 10 + # to the user's home directory starting with `~/`. 11 + #import: 12 + # - /path/to/alacritty.yml 13 + 14 + # Any items in the `env` entry below will be added as 15 + # environment variables. Some entries may override variables 16 + # set by alacritty itself. 17 + #env: 18 + # TERM variable 19 + # 20 + # This value is used to set the `$TERM` environment variable for 21 + # each instance of Alacritty. If it is not present, alacritty will 22 + # check the local terminfo database and use `alacritty` if it is 23 + # available, otherwise `xterm-256color` is used. 24 + #TERM: alacritty 25 + 26 + #window: 27 + # Window dimensions (changes require restart) 28 + # 29 + # Number of lines/columns (not pixels) in the terminal. Both lines and columns 30 + # must be non-zero for this to take effect. The number of columns must be at 31 + # least `2`, while using a value of `0` for columns and lines will fall back 32 + # to the window manager's recommended size 33 + #dimensions: 34 + # columns: 0 35 + # lines: 0 36 + 37 + # Window position (changes require restart) 38 + # 39 + # Specified in number of pixels. 40 + # If the position is not set, the window manager will handle the placement. 41 + #position: 42 + # x: 0 43 + # y: 0 44 + 45 + # Window padding (changes require restart) 46 + # 47 + # Blank space added around the window in pixels. This padding is scaled 48 + # by DPI and the specified value is always added at both opposing sides. 49 + #padding: 50 + # x: 0 51 + # y: 0 52 + 53 + # Spread additional padding evenly around the terminal content. 54 + #dynamic_padding: false 55 + 56 + # Window decorations 57 + # 58 + # Values for `decorations`: 59 + # - full: Borders and title bar 60 + # - none: Neither borders nor title bar 61 + # 62 + # Values for `decorations` (macOS only): 63 + # - transparent: Title bar, transparent background and title bar buttons 64 + # - buttonless: Title bar, transparent background and no title bar buttons 65 + #decorations: full 66 + 67 + # Background opacity 68 + # 69 + # Window opacity as a floating point number from `0.0` to `1.0`. 70 + # The value `0.0` is completely transparent and `1.0` is opaque. 71 + #opacity: 1.0 72 + 73 + # Startup Mode (changes require restart) 74 + # 75 + # Values for `startup_mode`: 76 + # - Windowed 77 + # - Maximized 78 + # - Fullscreen 79 + # 80 + # Values for `startup_mode` (macOS only): 81 + # - SimpleFullscreen 82 + #startup_mode: Windowed 83 + 84 + # Window title 85 + #title: Alacritty 86 + 87 + # Allow terminal applications to change Alacritty's window title. 88 + #dynamic_title: true 89 + 90 + # Window class (Linux/BSD only): 91 + #class: 92 + # Application instance name 93 + #instance: Alacritty 94 + # General application class 95 + #general: Alacritty 96 + 97 + # Decorations theme variant (Linux/BSD only) 98 + # 99 + # Override the variant of the GTK theme/Wayland client side decorations. 100 + # Commonly supported values are `dark` and `light`. Set this to `None` to use 101 + # the default theme variant. 102 + #decorations_theme_variant: None 103 + 104 + #scrolling: 105 + # Maximum number of lines in the scrollback buffer. 106 + # Specifying '0' will disable scrolling. 107 + #history: 10000 108 + 109 + # Scrolling distance multiplier. 110 + #multiplier: 3 111 + 112 + # Font configuration 113 + font: 114 + # Normal (roman) font face 115 + normal: 116 + # Font family 117 + # 118 + # Default: 119 + # - (macOS) Menlo 120 + # - (Linux/BSD) monospace 121 + # - (Windows) Consolas 122 + family: Fira Code 123 + 124 + # The `style` can be specified to pick a specific face. 125 + #style: Regular 126 + 127 + # Bold font face 128 + #bold: 129 + # Font family 130 + # 131 + # If the bold family is not specified, it will fall back to the 132 + # value specified for the normal font. 133 + #family: monospace 134 + 135 + # The `style` can be specified to pick a specific face. 136 + #style: Bold 137 + 138 + # Italic font face 139 + #italic: 140 + # Font family 141 + # 142 + # If the italic family is not specified, it will fall back to the 143 + # value specified for the normal font. 144 + #family: monospace 145 + 146 + # The `style` can be specified to pick a specific face. 147 + #style: Italic 148 + 149 + # Bold italic font face 150 + #bold_italic: 151 + # Font family 152 + # 153 + # If the bold italic family is not specified, it will fall back to the 154 + # value specified for the normal font. 155 + #family: monospace 156 + 157 + # The `style` can be specified to pick a specific face. 158 + #style: Bold Italic 159 + 160 + # Point size 161 + size: 16.0 162 + 163 + # Offset is the extra space around each character. `offset.y` can be thought 164 + # of as modifying the line spacing, and `offset.x` as modifying the letter 165 + # spacing. 166 + #offset: 167 + # x: 0 168 + # y: 0 169 + 170 + # Glyph offset determines the locations of the glyphs within their cells with 171 + # the default being at the bottom. Increasing `x` moves the glyph to the 172 + # right, increasing `y` moves the glyph upward. 173 + #glyph_offset: 174 + # x: 0 175 + # y: 0 176 + 177 + # Use built-in font for box drawing characters. 178 + # 179 + # If `true`, Alacritty will use a custom built-in font for box drawing 180 + # characters (Unicode points 2500 - 259f). 181 + # 182 + #builtin_box_drawing: true 183 + 184 + # If `true`, bold text is drawn using the bright color variants. 185 + #draw_bold_text_with_bright_colors: false 186 + 187 + # Colors (Tomorrow Night) 188 + #colors: 189 + # Default colors 190 + #primary: 191 + # background: '#1d1f21' 192 + # foreground: '#c5c8c6' 193 + 194 + # Bright and dim foreground colors 195 + # 196 + # The dimmed foreground color is calculated automatically if it is not 197 + # present. If the bright foreground color is not set, or 198 + # `draw_bold_text_with_bright_colors` is `false`, the normal foreground 199 + # color will be used. 200 + #dim_foreground: '#828482' 201 + #bright_foreground: '#eaeaea' 202 + 203 + # Cursor colors 204 + # 205 + # Colors which should be used to draw the terminal cursor. 206 + # 207 + # Allowed values are CellForeground/CellBackground, which reference the 208 + # affected cell, or hexadecimal colors like #ff00ff. 209 + #cursor: 210 + # text: CellBackground 211 + # cursor: CellForeground 212 + 213 + # Vi mode cursor colors 214 + # 215 + # Colors for the cursor when the vi mode is active. 216 + # 217 + # Allowed values are CellForeground/CellBackground, which reference the 218 + # affected cell, or hexadecimal colors like #ff00ff. 219 + #vi_mode_cursor: 220 + # text: CellBackground 221 + # cursor: CellForeground 222 + 223 + # Search colors 224 + # 225 + # Colors used for the search bar and match highlighting. 226 + #search: 227 + # Allowed values are CellForeground/CellBackground, which reference the 228 + # affected cell, or hexadecimal colors like #ff00ff. 229 + #matches: 230 + # foreground: '#000000' 231 + # background: '#ffffff' 232 + #focused_match: 233 + # foreground: '#ffffff' 234 + # background: '#000000' 235 + 236 + # Keyboard hints 237 + #hints: 238 + # First character in the hint label 239 + # 240 + # Allowed values are CellForeground/CellBackground, which reference the 241 + # affected cell, or hexadecimal colors like #ff00ff. 242 + #start: 243 + # foreground: '#1d1f21' 244 + # background: '#e9ff5e' 245 + 246 + # All characters after the first one in the hint label 247 + # 248 + # Allowed values are CellForeground/CellBackground, which reference the 249 + # affected cell, or hexadecimal colors like #ff00ff. 250 + #end: 251 + # foreground: '#e9ff5e' 252 + # background: '#1d1f21' 253 + 254 + # Line indicator 255 + # 256 + # Color used for the indicator displaying the position in history during 257 + # search and vi mode. 258 + # 259 + # By default, these will use the opposing primary color. 260 + #line_indicator: 261 + # foreground: None 262 + # background: None 263 + 264 + # Footer bar 265 + # 266 + # Color used for the footer bar on the bottom, used by search regex input, 267 + # hyperlink URI preview, etc. 268 + # 269 + #footer_bar: 270 + # background: '#c5c8c6' 271 + # foreground: '#1d1f21' 272 + 273 + # Selection colors 274 + # 275 + # Colors which should be used to draw the selection area. 276 + # 277 + # Allowed values are CellForeground/CellBackground, which reference the 278 + # affected cell, or hexadecimal colors like #ff00ff. 279 + #selection: 280 + # text: CellBackground 281 + # background: CellForeground 282 + 283 + # Normal colors 284 + #normal: 285 + # black: '#1d1f21' 286 + # red: '#cc6666' 287 + # green: '#b5bd68' 288 + # yellow: '#f0c674' 289 + # blue: '#81a2be' 290 + # magenta: '#b294bb' 291 + # cyan: '#8abeb7' 292 + # white: '#c5c8c6' 293 + 294 + # Bright colors 295 + #bright: 296 + # black: '#666666' 297 + # red: '#d54e53' 298 + # green: '#b9ca4a' 299 + # yellow: '#e7c547' 300 + # blue: '#7aa6da' 301 + # magenta: '#c397d8' 302 + # cyan: '#70c0b1' 303 + # white: '#eaeaea' 304 + 305 + # Dim colors 306 + # 307 + # If the dim colors are not set, they will be calculated automatically based 308 + # on the `normal` colors. 309 + #dim: 310 + # black: '#131415' 311 + # red: '#864343' 312 + # green: '#777c44' 313 + # yellow: '#9e824c' 314 + # blue: '#556a7d' 315 + # magenta: '#75617b' 316 + # cyan: '#5b7d78' 317 + # white: '#828482' 318 + 319 + # Indexed Colors 320 + # 321 + # The indexed colors include all colors from 16 to 256. 322 + # When these are not set, they're filled with sensible defaults. 323 + # 324 + # Example: 325 + # `- { index: 16, color: '#ff00ff' }` 326 + # 327 + #indexed_colors: [] 328 + 329 + # Transparent cell backgrounds 330 + # 331 + # Whether or not `window.opacity` applies to all cell backgrounds or only to 332 + # the default background. When set to `true` all cells will be transparent 333 + # regardless of their background color. 334 + #transparent_background_colors: false 335 + 336 + # Bell 337 + # 338 + # The bell is rung every time the BEL control character is received. 339 + #bell: 340 + # Visual Bell Animation 341 + # 342 + # Animation effect for flashing the screen when the visual bell is rung. 343 + # 344 + # Values for `animation`: 345 + # - Ease 346 + # - EaseOut 347 + # - EaseOutSine 348 + # - EaseOutQuad 349 + # - EaseOutCubic 350 + # - EaseOutQuart 351 + # - EaseOutQuint 352 + # - EaseOutExpo 353 + # - EaseOutCirc 354 + # - Linear 355 + #animation: EaseOutExpo 356 + 357 + # Duration of the visual bell flash in milliseconds. A `duration` of `0` will 358 + # disable the visual bell animation. 359 + #duration: 0 360 + 361 + # Visual bell animation color. 362 + #color: '#ffffff' 363 + 364 + # Bell Command 365 + # 366 + # This program is executed whenever the bell is rung. 367 + # 368 + # When set to `command: None`, no command will be executed. 369 + # 370 + # Example: 371 + # command: 372 + # program: notify-send 373 + # args: ["Hello, World!"] 374 + # 375 + #command: None 376 + 377 + #selection: 378 + # This string contains all characters that are used as separators for 379 + # "semantic words" in Alacritty. 380 + #semantic_escape_chars: ",│`|:\"' ()[]{}<>\t" 381 + 382 + # When set to `true`, selected text will be copied to the primary clipboard. 383 + #save_to_clipboard: false 384 + 385 + #cursor: 386 + # Cursor style 387 + #style: 388 + # Cursor shape 389 + # 390 + # Values for `shape`: 391 + # - ▇ Block 392 + # - _ Underline 393 + # - | Beam 394 + #shape: Block 395 + 396 + # Cursor blinking state 397 + # 398 + # Values for `blinking`: 399 + # - Never: Prevent the cursor from ever blinking 400 + # - Off: Disable blinking by default 401 + # - On: Enable blinking by default 402 + # - Always: Force the cursor to always blink 403 + #blinking: Off 404 + 405 + # Vi mode cursor style 406 + # 407 + # If the vi mode cursor style is `None` or not specified, it will fall back to 408 + # the style of the active value of the normal cursor. 409 + # 410 + # See `cursor.style` for available options. 411 + #vi_mode_style: None 412 + 413 + # Cursor blinking interval in milliseconds. 414 + #blink_interval: 750 415 + 416 + # Time after which cursor stops blinking, in seconds. 417 + # 418 + # Specifying '0' will disable timeout for blinking. 419 + #blink_timeout: 5 420 + 421 + # If this is `true`, the cursor will be rendered as a hollow box when the 422 + # window is not focused. 423 + #unfocused_hollow: true 424 + 425 + # Thickness of the cursor relative to the cell width as floating point number 426 + # from `0.0` to `1.0`. 427 + #thickness: 0.15 428 + 429 + # Live config reload (changes require restart) 430 + #live_config_reload: true 431 + 432 + # Shell 433 + # 434 + # You can set `shell.program` to the path of your favorite shell, e.g. 435 + # `/bin/fish`. Entries in `shell.args` are passed unmodified as arguments to the 436 + # shell. 437 + # 438 + # Default: 439 + # - (Linux/BSD/macOS) `$SHELL` or the user's login shell, if `$SHELL` is unset 440 + # - (Windows) powershell 441 + #shell: 442 + # program: /bin/bash 443 + # args: 444 + # - --login 445 + 446 + # Startup directory 447 + # 448 + # Directory the shell is started in. If this is unset, or `None`, the working 449 + # directory of the parent process will be used. 450 + #working_directory: None 451 + 452 + # Send ESC (\x1b) before characters when alt is pressed. 453 + #alt_send_esc: true 454 + 455 + # Offer IPC using `alacritty msg` (unix only) 456 + #ipc_socket: true 457 + 458 + #mouse: 459 + # Click settings 460 + # 461 + # The `double_click` and `triple_click` settings control the time 462 + # alacritty should wait for accepting multiple clicks as one double 463 + # or triple click. 464 + #double_click: { threshold: 300 } 465 + #triple_click: { threshold: 300 } 466 + 467 + # If this is `true`, the cursor is temporarily hidden when typing. 468 + #hide_when_typing: false 469 + 470 + # Hints 471 + # 472 + # Terminal hints can be used to find text or hyperlink in the visible part of 473 + # the terminal and pipe it to other applications. 474 + #hints: 475 + # Keys used for the hint labels. 476 + #alphabet: "jfkdls;ahgurieowpq" 477 + 478 + # List with all available hints 479 + # 480 + # Each hint must have any of `regex` or `hyperlinks` field and either an 481 + # `action` or a `command` field. The fields `mouse`, `binding` and 482 + # `post_processing` are optional. 483 + # 484 + # The `hyperlinks` option will cause OSC 8 escape sequence hyperlinks to be 485 + # highlighted. 486 + # 487 + # The fields `command`, `binding.key`, `binding.mods`, `binding.mode` and 488 + # `mouse.mods` accept the same values as they do in the `key_bindings` section. 489 + # 490 + # The `mouse.enabled` field controls if the hint should be underlined while 491 + # the mouse with all `mouse.mods` keys held or the vi mode cursor is above it. 492 + # 493 + # If the `post_processing` field is set to `true`, heuristics will be used to 494 + # shorten the match if there are characters likely not to be part of the hint 495 + # (e.g. a trailing `.`). This is most useful for URIs and applies only to 496 + # `regex` matches. 497 + # 498 + # Values for `action`: 499 + # - Copy 500 + # Copy the hint's text to the clipboard. 501 + # - Paste 502 + # Paste the hint's text to the terminal or search. 503 + # - Select 504 + # Select the hint's text. 505 + # - MoveViModeCursor 506 + # Move the vi mode cursor to the beginning of the hint. 507 + #enabled: 508 + # - regex: "(ipfs:|ipns:|magnet:|mailto:|gemini:|gopher:|https:|http:|news:|file:|git:|ssh:|ftp:)\ 509 + # [^\u0000-\u001F\u007F-\u009F<>\"\\s{-}\\^⟨⟩`]+" 510 + # hyperlinks: true 511 + # command: xdg-open 512 + # post_processing: true 513 + # mouse: 514 + # enabled: true 515 + # mods: None 516 + # binding: 517 + # key: U 518 + # mods: Control|Shift 519 + 520 + # Mouse bindings 521 + # 522 + # Mouse bindings are specified as a list of objects, much like the key 523 + # bindings further below. 524 + # 525 + # To trigger mouse bindings when an application running within Alacritty 526 + # captures the mouse, the `Shift` modifier is automatically added as a 527 + # requirement. 528 + # 529 + # Each mouse binding will specify a: 530 + # 531 + # - `mouse`: 532 + # 533 + # - Middle 534 + # - Left 535 + # - Right 536 + # - Numeric identifier such as `5` 537 + # 538 + # - `action` (see key bindings for actions not exclusive to mouse mode) 539 + # 540 + # - Mouse exclusive actions: 541 + # 542 + # - ExpandSelection 543 + # Expand the selection to the current mouse cursor location. 544 + # 545 + # And optionally: 546 + # 547 + # - `mods` (see key bindings) 548 + #mouse_bindings: 549 + # - { mouse: Right, action: ExpandSelection } 550 + # - { mouse: Right, mods: Control, action: ExpandSelection } 551 + # - { mouse: Middle, mode: ~Vi, action: PasteSelection } 552 + 553 + # Key bindings 554 + # 555 + # Key bindings are specified as a list of objects. For example, this is the 556 + # default paste binding: 557 + # 558 + # `- { key: V, mods: Control|Shift, action: Paste }` 559 + # 560 + # Each key binding will specify a: 561 + # 562 + # - `key`: Identifier of the key pressed 563 + # 564 + # - A-Z 565 + # - F1-F24 566 + # - Key0-Key9 567 + # 568 + # A full list with available key codes can be found here: 569 + # https://docs.rs/glutin/*/glutin/event/enum.VirtualKeyCode.html#variants 570 + # 571 + # Instead of using the name of the keys, the `key` field also supports using 572 + # the scancode of the desired key. Scancodes have to be specified as a 573 + # decimal number. This command will allow you to display the hex scancodes 574 + # for certain keys: 575 + # 576 + # `showkey --scancodes`. 577 + # 578 + # Then exactly one of: 579 + # 580 + # - `chars`: Send a byte sequence to the running application 581 + # 582 + # The `chars` field writes the specified string to the terminal. This makes 583 + # it possible to pass escape sequences. To find escape codes for bindings 584 + # like `PageUp` (`"\x1b[5~"`), you can run the command `showkey -a` outside 585 + # of tmux. Note that applications use terminfo to map escape sequences back 586 + # to keys. It is therefore required to update the terminfo when changing an 587 + # escape sequence. 588 + # 589 + # - `action`: Execute a predefined action 590 + # 591 + # - ToggleViMode 592 + # - SearchForward 593 + # Start searching toward the right of the search origin. 594 + # - SearchBackward 595 + # Start searching toward the left of the search origin. 596 + # - Copy 597 + # - Paste 598 + # - IncreaseFontSize 599 + # - DecreaseFontSize 600 + # - ResetFontSize 601 + # - ScrollPageUp 602 + # - ScrollPageDown 603 + # - ScrollHalfPageUp 604 + # - ScrollHalfPageDown 605 + # - ScrollLineUp 606 + # - ScrollLineDown 607 + # - ScrollToTop 608 + # - ScrollToBottom 609 + # - ClearHistory 610 + # Remove the terminal's scrollback history. 611 + # - Hide 612 + # Hide the Alacritty window. 613 + # - Minimize 614 + # Minimize the Alacritty window. 615 + # - Quit 616 + # Quit Alacritty. 617 + # - ToggleFullscreen 618 + # - SpawnNewInstance 619 + # Spawn a new instance of Alacritty. 620 + # - CreateNewWindow 621 + # Create a new Alacritty window from the current process. 622 + # - ClearLogNotice 623 + # Clear Alacritty's UI warning and error notice. 624 + # - ClearSelection 625 + # Remove the active selection. 626 + # - ReceiveChar 627 + # - None 628 + # 629 + # - Vi mode exclusive actions: 630 + # 631 + # - Open 632 + # Perform the action of the first matching hint under the vi mode cursor 633 + # with `mouse.enabled` set to `true`. 634 + # - ToggleNormalSelection 635 + # - ToggleLineSelection 636 + # - ToggleBlockSelection 637 + # - ToggleSemanticSelection 638 + # Toggle semantic selection based on `selection.semantic_escape_chars`. 639 + # - CenterAroundViCursor 640 + # Center view around vi mode cursor 641 + # 642 + # - Vi mode exclusive cursor motion actions: 643 + # 644 + # - Up 645 + # One line up. 646 + # - Down 647 + # One line down. 648 + # - Left 649 + # One character left. 650 + # - Right 651 + # One character right. 652 + # - First 653 + # First column, or beginning of the line when already at the first column. 654 + # - Last 655 + # Last column, or beginning of the line when already at the last column. 656 + # - FirstOccupied 657 + # First non-empty cell in this terminal row, or first non-empty cell of 658 + # the line when already at the first cell of the row. 659 + # - High 660 + # Top of the screen. 661 + # - Middle 662 + # Center of the screen. 663 + # - Low 664 + # Bottom of the screen. 665 + # - SemanticLeft 666 + # Start of the previous semantically separated word. 667 + # - SemanticRight 668 + # Start of the next semantically separated word. 669 + # - SemanticLeftEnd 670 + # End of the previous semantically separated word. 671 + # - SemanticRightEnd 672 + # End of the next semantically separated word. 673 + # - WordLeft 674 + # Start of the previous whitespace separated word. 675 + # - WordRight 676 + # Start of the next whitespace separated word. 677 + # - WordLeftEnd 678 + # End of the previous whitespace separated word. 679 + # - WordRightEnd 680 + # End of the next whitespace separated word. 681 + # - Bracket 682 + # Character matching the bracket at the cursor's location. 683 + # - SearchNext 684 + # Beginning of the next match. 685 + # - SearchPrevious 686 + # Beginning of the previous match. 687 + # - SearchStart 688 + # Start of the match to the left of the vi mode cursor. 689 + # - SearchEnd 690 + # End of the match to the right of the vi mode cursor. 691 + # 692 + # - Search mode exclusive actions: 693 + # - SearchFocusNext 694 + # Move the focus to the next search match. 695 + # - SearchFocusPrevious 696 + # Move the focus to the previous search match. 697 + # - SearchConfirm 698 + # - SearchCancel 699 + # - SearchClear 700 + # Reset the search regex. 701 + # - SearchDeleteWord 702 + # Delete the last word in the search regex. 703 + # - SearchHistoryPrevious 704 + # Go to the previous regex in the search history. 705 + # - SearchHistoryNext 706 + # Go to the next regex in the search history. 707 + # 708 + # - macOS exclusive actions: 709 + # - ToggleSimpleFullscreen 710 + # Enter fullscreen without occupying another space. 711 + # 712 + # - Linux/BSD exclusive actions: 713 + # 714 + # - CopySelection 715 + # Copy from the selection buffer. 716 + # - PasteSelection 717 + # Paste from the selection buffer. 718 + # 719 + # - `command`: Fork and execute a specified command plus arguments 720 + # 721 + # The `command` field must be a map containing a `program` string and an 722 + # `args` array of command line parameter strings. For example: 723 + # `{ program: "alacritty", args: ["-e", "vttest"] }` 724 + # 725 + # And optionally: 726 + # 727 + # - `mods`: Key modifiers to filter binding actions 728 + # 729 + # - Command 730 + # - Control 731 + # - Option 732 + # - Super 733 + # - Shift 734 + # - Alt 735 + # 736 + # Multiple `mods` can be combined using `|` like this: 737 + # `mods: Control|Shift`. 738 + # Whitespace and capitalization are relevant and must match the example. 739 + # 740 + # - `mode`: Indicate a binding for only specific terminal reported modes 741 + # 742 + # This is mainly used to send applications the correct escape sequences 743 + # when in different modes. 744 + # 745 + # - AppCursor 746 + # - AppKeypad 747 + # - Search 748 + # - Alt 749 + # - Vi 750 + # 751 + # A `~` operator can be used before a mode to apply the binding whenever 752 + # the mode is *not* active, e.g. `~Alt`. 753 + # 754 + # Bindings are always filled by default, but will be replaced when a new 755 + # binding with the same triggers is defined. To unset a default binding, it can 756 + # be mapped to the `ReceiveChar` action. Alternatively, you can use `None` for 757 + # a no-op if you do not wish to receive input characters for that binding. 758 + # 759 + # If the same trigger is assigned to multiple actions, all of them are executed 760 + # in the order they were defined in. 761 + #key_bindings: 762 + #- { key: Paste, action: Paste } 763 + #- { key: Copy, action: Copy } 764 + #- { key: L, mods: Control, action: ClearLogNotice } 765 + #- { key: L, mods: Control, mode: ~Vi|~Search, chars: "\x0c" } 766 + #- { key: PageUp, mods: Shift, mode: ~Alt, action: ScrollPageUp } 767 + #- { key: PageDown, mods: Shift, mode: ~Alt, action: ScrollPageDown } 768 + #- { key: Home, mods: Shift, mode: ~Alt, action: ScrollToTop } 769 + #- { key: End, mods: Shift, mode: ~Alt, action: ScrollToBottom } 770 + 771 + # Vi Mode 772 + #- { key: Space, mods: Shift|Control, mode: ~Search, action: ToggleViMode } 773 + #- { key: Space, mods: Shift|Control, mode: Vi|~Search, action: ScrollToBottom } 774 + #- { key: Escape, mode: Vi|~Search, action: ClearSelection } 775 + #- { key: I, mode: Vi|~Search, action: ToggleViMode } 776 + #- { key: I, mode: Vi|~Search, action: ScrollToBottom } 777 + #- { key: C, mods: Control, mode: Vi|~Search, action: ToggleViMode } 778 + #- { key: Y, mods: Control, mode: Vi|~Search, action: ScrollLineUp } 779 + #- { key: E, mods: Control, mode: Vi|~Search, action: ScrollLineDown } 780 + #- { key: G, mode: Vi|~Search, action: ScrollToTop } 781 + #- { key: G, mods: Shift, mode: Vi|~Search, action: ScrollToBottom } 782 + #- { key: B, mods: Control, mode: Vi|~Search, action: ScrollPageUp } 783 + #- { key: F, mods: Control, mode: Vi|~Search, action: ScrollPageDown } 784 + #- { key: U, mods: Control, mode: Vi|~Search, action: ScrollHalfPageUp } 785 + #- { key: D, mods: Control, mode: Vi|~Search, action: ScrollHalfPageDown } 786 + #- { key: Y, mode: Vi|~Search, action: Copy } 787 + #- { key: Y, mode: Vi|~Search, action: ClearSelection } 788 + #- { key: Copy, mode: Vi|~Search, action: ClearSelection } 789 + #- { key: V, mode: Vi|~Search, action: ToggleNormalSelection } 790 + #- { key: V, mods: Shift, mode: Vi|~Search, action: ToggleLineSelection } 791 + #- { key: V, mods: Control, mode: Vi|~Search, action: ToggleBlockSelection } 792 + #- { key: V, mods: Alt, mode: Vi|~Search, action: ToggleSemanticSelection } 793 + #- { key: Return, mode: Vi|~Search, action: Open } 794 + #- { key: Z, mode: Vi|~Search, action: CenterAroundViCursor } 795 + #- { key: K, mode: Vi|~Search, action: Up } 796 + #- { key: J, mode: Vi|~Search, action: Down } 797 + #- { key: H, mode: Vi|~Search, action: Left } 798 + #- { key: L, mode: Vi|~Search, action: Right } 799 + #- { key: Up, mode: Vi|~Search, action: Up } 800 + #- { key: Down, mode: Vi|~Search, action: Down } 801 + #- { key: Left, mode: Vi|~Search, action: Left } 802 + #- { key: Right, mode: Vi|~Search, action: Right } 803 + #- { key: Key0, mode: Vi|~Search, action: First } 804 + #- { key: Key4, mods: Shift, mode: Vi|~Search, action: Last } 805 + #- { key: Key6, mods: Shift, mode: Vi|~Search, action: FirstOccupied } 806 + #- { key: H, mods: Shift, mode: Vi|~Search, action: High } 807 + #- { key: M, mods: Shift, mode: Vi|~Search, action: Middle } 808 + #- { key: L, mods: Shift, mode: Vi|~Search, action: Low } 809 + #- { key: B, mode: Vi|~Search, action: SemanticLeft } 810 + #- { key: W, mode: Vi|~Search, action: SemanticRight } 811 + #- { key: E, mode: Vi|~Search, action: SemanticRightEnd } 812 + #- { key: B, mods: Shift, mode: Vi|~Search, action: WordLeft } 813 + #- { key: W, mods: Shift, mode: Vi|~Search, action: WordRight } 814 + #- { key: E, mods: Shift, mode: Vi|~Search, action: WordRightEnd } 815 + #- { key: Key5, mods: Shift, mode: Vi|~Search, action: Bracket } 816 + #- { key: Slash, mode: Vi|~Search, action: SearchForward } 817 + #- { key: Slash, mods: Shift, mode: Vi|~Search, action: SearchBackward } 818 + #- { key: N, mode: Vi|~Search, action: SearchNext } 819 + #- { key: N, mods: Shift, mode: Vi|~Search, action: SearchPrevious } 820 + 821 + # Search Mode 822 + #- { key: Return, mode: Search|Vi, action: SearchConfirm } 823 + #- { key: Escape, mode: Search, action: SearchCancel } 824 + #- { key: C, mods: Control, mode: Search, action: SearchCancel } 825 + #- { key: U, mods: Control, mode: Search, action: SearchClear } 826 + #- { key: W, mods: Control, mode: Search, action: SearchDeleteWord } 827 + #- { key: P, mods: Control, mode: Search, action: SearchHistoryPrevious } 828 + #- { key: N, mods: Control, mode: Search, action: SearchHistoryNext } 829 + #- { key: Up, mode: Search, action: SearchHistoryPrevious } 830 + #- { key: Down, mode: Search, action: SearchHistoryNext } 831 + #- { key: Return, mode: Search|~Vi, action: SearchFocusNext } 832 + #- { key: Return, mods: Shift, mode: Search|~Vi, action: SearchFocusPrevious } 833 + 834 + # (Windows, Linux, and BSD only) 835 + #- { key: V, mods: Control|Shift, mode: ~Vi, action: Paste } 836 + #- { key: C, mods: Control|Shift, action: Copy } 837 + #- { key: F, mods: Control|Shift, mode: ~Search, action: SearchForward } 838 + #- { key: B, mods: Control|Shift, mode: ~Search, action: SearchBackward } 839 + #- { key: C, mods: Control|Shift, mode: Vi|~Search, action: ClearSelection } 840 + #- { key: Insert, mods: Shift, action: PasteSelection } 841 + #- { key: Key0, mods: Control, action: ResetFontSize } 842 + #- { key: Equals, mods: Control, action: IncreaseFontSize } 843 + #- { key: Plus, mods: Control, action: IncreaseFontSize } 844 + #- { key: NumpadAdd, mods: Control, action: IncreaseFontSize } 845 + #- { key: Minus, mods: Control, action: DecreaseFontSize } 846 + #- { key: NumpadSubtract, mods: Control, action: DecreaseFontSize } 847 + 848 + # (Windows only) 849 + #- { key: Return, mods: Alt, action: ToggleFullscreen } 850 + 851 + # (macOS only) 852 + #- { key: K, mods: Command, mode: ~Vi|~Search, chars: "\x0c" } 853 + #- { key: K, mods: Command, mode: ~Vi|~Search, action: ClearHistory } 854 + #- { key: Key0, mods: Command, action: ResetFontSize } 855 + #- { key: Equals, mods: Command, action: IncreaseFontSize } 856 + #- { key: Plus, mods: Command, action: IncreaseFontSize } 857 + #- { key: NumpadAdd, mods: Command, action: IncreaseFontSize } 858 + #- { key: Minus, mods: Command, action: DecreaseFontSize } 859 + #- { key: NumpadSubtract, mods: Command, action: DecreaseFontSize } 860 + #- { key: V, mods: Command, action: Paste } 861 + #- { key: C, mods: Command, action: Copy } 862 + #- { key: C, mods: Command, mode: Vi|~Search, action: ClearSelection } 863 + #- { key: H, mods: Command, action: Hide } 864 + #- { key: H, mods: Command|Alt, action: HideOtherApplications } 865 + #- { key: M, mods: Command, action: Minimize } 866 + #- { key: Q, mods: Command, action: Quit } 867 + #- { key: W, mods: Command, action: Quit } 868 + #- { key: N, mods: Command, action: SpawnNewInstance } 869 + #- { key: F, mods: Command|Control, action: ToggleFullscreen } 870 + #- { key: F, mods: Command, mode: ~Search, action: SearchForward } 871 + #- { key: B, mods: Command, mode: ~Search, action: SearchBackward } 872 + 873 + #debug: 874 + # Display the time it takes to redraw each frame. 875 + #render_timer: false 876 + 877 + # Keep the log file after quitting Alacritty. 878 + #persistent_logging: false 879 + 880 + # Log level 881 + # 882 + # Values for `log_level`: 883 + # - Off 884 + # - Error 885 + # - Warn 886 + # - Info 887 + # - Debug 888 + # - Trace 889 + #log_level: Warn 890 + 891 + # Print all received window events. 892 + #print_events: false 893 + 894 + # Highlight window damage information. 895 + #highlight_damage: false