First commit from Pengwin

This commit is contained in:
Joseph Ferano 2020-04-20 01:03:51 +07:00
commit 1bfdb95a09
11 changed files with 1335 additions and 0 deletions

View File

@ -0,0 +1,938 @@
# 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 itself.
env:
# TERM variable
#
# This value is used to set the `$TERM` environment variable for
# each instance of Alacritty. If it is not present, alacritty will
# check the local terminfo database and use `alacritty` if it is
# available, otherwise `xterm-256color` is used.
TERM: alacritty
window:
# Window dimensions (changes require restart)
#
# Specified in number of columns/lines, not pixels.
# If both are `0`, this setting is ignored.
dimensions:
columns: 232
lines: 60
# Window position (changes require restart)
#
# Specified in number of pixels.
# If the position is not set, the window manager will handle the placement.
position:
x: 24
y: 22
# Window padding (changes require restart)
#
# Blank space added around the window in pixels. This padding is scaled
# by DPI and the specified value is always added at both opposing sides.
padding:
x: 5
y: 5
# Spread additional padding evenly around the terminal content.
#dynamic_padding: true
# Window decorations
#
# Values for `decorations`:
# - full: Borders and title bar
# - none: Neither borders nor title bar
#
# Values for `decorations` (macOS only):
# - transparent: Title bar, transparent background and title bar buttons
# - buttonless: Title bar, transparent background, but no title bar buttons
decorations: none
# Startup Mode (changes require restart)
#
# Values for `startup_mode`:
# - Windowed
# - Maximized
# - Fullscreen
#
# Values for `startup_mode` (macOS only):
# - SimpleFullscreen
startup_mode: Windowed
# Window title
title: Alacritty
# Window class (Linux/BSD only):
#class:
# Application instance name
#instance: Alacritty
# General application class
#general: Alacritty
# GTK theme variant (Linux/BSD only)
#
# Override the variant of the GTK theme. Commonly supported values are `dark` and `light`.
# Set this to `None` to use the default theme variant.
#gtk_theme_variant: None
#scrolling:
# Maximum number of lines in the scrollback buffer.
# Specifying '0' will disable scrolling.
#history: 10000
# Number of lines the viewport will move for every line scrolled when
# scrollback is enabled (history > 0).
#multiplier: 3
# Font configuration
font:
# Normal (roman) font face
# normal:
# Font family
#
# Default:
# - (macOS) Menlo
# - (Linux/BSD) monospace
# - (Windows) Consolas
# family: Fira Code Medium
# The `style` can be specified to pick a specific face.
#style: Regular
# Bold font face
#bold:
# Font family
#
# If the bold family is not specified, it will fall back to the
# value specified for the normal font.
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Bold
# Italic font face
#italic:
# Font family
#
# If the italic family is not specified, it will fall back to the
# value specified for the normal font.
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Italic
# Bold italic font face
#bold_italic:
# Font family
#
# If the bold italic family is not specified, it will fall back to the
# value specified for the normal font.
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Bold Italic
# Point size
size: 11.0
# Offset is the extra space around each character. `offset.y` can be thought of
# as modifying the line spacing, 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. Increasing `x` moves the glyph to the right,
# increasing `y` moves the glyph upwards.
#glyph_offset:
# x: 0
# y: 0
# Thin stroke font rendering (macOS only)
#
# Thin strokes are suitable for retina displays, but for non-retina screens
# it is recommended to set `use_thin_strokes` to `false`
#
# macOS >= 10.14.x:
#
# If the font quality on non-retina display looks bad then set
# `use_thin_strokes` to `true` and enable font smoothing by running the
# following command:
# `defaults write -g CGFontRenderingFontSmoothingDisabled -bool NO`
#
# This is a global setting and will require a log out or restart to take
# effect.
#use_thin_strokes: true
# If `true`, bold text is drawn using the bright color variants.
#draw_bold_text_with_bright_colors: false
schemes:
Xterm: &xterm
# Default colors
primary:
background: '#000000'
foreground: '#ffffff'
# Normal colors
normal:
black: '#000000'
red: '#cd0000'
green: '#00cd00'
yellow: '#cdcd00'
blue: '#0000ee'
magenta: '#cd00cd'
cyan: '#00cdcd'
white: '#e5e5e5'
# Bright colors
bright:
black: '#7f7f7f'
red: '#ff0000'
green: '#00ff00'
yellow: '#ffff00'
blue: '#5c5cff'
magenta: '#ff00ff'
cyan: '#00ffff'
white: '#ffffff'
# Colors (Ubuntu)
Ayu Dark: &ayu
# Default colors
primary:
background: '#0A0E14'
foreground: '#B3B1AD'
# Normal colors
normal:
black: '#01060E'
red: '#EA6C73'
green: '#91B362'
yellow: '#F9AF4F'
blue: '#53BDFA'
magenta: '#FAE994'
cyan: '#90E1C6'
white: '#C7C7C7'
# Bright colors
bright:
black: '#686868'
red: '#F07178'
green: '#C2D94C'
yellow: '#FFB454'
blue: '#59C2FF'
magenta: '#FFEE99'
cyan: '#95E6CB'
white: '#FFFFFF'
Tomorrow Night: &tmr
# Default colors
primary:
background: '0x1d1f21'
foreground: '0xc5c8c6'
# Colors the cursor will use if `custom_cursor_colors` is true
cursor:
text: '0x1d1f21'
cursor: '0xc5c8c6'
# Normal colors
normal:
black: '0x1d1f21'
red: '0xcc6666'
green: '0xb5bd68'
yellow: '0xf0c674'
blue: '0x81a2be'
magenta: '0xb294bb'
cyan: '0x8abeb7'
white: '0xc5c8c6'
# Bright colors
bright:
black: '0x969896'
red: '0xcc6666'
green: '0xb5bd68'
yellow: '0xf0c674'
blue: '0x81a2be'
magenta: '0xb294bb'
cyan: '0x8abeb7'
white: '0xffffff'
indexed_colors:
- { index: 16, color: '0xde935f' }
- { index: 17, color: '0xa3685a' }
- { index: 18, color: '0x282a2e' }
- { index: 19, color: '0x373b41' }
- { index: 20, color: '0xb4b7b4' }
- { index: 21, color: '0xe0e0e0' }
Dracula: &dracula
# Default colors
primary:
background: '#282a36'
foreground: '#f8f8f2'
# Normal colors
normal:
black: '#000000'
red: '#ff5555'
green: '#50fa7b'
yellow: '#f1fa8c'
blue: '#caa9fa'
magenta: '#ff79c6'
cyan: '#8be9fd'
white: '#bfbfbf'
# Bright colors
bright:
black: '#575b70'
red: '#ff6e67'
green: '#5af78e'
yellow: '#f4f99d'
blue: '#caa9fa'
magenta: '#ff92d0'
cyan: '#9aedfe'
white: '#e6e6e6'
# Colors (iTerm 2 default theme)
iTerm: &iterm
# Default colors
primary:
background: '#101421'
foreground: '#fffbf6'
# Normal colors
normal:
black: '#2e2e2e'
red: '#eb4129'
green: '#abe047'
yellow: '#f6c744'
blue: '#47a0f3'
magenta: '#7b5cb0'
cyan: '#64dbed'
white: '#e5e9f0'
# Bright colors
bright:
black: '#565656'
red: '#ec5357'
green: '#c0e17d'
yellow: '#f9da6a'
blue: '#49a4f8'
magenta: '#a47de9'
cyan: '#99faf2'
white: '#ffffff'
## [New Moon](https://github.com/taniarascia/new-moon)
# Colors (New Moon)
New Moon: &newmoon
# Default colors
primary:
background: '#2D2D2D'
foreground: '#B3B9C5'
# Normal colors
normal:
black: '#2D2D2D'
red: '#F2777A'
green: '#92D192'
yellow: '#FFD479'
blue: '#6AB0F3'
magenta: '#E1A6F2'
cyan: '#76D4D6'
white: '#B3B9C5'
# Bright colors
bright:
black: '#777C85'
red: '#F2777A'
green: '#76D4D6'
yellow: '#FFEEA6'
blue: '#6AB0F3'
magenta: '#E1A6F2'
cyan: '#76D4D6'
white: '#FFFFFF'
## [Nord](https://github.com/arcticicestudio/nord)
# Colors (Nord)
Nord: &nord
# Default colors
primary:
background: '#2E3440'
foreground: '#D8DEE9'
# Normal colors
normal:
black: '#3B4252'
red: '#BF616A'
green: '#A3BE8C'
yellow: '#EBCB8B'
blue: '#81A1C1'
magenta: '#B48EAD'
cyan: '#88C0D0'
white: '#E5E9F0'
# Bright colors
bright:
black: '#4C566A'
red: '#BF616A'
green: '#A3BE8C'
yellow: '#EBCB8B'
blue: '#81A1C1'
magenta: '#B48EAD'
cyan: '#8FBCBB'
white: '#ECEFF4'
## [Oceanic Next](https://github.com/voronianski/oceanic-next-color-scheme)
# Colors (Oceanic Next)
Oceanic: &oceanic
# Default colors
primary:
background: '#1b2b34'
foreground: '#d8dee9'
# Colors the cursor will use if `custom_cursor_colors` is true
cursor:
text: '#1b2b34'
cursor: '#ffffff'
# Normal colors
normal:
black: '#343d46'
red: '#EC5f67'
green: '#99C794'
yellow: '#FAC863'
blue: '#6699cc'
magenta: '#c594c5'
cyan: '#5fb3b3'
white: '#d8dee9'
# Bright colors
bright:
black: '#343d46'
red: '#EC5f67'
green: '#99C794'
yellow: '#FAC863'
blue: '#6699cc'
magenta: '#c594c5'
cyan: '#5fb3b3'
white: '#d8dee9'
## One Dark
# Colors (One Dark)
One Dark: &onedark
# Default colors
primary:
background: '#282c34'
foreground: '#abb2bf'
# Normal colors
normal:
# NOTE: Use '#131613' for the `black` color if you'd like to see
# black text on the background.
black: '#282c34'
red: '#e06c75'
green: '#98c379'
yellow: '#d19a66'
blue: '#61afef'
magenta: '#c678dd'
cyan: '#56b6c2'
white: '#abb2bf'
# Bright colors
bright:
black: '#5c6370'
red: '#e06c75'
green: '#98c379'
yellow: '#d19a66'
blue: '#61afef'
magenta: '#c678dd'
cyan: '#56b6c2'
white: '#ffffff'
## [Oxide](https://github.com/dikiaap/dotfiles)
# Colors (Oxide)
Oxide: &oxide
# Default colors
primary:
background: '#212121'
foreground: '#c0c5ce'
bright_foreground: '#f3f4f5'
cursor:
text: '#212121'
cursor: '#c0c5ce'
# Normal colors
normal:
black: '#212121'
red: '#e57373'
green: '#a6bc69'
yellow: '#fac863'
blue: '#6699cc'
magenta: '#c594c5'
cyan: '#5fb3b3'
white: '#c0c5ce'
# Bright colors
bright:
black: '#5c5c5c'
red: '#e57373'
green: '#a6bc69'
yellow: '#fac863'
blue: '#6699cc'
magenta: '#c594c5'
cyan: '#5fb3b3'
white: '#f3f4f5'
## [Snazzy](https://github.com/sindresorhus/hyper-snazzy)
# Colors (Snazzy)
Snazzy: &snazzy
# Default colors
primary:
background: '#282a36'
foreground: '#eff0eb'
# Normal colors
normal:
black: '#282a36'
red: '#ff5c57'
green: '#5af78e'
yellow: '#f3f99d'
blue: '#57c7ff'
magenta: '#ff6ac1'
cyan: '#9aedfe'
white: '#f1f1f0'
# Bright colors
bright:
black: '#686868'
red: '#ff5c57'
green: '#5af78e'
yellow: '#f3f99d'
blue: '#57c7ff'
magenta: '#ff6ac1'
cyan: '#9aedfe'
white: '#f1f1f0'
## [Taerminal](https://github.com/cozywigwam/iterm-taerminal)
# Colors (Taerminal)
Taerminal: &taerminal
# Default colors
primary:
background: '#26282a'
foreground: '#f0f0f0'
cursor:
background: '#f0f0f0'
foreground: '#26282a'
# Normal colors
normal:
black: '#26282a'
red: '#ff8878'
green: '#b4fb73'
yellow: '#fffcb7'
blue: '#8bbce5'
magenta: '#ffb2fe'
cyan: '#a2e1f8'
white: '#f1f1f1'
# Bright colors
bright:
black: '#6f6f6f'
red: '#fe978b'
green: '#d6fcba'
yellow: '#fffed5'
blue: '#c2e3ff'
magenta: '#ffc6ff'
cyan: '#c0e9f8'
white: '#ffffff'
## [Tender](https://github.com/huyvohcmc/tender-alacritty)
# Colors (Tender)
Tender: &tender
# Default colors
primary:
background: '#282828'
foreground: '#eeeeee'
# Normal colors
normal:
black: '#282828'
red: '#f43753'
green: '#c9d05c'
yellow: '#ffc24b'
blue: '#b3deef'
magenta: '#d3b987'
cyan: '#73cef4'
white: '#eeeeee'
# Bright colors
bright:
black: '#4c4c4c'
red: '#f43753'
green: '#c9d05c'
yellow: '#ffc24b'
blue: '#b3deef'
magenta: '#d3b987'
cyan: '#73cef4'
white: '#feffff'
#colors: *tender
#colors: *ayu
#colors: *dracula
#colors: *tmr
#colors: *iterm
colors: *newmoon
#colors: *nord
#colors: *oceanic
#colors: *onedark
#colors: *oxide
#colors: *snazzy
#colors: *taerminal
custom_cursor_colors: true
# black
# red
# green
# yellow
# blue
# magenta
# cyan
# white
# brblack
# brred
# brgreen
# bryellow
# brblue
# brmagenta
# brcyan
# brwhite
# normal
# 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.
#
# Values for `animation`:
# - Ease
# - EaseOut
# - EaseOutSine
# - EaseOutQuad
# - EaseOutCubic
# - EaseOutQuart
# - EaseOutQuint
# - EaseOutExpo
# - EaseOutCirc
# - Linear
#
# Specifying a `duration` of `0` will disable the visual bell.
#visual_bell:
# animation: EaseOutExpo
# duration: 0
# color: '#ffffff'
# Background opacity
#
# Window opacity as a floating point number from `0.0` to `1.0`.
# The value `0.0` is completely transparent and `1.0` is opaque.
background_opacity: 0.75
#selection:
#semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
# When set to `true`, selected text will be copied to the primary clipboard.
#save_to_clipboard: false
# Allow terminal applications to change Alacritty's window title.
#dynamic_title: true
#cursor:
# Cursor style
#
# Values for `style`:
# - ▇ Block
# - _ Underline
# - | Beam
#style: Block
# If this is `true`, the cursor will be rendered as a hollow box when the
# window is not focused.
#unfocused_hollow: 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.
#
# Default:
# - (macOS) /bin/bash --login
# - (Linux/BSD) user login shell
# - (Windows) powershell
shell:
program: wsl
# args:
# - --login
# Startup directory
#
# Directory the shell is started in. If this is unset, or `None`, the working
# directory of the parent process will be used.
working_directory: C:\Users\josep
# WinPTY backend (Windows only)
#
# Alacritty defaults to using the newer ConPTY backend if it is available,
# since it resolves a lot of bugs and is quite a bit faster. If it is not
# available, the the WinPTY backend will be used instead.
#
# Setting this option to `true` makes Alacritty use the legacy WinPTY backend,
# even if the ConPTY backend is available.
#winpty_backend: false
# Send ESC (\x1b) before characters when alt is pressed.
#alt_send_esc: true
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 }
# If this is `true`, the cursor is temporarily hidden when typing.
#hide_when_typing: false
#url:
# URL launcher
#
# This program is executed when clicking on a text which is recognized as a URL.
# The URL is always added to the command as the last parameter.
#
# When set to `None`, URL launching will be disabled completely.
#
# Default:
# - (macOS) open
# - (Linux/BSD) xdg-open
# - (Windows) explorer
#launcher:
# program: xdg-open
# args: []
# URL modifiers
#
# These are the modifiers that need to be held down for opening URLs when clicking
# on them. The available modifiers are documented in the key binding section.
#modifiers: None
# Mouse bindings
#
# Mouse bindings are specified as a list of objects, much like the key
# bindings further below.
#
# To trigger mouse bindings when an application running within Alacritty captures the mouse, the
# `Shift` modifier is automatically added as a requirement.
#
# Each mouse binding will specify a:
#
# - `mouse`:
#
# - Middle
# - Left
# - Right
# - Numeric identifier such as `5`
#
# - `action` (see key bindings)
#
# And optionally:
#
# - `mods` (see key bindings)
#mouse_bindings:
# - { mouse: Middle, action: PasteSelection }
# Key bindings
#
# Key bindings are specified as a list of objects. For example, this is the
# default paste binding:
#
# `- { key: V, mods: Control|Shift, action: Paste }`
#
# Each key binding will specify a:
#
# - `key`: Identifier of the key pressed
#
# - A-Z
# - F1-F24
# - Key0-Key9
#
# A full list with available key codes can be found here:
# https://docs.rs/glutin/*/glutin/event/enum.VirtualKeyCode.html#variants
#
# Instead of using the name of the keys, the `key` field also supports using
# the scancode of the desired key. Scancodes have to be specified as a
# decimal number. This command will allow you to display the hex scancodes
# for certain keys:
#
# `showkey --scancodes`.
#
# Then exactly one of:
#
# - `chars`: Send a byte sequence to the running application
#
# The `chars` field writes the specified string to the terminal. This makes
# it possible to pass escape sequences. To find escape codes for bindings
# like `PageUp` (`"\x1b[5~"`), you can run the command `showkey -a` outside
# of tmux. Note that applications use terminfo to map escape sequences back
# to keys. It is therefore required to update the terminfo when changing an
# escape sequence.
#
# - `action`: Execute a predefined action
#
# - Copy
# - Paste
# - PasteSelection
# - IncreaseFontSize
# - DecreaseFontSize
# - ResetFontSize
# - ScrollPageUp
# - ScrollPageDown
# - ScrollLineUp
# - ScrollLineDown
# - ScrollToTop
# - ScrollToBottom
# - ClearHistory
# - Hide
# - Minimize
# - Quit
# - ToggleFullscreen
# - SpawnNewInstance
# - ClearLogNotice
# - ReceiveChar
# - None
#
# (macOS only):
# - ToggleSimpleFullscreen: Enters fullscreen without occupying another space
#
# - `command`: Fork and execute a specified command plus arguments
#
# The `command` field must be a map containing a `program` string and an
# `args` array of command line parameter strings. For example:
# `{ program: "alacritty", args: ["-e", "vttest"] }`
#
# And optionally:
#
# - `mods`: Key modifiers to filter binding actions
#
# - Command
# - Control
# - Option
# - Super
# - Shift
# - Alt
#
# Multiple `mods` can be combined using `|` like this:
# `mods: Control|Shift`.
# Whitespace and capitalization are relevant and must match the example.
#
# - `mode`: Indicate a binding for only specific terminal reported modes
#
# This is mainly used to send applications the correct escape sequences
# when in different modes.
#
# - AppCursor
# - AppKeypad
# - Alt
#
# A `~` operator can be used before a mode to apply the binding whenever
# the mode is *not* active, e.g. `~Alt`.
#
# Bindings are always filled by default, but will be replaced when a new
# binding with the same triggers is defined. To unset a default binding, it can
# be mapped to the `ReceiveChar` action. Alternatively, you can use `None` for
# a no-op if you do not wish to receive input characters for that binding.
#
# If the same trigger is assigned to multiple actions, all of them are executed
# at once.
key_bindings:
# (Windows, Linux, and BSD only)
- { key: V, mods: Alt, action: Paste }
- { key: C, mods: Alt, action: Copy }
#- { key: Insert, mods: Shift, action: PasteSelection }
#- { key: Key0, mods: Control, action: ResetFontSize }
#- { key: Equals, mods: Control, action: IncreaseFontSize }
#- { key: Add, mods: Control, action: IncreaseFontSize }
#- { key: Subtract, mods: Control, action: DecreaseFontSize }
#- { key: Minus, mods: Control, action: DecreaseFontSize }
# (Windows only)
#- { key: Return, mods: Alt, action: ToggleFullscreen }
# (macOS only)
#- { key: Key0, mods: Command, action: ResetFontSize }
#- { key: Equals, mods: Command, action: IncreaseFontSize }
#- { key: Add, mods: Command, action: IncreaseFontSize }
#- { key: Minus, mods: Command, action: DecreaseFontSize }
#- { key: K, mods: Command, action: ClearHistory }
#- { key: K, mods: Command, chars: "\x0c" }
#- { key: V, mods: Command, action: Paste }
#- { key: C, mods: Command, action: Copy }
#- { key: H, mods: Command, action: Hide }
#- { key: M, mods: Command, action: Minimize }
#- { key: Q, mods: Command, action: Quit }
#- { key: W, mods: Command, action: Quit }
#- { key: F, mods: Command|Control, action: ToggleFullscreen }
#- { key: Paste, action: Paste }
#- { key: Copy, action: Copy }
#- { key: L, mods: Control, action: ClearLogNotice }
#- { key: L, mods: Control, chars: "\x0c" }
#- { key: PageUp, mods: Shift, action: ScrollPageUp, mode: ~Alt }
#- { key: PageDown, mods: Shift, action: ScrollPageDown, mode: ~Alt }
#- { key: Home, mods: Shift, action: ScrollToTop, mode: ~Alt }
#- { key: End, mods: Shift, action: ScrollToBottom, mode: ~Alt }
#debug:
# Display the time it takes to redraw each frame.
#render_timer: false
# Keep the log file after quitting Alacritty.
#persistent_logging: false
# Log level
#
# Values for `log_level`:
# - None
# - Error
# - Warn
# - Info
# - Debug
# - Trace
#log_level: Warn
# Print all received window events.
#print_events: false

21
.config/fish/config.fish Normal file
View File

@ -0,0 +1,21 @@
set -g fish_user_paths $fish_user_paths ~/bin ~/.cargo/bin ~/.local/bin
set -g MANPAGER "sh -c 'col -bx | bat -l man -p'"
set EDITOR vim
set -U FZF_COMPLETE 0
set -U FZF_LEGACY_KEYBINDINGS 0
source ~/.config/fish/dircolors.fish
bind \cx 'if jobs > /dev/null ; fg; fish_prompt; end'
abbr -a -g c "clip.exe"
abbr -a -g o wsl-open
abbr -a -g dot dotfiles
alias ll "exa -la"
alias xdg-open wsl-ope
alias dotfiles "git --git-dir=$HOME/.dotfiles --work-tree=$HOME"

View File

@ -0,0 +1,5 @@
# Defined in /tmp/fish.6qfkSz/dotfiles-update-win.fish @ line 1
function dotfiles-update-win
cp /mnt/c/Users/josep/AppData/Roaming/alacritty/alacritty.yml ~/.config/alacritty/alacritty.yml
cp /mnt/c/Users/josep/.ideavimrc ~/.ideavimrc
end

View File

@ -0,0 +1,3 @@
function fish_greeting
fortune | lolcat -p 2.5 -S 102
end

View File

@ -0,0 +1,79 @@
function fish_prompt
# - green lines if the last return command is OK, red otherwise
# - your user name, in red if root or yellow otherwise
# - your hostname, in cyan if ssh or blue otherwise
# - the current path (with prompt_pwd)
# - date +%X
# - the current virtual environment, if any
# - the current battery state, if any, and if your power cable is unplugged, and if you have "acpi"
# - current background jobs, if any
# It goes from:
# ┬─[nim@Hattori:~][11:39:00]
# ╰─>$ echo here
# To:
# ┬─[nim@Hattori:~/w/dashboard][11:37:14][V:django20][G:master↑1|111][B:85%, 05:41:42 remaining]
# │ 2 15054 0% arrêtée sleep 100000
# │ 1 15048 0% arrêtée sleep 100000
# ╰─>$ echo there
function _nim_prompt_wrapper
set retc $argv[1]
set field_name $argv[2]
set field_value $argv[3]
set_color normal
set_color $retc
echo -n '─'
set_color -o green
echo -n '['
set_color normal
test -n $field_name
and echo -n $field_name:
set_color $retc
echo -n $field_value
set_color -o green
echo -n ']'
end
and set retc brgreen
or set retc green
set_color $retc
echo -n '┬─'
set_color -o green
# Date
_nim_prompt_wrapper cyan '' (date +%X)
# Current Directory
_nim_prompt_wrapper blue '' (pwd | sed 's/\/home\/joe/~/')
# Virtual Environment
set -q VIRTUAL_ENV
and _nim_prompt_wrapper $retc V (basename "$VIRTUAL_ENV")
# Battery status
type -q acpi
and test (acpi -a 2> /dev/null | string match -r off)
and _nim_prompt_wrapper $retc B (acpi -b | cut -d' ' -f 4-)
# New line
echo
# Background jobs
set_color normal
for job in (jobs)
set_color $retc
echo -n '│ '
set_color brblack
echo $job
end
set_color normal
set_color $retc
echo -n '╰─>'
set_color -o brcyan
echo -n '$ '
set_color normal
end

View File

@ -0,0 +1,4 @@
# Defined in /tmp/fish.Ln0oz6/winpwd.fish @ line 1
function winpwd
wslupath (pwd) | clip.exe
end

127
.ideavimrc Executable file
View File

@ -0,0 +1,127 @@
let mapleader = " "
set incsearch
set hlsearch
set clipboard+=unnamed
set number
set relativenumber
set surround
set multiple-cursors
set ideajoin
set idearefactormode=visual
set ignorecase
set commentary
" TODO Find bindings for these
" nnoremap <Leader>rc :action ChooseRcnConfiguration<CR>
" nnoremap ;b :action ToggleLineBreakpoint<CR>
" nnoremap ;e :action EvaluateExpression<CR>
" nnoremap ;d :action Debug<CR>
" nnoremap ;r :action Resume<CR>
" nnoremap ;s :action StepInto<CR>
" nnoremap ;n :action StepOver<CR>
" nmap :action<Up><CR> **** Repeat last command
" Find out about VCS tool
" We need to get good bindings for window navigation
" IDE has nice search behavior, consider adding these
" map / :action Find<CR>
" nnoremap n :action FindNext<CR>
" nnoremap N :action FindPrevious<CR>
" vnoremap n :action FindNext<CR>
" vnoremap N :action FindPrevious<CR>
" nnoremap * :action FindWordAtCaret<CR>
" nnoremap # :action FindWordAtCaret<CR>
nnoremap <Leader>f :action FindInPath<CR>
nnoremap <C-=> :action EditorIncreaseFontSize<CR>
nnoremap <C--> :action EditorDecreaseFontSize<CR>
nnoremap <C-0> :action EditorResetFontSize<CR>
nnoremap ) :action MethodDown<CR>
nnoremap ( :action MethodUp<CR>
nnoremap \ q
nnoremap q :action KJumpAction.Word0<CR>
noremap <Leader>rl :source ~/.ideavimrc<CR>
noremap <Leader>i :e C:/Users/josep/.ideavimrc<CR>
nnoremap <C-p>p :action SearchEverywhere<CR>
nnoremap <C-p>c :action GotoClass<CR>
nnoremap <C-p>t :action FileStructurePopup<CR>
nnoremap <C-p>f :action GotoFile<CR>
nnoremap <C-p>r :action RecentFiles<CR>
nnoremap <C-p>u :action GotoTest<CR>
nnoremap zd :action CollapseDocComments<CR>
nnoremap zD :action ExpandDocComments<CR>
nnoremap <C-w>H :action MoveEditorToOppositeTabGroup<CR>
nnoremap <C-w>L :action MoveEditorToOppositeTabGroup<CR>
nnoremap <C-e> 2<C-e>
nnoremap <C-y> 2<C-y>
nnoremap gt :action GotoTypeDeclaration<CR>
nnoremap <Leader>s :action KJumpAction.Word0<CR>
nnoremap <Leader>q :action CloseContent<CR>
nnoremap <Leader>d :action QuickImplementations<CR>
nnoremap <Leader>t :action QuickJavaDoc<CR>
nnoremap <Leader>e :action ShowErrorDescription<CR>
nnoremap <Leader>u :action FindUsages<CR>
nnoremap <Leader>rn :action RenameElement<CR>
nnoremap <Leader>c :action ChangeColorScheme<CR>
nnoremap <Leader>; :actionlist<Space>
vnoremap <Leader>a :action StringManipulation.AlignToColumns<CR>
nnoremap <Leader>bb :action BuildCurrentProject<CR>
nnoremap <Leader>br :action Run<CR>
nnoremap <Leader>bd :action Debug<CR>
nnoremap <Leader>bs :action BuildSolutionAction<CR>
vnoremap gq :action aligncarets.AlignAction<CR>
nnoremap <Leader>w :action SaveDocument<CR>
noremap = :action ReformatCode<CR>
vnoremap = :action ReformatCode<CR>
nnoremap <Leader>/ :nohlsearch<CR>
nnoremap g/ :action Find<CR>
nnoremap ga :action GotoAction<CR>
" So we jump to both line and column for marks
nnoremap ' `
nnoremap Y y$
nnoremap $ g_
nnoremap vv ^vg_
nnoremap g; :action JumpToLastChange<CR>
nnoremap g, :action JumpToNextChange<CR>
nnoremap ; :
nnoremap : ;
nnoremap <C-1> :action GoToTab1<CR>
nnoremap <C-2> :action GoToTab2<CR>
nnoremap <C-3> :action GoToTab3<CR>
nnoremap <C-4> :action GoToTab4<CR>
nnoremap <C-5> :action GoToTab5<CR>
nnoremap <C-6> :action GoToTab6<CR>
nnoremap <C-7> :action GoToTab7<CR>
nnoremap <C-8> :action GoToTab8<CR>
nnoremap <C-9> :action GoToTab9<CR>
nnoremap <A-2> :action ActivateStructureToolWindow<CR>
nnoremap <C-j> :action MoveLineDown<CR>
nnoremap <C-k> :action MoveLineUp<CR>
nnoremap <C-h> <c-w>h
nnoremap <C-l> <c-w>l
noremap <C-S-s> :action SurroundWithLiveTemplate<CR>
nnoremap <A-h> gT
nnoremap <A-l> gt
nnoremap <A-j> :action EditorCloneCaretBelow<CR>
nnoremap <A-k> :action EditorCloneCaretAbove<CR>
nnoremap <A-;> A;<Esc>
inoremap <A-;> <Esc>A;<Esc>
nnoremap <A-d> :action ToggleDistractionFreeMode<CR>
nnoremap <A-f> :action ToggleFullScreen<CR>
nnoremap <A-e> :action GotoNextError<CR>
nnoremap <S-A-e> :action GotoPreviousError<CR>
nnoremap <A-o> moo<Esc>'o
nnoremap <A-S-o> moO<Esc>'o

92
.tmux.conf Normal file
View File

@ -0,0 +1,92 @@
set -g default-shell /usr/bin/fish
set -g base-index 1
set -s escape-time 0
set -g history-limit 50000
set -g display-time 3000
set -g display-panes-time 3000
set -g status-interval 5
set -g default-terminal "screen-256color"
set -g status-keys emacs
set -g renumber-windows on
setw -g pane-base-index 1
setw -g automatic-rename off
setw -g mode-keys vi
set -g prefix C-s
unbind C-b
unbind '"'
unbind %
unbind Left
unbind Right
unbind Up
unbind Down
bind C-s send-prefix
bind r source-file ~/.tmux.conf \; display "config reloaded"
bind v split-window -h -c '#{pane_current_path}'
bind s split-window -v -c '#{pane_current_path}'
bind X confirm-before -p "kill-window #W? (y/n)" kill-window
bind n switch-client -n
bind p switch-client -p
bind \; command-prompt
bind o if-shell '[ #{pane_index} = 1 ]' \
'last-pane ; swap-pane -dt 1' \
'swap-pane -dt 1' \
set -g mouse on
bind -T copy-mode-vi C-WheelUpPane send-keys -X halfpage-up
bind -T copy-mode-vi C-WheelDownPane send-keys -X halfpage-down
# bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "xclip -selection c"
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "clip.exe"
bind-key -T copy-mode-vi u send-keys -X halfpage-up
bind-key -T copy-mode-vi d send-keys -X halfpage-down
bind-key -T copy-mode-vi v send-keys -X begin-selection
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel
bind-key -T copy-mode-vi r send-keys -X rectangle-toggle
bind -n C-h select-pane -L
bind -n C-j select-pane -D
bind -n C-k select-pane -U
bind -n C-l select-pane -R
bind -n C-S-Left swap-window -t -1 \; previous-window
bind -n C-S-Right swap-window -t +1 \; next-window
bind -n M-0 select-window -t :=0
bind -n M-1 select-window -t :=1
bind -n M-2 select-window -t :=2
bind -n M-3 select-window -t :=3
bind -n M-4 select-window -t :=4
bind -n M-5 select-window -t :=5
bind -n M-6 select-window -t :=6
bind -n M-7 select-window -t :=7
bind -n M-8 select-window -t :=8
bind -n M-9 select-window -t :=10
bind -n M-l next-window
bind -n M-h previous-window
bind -n M-k send-keys C-l
bind -n M-Space resize-pane -Z
set -g status-position top
set -g status-justify centre
set -g status-style fg=black,bg=colour238
set -g status-left '#[bg=green,] #S '
set-window-option -g window-status-format '#[bg=blue,fg=black,dim] #I #[bg=blue,fg=black,dim]#W '
set-window-option -g window-status-current-format '#[bg=colour254,fg=black] [#I] #[bg=colour254,fg=black]#W '
set -g status-right '#[bg=cyan] %H:%M #[bg=green] %A, %e %b %Y '
set -g status-left-length 100
set -g window-style 'fg=colour248,bg=black'
set -g window-active-style 'fg=colour255,bg=colour237'
set -g pane-border-style 'fg=colour235,bg=colour238'
set -g pane-active-border-style 'fg=white,bg=colour236'
set -g @resurrect-capture-pane-contents 'on'
set -g @resurrect-processes 'ranger'
set -g @resurrect-save 'S'
set -g @resurrect-restore 'R'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'schasse/tmux-jump'
run -b ~/.tmux/plugins/tpm/tpm

47
.vimrc Normal file
View File

@ -0,0 +1,47 @@
set nocompatible
syntax on
set number
set relativenumber
set splitbelow
set splitright
set tabstop=4
set shiftwidth=4
set expandtab
set nowrap
set hlsearch
set ignorecase
set smartcase
nohlsearch
set timeoutlen=1000
set ttimeoutlen=0
set noswapfile
set nobackup
set hidden
color peachpuff
let mapleader = "\<Space>"
noremap <Space> <nop>
noremap <Leader>/ :nohlsearch<CR>
nnoremap D d$
nnoremap Y y$
nnoremap vv ^v$h
noremap \ q
noremap $ g_
nnoremap ' `
nnoremap ` '
nnoremap <Leader>w :w<CR>
nnoremap <Leader>rl :so $MYVIMRC<CR>
nnoremap <Leader>q :q<CR>
nnoremap <C-h> <C-w>h
nnoremap <C-j> <C-w>j
nnoremap <C-k> <C-w>k
nnoremap <C-l> <C-w>l
if system('uname -r') =~ "Microsoft"
augroup Yank
autocmd!
autocmd TextYankPost * :call system('clip.exe ',@")
augroup END
endif

19
README.md Normal file
View File

@ -0,0 +1,19 @@
## dotfiles
### Main environment
- pengwin (WSL)
- alacritty
- fish
- tmux
- vim
- ideavim
- lf
- fzf
- bat
- rg
- exa
- sxiv (with X410)
- fd
#### Old dotfiles
I also have my old backed up dotfiles from my previous System76 Ubuntu i3 setup with more stuff

BIN
dotfiles-old.tar.gz Normal file

Binary file not shown.