diff --git a/alacritty.yml b/alacritty.yml index 51831d7..c16a457 100644 --- a/alacritty.yml +++ b/alacritty.yml @@ -1,400 +1,418 @@ -# 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: - # 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 - - # Window decorations - # Setting this to false will result in window without borders and title bar. - #decorations: true - -# Display tabs using this many cells (changes require restart) -tabspaces: 8 - -# 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: Triplicate T3c - style: Regular - # Style can be specified to pick a specific face. - # style: Regular - - # The bold font face - bold: - family: Triplicate T3c - style: Regular - # Style can be specified to pick a specific face. - # style: Bold - - # The italic font face - italic: - family: Triplicate T3c - style: Regular - # Style can be specified to pick a specific face. - # style: Italic - - # Point size of the font - size: 12.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 - y: 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 - y: 0 - - # Scale the font size based on the monitor's DPI. This will lead to bigger text on HiDPI - # screens and make reading text a little easier. - scale_with_dpi: true - - # 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 -debug: - 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) +background_opacity: 1.0 colors: - # Default colors + bright: + black: '0x666666' + blue: '0x7aa6da' + cyan: '0x54ced6' + green: '0x499369' + magenta: '0xb77ee0' + red: '0xff3334' + white: '0xa0a0a0' + yellow: '0xe7c547' + cursor: + cursor: '0x666666' + text: '0xfefefe' + dim: + black: '0x333333' + blue: '0x6699cc' + cyan: '0x66cccc' + green: '0x499369' + magenta: '0xcc99cc' + red: '0xf2777a' + white: '0x909090' + yellow: '0xffcc66' + normal: + black: '0x000000' + blue: '0x7aa6da' + cyan: '0x70c0ba' + green: '0x499369' + magenta: '0xc397d8' + red: '0xd54e53' + white: '0xa0a0a0' + yellow: '0xe6c547' primary: background: '0xfefefe' foreground: '0x333333' - - # (Optional) Bright and Dim foreground colors - # - # The dimmed foreground color is calculated automatically if it is not present. - # If the bright foreground color is not set, or `draw_bold_text_with_bright_colors` - # is `false`, the normal foreground color will be used. - # - # dim_foreground: '0x9a9a9a' - # bright_foreground: '0xffffff' - - # Colors the cursor will use if `custom_cursor_colors` is true - cursor: - text: '0x333333' - cursor: '0xefefef' - - # Normal colors +cursor_style: Block +custom_cursor_colors: true +debug: + render_timer: false +draw_bold_text_with_bright_colors: true +dynamic_title: true +env: + TERM: xterm-256color +font: + bold: + family: Triplicate T3c + style: Regular + glyph_offset: + x: 0 + y: 0 + italic: + family: Triplicate T3c + style: Regular normal: - black: '0x000000' - red: '0xd54e53' - green: '0xb9ca4a' - yellow: '0xe6c547' - blue: '0x7aa6da' - magenta: '0xc397d8' - cyan: '0x70c0ba' - white: '0xa0a0a0' + family: Triplicate T3c + style: Regular + offset: + x: 0 + y: 0 + scale_with_dpi: true + size: 12.0 + use_thin_strokes: true +hide_cursor_when_typing: false +key_bindings: +- action: Paste + key: V + mods: Command +- action: Copy + key: C + mods: Command +- action: Paste + key: Paste +- action: Copy + key: Copy +- action: Hide + key: H + mods: Command +- action: Quit + key: Q + mods: Command +- action: Quit + key: W + mods: Command +- chars: "\eOH" + key: Home + mode: AppCursor +- chars: "\e[H" + key: Home + mode: ~AppCursor +- chars: "\eOF" + key: End + mode: AppCursor +- chars: "\e[F" + key: End + mode: ~AppCursor +- action: ResetFontSize + key: Key0 + mods: Command +- action: IncreaseFontSize + key: Equals + mods: Command +- action: DecreaseFontSize + key: Minus + mods: Command +- chars: "\e[5;2~" + key: PageUp + mods: Shift +- chars: "\e[5;5~" + key: PageUp + mods: Control +- chars: "\e[5~" + key: PageUp +- chars: "\e[6;2~" + key: PageDown + mods: Shift +- chars: "\e[6;5~" + key: PageDown + mods: Control +- chars: "\e[6~" + key: PageDown +- chars: "\e[Z" + key: Tab + mods: Shift +- chars: "\x7F" + key: Back +- chars: "\e\x7F" + key: Back + mods: Alt +- chars: "\e[2~" + key: Insert +- chars: "\e[3~" + key: Delete +- chars: "\e[1;2D" + key: Left + mods: Shift +- chars: "\e[1;5D" + key: Left + mods: Control +- chars: "\e[1;3D" + key: Left + mods: Alt +- chars: "\e[D" + key: Left + mode: ~AppCursor +- chars: "\eOD" + key: Left + mode: AppCursor +- chars: "\e[1;2C" + key: Right + mods: Shift +- chars: "\e[1;5C" + key: Right + mods: Control +- chars: "\e[1;3C" + key: Right + mods: Alt +- chars: "\e[C" + key: Right + mode: ~AppCursor +- chars: "\eOC" + key: Right + mode: AppCursor +- chars: "\e[1;2A" + key: Up + mods: Shift +- chars: "\e[1;5A" + key: Up + mods: Control +- chars: "\e[1;3A" + key: Up + mods: Alt +- chars: "\e[A" + key: Up + mode: ~AppCursor +- chars: "\eOA" + key: Up + mode: AppCursor +- chars: "\e[1;2B" + key: Down + mods: Shift +- chars: "\e[1;5B" + key: Down + mods: Control +- chars: "\e[1;3B" + key: Down + mods: Alt +- chars: "\e[B" + key: Down + mode: ~AppCursor +- chars: "\eOB" + key: Down + mode: AppCursor +- chars: "\eOP" + key: F1 +- chars: "\eOQ" + key: F2 +- chars: "\eOR" + key: F3 +- chars: "\eOS" + key: F4 +- chars: "\e[15~" + key: F5 +- chars: "\e[17~" + key: F6 +- chars: "\e[18~" + key: F7 +- chars: "\e[19~" + key: F8 +- chars: "\e[20~" + key: F9 +- chars: "\e[21~" + key: F10 +- chars: "\e[23~" + key: F11 +- chars: "\e[24~" + key: F12 +- chars: "\e[1;2P" + key: F1 + mods: Shift +- chars: "\e[1;2Q" + key: F2 + mods: Shift +- chars: "\e[1;2R" + key: F3 + mods: Shift +- chars: "\e[1;2S" + key: F4 + mods: Shift +- chars: "\e[15;2~" + key: F5 + mods: Shift +- chars: "\e[17;2~" + key: F6 + mods: Shift +- chars: "\e[18;2~" + key: F7 + mods: Shift +- chars: "\e[19;2~" + key: F8 + mods: Shift +- chars: "\e[20;2~" + key: F9 + mods: Shift +- chars: "\e[21;2~" + key: F10 + mods: Shift +- chars: "\e[23;2~" + key: F11 + mods: Shift +- chars: "\e[24;2~" + key: F12 + mods: Shift +- chars: "\e[1;5P" + key: F1 + mods: Control +- chars: "\e[1;5Q" + key: F2 + mods: Control +- chars: "\e[1;5R" + key: F3 + mods: Control +- chars: "\e[1;5S" + key: F4 + mods: Control +- chars: "\e[15;5~" + key: F5 + mods: Control +- chars: "\e[17;5~" + key: F6 + mods: Control +- chars: "\e[18;5~" + key: F7 + mods: Control +- chars: "\e[19;5~" + key: F8 + mods: Control +- chars: "\e[20;5~" + key: F9 + mods: Control +- chars: "\e[21;5~" + key: F10 + mods: Control +- chars: "\e[23;5~" + key: F11 + mods: Control +- chars: "\e[24;5~" + key: F12 + mods: Control +- chars: "\e[1;6P" + key: F1 + mods: Alt +- chars: "\e[1;6Q" + key: F2 + mods: Alt +- chars: "\e[1;6R" + key: F3 + mods: Alt +- chars: "\e[1;6S" + key: F4 + mods: Alt +- chars: "\e[15;6~" + key: F5 + mods: Alt +- chars: "\e[17;6~" + key: F6 + mods: Alt +- chars: "\e[18;6~" + key: F7 + mods: Alt +- chars: "\e[19;6~" + key: F8 + mods: Alt +- chars: "\e[20;6~" + key: F9 + mods: Alt +- chars: "\e[21;6~" + key: F10 + mods: Alt +- chars: "\e[23;6~" + key: F11 + mods: Alt +- chars: "\e[24;6~" + key: F12 + mods: Alt +- chars: "\e[1;3P" + key: F1 + mods: Command +- chars: "\e[1;3Q" + key: F2 + mods: Command +- chars: "\e[1;3R" + key: F3 + mods: Command +- chars: "\e[1;3S" + key: F4 + mods: Command +- chars: "\e[15;3~" + key: F5 + mods: Command +- chars: "\e[17;3~" + key: F6 + mods: Command +- chars: "\e[18;3~" + key: F7 + mods: Command +- chars: "\e[19;3~" + key: F8 + mods: Command +- chars: "\e[20;3~" + key: F9 + mods: Command +- chars: "\e[21;3~" + key: F10 + mods: Command +- chars: "\e[23;3~" + key: F11 + mods: Command +- chars: "\e[24;3~" + key: F12 + mods: Command +- chars: ' - # Bright colors - bright: - black: '0x666666' - red: '0xff3334' - green: '0x9ec400' - yellow: '0xe7c547' - blue: '0x7aa6da' - magenta: '0xb77ee0' - cyan: '0x54ced6' - white: '0xa0a0a0' - - # Dim colors (Optional) - dim: - black: '0x333333' - red: '0xf2777a' - green: '0x99cc99' - yellow: '0xffcc66' - blue: '0x6699cc' - magenta: '0xcc99cc' - cyan: '0x66cccc' - white: '0x909090' - - -# 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. -# + ' + key: NumpadEnter +- chars: '[' + key: 23 + mods: Alt +- chars: ']' + key: 22 + mods: Alt +- chars: '|' + key: 26 + mods: Alt +- chars: '{' + key: 28 + mods: Alt +- chars: '}' + key: 25 + mods: Alt +- chars: \ + key: Backslash + mods: Alt|Shift +- chars: '@' + key: 37 + mods: Alt +- chars: '~' + key: N + mods: Alt +- action: SpawnNewInstance + key: N + mods: Command +live_config_reload: true +mouse: + double_click: + threshold: 300 + faux_scrollback_lines: 1 + triple_click: + threshold: 300 +mouse_bindings: +- action: PasteSelection + mouse: Middle +selection: + semantic_escape_chars: ",\u2502`|:\"' ()[]{}<>" +shell: + program: /usr/local/bin/zsh +tabspaces: 8 +unfocused_hollow_cursor: true visual_bell: animation: EaseOutExpo duration: 0 - -# Background opacity -background_opacity: 1.0 - -# 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: - # Click settings - # - # The `double_click` and `triple_click` settings control the time - # alacritty should wait for accepting multiple clicks as one double - # or triple click. - double_click: { threshold: 300 } - triple_click: { threshold: 300 } - - # Faux Scrollback - # - # The `faux_scrollback_lines` setting controls the number - # of lines the terminal should scroll when the alternate - # screen buffer is active. This is used to allow mouse - # scrolling for applications like `man`. - # - # To disable this completely, set `faux_scrollback_lines` to 0. - faux_scrollback_lines: 1 - -selection: - semantic_escape_chars: ",│`|:\"' ()[]{}<>" - -dynamic_title: true - -hide_cursor_when_typing: false - -# Style of the cursor -# -# Values for 'cursor_style': -# - Block -# - Underline -# - Beam -cursor_style: Block - -# Whether the cursor should be a hollow block on window focus loss -unfocused_hollow_cursor: true - -# Live config reload (changes require restart) -live_config_reload: true - -# Shell -# -# You can set shell.program to the path of your favorite shell, e.g. /bin/fish. -# Entries in shell.args are passed unmodified as arguments to the shell. -# -# shell: -# program: /bin/bash -# args: -# - --login - -shell: - program: /usr/local/bin/zsh - -# 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. -# -# A list with all available `key` names can be found here: -# https://docs.rs/glutin/*/glutin/enum.VirtualKeyCode.html#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"] } } -key_bindings: - - { key: V, mods: Command, action: Paste } - - { key: C, mods: Command, action: Copy } - - { key: Paste, action: Paste } - - { key: Copy, action: Copy } - - { key: H, mods: Command, action: Hide } - - { key: Q, mods: Command, action: Quit } - - { key: W, mods: Command, action: Quit } - - { 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: Key0, mods: Command, action: ResetFontSize } - - { key: Equals, mods: Command, action: IncreaseFontSize } - - { key: Minus, mods: Command, action: DecreaseFontSize } - - { 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: Tab, mods: Shift, chars: "\x1b[Z" } - - { key: Back, chars: "\x7f" } - - { key: Back, mods: Alt, chars: "\x1b\x7f" } - - { key: Insert, chars: "\x1b[2~" } - - { key: Delete, chars: "\x1b[3~" } - - { 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: 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: F1, mods: Shift, chars: "\x1b[1;2P" } - - { key: F2, mods: Shift, chars: "\x1b[1;2Q" } - - { key: F3, mods: Shift, chars: "\x1b[1;2R" } - - { key: F4, mods: Shift, chars: "\x1b[1;2S" } - - { key: F5, mods: Shift, chars: "\x1b[15;2~" } - - { key: F6, mods: Shift, chars: "\x1b[17;2~" } - - { key: F7, mods: Shift, chars: "\x1b[18;2~" } - - { key: F8, mods: Shift, chars: "\x1b[19;2~" } - - { key: F9, mods: Shift, chars: "\x1b[20;2~" } - - { key: F10, mods: Shift, chars: "\x1b[21;2~" } - - { key: F11, mods: Shift, chars: "\x1b[23;2~" } - - { key: F12, mods: Shift, chars: "\x1b[24;2~" } - - { key: F1, mods: Control, chars: "\x1b[1;5P" } - - { key: F2, mods: Control, chars: "\x1b[1;5Q" } - - { key: F3, mods: Control, chars: "\x1b[1;5R" } - - { key: F4, mods: Control, chars: "\x1b[1;5S" } - - { key: F5, mods: Control, chars: "\x1b[15;5~" } - - { key: F6, mods: Control, chars: "\x1b[17;5~" } - - { key: F7, mods: Control, chars: "\x1b[18;5~" } - - { key: F8, mods: Control, chars: "\x1b[19;5~" } - - { key: F9, mods: Control, chars: "\x1b[20;5~" } - - { key: F10, mods: Control, chars: "\x1b[21;5~" } - - { key: F11, mods: Control, chars: "\x1b[23;5~" } - - { key: F12, mods: Control, chars: "\x1b[24;5~" } - - { key: F1, mods: Alt, chars: "\x1b[1;6P" } - - { key: F2, mods: Alt, chars: "\x1b[1;6Q" } - - { key: F3, mods: Alt, chars: "\x1b[1;6R" } - - { key: F4, mods: Alt, chars: "\x1b[1;6S" } - - { key: F5, mods: Alt, chars: "\x1b[15;6~" } - - { key: F6, mods: Alt, chars: "\x1b[17;6~" } - - { key: F7, mods: Alt, chars: "\x1b[18;6~" } - - { key: F8, mods: Alt, chars: "\x1b[19;6~" } - - { key: F9, mods: Alt, chars: "\x1b[20;6~" } - - { key: F10, mods: Alt, chars: "\x1b[21;6~" } - - { key: F11, mods: Alt, chars: "\x1b[23;6~" } - - { key: F12, mods: Alt, chars: "\x1b[24;6~" } - - { key: F1, mods: Command, chars: "\x1b[1;3P" } - - { key: F2, mods: Command, chars: "\x1b[1;3Q" } - - { key: F3, mods: Command, chars: "\x1b[1;3R" } - - { key: F4, mods: Command, chars: "\x1b[1;3S" } - - { key: F5, mods: Command, chars: "\x1b[15;3~" } - - { key: F6, mods: Command, chars: "\x1b[17;3~" } - - { key: F7, mods: Command, chars: "\x1b[18;3~" } - - { key: F8, mods: Command, chars: "\x1b[19;3~" } - - { key: F9, mods: Command, chars: "\x1b[20;3~" } - - { key: F10, mods: Command, chars: "\x1b[21;3~" } - - { key: F11, mods: Command, chars: "\x1b[23;3~" } - - { key: F12, mods: Command, chars: "\x1b[24;3~" } - - { key: NumpadEnter, chars: "\n" } - - { key: 23, mods: Alt, chars: "[" } - - { key: 22, mods: Alt, chars: "]" } - - { key: 26, mods: Alt, chars: "|" } - - { key: 28, mods: Alt, chars: "{" } - - { key: 25, mods: Alt, chars: "}" } - - { key: Backslash, mods: Alt|Shift, chars: "\\" } - - { key: 37, mods: Alt, chars: "@" } - - { key: N, mods: Alt, chars: "~" } +window: + decorations: none + dimensions: + columns: 80 + lines: 24 + padding: + x: 2 + y: 2