Klimi's new dotfiles with stow.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

527 lines
20 KiB

4 years ago
  1. # Configuration for Alacritty, the GPU enhanced terminal emulator.
  2. # Any items in the `env` entry below will be added as
  3. # environment variables. Some entries may override variables
  4. # set by alacritty itself.
  5. #env:
  6. # TERM variable
  7. #
  8. # This value is used to set the `$TERM` environment variable for
  9. # each instance of Alacritty. If it is not present, alacritty will
  10. # check the local terminfo database and use `alacritty` if it is
  11. # available, otherwise `xterm-256color` is used.
  12. #TERM: xterm-256color
  13. window:
  14. # Window dimensions (changes require restart)
  15. #
  16. # Specified in number of columns/lines, not pixels.
  17. # If both are `0`, this setting is ignored.
  18. dimensions:
  19. columns: 0
  20. lines: 0
  21. # Window padding (changes require restart)
  22. #
  23. # Blank space added around the window in pixels. This padding is scaled
  24. # by DPI and the specified value is always added at both opposing sides.
  25. padding:
  26. x: 2
  27. y: 2
  28. # Spread additional padding evenly around the terminal content.
  29. dynamic_padding: false
  30. # Window decorations
  31. #
  32. # Values for `decorations`:
  33. # - full: Borders and title bar
  34. # - none: Neither borders nor title bar
  35. #
  36. # Values for `decorations` (macOS only):
  37. # - transparent: Title bar, transparent background and title bar buttons
  38. # - buttonless: Title bar, transparent background, but no title bar buttons
  39. decorations: full
  40. # When true, alacritty starts maximized.
  41. start_maximized: false
  42. scrolling:
  43. # Maximum number of lines in the scrollback buffer.
  44. # Specifying '0' will disable scrolling.
  45. history: 10000
  46. # Number of lines the viewport will move for every line scrolled when
  47. # scrollback is enabled (history > 0).
  48. multiplier: 3
  49. # Faux Scrolling
  50. #
  51. # The `faux_multiplier` setting controls the number of lines the terminal
  52. # should scroll when the alternate screen buffer is active. This is used
  53. # to allow mouse scrolling for applications like `man`.
  54. #
  55. # Specifying `0` will disable faux scrolling.
  56. faux_multiplier: 3
  57. # Scroll to the bottom when new text is written to the terminal.
  58. auto_scroll: false
  59. # Spaces per Tab (changes require restart)
  60. #
  61. # This setting defines the width of a tab in cells.
  62. #
  63. # Some applications, like Emacs, rely on knowing about the width of a tab.
  64. # To prevent unexpected behavior in these applications, it's also required to
  65. # change the `it` value in terminfo when altering this setting.
  66. tabspaces: 4
  67. # Font configuration (changes require restart)
  68. font:
  69. # Normal (roman) font face
  70. #normal:
  71. # Font family
  72. #
  73. # Default:
  74. # - (macOS) Menlo
  75. # - (Linux) monospace
  76. # - (Windows) Consolas
  77. #family: monospace
  78. # The `style` can be specified to pick a specific face.
  79. #style: Regular
  80. # Bold font face
  81. #bold:
  82. # Font family
  83. #
  84. # If the bold family is not specified, it will fall back to the
  85. # value specified for the normal font.
  86. #family: monospace
  87. # The `style` can be specified to pick a specific face.
  88. #style: Bold
  89. # Italic font face
  90. #italic:
  91. # Font family
  92. #
  93. # If the italic family is not specified, it will fall back to the
  94. # value specified for the normal font.
  95. #family: monospace
  96. # The `style` can be specified to pick a specific face.
  97. #style: Italic
  98. # Point size
  99. size: 11.0
  100. # Offset is the extra space around each character. `offset.y` can be thought of
  101. # as modifying the line spacing, and `offset.x` as modifying the letter spacing.
  102. offset:
  103. x: 0
  104. y: 0
  105. # Glyph offset determines the locations of the glyphs within their cells with
  106. # the default being at the bottom. Increasing `x` moves the glyph to the right,
  107. # increasing `y` moves the glyph upwards.
  108. glyph_offset:
  109. x: 0
  110. y: 0
  111. # Thin stroke font rendering (macOS only)
  112. #
  113. # Thin strokes are suitable for retina displays, but for non-retina screens
  114. # it is recommended to set `use_thin_strokes` to `false`
  115. #
  116. # macOS >= 10.14.x:
  117. #
  118. # If the font quality on non-retina display looks bad then set
  119. # `use_thin_strokes` to `true` and enable font smoothing by running the
  120. # following command:
  121. # `defaults write -g CGFontRenderingFontSmoothingDisabled -bool NO`
  122. #
  123. # This is a global setting and will require a log out or restart to take
  124. # effect.
  125. use_thin_strokes: true
  126. # Display the time it takes to redraw each frame.
  127. render_timer: false
  128. # Keep the log file after quitting Alacritty.
  129. persistent_logging: false
  130. # If `true`, bold text is drawn using the bright color variants.
  131. draw_bold_text_with_bright_colors: true
  132. # Colors (Blood Moon)
  133. colors:
  134. # Default colors
  135. primary:
  136. background: '0x10100E'
  137. foreground: '0xC6C6C4'
  138. # Normal colors
  139. normal:
  140. black: '0x10100E'
  141. red: '0xC40233'
  142. green: '0x009F6B'
  143. yellow: '0xFFD700'
  144. blue: '0x0087BD'
  145. magenta: '0x9A4EAE'
  146. cyan: '0x20B2AA'
  147. white: '0xC6C6C4'
  148. # Bright colors
  149. bright:
  150. black: '0x696969'
  151. red: '0xFF2400'
  152. green: '0x03C03C'
  153. yellow: '0xFDFF00'
  154. blue: '0x007FFF'
  155. magenta: '0xFF1493'
  156. cyan: '0x00CCCC'
  157. white: '0xFFFAFA'
  158. # Visual Bell
  159. #
  160. # Any time the BEL code is received, Alacritty "rings" the visual bell. Once
  161. # rung, the terminal background will be set to white and transition back to the
  162. # default background color. You can control the rate of this transition by
  163. # setting the `duration` property (represented in milliseconds). You can also
  164. # configure the transition function by setting the `animation` property.
  165. #
  166. # Values for `animation`:
  167. # - Ease
  168. # - EaseOut
  169. # - EaseOutSine
  170. # - EaseOutQuad
  171. # - EaseOutCubic
  172. # - EaseOutQuart
  173. # - EaseOutQuint
  174. # - EaseOutExpo
  175. # - EaseOutCirc
  176. # - Linear
  177. #
  178. # Specifying a `duration` of `0` will disable the visual bell.
  179. visual_bell:
  180. animation: EaseOutExpo
  181. duration: 150
  182. color: '0x350000'
  183. # Background opacity
  184. #
  185. # Window opacity as a floating point number from `0.0` to `1.0`.
  186. # The value `0.0` is completely transparent and `1.0` is opaque.
  187. background_opacity: 1.0
  188. # Mouse bindings
  189. #
  190. # Available fields:
  191. # - mouse
  192. # - action
  193. # - mods (optional)
  194. #
  195. # Values for `mouse`:
  196. # - Middle
  197. # - Left
  198. # - Right
  199. # - Numeric identifier such as `5`
  200. #
  201. # All available `mods` and `action` values are documented in the key binding
  202. # section.
  203. mouse_bindings:
  204. - { mouse: Middle, action: PasteSelection }
  205. mouse:
  206. # Click settings
  207. #
  208. # The `double_click` and `triple_click` settings control the time
  209. # alacritty should wait for accepting multiple clicks as one double
  210. # or triple click.
  211. double_click: { threshold: 300 }
  212. triple_click: { threshold: 300 }
  213. # If this is `true`, the cursor is temporarily hidden when typing.
  214. hide_when_typing: false
  215. url:
  216. # URL launcher
  217. #
  218. # This program is executed when clicking on a text which is recognized as a URL.
  219. # The URL is always added to the command as the last parameter.
  220. #
  221. # When set to `None`, URL launching will be disabled completely.
  222. #
  223. # Default:
  224. # - (macOS) open
  225. # - (Linux) xdg-open
  226. # - (Windows) explorer
  227. #launcher: xdg-open
  228. # URL modifiers
  229. #
  230. # These are the modifiers that need to be held down for opening URLs when clicking
  231. # on them. The available modifiers are documented in the key binding section.
  232. modifiers: None
  233. selection:
  234. semantic_escape_chars: ",│`|:\"' ()[]{}<>"
  235. # When set to `true`, selected text will be copied to the primary clipboard.
  236. save_to_clipboard: false
  237. # Allow terminal applications to change Alacritty's window title.
  238. dynamic_title: true
  239. cursor:
  240. # Cursor style
  241. #
  242. # Values for `style`:
  243. # - ▇ Block
  244. # - _ Underline
  245. # - | Beam
  246. style: Block
  247. # If this is `true`, the cursor will be rendered as a hollow box when the
  248. # window is not focused.
  249. unfocused_hollow: true
  250. # Live config reload (changes require restart)
  251. live_config_reload: true
  252. # Shell
  253. #
  254. # You can set `shell.program` to the path of your favorite shell, e.g. `/bin/fish`.
  255. # Entries in `shell.args` are passed unmodified as arguments to the shell.
  256. #
  257. # Default:
  258. # - (Linux/macOS) /bin/bash --login
  259. # - (Windows) powershell
  260. #shell:
  261. # program: /bin/bash
  262. # args:
  263. # - --login
  264. # Windows 10 ConPTY backend (Windows only)
  265. #
  266. # This will enable better color support and may resolve other issues,
  267. # however this API and its implementation is still young and so is
  268. # disabled by default, as stability may not be as good as the winpty
  269. # backend.
  270. #
  271. # Alacritty will fall back to the WinPTY automatically if the ConPTY
  272. # backend cannot be initialized.
  273. enable_experimental_conpty_backend: false
  274. # Send ESC (\x1b) before characters when alt is pressed.
  275. alt_send_esc: true
  276. # Key bindings
  277. #
  278. # Key bindings are specified as a list of objects. Each binding will specify a
  279. # key and modifiers required to trigger it, terminal modes where the binding is
  280. # applicable, and what should be done when the key binding fires. It can either
  281. # send a byte sequence to the running application (`chars`), execute a
  282. # predefined action (`action`) or fork and execute a specified command plus
  283. # arguments (`command`).
  284. #
  285. # Bindings are always filled by default, but will be replaced when a new binding
  286. # with the same triggers is defined. To unset a default binding, it can be
  287. # mapped to the `None` action.
  288. #
  289. # Example:
  290. # `- { key: V, mods: Control|Shift, action: Paste }`
  291. #
  292. # Available fields:
  293. # - key
  294. # - mods (optional)
  295. # - chars | action | command (exactly one required)
  296. # - mode (optional)
  297. #
  298. # Values for `key`:
  299. # - `A` -> `Z`
  300. # - `F1` -> `F12`
  301. # - `Key1` -> `Key0`
  302. #
  303. # A full list with available key codes can be found here:
  304. # https://docs.rs/glutin/*/glutin/enum.VirtualKeyCode.html#variants
  305. #
  306. # Instead of using the name of the keys, the `key` field also supports using
  307. # the scancode of the desired key. Scancodes have to be specified as a
  308. # decimal number.
  309. # This command will allow you to display the hex scancodes for certain keys:
  310. # `showkey --scancodes`
  311. #
  312. # Values for `mods`:
  313. # - Command
  314. # - Control
  315. # - Super
  316. # - Shift
  317. # - Alt
  318. #
  319. # Multiple `mods` can be combined using `|` like this: `mods: Control|Shift`.
  320. # Whitespace and capitalization is relevant and must match the example.
  321. #
  322. # Values for `chars`:
  323. # The `chars` field writes the specified string to the terminal. This makes
  324. # it possible to pass escape sequences.
  325. # To find escape codes for bindings like `PageUp` ("\x1b[5~"), you can run
  326. # the command `showkey -a` outside of tmux.
  327. # Note that applications use terminfo to map escape sequences back to
  328. # keys. It is therefore required to update the terminfo when
  329. # changing an escape sequence.
  330. #
  331. # Values for `action`:
  332. # - Paste
  333. # - PasteSelection
  334. # - Copy
  335. # - IncreaseFontSize
  336. # - DecreaseFontSize
  337. # - ResetFontSize
  338. # - ScrollPageUp
  339. # - ScrollPageDown
  340. # - ScrollToTop
  341. # - ScrollToBottom
  342. # - ClearHistory
  343. # - Hide
  344. # - Quit
  345. # - ClearLogNotice
  346. # - SpawnNewInstance
  347. # - None
  348. #
  349. # Values for `command`:
  350. # The `command` field must be a map containing a `program` string and
  351. # an `args` array of command line parameter strings.
  352. #
  353. # Example:
  354. # `command: { program: "alacritty", args: ["-e", "vttest"] }`
  355. #
  356. # Values for `mode`:
  357. # - ~AppCursor
  358. # - AppCursor
  359. # - ~AppKeypad
  360. # - AppKeypad
  361. key_bindings:
  362. # (Windows/Linux only)
  363. #- { key: V, mods: Control|Shift, action: Paste }
  364. - { key: C, mods: Control|Shift, action: Copy }
  365. #- { key: Insert, mods: Shift, action: PasteSelection }
  366. #- { key: Key0, mods: Control, action: ResetFontSize }
  367. #- { key: Equals, mods: Control, action: IncreaseFontSize }
  368. #- { key: Subtract, mods: Control, action: DecreaseFontSize }
  369. # (macOS only)
  370. #- { key: Key0, mods: Command, action: ResetFontSize }
  371. #- { key: Equals, mods: Command, action: IncreaseFontSize }
  372. #- { key: Minus, mods: Command, action: DecreaseFontSize }
  373. #- { key: K, mods: Command, action: ClearHistory }
  374. #- { key: K, mods: Command, chars: "\x0c" }
  375. #- { key: V, mods: Command, action: Paste }
  376. #- { key: C, mods: Command, action: Copy }
  377. #- { key: H, mods: Command, action: Hide }
  378. #- { key: Q, mods: Command, action: Quit }
  379. #- { key: W, mods: Command, action: Quit }
  380. - { key: Paste, action: Paste }
  381. - { key: Copy, action: Copy }
  382. - { key: L, mods: Control, action: ClearLogNotice }
  383. - { key: L, mods: Control, chars: "\x0c" }
  384. - { key: Home, chars: "\x1bOH", mode: AppCursor }
  385. - { key: Home, chars: "\x1b[H", mode: ~AppCursor }
  386. - { key: End, chars: "\x1bOF", mode: AppCursor }
  387. - { key: End, chars: "\x1b[F", mode: ~AppCursor }
  388. - { key: PageUp, mods: Shift, action: ScrollPageUp, mode: ~Alt }
  389. - { key: PageUp, mods: Shift, chars: "\x1b[5;2~", mode: Alt }
  390. - { key: PageUp, mods: Control, chars: "\x1b[5;5~" }
  391. - { key: PageUp, chars: "\x1b[5~" }
  392. - { key: PageDown, mods: Shift, action: ScrollPageDown, mode: ~Alt }
  393. - { key: PageDown, mods: Shift, chars: "\x1b[6;2~", mode: Alt }
  394. - { key: PageDown, mods: Control, chars: "\x1b[6;5~" }
  395. - { key: PageDown, chars: "\x1b[6~" }
  396. - { key: Tab, mods: Shift, chars: "\x1b[Z" }
  397. - { key: Back, chars: "\x7f" }
  398. - { key: Back, mods: Alt, chars: "\x1b\x7f" }
  399. - { key: Insert, chars: "\x1b[2~" }
  400. - { key: Delete, chars: "\x1b[3~" }
  401. - { key: Left, mods: Shift, chars: "\x1b[1;2D" }
  402. - { key: Left, mods: Control, chars: "\x1b[1;5D" }
  403. - { key: Left, mods: Alt, chars: "\x1b[1;3D" }
  404. - { key: Left, chars: "\x1b[D", mode: ~AppCursor }
  405. - { key: Left, chars: "\x1bOD", mode: AppCursor }
  406. - { key: Right, mods: Shift, chars: "\x1b[1;2C" }
  407. - { key: Right, mods: Control, chars: "\x1b[1;5C" }
  408. - { key: Right, mods: Alt, chars: "\x1b[1;3C" }
  409. - { key: Right, chars: "\x1b[C", mode: ~AppCursor }
  410. - { key: Right, chars: "\x1bOC", mode: AppCursor }
  411. - { key: Up, mods: Shift, chars: "\x1b[1;2A" }
  412. - { key: Up, mods: Control, chars: "\x1b[1;5A" }
  413. - { key: Up, mods: Alt, chars: "\x1b[1;3A" }
  414. - { key: Up, chars: "\x1b[A", mode: ~AppCursor }
  415. - { key: Up, chars: "\x1bOA", mode: AppCursor }
  416. - { key: Down, mods: Shift, chars: "\x1b[1;2B" }
  417. - { key: Down, mods: Control, chars: "\x1b[1;5B" }
  418. - { key: Down, mods: Alt, chars: "\x1b[1;3B" }
  419. - { key: Down, chars: "\x1b[B", mode: ~AppCursor }
  420. - { key: Down, chars: "\x1bOB", mode: AppCursor }
  421. - { key: F1, chars: "\x1bOP" }
  422. - { key: F2, chars: "\x1bOQ" }
  423. - { key: F3, chars: "\x1bOR" }
  424. - { key: F4, chars: "\x1bOS" }
  425. - { key: F5, chars: "\x1b[15~" }
  426. - { key: F6, chars: "\x1b[17~" }
  427. - { key: F7, chars: "\x1b[18~" }
  428. - { key: F8, chars: "\x1b[19~" }
  429. - { key: F9, chars: "\x1b[20~" }
  430. - { key: F10, chars: "\x1b[21~" }
  431. - { key: F11, chars: "\x1b[23~" }
  432. - { key: F12, chars: "\x1b[24~" }
  433. - { key: F1, mods: Shift, chars: "\x1b[1;2P" }
  434. - { key: F2, mods: Shift, chars: "\x1b[1;2Q" }
  435. - { key: F3, mods: Shift, chars: "\x1b[1;2R" }
  436. - { key: F4, mods: Shift, chars: "\x1b[1;2S" }
  437. - { key: F5, mods: Shift, chars: "\x1b[15;2~" }
  438. - { key: F6, mods: Shift, chars: "\x1b[17;2~" }
  439. - { key: F7, mods: Shift, chars: "\x1b[18;2~" }
  440. - { key: F8, mods: Shift, chars: "\x1b[19;2~" }
  441. - { key: F9, mods: Shift, chars: "\x1b[20;2~" }
  442. - { key: F10, mods: Shift, chars: "\x1b[21;2~" }
  443. - { key: F11, mods: Shift, chars: "\x1b[23;2~" }
  444. - { key: F12, mods: Shift, chars: "\x1b[24;2~" }
  445. - { key: F1, mods: Control, chars: "\x1b[1;5P" }
  446. - { key: F2, mods: Control, chars: "\x1b[1;5Q" }
  447. - { key: F3, mods: Control, chars: "\x1b[1;5R" }
  448. - { key: F4, mods: Control, chars: "\x1b[1;5S" }
  449. - { key: F5, mods: Control, chars: "\x1b[15;5~" }
  450. - { key: F6, mods: Control, chars: "\x1b[17;5~" }
  451. - { key: F7, mods: Control, chars: "\x1b[18;5~" }
  452. - { key: F8, mods: Control, chars: "\x1b[19;5~" }
  453. - { key: F9, mods: Control, chars: "\x1b[20;5~" }
  454. - { key: F10, mods: Control, chars: "\x1b[21;5~" }
  455. - { key: F11, mods: Control, chars: "\x1b[23;5~" }
  456. - { key: F12, mods: Control, chars: "\x1b[24;5~" }
  457. - { key: F1, mods: Alt, chars: "\x1b[1;6P" }
  458. - { key: F2, mods: Alt, chars: "\x1b[1;6Q" }
  459. - { key: F3, mods: Alt, chars: "\x1b[1;6R" }
  460. - { key: F4, mods: Alt, chars: "\x1b[1;6S" }
  461. - { key: F5, mods: Alt, chars: "\x1b[15;6~" }
  462. - { key: F6, mods: Alt, chars: "\x1b[17;6~" }
  463. - { key: F7, mods: Alt, chars: "\x1b[18;6~" }
  464. - { key: F8, mods: Alt, chars: "\x1b[19;6~" }
  465. - { key: F9, mods: Alt, chars: "\x1b[20;6~" }
  466. - { key: F10, mods: Alt, chars: "\x1b[21;6~" }
  467. - { key: F11, mods: Alt, chars: "\x1b[23;6~" }
  468. - { key: F12, mods: Alt, chars: "\x1b[24;6~" }
  469. - { key: F1, mods: Super, chars: "\x1b[1;3P" }
  470. - { key: F2, mods: Super, chars: "\x1b[1;3Q" }
  471. - { key: F3, mods: Super, chars: "\x1b[1;3R" }
  472. - { key: F4, mods: Super, chars: "\x1b[1;3S" }
  473. - { key: F5, mods: Super, chars: "\x1b[15;3~" }
  474. - { key: F6, mods: Super, chars: "\x1b[17;3~" }
  475. - { key: F7, mods: Super, chars: "\x1b[18;3~" }
  476. - { key: F8, mods: Super, chars: "\x1b[19;3~" }
  477. - { key: F9, mods: Super, chars: "\x1b[20;3~" }
  478. - { key: F10, mods: Super, chars: "\x1b[21;3~" }
  479. - { key: F11, mods: Super, chars: "\x1b[23;3~" }
  480. - { key: F12, mods: Super, chars: "\x1b[24;3~" }
  481. - { key: NumpadEnter, chars: "\n" }