feat(dotfiles): Add alacritty configuration
This commit is contained in:
		
							parent
							
								
									8cf6fb0360
								
							
						
					
					
						commit
						b67fca345a
					
				
					 3 changed files with 266 additions and 1 deletions
				
			
		|  | @ -24,5 +24,6 @@ in { | |||
|     "tmux.conf".source = "${dotfiles}/tmux.conf"; | ||||
|     "fish/foreign-env/tazjin".source = "${dotfiles}/config.fish"; | ||||
|     "rofi.conf".source = "${dotfiles}/rofi.conf"; | ||||
|     "alacritty.yml".source = "${dotfiles}/alacritty.yml"; | ||||
|   }; | ||||
| } | ||||
|  |  | |||
							
								
								
									
										264
									
								
								dotfiles/alacritty.yml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										264
									
								
								dotfiles/alacritty.yml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,264 @@ | |||
| # Configuration for Alacritty, the GPU enhanced terminal emulator | ||||
| 
 | ||||
| 
 | ||||
| # Any items in the `env` entry below will be added as | ||||
| # environment variables. Some entries may override variables | ||||
| # set by alacritty it self. | ||||
| env: | ||||
|   # TERM env customization. | ||||
|   # | ||||
|   # If this property is not set, alacritty will set it to xterm-256color. | ||||
|   # | ||||
|   # Note that some xterm terminfo databases don't declare support for italics. | ||||
|   # You can verify this by checking for the presence of `smso` and `sitm` in | ||||
|   # `infocmp xterm-256color`. | ||||
|   TERM: xterm-256color | ||||
| 
 | ||||
| # Window dimensions in character columns and lines | ||||
| # (changes require restart) | ||||
| dimensions: | ||||
|   columns: 80 | ||||
|   lines: 24 | ||||
| 
 | ||||
| # Adds this many blank pixels of padding around the window | ||||
| # Units are physical pixels; this is not DPI aware. | ||||
| # (change requires restart) | ||||
| padding: | ||||
|   x: 2 | ||||
|   y: 2 | ||||
| 
 | ||||
| # The FreeType rasterizer needs to know the device DPI for best results | ||||
| # (changes require restart) | ||||
| dpi: | ||||
|   x: 96.0 | ||||
|   y: 96.0 | ||||
| 
 | ||||
| # Display tabs using this many cells (changes require restart) | ||||
| tabspaces: 4 | ||||
| 
 | ||||
| # When true, bold text is drawn using the bright variant of colors. | ||||
| draw_bold_text_with_bright_colors: true | ||||
| 
 | ||||
| # Font configuration (changes require restart) | ||||
| font: | ||||
|   # The normal (roman) font face to use. | ||||
|   normal: | ||||
|     family: Input Mono | ||||
|   bold: | ||||
|     family: Input Mono | ||||
|   italic: | ||||
|     family: Input Mono | ||||
| 
 | ||||
|   # Point size of the font | ||||
|   size: 11.0 | ||||
| 
 | ||||
|   # Offset is the extra space around each character. offset.y can be thought of | ||||
|   # as modifying the linespacing, and offset.x as modifying the letter spacing. | ||||
|   offset: | ||||
|     x: 0.0 | ||||
|     y: 0.0 | ||||
| 
 | ||||
|   # Glyph offset determines the locations of the glyphs within their cells with | ||||
|   # the default being at the bottom. Increase the x offset to move the glyph to | ||||
|   # the right, increase the y offset to move the glyph upward. | ||||
|   glyph_offset: | ||||
|     x: 0.0 | ||||
|     y: 0.0 | ||||
| 
 | ||||
|   # OS X only: use thin stroke font rendering. Thin strokes are suitable | ||||
|   # for retina displays, but for non-retina you probably want this set to | ||||
|   # false. | ||||
|   use_thin_strokes: true | ||||
| 
 | ||||
| # Should display the render timer | ||||
| render_timer: false | ||||
| 
 | ||||
| # Use custom cursor colors. If true, display the cursor in the cursor.foreground | ||||
| # and cursor.background colors, otherwise invert the colors of the cursor. | ||||
| custom_cursor_colors: false | ||||
| 
 | ||||
| # Colors (Tomorrow Night Bright) | ||||
| colors: | ||||
|   # Default colors | ||||
|   primary: | ||||
|     background: '0x181818' | ||||
|     foreground: '0xe4e4ef' | ||||
| 
 | ||||
|   # Colors the cursor will use if `custom_cursor_colors` is true | ||||
|   cursor: | ||||
|     text: '0x000000' | ||||
|     cursor: '0xf5f5f5' | ||||
| 
 | ||||
|   # Normal colors | ||||
|   normal: | ||||
|     black:   '0x282828' | ||||
|     red:     '0xf43841' | ||||
|     green:   '0x73c936' | ||||
|     yellow:  '0xffdd33' | ||||
|     blue:    '0x96a6c8' | ||||
|     magenta: '0x9e95c7' | ||||
|     cyan:    '0x1fad83' | ||||
|     white:   '0xf5f5f5' | ||||
| 
 | ||||
|   # Bright colors | ||||
|   bright: | ||||
|     black:   '0x484848' | ||||
|     red:     '0xff4f58' | ||||
|     green:   '0x73c936' | ||||
|     yellow:  '0xffdd33' | ||||
|     blue:    '0x5f627f' | ||||
|     magenta: '0x9e95c7' | ||||
|     cyan:    '0x1fad83' | ||||
|     white:   '0xffffff' | ||||
| 
 | ||||
| # Visual Bell | ||||
| # | ||||
| # Any time the BEL code is received, Alacritty "rings" the visual bell. Once | ||||
| # rung, the terminal background will be set to white and transition back to the | ||||
| # default background color. You can control the rate of this transition by | ||||
| # setting the `duration` property (represented in milliseconds). You can also | ||||
| # configure the transition function by setting the `animation` property. | ||||
| # | ||||
| # Possible values for `animation` | ||||
| # `Ease` | ||||
| # `EaseOut` | ||||
| # `EaseOutSine` | ||||
| # `EaseOutQuad` | ||||
| # `EaseOutCubic` | ||||
| # `EaseOutQuart` | ||||
| # `EaseOutQuint` | ||||
| # `EaseOutExpo` | ||||
| # `EaseOutCirc` | ||||
| # `Linear` | ||||
| # | ||||
| # To completely disable the visual bell, set its duration to 0. | ||||
| # | ||||
| visual_bell: | ||||
|   animation: EaseOutExpo | ||||
|   duration: 0 | ||||
| 
 | ||||
| # Background opacity | ||||
| background_opacity: 0.95 | ||||
| 
 | ||||
| # Key bindings | ||||
| # | ||||
| # Each binding is defined as an object with some properties. Most of the | ||||
| # properties are optional. All of the alphabetical keys should have a letter for | ||||
| # the `key` value such as `V`. Function keys are probably what you would expect | ||||
| # as well (F1, F2, ..). The number keys above the main keyboard are encoded as | ||||
| # `Key1`, `Key2`, etc. Keys on the number pad are encoded `Number1`, `Number2`, | ||||
| # etc.  These all match the glutin::VirtualKeyCode variants. | ||||
| # | ||||
| # Possible values for `mods` | ||||
| # `Command`, `Super` refer to the super/command/windows key | ||||
| # `Control` for the control key | ||||
| # `Shift` for the Shift key | ||||
| # `Alt` and `Option` refer to alt/option | ||||
| # | ||||
| # mods may be combined with a `|`. For example, requiring control and shift | ||||
| # looks like: | ||||
| # | ||||
| # mods: Control|Shift | ||||
| # | ||||
| # The parser is currently quite sensitive to whitespace and capitalization - | ||||
| # capitalization must match exactly, and piped items must not have whitespace | ||||
| # around them. | ||||
| # | ||||
| # Either an `action`, `chars`, or `command` field must be present. | ||||
| #   `action` must be one of `Paste`, `PasteSelection`, `Copy`, or `Quit`. | ||||
| #   `chars` writes the specified string every time that binding is activated. | ||||
| #     These should generally be escape sequences, but they can be configured to | ||||
| #     send arbitrary strings of bytes. | ||||
| #   `command` must be a map containing a `program` string, and `args` array of | ||||
| #     strings. For example: | ||||
| #     - { ... , command: { program: "alacritty", args: ["-e", "vttest"] } } | ||||
| # | ||||
| # Want to add a binding (e.g. "PageUp") but are unsure what the X sequence | ||||
| # (e.g. "\x1b[5~") is? Open another terminal (like xterm) without tmux, | ||||
| # then run `showkey -a` to get the sequence associated to a key combination. | ||||
| key_bindings: | ||||
|   - { key: V,        mods: Control|Shift,    action: Paste               } | ||||
|   - { key: C,        mods: Control|Shift,    action: Copy                } | ||||
|   - { key: Q,        mods: Command, action: Quit                         } | ||||
|   - { key: W,        mods: Command, action: Quit                         } | ||||
|   - { key: Insert,   mods: Shift,   action: PasteSelection               } | ||||
|   - { key: Home,                    chars: "\x1bOH",   mode: AppCursor   } | ||||
|   - { key: Home,                    chars: "\x1b[H",   mode: ~AppCursor  } | ||||
|   - { key: End,                     chars: "\x1bOF",   mode: AppCursor   } | ||||
|   - { key: End,                     chars: "\x1b[F",   mode: ~AppCursor  } | ||||
|   - { key: PageUp,   mods: Shift,   chars: "\x1b[5;2~"                   } | ||||
|   - { key: PageUp,   mods: Control, chars: "\x1b[5;5~"                   } | ||||
|   - { key: PageUp,                  chars: "\x1b[5~"                     } | ||||
|   - { key: PageDown, mods: Shift,   chars: "\x1b[6;2~"                   } | ||||
|   - { key: PageDown, mods: Control, chars: "\x1b[6;5~"                   } | ||||
|   - { key: PageDown,                chars: "\x1b[6~"                     } | ||||
|   - { key: Left,     mods: Shift,   chars: "\x1b[1;2D"                   } | ||||
|   - { key: Left,     mods: Control, chars: "\x1b[1;5D"                   } | ||||
|   - { key: Left,     mods: Alt,     chars: "\x1b[1;3D"                   } | ||||
|   - { key: Left,                    chars: "\x1b[D",   mode: ~AppCursor  } | ||||
|   - { key: Left,                    chars: "\x1bOD",   mode: AppCursor   } | ||||
|   - { key: Right,    mods: Shift,   chars: "\x1b[1;2C"                   } | ||||
|   - { key: Right,    mods: Control, chars: "\x1b[1;5C"                   } | ||||
|   - { key: Right,    mods: Alt,     chars: "\x1b[1;3C"                   } | ||||
|   - { key: Right,                   chars: "\x1b[C",   mode: ~AppCursor  } | ||||
|   - { key: Right,                   chars: "\x1bOC",   mode: AppCursor   } | ||||
|   - { key: Up,       mods: Shift,   chars: "\x1b[1;2A"                   } | ||||
|   - { key: Up,       mods: Control, chars: "\x1b[1;5A"                   } | ||||
|   - { key: Up,       mods: Alt,     chars: "\x1b[1;3A"                   } | ||||
|   - { key: Up,                      chars: "\x1b[A",   mode: ~AppCursor  } | ||||
|   - { key: Up,                      chars: "\x1bOA",   mode: AppCursor   } | ||||
|   - { key: Down,     mods: Shift,   chars: "\x1b[1;2B"                   } | ||||
|   - { key: Down,     mods: Control, chars: "\x1b[1;5B"                   } | ||||
|   - { key: Down,     mods: Alt,     chars: "\x1b[1;3B"                   } | ||||
|   - { key: Down,                    chars: "\x1b[B",   mode: ~AppCursor  } | ||||
|   - { key: Down,                    chars: "\x1bOB",   mode: AppCursor   } | ||||
|   - { key: Tab,      mods: Shift,   chars: "\x1b[Z"                      } | ||||
|   - { key: F1,                      chars: "\x1bOP"                      } | ||||
|   - { key: F2,                      chars: "\x1bOQ"                      } | ||||
|   - { key: F3,                      chars: "\x1bOR"                      } | ||||
|   - { key: F4,                      chars: "\x1bOS"                      } | ||||
|   - { key: F5,                      chars: "\x1b[15~"                    } | ||||
|   - { key: F6,                      chars: "\x1b[17~"                    } | ||||
|   - { key: F7,                      chars: "\x1b[18~"                    } | ||||
|   - { key: F8,                      chars: "\x1b[19~"                    } | ||||
|   - { key: F9,                      chars: "\x1b[20~"                    } | ||||
|   - { key: F10,                     chars: "\x1b[21~"                    } | ||||
|   - { key: F11,                     chars: "\x1b[23~"                    } | ||||
|   - { key: F12,                     chars: "\x1b[24~"                    } | ||||
|   - { key: Back,                    chars: "\x7f"                        } | ||||
|   - { key: Back,     mods: Alt,     chars: "\x1b\x7f"                    } | ||||
|   - { key: Insert,                  chars: "\x1b[2~"                     } | ||||
|   - { key: Delete,                  chars: "\x1b[3~"                     } | ||||
| 
 | ||||
| # Mouse bindings | ||||
| # | ||||
| # Currently doesn't support modifiers. Both the `mouse` and `action` fields must | ||||
| # be specified. | ||||
| # | ||||
| # Values for `mouse`: | ||||
| # - Middle | ||||
| # - Left | ||||
| # - Right | ||||
| # - Numeric identifier such as `5` | ||||
| # | ||||
| # Values for `action`: | ||||
| # - Paste | ||||
| # - PasteSelection | ||||
| # - Copy (TODO) | ||||
| mouse_bindings: | ||||
|   - { mouse: Middle, action: PasteSelection } | ||||
| 
 | ||||
| mouse: | ||||
|   double_click: { threshold: 300 } | ||||
|   triple_click: { threshold: 300 } | ||||
| 
 | ||||
| selection: | ||||
|   semantic_escape_chars: ",│`|:\"' ()[]{}<>" | ||||
| 
 | ||||
| hide_cursor_when_typing: false | ||||
| 
 | ||||
| # Live config reload (changes require restart) | ||||
| live_config_reload: true | ||||
| 
 | ||||
| shell: | ||||
|   program: tmux | ||||
|  | @ -10,7 +10,7 @@ font pango:Input Mono 11 | |||
| floating_modifier $mod | ||||
| 
 | ||||
| # start a terminal | ||||
| bindsym $mod+Return exec alacritty | ||||
| bindsym $mod+Return exec alacritty --config-file /etc/alacritty.yml | ||||
| 
 | ||||
| # start an emacs frame | ||||
| bindsym $mod+e exec emacsclient -c -n | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue