dotfiles

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