alacritty.yml 31 KB

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