Compare commits

56 Commits
master ... sway

Author SHA1 Message Date
d4e03f6a67 [self-update] Update + convert to fish 2025-08-27 13:56:51 +02:00
6304e735ac [meteo] Add config 2025-08-26 08:53:33 +02:00
aa1657929e [sway] Kitty as term and remove useless line 2025-08-25 18:51:03 +02:00
495bf70353 [nvim] Add coc-jedi 2025-08-25 18:49:05 +02:00
87e08e66d3 [nvim] Add COC 2025-08-25 15:03:19 +02:00
f33b964601 [alacritty] font bigger 2025-08-25 14:26:47 +02:00
26d37df077 [kitty] font bigger 2025-08-25 14:26:21 +02:00
81dae4c56c Remove fish_ssh_agent 2025-08-25 14:15:51 +02:00
87caaa2849 Renome la function dotfile et dot 2025-06-27 08:11:22 +02:00
32595e5a96 [keepassxc] Add keepassxc config 2025-06-27 07:49:18 +02:00
7236721f64 [Fish] Renome startx.fish pour plus de cohérence 2025-06-26 17:10:05 +02:00
9caa1035a7 [Fish] Supprime commandes et fichier inutile 2025-06-26 16:48:28 +02:00
45bab6051d [Fish] Ajoute fisher et fish-ssh-agent + remove useless functions 2025-06-26 16:44:03 +02:00
209f5a0ce7 [kanshi] supprime la configuration 2025-06-24 14:47:47 +02:00
39a78ecff9 [kitty] Initial commit 2025-06-24 14:45:16 +02:00
4e3e69a99e [alacritty] change le theme 2025-06-24 14:42:19 +02:00
676ea30b3e [alacritty] migre la config vers toml 2025-06-24 14:39:13 +02:00
8ceca5fcd1 [fish] supprime le fichier fish_variables 2025-06-23 11:59:40 +02:00
dbae6a337f [sway] Ajoute la config de l'écran pro 2025-06-23 11:27:21 +02:00
ca29df0609 Ajoute la config de l'écran du laptop perso 2025-06-17 10:12:12 +02:00
3064978594 Merge 2025-06-17 10:03:07 +02:00
Florestan Bredow
8a5494f36d Ajoute la configuration des écrans du laptop pro a la maison. 2025-06-17 09:57:31 +02:00
7c5b1055bc Met à jour le GOPATH 2025-06-05 14:43:09 +02:00
b5604f909b Met à jour la config de git 2025-06-05 14:41:44 +02:00
d18c705273 Configure ssh-agent pour fish 2025-06-05 14:41:44 +02:00
a4d9021586 Change le terminal 2025-03-26 08:39:08 +01:00
Florestan Bredow
72a592f13a Add script to create zttelkasten notes 2024-11-18 15:00:46 +01:00
5a213e4157 Migrate alacritty config to toml 2024-09-10 18:35:23 +02:00
Florestan Bredow
4623c86ea2 Add fzf install execution 2024-06-20 11:37:15 +02:00
Florestan Bredow
514522d6c1 Fix typo 2024-06-20 11:35:50 +02:00
3b0356eb22 Update nvim config 2024-06-19 12:29:47 +02:00
31e0108da7 add keepassw to start and add timer for nextcloud 2024-06-19 12:29:42 +02:00
98f1927ac3 Update neovim config 2024-06-19 12:27:55 +02:00
Florestan Bredow
27c4afa80d Gloubiboulga 2023-12-05 21:11:09 +01:00
Florestan Bredow
6d17e7be71 Add gnome-keyring + keepassxc 2023-12-05 21:02:29 +01:00
6ad08840eb Fix traybar icon for nextcloud 2023-11-03 18:53:34 +01:00
7fb7871e03 Add fonts 2023-11-03 16:22:24 +01:00
7a71ebfd22 Remove useless .xinitrc 2023-10-26 12:07:59 +02:00
7485124c29 Add danhper/fish-ssh-agent 2023-10-26 12:06:30 +02:00
0862fd0eb1 WIP add self-update to upgrade system 2023-10-26 11:59:37 +02:00
e148588e15 Configure dark-mode for wofi 2023-10-26 11:57:01 +02:00
24fce0a166 Change swaylock background color 2023-10-16 19:44:06 +02:00
1160fe3774 Add home screen conf 2023-09-22 09:04:14 +02:00
e380068dce Update key binding 2023-09-22 09:03:27 +02:00
0b85dadf15 Bind moving workspace 2023-09-22 08:59:57 +02:00
714ad2c276 Change wallpaper / background color 2023-09-21 09:35:17 +02:00
7ce4314caa Update Plug version 2023-09-21 09:13:16 +02:00
5b73abca03 Remove COC conf 2023-09-21 09:12:54 +02:00
2cf0a2cd25 Update git conf 2023-09-21 09:10:38 +02:00
6100d8bc08 Update git conf 2023-09-21 09:07:16 +02:00
d03449b8dd Add Kanshi 2023-09-21 09:06:11 +02:00
81126619d8 Clean nvim configuration + remove useless files 2023-09-20 11:44:55 +02:00
f3e861af9a Change Alacritty color scheme 2023-09-20 09:17:26 +02:00
6fe75be9f8 Change to waybar 2023-09-20 09:16:31 +02:00
f019be7c5b Sway initial config 2023-09-19 12:31:12 +02:00
39597b0936 Clean unused files for Sway 2023-09-19 12:27:49 +02:00
95 changed files with 2053 additions and 4461 deletions

118
.bashrc
View File

@@ -1,10 +1,114 @@
#
# ~/.bashrc
#
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
# If not running interactively, don't do anything
[[ $- != *i* ]] && return
case $- in
*i*) ;;
*) return;;
esac
alias ls='ls --color=auto'
alias dotfiles='/usr/bin/git --git-dir=$HOME/.config/dotfiles/ --work-tree=$HOME'
PS1='[\u@\h \W]\$ '
# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth
# append to the history file, don't overwrite it
shopt -s histappend
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# If set, the pattern "**" used in a pathname expansion context will
# match all files and zero or more directories and subdirectories.
#shopt -s globstar
# make less more friendly for non-text input files, see lesspipe(1)
#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color|*-256color) color_prompt=yes;;
esac
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes
if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt
# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
#alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'
#alias grep='grep --color=auto'
#alias fgrep='fgrep --color=auto'
#alias egrep='egrep --color=auto'
fi
# colored GCC warnings and errors
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'
# some more ls aliases
#alias ll='ls -l'
#alias la='ls -A'
#alias l='ls -CF'
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
. "$HOME/.cargo/env"

View File

@@ -1,29 +0,0 @@
#!/usr/bin/env bash
readonly = DOCKER_FOLDER="/srv/"
function ok()
{
echo -e "\e[32mdone\e[0m"
}
function failed()
{
echo -e "\e[31mfailed\e[0m"
}
function main() {
container_list=$(find "${DOCKER_FOLDER}" -mindepth 1 -maxdepth 1 -type d ! -iname "archives" ! -iname "images" ! -iname "lost+found")
for container_path in ${container_list}; do
cd "${container_path}"
docker compose down \
&& docker compose stop \
&& docker compose up -d
cd - &>/dev/null
done
}
main

View File

@@ -1,44 +0,0 @@
#!/usr/bin/env bash
## Mise à jour des container docker
readonly DOCKER_FOLDER="/srv/"
function ok()
{
echo -e "\e[32mdone\e[0m"
}
function failed()
{
echo -e "\e[31mfailed\e[0m"
}
function main() {
local container_list=$(find "${DOCKER_FOLDER}" -mindepth 1 -maxdepth 1 -type d ! -iname "archives" ! -iname "images" ! -iname "lost+found")
local container_updated=()
for container_path in ${container_list}; do
cd "${container_path}"
if [ -f docker-compose.yml ]; then
printf "Updating ${container_path} : \n" \
&& docker compose pull \
&& docker compose build --pull \
&& container_updated+=(${container_path}) \
&& ok \
|| failed
fi
cd - &>/dev/null
done
for container_path in ${container_updated[*]}; do
cd "${container_path}"
docker compose down \
&& docker compose stop \
&& docker compose up -d
cd - &>/dev/null
done
}
main

View File

@@ -0,0 +1,563 @@
[[keyboard.bindings]]
action = "Paste"
key = "V"
mods = "Control|Shift"
[[keyboard.bindings]]
action = "Copy"
key = "C"
mods = "Control|Shift"
[[keyboard.bindings]]
action = "Paste"
key = "Paste"
[[keyboard.bindings]]
action = "Copy"
key = "Copy"
[[keyboard.bindings]]
action = "Quit"
key = "Q"
mods = "Command"
[[keyboard.bindings]]
action = "Quit"
key = "W"
mods = "Command"
[[keyboard.bindings]]
action = "PasteSelection"
key = "Insert"
mods = "Shift"
[[keyboard.bindings]]
action = "ResetFontSize"
key = "Key0"
mods = "Control"
[[keyboard.bindings]]
action = "IncreaseFontSize"
key = "Equals"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001BOH"
key = "Home"
mode = "AppCursor"
[[keyboard.bindings]]
chars = "\u001B[H"
key = "Home"
mode = "~AppCursor"
[[keyboard.bindings]]
chars = "\u001BOF"
key = "End"
mode = "AppCursor"
[[keyboard.bindings]]
chars = "\u001B[F"
key = "End"
mode = "~AppCursor"
[[keyboard.bindings]]
chars = "\u001B[5;2~"
key = "PageUp"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[5;5~"
key = "PageUp"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[5~"
key = "PageUp"
[[keyboard.bindings]]
chars = "\u001B[6;2~"
key = "PageDown"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[6;5~"
key = "PageDown"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[6~"
key = "PageDown"
[[keyboard.bindings]]
chars = "\u001B[Z"
key = "Tab"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u007F"
key = "Back"
[[keyboard.bindings]]
chars = "\u001B\u007F"
key = "Back"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[2~"
key = "Insert"
[[keyboard.bindings]]
chars = "\u001B[3~"
key = "Delete"
[[keyboard.bindings]]
chars = "\u001B[1;2D"
key = "Left"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[1;5D"
key = "Left"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[1;3D"
key = "Left"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[D"
key = "Left"
mode = "~AppCursor"
[[keyboard.bindings]]
chars = "\u001BOD"
key = "Left"
mode = "AppCursor"
[[keyboard.bindings]]
chars = "\u001B[1;2C"
key = "Right"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[1;5C"
key = "Right"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[1;3C"
key = "Right"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[C"
key = "Right"
mode = "~AppCursor"
[[keyboard.bindings]]
chars = "\u001BOC"
key = "Right"
mode = "AppCursor"
[[keyboard.bindings]]
chars = "\u001B[1;2A"
key = "Up"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[1;5A"
key = "Up"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[1;3A"
key = "Up"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[A"
key = "Up"
mode = "~AppCursor"
[[keyboard.bindings]]
chars = "\u001BOA"
key = "Up"
mode = "AppCursor"
[[keyboard.bindings]]
chars = "\u001B[1;2B"
key = "Down"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[1;5B"
key = "Down"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[1;3B"
key = "Down"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[B"
key = "Down"
mode = "~AppCursor"
[[keyboard.bindings]]
chars = "\u001BOB"
key = "Down"
mode = "AppCursor"
[[keyboard.bindings]]
chars = "\u001BOP"
key = "F1"
[[keyboard.bindings]]
chars = "\u001BOQ"
key = "F2"
[[keyboard.bindings]]
chars = "\u001BOR"
key = "F3"
[[keyboard.bindings]]
chars = "\u001BOS"
key = "F4"
[[keyboard.bindings]]
chars = "\u001B[15~"
key = "F5"
[[keyboard.bindings]]
chars = "\u001B[17~"
key = "F6"
[[keyboard.bindings]]
chars = "\u001B[18~"
key = "F7"
[[keyboard.bindings]]
chars = "\u001B[19~"
key = "F8"
[[keyboard.bindings]]
chars = "\u001B[20~"
key = "F9"
[[keyboard.bindings]]
chars = "\u001B[21~"
key = "F10"
[[keyboard.bindings]]
chars = "\u001B[23~"
key = "F11"
[[keyboard.bindings]]
chars = "\u001B[24~"
key = "F12"
[[keyboard.bindings]]
chars = "\u001B[1;2P"
key = "F1"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[1;2Q"
key = "F2"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[1;2R"
key = "F3"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[1;2S"
key = "F4"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[15;2~"
key = "F5"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[17;2~"
key = "F6"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[18;2~"
key = "F7"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[19;2~"
key = "F8"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[20;2~"
key = "F9"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[21;2~"
key = "F10"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[23;2~"
key = "F11"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[24;2~"
key = "F12"
mods = "Shift"
[[keyboard.bindings]]
chars = "\u001B[1;5P"
key = "F1"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[1;5Q"
key = "F2"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[1;5R"
key = "F3"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[1;5S"
key = "F4"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[15;5~"
key = "F5"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[17;5~"
key = "F6"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[18;5~"
key = "F7"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[19;5~"
key = "F8"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[20;5~"
key = "F9"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[21;5~"
key = "F10"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[23;5~"
key = "F11"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[24;5~"
key = "F12"
mods = "Control"
[[keyboard.bindings]]
chars = "\u001B[1;6P"
key = "F1"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[1;6Q"
key = "F2"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[1;6R"
key = "F3"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[1;6S"
key = "F4"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[15;6~"
key = "F5"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[17;6~"
key = "F6"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[18;6~"
key = "F7"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[19;6~"
key = "F8"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[20;6~"
key = "F9"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[21;6~"
key = "F10"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[23;6~"
key = "F11"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[24;6~"
key = "F12"
mods = "Alt"
[[keyboard.bindings]]
chars = "\u001B[1;3P"
key = "F1"
mods = "Super"
[[keyboard.bindings]]
chars = "\u001B[1;3Q"
key = "F2"
mods = "Super"
[[keyboard.bindings]]
chars = "\u001B[1;3R"
key = "F3"
mods = "Super"
[[keyboard.bindings]]
chars = "\u001B[1;3S"
key = "F4"
mods = "Super"
[[keyboard.bindings]]
chars = "\u001B[15;3~"
key = "F5"
mods = "Super"
[[keyboard.bindings]]
chars = "\u001B[17;3~"
key = "F6"
mods = "Super"
[[keyboard.bindings]]
chars = "\u001B[18;3~"
key = "F7"
mods = "Super"
[[keyboard.bindings]]
chars = "\u001B[19;3~"
key = "F8"
mods = "Super"
[[keyboard.bindings]]
chars = "\u001B[20;3~"
key = "F9"
mods = "Super"
[[keyboard.bindings]]
chars = "\u001B[21;3~"
key = "F10"
mods = "Super"
[[keyboard.bindings]]
chars = "\u001B[23;3~"
key = "F11"
mods = "Super"
[[keyboard.bindings]]
chars = "\u001B[24;3~"
key = "F12"
mods = "Super"
[general]
live_config_reload = true
import = ["/home/bredow/.config/alacritty/themes/themes/dark-one.yml"]
[[mouse.bindings]]
action = "PasteSelection"
mouse = "Middle"
[bell]
animation = "EaseOutExpo"
duration = 0
[env]
TERM = "xterm-256color"
[font]
size = 11
[font.bold]
family = "Fira Code"
style = "Bold"
[font.glyph_offset]
x = 0
y = 0
[font.italic]
family = "Fira Code"
style = "Italic"
[font.normal]
family = "Fira Code"
style = "Regular"
[font.offset]
x = 0
y = 0
[scrolling]
history = 10000
multiplier = 3
[selection]
save_to_clipboard = false
semantic_escape_chars = ''',│`|:"' ()[]{}<>'''
[window]
decorations = "none"
[window.dimensions]
columns = 80
lines = 24
[window.padding]
x = 5
y = 5
[colors]
draw_bold_text_with_bright_colors = true
[keyboard]

View File

@@ -1,444 +0,0 @@
# 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: xterm-256color
window:
# Window dimensions (changes require restart)
#
# Specified in number of columns/lines, not pixels.
# If both are `0`, this setting is ignored.
dimensions:
columns: 80
lines: 24
# Window padding (changes require restart)
#
# Blank space added around the window in pixels. This padding is not scaled
# by DPI and the specified value is always added at both opposing sides.
padding:
x: 5
y: 5
# Window decorations
#
# Values for `decorations`:
# - full: Borders and title bar
# - none: Neither borders nor title bar
decorations: 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 (changes require restart)
#
# Important font attributes like antialiasing, subpixel aa, and hinting can be
# controlled through fontconfig. Specifically, the following attributes should
# have an effect:
# - hintstyle
# - antialias
# - lcdfilter
# - rgba
#
# For instance, if you wish to disable subpixel antialiasing, you might set the
# rgba property to `none`. If you wish to completely disable antialiasing, you
# can set antialias to `false`.
#
# Please see these resources for more information on how to use fontconfig:
# - https://wiki.archlinux.org/index.php/font_configuration#Fontconfig_configuration
# - file:///usr/share/doc/fontconfig/fontconfig-user.html
font:
# Normal (roman) font face
normal:
family: hack
# The `style` can be specified to pick a specific face.
style: Regular
# Bold font face
bold:
family: hack
# The `style` can be specified to pick a specific face.
style: Bold
# Italic font face
italic:
family: hack
# The `style` can be specified to pick a specific face.
style: Italic
# Point size
size: 10
# 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
# If `true`, bold text is drawn using the bright color variants.
draw_bold_text_with_bright_colors: true
# Cyberpunk-Neon colours
colors:
# Default colours
primary:
background: '0x000b1e'
foreground: '0x0abdc6'
# Colors that should be used to draw the terminal cursor. If these are unset,
# the cursor colour will be the inverse of the cell colour.
# cursor:
# text: '0x2e2e2d'
# # text: '0x000000'
# cursor: '0xffffff'
# Normal colors
normal:
black: '0x123e7c'
red: '0xff0000'
green: '0xd300c4'
yellow: '0xf57800'
blue: '0x123e7c'
magenta: '0x711c91'
cyan: '0x0abdc6'
white: '0xd7d7d5'
# Bright colors
bright:
black: '0x1c61c2'
red: '0xff0000'
green: '0xd300c4'
yellow: '0xf57800'
blue: '0x00ff00'
magenta: '0x711c91'
cyan: '0x0abdc6'
white: '0xd7d7d5'
# dim colors
dim:
black: '0x1c61c2'
red: '0xff0000'
green: '0xd300c4'
yellow: '0xf57800'
blue: '0x123e7c'
magenta: '0x711c91'
cyan: '0x0abdc6'
white: '0xd7d7d5'
# 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.
bell:
animation: EaseOutExpo
duration: 0
# 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.
windows.opacity: 1.0
# Mouse bindings
#
# Available fields:
# - mouse
# - action
# - mods (optional)
#
# Values for `mouse`:
# - Middle
# - Left
# - Right
# - Numeric identifier such as `5`
#
# All available `mods` and `action` values are documented in the key binding
# section.
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 }
hints:
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.
launcher: xdg-open
# 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: Control|Shift
selection:
semantic_escape_chars: ",│`|:\"' ()[]{}<>"
# When set to `true`, selected text will be copied to both the primary and
# the selection clipboard. Otherwise, it will only be copied to the selection
# clipboard.
save_to_clipboard: false
window.dynamic_title: true
mouse.hide_when_typing: false
# Cursor style
#
# Values for 'cursor_style':
# - Block
# - Underline
# - Beam
cursor.style: Block
# If this is `true`, the cursor will be rendered as a hollow box when the
# window is not focused.
cursor.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.
#
#shell:
# program: /bin/bash
# args:
# - --login
# Key bindings
#
# Key bindings are specified as a list of objects. Each binding will specify
# a key and modifiers required to trigger it, terminal modes where the binding
# is applicable, and what should be done when the key binding fires. It can
# either send a byte sequnce to the running application (`chars`), execute
# a predefined action (`action`) or fork and execute a specified command plus
# arguments (`command`).
#
# Example:
# `- { key: V, mods: Command, action: Paste }`
#
# Available fields:
# - key
# - mods (optional)
# - chars | action | command (exactly one required)
# - mode (optional)
#
# Values for `key`:
# - `A` -> `Z`
# - `F1` -> `F12`
# - `Key1` -> `Key0`
#
# A full list with available key codes can be found here:
# https://docs.rs/glutin/*/glutin/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`
#
# Values for `mods`:
# - Command
# - Control
# - Shift
# - Alt
#
# Multiple `mods` can be combined using `|` like this: `mods: Control|Shift`.
# Whitespace and capitalization is relevant and must match the example.
#
# Values for `chars`:
# 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.
#
# Values for `action`:
# - Paste
# - PasteSelection
# - Copy
# - IncreaseFontSize
# - DecreaseFontSize
# - ResetFontSize
# - ScrollPageUp
# - ScrollPageDown
# - ScrollToTop
# - ScrollToBottom
# - ClearHistory
# - Hide
# - Quit
#
# Values for `command`:
# The `command` field must be a map containing a `program` string and
# an `args` array of command line parameter strings.
#
# Example:
# `command: { program: "alacritty", args: ["-e", "vttest"] }`
#
# Values for `mode`:
# - ~AppCursor
# - AppCursor
# - ~AppKeypad
# - AppKeypad
key_bindings:
- { key: V, mods: Control|Shift, action: Paste }
- { key: C, mods: Control|Shift, action: Copy }
- { key: Paste, action: Paste }
- { key: Copy, action: Copy }
- { key: Q, mods: Command, action: Quit }
- { key: W, mods: Command, action: Quit }
- { key: Insert, mods: Shift, action: PasteSelection }
- { key: Key0, mods: Control, action: ResetFontSize }
- { key: Equals, mods: Control, action: IncreaseFontSize }
# - { key: Subtract, mods: Control, action: DecreaseFontSize }
- { 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: 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: Super, chars: "\x1b[1;3P" }
- { key: F2, mods: Super, chars: "\x1b[1;3Q" }
- { key: F3, mods: Super, chars: "\x1b[1;3R" }
- { key: F4, mods: Super, chars: "\x1b[1;3S" }
- { key: F5, mods: Super, chars: "\x1b[15;3~" }
- { key: F6, mods: Super, chars: "\x1b[17;3~" }
- { key: F7, mods: Super, chars: "\x1b[18;3~" }
- { key: F8, mods: Super, chars: "\x1b[19;3~" }
- { key: F9, mods: Super, chars: "\x1b[20;3~" }
- { key: F10, mods: Super, chars: "\x1b[21;3~" }
- { key: F11, mods: Super, chars: "\x1b[23;3~" }
- { key: F12, mods: Super, chars: "\x1b[24;3~" }

View File

@@ -0,0 +1,66 @@
colors:
# Default colors
primary:
background: '0x1e2127'
foreground: '0xabb2bf'
# 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: '0xe6efff'
# Cursor colors
#
# Colors which should be used to draw the terminal cursor. If these are unset,
# the cursor color will be the inverse of the cell color.
#cursor:
# text: '0x000000'
# cursor: '0xffffff'
# Normal colors
normal:
black: '0x1e2127'
red: '0xe06c75'
green: '0x98c379'
yellow: '0xd19a66'
blue: '0x61afef'
magenta: '0xc678dd'
cyan: '0x56b6c2'
white: '0x828791'
# Bright colors
bright:
black: '0x5c6370'
red: '0xe06c75'
green: '0x98c379'
yellow: '0xd19a66'
blue: '0x61afef'
magenta: '0xc678dd'
cyan: '0x56b6c2'
white: '0xe6efff'
# Dim colors
#
# If the dim colors are not set, they will be calculated automatically based
# on the `normal` colors.
dim:
black: '0x1e2127'
red: '0xe06c75'
green: '0x98c379'
yellow: '0xd19a66'
blue: '0x61afef'
magenta: '0xc678dd'
cyan: '0x56b6c2'
white: '0x828791'
# Indexed Colors
#
# The indexed colors include all colors from 16 to 256.
# When these are not set, they're filled with sensible defaults.
#indexed_colors:
# - { index: 16, color: '0x000000' }

View File

@@ -1,43 +0,0 @@
output DP1
off
output DP2
off
output DP2-2
off
output HDMI1
off
output HDMI2
off
output HDMI3
off
output VIRTUAL1
off
output eDP1
crtc 0
mode 1920x1080
pos 0x0
primary
rate 60.00
x-prop-broadcast_rgb Automatic
x-prop-colorspace Default
x-prop-max_bpc 12
x-prop-non_desktop 0
x-prop-scaling_mode Full aspect
output DP2-1
crtc 1
mode 1920x1080
pos 1920x0
rate 60.00
x-prop-audio auto
x-prop-broadcast_rgb Automatic
x-prop-max_bpc 12
x-prop-non_desktop 0
output DP2-3
crtc 2
mode 1920x1080
pos 0x1080
rate 60.00
x-prop-audio auto
x-prop-broadcast_rgb Automatic
x-prop-max_bpc 12
x-prop-non_desktop 0

View File

@@ -1,3 +0,0 @@
DP2-1 00ffffffffffff005a6332c1010101012d1d0103803c22782e2235a3594d9c28135054bfef80b300a940a9c0950090408180814081c0023a801871382d40582c450056502100001e000000ff00554e523139343536323930320a000000fd00324b185211000a202020202020000000fc005641323731392053657269657301ad020322f14c9005040302071f141312160123097f078301000068030c001000000000023a801871382d40582c450056502100001e011d8018711c1620582c250056502100009e011d007251d01e206e28550056502100001e8c0ad08a20e02d10103e9600565021000018023a80d072382d40102c458056502100001e00000074
DP2-3 00ffffffffffff0054e41515170621201f1f0104a5221378221e55a059569f270d5054210800d1c0818095009500b30081c001010101023a801871382d40582c450059c21000001e000000ff0032303231303631370a20202020000000fc00434431363046480a2020202020000000fd00383d1e5311000a2020202020200150020310c043900204230907078301000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000094
eDP1 00ffffffffffff003870560000000000121e0104951f1178027535955c578f281d5054000000010101010101010101010101010101012a3680a070381f403020350035ae1000001a522b80a070381f403020350035ae1000001a000000fe004a34594b4780313430354c3031000000000000412199001100000a010a2020000c

View File

@@ -1,36 +0,0 @@
output DP1
off
output DP2
off
output DP2-2
off
output DP2-3
off
output HDMI1
off
output HDMI2
off
output HDMI3
off
output VIRTUAL1
off
output eDP1
crtc 0
mode 1920x1080
pos 0x0
primary
rate 60.00
x-prop-broadcast_rgb Automatic
x-prop-colorspace Default
x-prop-max_bpc 12
x-prop-non_desktop 0
x-prop-scaling_mode Full aspect
output DP2-1
crtc 1
mode 1920x1080
pos 1920x0
rate 60.00
x-prop-audio auto
x-prop-broadcast_rgb Automatic
x-prop-max_bpc 12
x-prop-non_desktop 0

View File

@@ -1,2 +0,0 @@
DP2-1 00ffffffffffff005a6332c1010101012d1d0103803c22782e2235a3594d9c28135054bfef80b300a940a9c0950090408180814081c0023a801871382d40582c450056502100001e000000ff00554e523139343536323930320a000000fd00324b185211000a202020202020000000fc005641323731392053657269657301ad020322f14c9005040302071f141312160123097f078301000068030c001000000000023a801871382d40582c450056502100001e011d8018711c1620582c250056502100009e011d007251d01e206e28550056502100001e8c0ad08a20e02d10103e9600565021000018023a80d072382d40102c458056502100001e00000074
eDP1 00ffffffffffff003870560000000000121e0104951f1178027535955c578f281d5054000000010101010101010101010101010101012a3680a070381f403020350035ae1000001a522b80a070381f403020350035ae1000001a000000fe004a34594b4780313430354c3031000000000000412199001100000a010a2020000c

View File

@@ -1,36 +0,0 @@
output DP1
off
output DP1-2
off
output DP1-3
off
output DP2
off
output HDMI1
off
output HDMI2
off
output HDMI3
off
output VIRTUAL1
off
output eDP1
crtc 0
mode 1920x1080
pos 0x0
primary
rate 60.00
x-prop-broadcast_rgb Automatic
x-prop-colorspace Default
x-prop-max_bpc 12
x-prop-non_desktop 0
x-prop-scaling_mode Full aspect
output DP1-1
crtc 1
mode 1920x1080
pos 1920x0
rate 60.00
x-prop-audio auto
x-prop-broadcast_rgb Automatic
x-prop-max_bpc 12
x-prop-non_desktop 0

View File

@@ -1,2 +0,0 @@
DP1-1 --CONNECTED-BUT-EDID-UNAVAILABLE--DP1-1
eDP1 00ffffffffffff003870560000000000121e0104951f1178027535955c578f281d5054000000010101010101010101010101010101012a3680a070381f403020350035ae1000001a522b80a070381f403020350035ae1000001a000000fe004a34594b4780313430354c3031000000000000412199001100000a010a2020000c

View File

@@ -1,43 +0,0 @@
output DP1
off
output DP1-2
off
output DP2
off
output HDMI1
off
output HDMI2
off
output HDMI3
off
output VIRTUAL1
off
output eDP1
crtc 0
mode 1920x1080
pos 0x0
primary
rate 60.00
x-prop-broadcast_rgb Automatic
x-prop-colorspace Default
x-prop-max_bpc 12
x-prop-non_desktop 0
x-prop-scaling_mode Full aspect
output DP1-1
crtc 1
mode 1920x1080
pos 1920x0
rate 60.00
x-prop-audio auto
x-prop-broadcast_rgb Automatic
x-prop-max_bpc 12
x-prop-non_desktop 0
output DP1-3
crtc 2
mode 1920x1080
pos 1067x1080
rate 60.00
x-prop-audio auto
x-prop-broadcast_rgb Automatic
x-prop-max_bpc 12
x-prop-non_desktop 0

View File

@@ -1,3 +0,0 @@
DP1-1 00ffffffffffff005a6332c1010101012d1d0103803c22782e2235a3594d9c28135054bfef80b300a940a9c0950090408180814081c0023a801871382d40582c450056502100001e000000ff00554e523139343536323930320a000000fd00324b185211000a202020202020000000fc005641323731392053657269657301ad020322f14c9005040302071f141312160123097f078301000068030c001000000000023a801871382d40582c450056502100001e011d8018711c1620582c250056502100009e011d007251d01e206e28550056502100001e8c0ad08a20e02d10103e9600565021000018023a80d072382d40102c458056502100001e00000074
DP1-3 00ffffffffffff0054e41515170621201f1f0104a5221378221e55a059569f270d5054210800d1c0818095009500b30081c001010101023a801871382d40582c450059c21000001e000000ff0032303231303631370a20202020000000fc00434431363046480a2020202020000000fd00383d1e5311000a2020202020200150020310c043900204230907078301000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000094
eDP1 00ffffffffffff003870560000000000121e0104951f1178027535955c578f281d5054000000010101010101010101010101010101012a3680a070381f403020350035ae1000001a522b80a070381f403020350035ae1000001a000000fe004a34594b4780313430354c3031000000000000412199001100000a010a2020000c

View File

@@ -1,36 +0,0 @@
output DP1
off
output DP2
off
output DP2-2
off
output DP2-3
off
output HDMI1
off
output HDMI2
off
output HDMI3
off
output VIRTUAL1
off
output eDP1
crtc 0
mode 1920x1080
pos 0x0
primary
rate 60.00
x-prop-broadcast_rgb Automatic
x-prop-colorspace Default
x-prop-max_bpc 12
x-prop-non_desktop 0
x-prop-scaling_mode Full aspect
output DP2-1
crtc 1
mode 1920x1080
pos 1920x0
rate 60.00
x-prop-audio auto
x-prop-broadcast_rgb Automatic
x-prop-max_bpc 12
x-prop-non_desktop 0

View File

@@ -1,2 +0,0 @@
DP2-1 --CONNECTED-BUT-EDID-UNAVAILABLE--DP2-1
eDP1 00ffffffffffff003870560000000000121e0104951f1178027535955c578f281d5054000000010101010101010101010101010101012a3680a070381f403020350035ae1000001a522b80a070381f403020350035ae1000001a000000fe004a34594b4780313430354c3031000000000000412199001100000a010a2020000c

View File

@@ -1,24 +0,0 @@
output DP1
off
output DP1-1
off
output DP1-2
off
output DP1-3
off
output DP2
off
output HDMI1
off
output HDMI2
off
output HDMI3
off
output VIRTUAL1
off
output eDP1
crtc 0
mode 1920x1080
pos 0x0
primary
rate 60.00

View File

@@ -1 +0,0 @@
eDP1 00ffffffffffff003870560000000000121e0104951f1178027535955c578f281d5054000000010101010101010101010101010101012a3680a070381f403020350035ae1000001a522b80a070381f403020350035ae1000001a000000fe004a34594b4780313430354c3031000000000000412199001100000a010a2020000c

View File

@@ -1,114 +0,0 @@
#!/usr/bin/env bash
function move_workspace_to_screen() {
workspace="${1}"
screen="${2}"
i3-msg workspace "${workspace}"
i3-msg move workspace to output "${screen}"
sed -i "/^workspace \"${workspace}\" output/ c \\workspace \"${workspace}\" output \"${screen}\"" ${HOME}/.config/i3/config
}
function set_screens() {
move_workspace_to_screen 1 "${1}"
move_workspace_to_screen 3 "${1}"
move_workspace_to_screen 4 "${1}"
move_workspace_to_screen 5 "${2}"
move_workspace_to_screen 6 "${2}"
move_workspace_to_screen 7 "${2}"
move_workspace_to_screen 8 "${2}"
move_workspace_to_screen 9 "${3}"
move_workspace_to_screen 10 "${3}"
move_workspace_to_screen 11 "${3}"
move_workspace_to_screen 12 "${3}"
i3-msg reload
i3-msg workspace 9
i3-msg workspace 5
i3-msg workspace 1
bash ${HOME}/.config/polybar/launch.sh
}
function set_screens_with_xppen() {
move_workspace_to_screen 1 "${1}"
move_workspace_to_screen 3 "${1}"
move_workspace_to_screen 4 "${1}"
move_workspace_to_screen 5 "${2}"
move_workspace_to_screen 6 "${2}"
move_workspace_to_screen 7 "${2}"
move_workspace_to_screen 8 "${2}"
move_workspace_to_screen 9 "${2}"
move_workspace_to_screen 10 "${2}"
move_workspace_to_screen 11 "${2}"
move_workspace_to_screen 12 "${3}"
i3-msg reload
i3-msg workspace 12
i3-msg workspace 5
i3-msg workspace 1
bash ${HOME}/.config/polybar/launch.sh
}
function main() {
case $(autorandr --detected) in
"home")
set_screens "eDP1" "DP2-1" "DP2-1"
pacmd set-card-profile 0 HiFi: Default
;;
"home1")
set_screens "eDP1" "DP1-1" "DP1-1"
pacmd set-card-profile 0 HiFi: Default
;;
"home2")
set_screens "eDP1" "DP1-1" "DP1-1"
pacmd set-card-profile 0 HiFi: Default
;;
"work")
set_screens "eDP1" "DP1-1" "DP1-2"
pacmd set-card-profile 0 HiFi: Default
;;
"work2")
set_screens "eDP1" "DP2-1" "DP2-2"
pacmd set-card-profile 0 HiFi: Default
;;
"mobile")
set_screens "eDP1" "eDP1" "eDP1"
;;
"home+xppen")
set_screens_with_xppen "eDP1" "DP2-1" "DP2-3"
pacmd set-card-profile 0 HiFi: Default
;;
"home1+xppen")
set_screens_with_xppen "eDP1" "DP1-1" "DP1-3"
pacmd set-card-profile 0 HiFi: Default
;;
"home2+xppen")
set_screens_with_xppen "eDP1" "DP1-1" "DP1-3"
pacmd set-card-profile 0 HiFi: Default
;;
*)
notify-send -i display "Display profile" "CONFIGURATION NON RECONNUE"
;;
esac
notify-send -i display "Display profile" "Bacule vers $(autorandr --detected)"
}
main

View File

@@ -1,30 +0,0 @@
output DP1
off
output DP1-3
off
output DP2
off
output HDMI1
off
output HDMI2
off
output HDMI3
off
output VIRTUAL1
off
output eDP1
crtc 0
mode 1920x1080
pos 0x0
primary
rate 60.00
output DP1-1
crtc 1
mode 1920x1080
pos 1920x0
rate 60.00
output DP1-2
crtc 2
mode 1920x1080
pos 3840x0
rate 60.00

View File

@@ -1,3 +0,0 @@
DP1-1 00ffffffffffff0010acd9d04c475530091d0104a5351e783a0565a756529c270f5054a54b00714f8180a9c0d1c00101010101010101023a801871382d40582c45000f282100001e000000ff00313835375a54320a2020202020000000fc0044454c4c205032343139480a20000000fd00384c1e5311010a20202020202000ae
DP1-2 00ffffffffffff0010acd9d04c4b5530091d0104a5351e783a0565a756529c270f5054a54b00714f8180a9c0d1c00101010101010101023a801871382d40582c45000f282100001e000000ff00484a34375a54320a2020202020000000fc0044454c4c205032343139480a20000000fd00384c1e5311010a2020202020200082
eDP1 00ffffffffffff003870560000000000121e0104951f1178027535955c578f281d5054000000010101010101010101010101010101012a3680a070381f403020350035ae1000001a522b80a070381f403020350035ae1000001a000000fe004a34594b4780313430354c3031000000000000412199001100000a010a2020000c

View File

@@ -1,30 +0,0 @@
output DP1
off
output DP2
off
output DP2-3
off
output HDMI1
off
output HDMI2
off
output HDMI3
off
output VIRTUAL1
off
output eDP1
crtc 0
mode 1920x1080
pos 0x0
primary
rate 60.00
output DP2-1
crtc 1
mode 1920x1080
pos 1920x0
rate 60.00
output DP2-2
crtc 2
mode 1920x1080
pos 3840x0
rate 60.00

View File

@@ -1,3 +0,0 @@
DP2-1 00ffffffffffff0010acd9d04c475530091d0104a5351e783a0565a756529c270f5054a54b00714f8180a9c0d1c00101010101010101023a801871382d40582c45000f282100001e000000ff00313835375a54320a2020202020000000fc0044454c4c205032343139480a20000000fd00384c1e5311010a20202020202000ae
DP2-2 00ffffffffffff0010acd9d04c4b5530091d0104a5351e783a0565a756529c270f5054a54b00714f8180a9c0d1c00101010101010101023a801871382d40582c45000f282100001e000000ff00484a34375a54320a2020202020000000fc0044454c4c205032343139480a20000000fd00384c1e5311010a2020202020200082
eDP1 00ffffffffffff003870560000000000121e0104951f1178027535955c578f281d5054000000010101010101010101010101010101012a3680a070381f403020350035ae1000001a522b80a070381f403020350035ae1000001a000000fe004a34594b4780313430354c3031000000000000412199001100000a010a2020000c

View File

@@ -1,7 +1,7 @@
complete -c fisher -x -l help -d "print usage help"
complete -c fisher -x -l version -d "print fisher version"
complete -c fisher -x -n "__fish_use_subcommand" -a install -d "install plugins"
complete -c fisher -x -n "__fish_use_subcommand" -a update -d "update installed plugins"
complete -c fisher -x -n "__fish_use_subcommand" -a remove -d "remove installed plugins"
complete -c fisher -x -n "__fish_use_subcommand" -a list -d "list installed plugins matching <regex>"
complete -c fisher -x -n "__fish_seen_subcommand_from update remove" -a "(fisher list)"
complete --command fisher --exclusive --long help --description "Print help"
complete --command fisher --exclusive --long version --description "Print version"
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments install --description "Install plugins"
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments update --description "Update installed plugins"
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments remove --description "Remove installed plugins"
complete --command fisher --exclusive --condition __fish_use_subcommand --arguments list --description "List installed plugins matching regex"
complete --command fisher --exclusive --condition "__fish_seen_subcommand_from update remove" --arguments "(fisher list)"

View File

@@ -0,0 +1,7 @@
if test -z "$SSH_ENV"
set -xg SSH_ENV $HOME/.ssh/environment
end
if not __ssh_agent_is_started
__ssh_agent_start
end

View File

@@ -1,79 +0,0 @@
# name: purify
# base on: theme-clearance (https://github.com/oh-my-fish/theme-clearance)
# Set fish global colors
set -l normal fafafa
set -l selection 3e4452
set -l comment 5f5f87
set -l red ff6059
set -l green 5fff87
set -l blue 5fafff
set -l yellow ffff87
set -l pink ff79c6
set -l salmon ff875f
set -g fish_color_autosuggestion $selection
set -g fish_color_command $green
set -g fish_color_comment $comment
set -g fish_color_end $salmon
set -g fish_color_error $red
set -g fish_color_escape $pink
set -g fish_color_normal $normal
set -g fish_color_operator $green
set -g fish_color_param $normal
set -g fish_color_quote $yellow
set -g fish_color_redirection $foreground
set -g fish_color_search_match --background=$selection
set -g fish_color_selection --background=$selection
# Function to support git
#function _git_branch_name
# echo (command git symbolic-ref HEAD 2> /dev/null | sed -e 's|^refs/heads/||')
#end
#function _git_is_dirty
# echo (command git status -s --ignore-submodules=dirty 2> /dev/null)
#end
#function fish_prompt
# set -l last_status $status
# Define required colors
# set -l cyan (set_color 88fcfc)
# set -l pink (set_color ff79c6)
# set -l red (set_color ff6059)
# set -l blue (set_color 5fafff)
# set -l green (set_color 5fff87)
# set -l normal (set_color fafafa)
# set -l cwd $blue(pwd | sed "s:^$HOME:~:")
# Add a newline before new prompts
# echo -e ''
# Display [venvname] if in a virtualenv
# if set -q VIRTUAL_ENV
# echo -n -s (set_color -b blue black) '[' (basename "$VIRTUAL_ENV") ']' $normal ' '
# end
# Print pwd or full path
# echo -n -s $cwd $normal
# Show git branch and status
# if [ (_git_branch_name) ]
# set -l git_branch (_git_branch_name)
#
# if [ (_git_is_dirty) ]
# set git_info $cyan $git_branch $red " !"
# else
# set git_info $cyan $git_branch $green " √"
# end
# echo -n -s $cyan ' ⇢ ' $git_info
# end
# Terminate with a nice prompt char
# echo -e ''
# echo -e -n -s $pink ' '
#end

View File

@@ -0,0 +1,8 @@
# Start X at login
if status --is-login
if test -z "$DISPLAY" -a $XDG_VTNR = 1
exec sway --unsupported-gpu
# pour activer le partage d'écran mais provoque des bugs.
#exec env XDG_CURRENT_DESKTOP=sway dbus-run-session sway
end
end

View File

@@ -1,6 +0,0 @@
# Start X at login
if status --is-login
if test -z "$DISPLAY" -a $XDG_VTNR = 1
exec startx
end
end

View File

@@ -1,3 +0,0 @@
if status is-interactive
# Commands to run in interactive sessions can go here
end

View File

@@ -1 +1,2 @@
jorgebucaran/fisher
danhper/fish-ssh-agent

View File

@@ -1,36 +0,0 @@
# This file contains fish universal variable definitions.
# VERSION: 3.0
SETUVAR --export --path GOPATH:/home/bredow/build/go
SETUVAR __fish_initialized:3400
SETUVAR _fisher_jorgebucaran_2F_fisher_files:/home/bredow/\x2econfig/fish/functions/fisher\x2efish\x1e/home/bredow/\x2econfig/fish/completions/fisher\x2efish
SETUVAR _fisher_plugins:jorgebucaran/fisher
SETUVAR fish_color_autosuggestion:555\x1ebrblack
SETUVAR fish_color_cancel:\x2dr
SETUVAR fish_color_command:005fd7
SETUVAR fish_color_comment:990000
SETUVAR fish_color_cwd:green
SETUVAR fish_color_cwd_root:red
SETUVAR fish_color_end:009900
SETUVAR fish_color_error:ff0000
SETUVAR fish_color_escape:00a6b2
SETUVAR fish_color_history_current:\x2d\x2dbold
SETUVAR fish_color_host:normal
SETUVAR fish_color_host_remote:yellow
SETUVAR fish_color_match:\x2d\x2dbackground\x3dbrblue
SETUVAR fish_color_normal:normal
SETUVAR fish_color_operator:00a6b2
SETUVAR fish_color_param:00afff
SETUVAR fish_color_quote:999900
SETUVAR fish_color_redirection:00afff
SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack
SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
SETUVAR fish_color_status:red
SETUVAR fish_color_user:brgreen
SETUVAR fish_color_valid_path:\x2d\x2dunderline
SETUVAR fish_greeting:Bienvenue\x20dans\x20fish\x2c\x20le\x20shell\x20amical\x20et\x20interactif\x0aType\x20\x60help\x60\x20for\x20instructions\x20on\x20how\x20to\x20use\x20fish
SETUVAR fish_key_bindings:fish_vi_key_bindings
SETUVAR fish_pager_color_completion:\x1d
SETUVAR fish_pager_color_description:B3A06D\x1eyellow
SETUVAR fish_pager_color_prefix:white\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
SETUVAR fish_pager_color_selected_background:\x2dr

View File

@@ -0,0 +1,23 @@
function __ssh_agent_is_started -d "check if ssh agent is already started"
if test -n "$SSH_CONNECTION"
# This is an SSH session
ssh-add -l > /dev/null 2>&1
if test $status -eq 0 -o $status -eq 1
# An SSH agent was forwarded
return 0
end
end
if begin; test -f "$SSH_ENV"; and test -z "$SSH_AGENT_PID"; end
source $SSH_ENV > /dev/null
end
if test -z "$SSH_AGENT_PID"
return 1
end
ssh-add -l > /dev/null 2>&1
if test $status -eq 2
return 1
end
end

View File

@@ -0,0 +1,5 @@
function __ssh_agent_start -d "start a new ssh agent"
ssh-agent -c | sed 's/^echo/#echo/' > $SSH_ENV
chmod 600 $SSH_ENV
source $SSH_ENV > /dev/null
end

View File

@@ -1,3 +0,0 @@
function docker-restart-all-containers
bash "$HOME/.bin/docker-restart-all-containers"
end

View File

@@ -1,3 +0,0 @@
function docker-upgrade-all-containers
bash "$HOME/.bin/docker-upgrade-all-containers"
end

View File

@@ -1,4 +1,4 @@
# Defined in - @ line 1
function dotfiles
function dot
/usr/bin/git --git-dir=$HOME/.config/dotfiles/ --work-tree=$HOME $argv
end

View File

@@ -1,206 +1,240 @@
set -g fisher_version 4.1.0
function fisher -a cmd -d "fish plugin manager"
set -q fisher_path || set -l fisher_path $__fish_config_dir
set -l fish_plugins $__fish_config_dir/fish_plugins
function fisher --argument-names cmd --description "A plugin manager for Fish"
set --query fisher_path || set --local fisher_path $__fish_config_dir
set --local fisher_version 4.4.5
set --local fish_plugins $__fish_config_dir/fish_plugins
switch "$cmd"
case -v --version
echo "fisher, version $fisher_version"
case "" -h --help
echo "usage: fisher install <plugins...> install plugins"
echo " fisher remove <plugins...> remove installed plugins"
echo " fisher update <plugins...> update installed plugins"
echo " fisher update update all installed plugins"
echo " fisher list [<regex>] list installed plugins matching regex"
echo "options:"
echo " -v or --version print fisher version"
echo " -h or --help print this help message"
echo "Usage: fisher install <plugins...> Install plugins"
echo " fisher remove <plugins...> Remove installed plugins"
echo " fisher update <plugins...> Update installed plugins"
echo " fisher update Update all installed plugins"
echo " fisher list [<regex>] List installed plugins matching regex"
echo "Options:"
echo " -v, --version Print version"
echo " -h, --help Print this help message"
echo "Variables:"
echo " \$fisher_path Plugin installation path. Default: $__fish_config_dir" | string replace --regex -- $HOME \~
case ls list
string match --entire --regex -- "$argv[2]" $_fisher_plugins
case install update remove
isatty || read -laz stdin && set -a argv $stdin
set -l install_plugins
set -l update_plugins
set -l remove_plugins
set -l arg_plugins $argv[2..-1]
set -l old_plugins $_fisher_plugins
set -l new_plugins
isatty || read --local --null --array stdin && set --append argv $stdin
if not set -q argv[2]
if test "$cmd" != update || test ! -e $fish_plugins
echo "fisher: not enough arguments for command: \"$cmd\"" >&2 && return 1
set --local install_plugins
set --local update_plugins
set --local remove_plugins
set --local arg_plugins $argv[2..-1]
set --local old_plugins $_fisher_plugins
set --local new_plugins
test -e $fish_plugins && set --local file_plugins (string match --regex -- '^[^\s]+$' <$fish_plugins | string replace -- \~ ~)
if ! set --query argv[2]
if test "$cmd" != update
echo "fisher: Not enough arguments for command: \"$cmd\"" >&2 && return 1
else if ! set --query file_plugins
echo "fisher: \"$fish_plugins\" file not found: \"$cmd\"" >&2 && return 1
end
set arg_plugins (string trim <$fish_plugins)
set arg_plugins $file_plugins
end
for plugin in $arg_plugins
test -e "$plugin" && set plugin (realpath $plugin)
contains -- "$plugin" $new_plugins || set -a new_plugins $plugin
set plugin (test -e "$plugin" && realpath $plugin || string lower -- $plugin)
contains -- "$plugin" $new_plugins || set --append new_plugins $plugin
end
if set -q argv[2]
if set --query argv[2]
for plugin in $new_plugins
if contains -- "$plugin" $old_plugins
if test "$cmd" = remove
set -a remove_plugins $plugin
else
set -a update_plugins $plugin
end
else if test "$cmd" != install
echo "fisher: plugin not installed: \"$plugin\"" >&2 && return 1
test "$cmd" = remove &&
set --append remove_plugins $plugin ||
set --append update_plugins $plugin
else if test "$cmd" = install
set --append install_plugins $plugin
else
set -a install_plugins $plugin
echo "fisher: Plugin not installed: \"$plugin\"" >&2 && return 1
end
end
else
for plugin in $new_plugins
if contains -- "$plugin" $old_plugins
set -a update_plugins $plugin
else
set -a install_plugins $plugin
end
contains -- "$plugin" $old_plugins &&
set --append update_plugins $plugin ||
set --append install_plugins $plugin
end
for plugin in $old_plugins
if not contains -- "$plugin" $new_plugins
set -a remove_plugins $plugin
end
contains -- "$plugin" $new_plugins || set --append remove_plugins $plugin
end
end
set -l pid_list
set -l source_plugins
set -l fetch_plugins $update_plugins $install_plugins
echo -e "\x1b[1mfisher $cmd version $fisher_version\x1b[22m"
set --local pid_list
set --local source_plugins
set --local fetch_plugins $update_plugins $install_plugins
set --local fish_path (status fish-path)
echo (set_color --bold)fisher $cmd version $fisher_version(set_color normal)
for plugin in $fetch_plugins
set -l source (command mktemp -d)
set -a source_plugins $source
set --local source (command mktemp -d)
set --append source_plugins $source
command mkdir -p $source/{completions,conf.d,functions}
command mkdir -p $source/{completions,conf.d,themes,functions}
fish -c "
if test -e $plugin
command cp -Rf $plugin/* $source
else
set temp (command mktemp -d)
set name (string split \@ $plugin) || set name[2] HEAD
set url https://codeload.github.com/\$name[1]/tar.gz/\$name[2]
set -q fisher_user_api_token && set opts -u $fisher_user_api_token
echo -e \"fetching \x1b[4m\$url\x1b[24m\"
if command curl $opts -Ss -w \"\" \$url 2>&1 | command tar -xzf- -C \$temp 2>/dev/null
command cp -Rf \$temp/*/* $source
$fish_path --command "
if test -e $plugin
command cp -Rf $plugin/* $source
else
echo fisher: invalid plugin name or host unavailable: \\\"$plugin\\\" >&2
command rm -rf $source
set temp (command mktemp -d)
set repo (string split -- \@ $plugin) || set repo[2] HEAD
if set path (string replace --regex -- '^(https://)?gitlab.com/' '' \$repo[1])
set name (string split -- / \$path)[-1]
set url https://gitlab.com/\$path/-/archive/\$repo[2]/\$name-\$repo[2].tar.gz
else
set url https://api.github.com/repos/\$repo[1]/tarball/\$repo[2]
end
echo Fetching (set_color --underline)\$url(set_color normal)
if command curl -q --silent -L \$url | command tar -xzC \$temp -f - 2>/dev/null
command cp -Rf \$temp/*/* $source
else
echo fisher: Invalid plugin name or host unavailable: \\\"$plugin\\\" >&2
command rm -rf $source
end
command rm -rf \$temp
end
command rm -rf \$temp
end
test ! -e $source && exit
command mv -f (string match --entire --regex -- \.fish\\\$ $source/*) $source/functions 2>/dev/null" &
set files $source/* && string match --quiet --regex -- .+\.fish\\\$ \$files
" &
set -a pid_list (jobs --last --pid)
set --append pid_list (jobs --last --pid)
end
wait $pid_list 2>/dev/null
for plugin in $fetch_plugins
if set -l source $source_plugins[(contains --index -- "$plugin" $fetch_plugins)] && test ! -e $source
if set -l index (contains --index -- "$plugin" $install_plugins)
set -e install_plugins[$index]
if set --local source $source_plugins[(contains --index -- "$plugin" $fetch_plugins)] && test ! -e $source
if set --local index (contains --index -- "$plugin" $install_plugins)
set --erase install_plugins[$index]
else
set -e update_plugins[(contains --index -- "$plugin" $update_plugins)]
set --erase update_plugins[(contains --index -- "$plugin" $update_plugins)]
end
end
end
for plugin in $update_plugins $remove_plugins
if set -l index (contains --index -- "$plugin" $_fisher_plugins)
set -l plugin_files_var _fisher_(string escape --style=var $plugin)_files
if set --local index (contains --index -- "$plugin" $_fisher_plugins)
set --local plugin_files_var _fisher_(string escape --style=var -- $plugin)_files
if contains -- "$plugin" $remove_plugins && set --erase _fisher_plugins[$index]
for file in (string match --entire --regex -- "conf\.d/" $$plugin_files_var)
emit (string replace --all --regex -- '^.*/|\.fish$' "" $file)_uninstall
if contains -- "$plugin" $remove_plugins
for name in (string replace --filter --regex -- '.+/conf\.d/([^/]+)\.fish$' '$1' $$plugin_files_var)
emit {$name}_uninstall
end
echo -es "removing \x1b[1m$plugin\x1b[22m" \n" "$$plugin_files_var
printf "%s\n" Removing\ (set_color red --bold)$plugin(set_color normal) " "$$plugin_files_var | string replace -- \~ ~
set --erase _fisher_plugins[$index]
end
command rm -rf (string replace -- \~ ~ $$plugin_files_var)
functions --erase (string replace --filter --regex -- '.+/functions/([^/]+)\.fish$' '$1' $$plugin_files_var)
for name in (string replace --filter --regex -- '.+/completions/([^/]+)\.fish$' '$1' $$plugin_files_var)
complete --erase --command $name
end
command rm -rf $$plugin_files_var
functions --erase (string match --entire --regex -- "functions/" $$plugin_files_var \
| string replace --all --regex -- '^.*/|\.fish$' "")
set --erase $plugin_files_var
end
end
if set -q update_plugins[1] || set -q install_plugins[1]
command mkdir -p $fisher_path/{functions,conf.d,completions}
if set --query update_plugins[1] || set --query install_plugins[1]
command mkdir -p $fisher_path/{functions,themes,conf.d,completions}
end
for plugin in $update_plugins $install_plugins
set -l source $source_plugins[(contains --index -- "$plugin" $fetch_plugins)]
set -l files $source/{functions,conf.d,completions}/*
set -l plugin_files_var _fisher_(string escape --style=var $plugin)_files
set -q files[1] && set -U $plugin_files_var (string replace $source $fisher_path $files)
set --local source $source_plugins[(contains --index -- "$plugin" $fetch_plugins)]
set --local files $source/{functions,themes,conf.d,completions}/*
for file in (string replace -- $source "" $files)
command cp -Rf $source/$file $fisher_path/$file
if set --local index (contains --index -- $plugin $install_plugins)
set --local user_files $fisher_path/{functions,themes,conf.d,completions}/*
set --local conflict_files
for file in (string replace -- $source/ $fisher_path/ $files)
contains -- $file $user_files && set --append conflict_files $file
end
if set --query conflict_files[1] && set --erase install_plugins[$index]
echo -s "fisher: Cannot install \"$plugin\": please remove or move conflicting files first:" \n" "$conflict_files >&2
continue
end
end
contains -- $plugin $_fisher_plugins || set -Ua _fisher_plugins $plugin
contains -- $plugin $install_plugins && set -l event "install" || set -l event "update"
echo -es "installing \x1b[1m$plugin\x1b[22m" \n" "$$plugin_files_var
for file in (string replace -- $source/ "" $files)
command cp -RLf $source/$file $fisher_path/$file
end
for file in (string match --entire --regex -- "[functions/|conf\.d/].*fish\$" $$plugin_files_var)
set --local plugin_files_var _fisher_(string escape --style=var -- $plugin)_files
set --query files[1] && set --universal $plugin_files_var (string replace -- $source $fisher_path $files | string replace -- ~ \~)
contains -- $plugin $_fisher_plugins || set --universal --append _fisher_plugins $plugin
contains -- $plugin $install_plugins && set --local event install || set --local event update
printf "%s\n" Installing\ (set_color --bold)$plugin(set_color normal) " "$$plugin_files_var | string replace -- \~ ~
for file in (string match --regex -- '.+/[^/]+\.fish$' $$plugin_files_var | string replace -- \~ ~)
source $file
if string match --quiet --regex -- "conf\.d/" $file
emit (string replace --all --regex -- '^.*/|\.fish$' "" $file)_$event
if set --local name (string replace --regex -- '.+conf\.d/([^/]+)\.fish$' '$1' $file)
emit {$name}_$event
end
end
end
command rm -rf $source_plugins
functions -q fish_prompt || source $__fish_data_dir/functions/fish_prompt.fish
set -q _fisher_plugins[1] || set -e _fisher_plugins
set -q _fisher_plugins && printf "%s\n" $_fisher_plugins >$fish_plugins || command rm -f $fish_plugins
if set --query _fisher_plugins[1]
set --local commit_plugins
for plugin in $file_plugins
contains -- (string lower -- $plugin) (string lower -- $_fisher_plugins) && set --append commit_plugins $plugin
end
for plugin in $_fisher_plugins
contains -- (string lower -- $plugin) (string lower -- $commit_plugins) || set --append commit_plugins $plugin
end
string replace --regex -- $HOME \~ $commit_plugins >$fish_plugins
else
set --erase _fisher_plugins
command rm -f $fish_plugins
end
set --local total (count $install_plugins) (count $update_plugins) (count $remove_plugins)
set -l total (count $install_plugins) (count $update_plugins) (count $remove_plugins)
test "$total" != "0 0 0" && echo (string join ", " (
test $total[1] = 0 || echo "installed $total[1]") (
test $total[2] = 0 || echo "updated $total[2]") (
test $total[3] = 0 || echo "removed $total[3]")
) "plugin/s"
test $total[1] = 0 || echo "Installed $total[1]") (
test $total[2] = 0 || echo "Updated $total[2]") (
test $total[3] = 0 || echo "Removed $total[3]")
) plugin/s
case \*
echo "fisher: unknown flag or command: \"$cmd\" (see `fisher -h`)" >&2 && return 1
echo "fisher: Unknown command: \"$cmd\"" >&2 && return 1
end
end
## Migrations ##
if functions -q _fisher_self_update || test -e $__fish_config_dir/fishfile # 3.x
function _fisher_migrate
function _fisher_complete
fisher install jorgebucaran/fisher >/dev/null 2>/dev/null
functions --erase _fisher_complete
if ! set --query _fisher_upgraded_to_4_4
set --universal _fisher_upgraded_to_4_4
if functions --query _fisher_list
set --query XDG_DATA_HOME[1] || set --local XDG_DATA_HOME ~/.local/share
command rm -rf $XDG_DATA_HOME/fisher
functions --erase _fisher_{list,plugin_parse}
fisher update >/dev/null 2>/dev/null
else
for var in (set --names | string match --entire --regex '^_fisher_.+_files$')
set $var (string replace -- ~ \~ $$var)
end
set -q XDG_DATA_HOME || set XDG_DATA_HOME ~/.local/share
set -q XDG_CACHE_HOME || set XDG_CACHE_HOME ~/.cache
set -q XDG_CONFIG_HOME || set XDG_CONFIG_HOME ~/.config
set -q fisher_path || set fisher_path $__fish_config_dir
test -e $__fish_config_dir/fishfile && command awk '/#|^gitlab|^ *$/ { next } $0' <$__fish_config_dir/fishfile >>$__fish_config_dir/fish_plugins
command rm -rf $__fish_config_dir/fishfile $fisher_path/{conf.d,completions}/fisher.fish {$XDG_DATA_HOME,$XDG_CACHE_HOME,$XDG_CONFIG_HOME}/fisher
functions --erase _fisher_migrate _fisher_copy_user_key_bindings _fisher_ls _fisher_fmt _fisher_self_update _fisher_self_uninstall _fisher_commit _fisher_parse _fisher_fetch _fisher_add _fisher_rm _fisher_jobs _fisher_now _fisher_help
fisher update
functions --erase _fisher_fish_postexec
end
echo "upgrading to fisher $fisher_version -- learn more at" (set_color --bold --underline)"https://git.io/fisher-4"(set_color normal)
_fisher_migrate >/dev/null 2>/dev/null
else if functions -q _fisher_list # 4.0
set -q XDG_DATA_HOME || set -l XDG_DATA_HOME ~/.local/share
test -e $XDG_DATA_HOME/fisher && command rm -rf $XDG_DATA_HOME/fisher
functions --erase _fisher_list _fisher_plugin_parse
echo -n "upgrading to fisher $fisher_version new in-memory state.."
fisher update >/dev/null 2>/dev/null
echo -ne "done\r\n"
end
end

View File

@@ -1,238 +0,0 @@
# This file has been auto-generated by i3-config-wizard(1).
# It will not be overwritten, so edit it as you like.
#
# Should you change your keyboard layout some time, delete
# this file and re-run i3-config-wizard(1).
#
workspace "1" output "eDP1"
workspace "2" output "eDP1"
workspace "3" output "eDP1"
workspace "4" output "eDP1"
workspace "5" output "eDP1"
workspace "6" output "eDP1"
workspace "7" output "eDP1"
workspace "8" output "eDP1"
workspace "9" output "eDP1"
workspace "10" output "eDP1"
workspace "11" output "eDP1"
workspace "12" output "eDP1"
focus_follows_mouse no
# i3 config file (v4)
#
# Please see http://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
#font pango:DejaVu Sans 6
# This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango).
font pango:Hack 8
# Before i3 v4.8, we used to recommend this one as the default:
# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
# The font above is very space-efficient, that is, it looks good, sharp and
# clear in small sizes. However, its unicode glyph coverage is limited, the old
# X core fonts rendering does not support right-to-left and this being a bitmap
# font, it doesnt scale on retina/hidpi displays.
gaps inner 10
gaps outer 0
smart_gaps on
smart_borders on
for_window [class="^.*"] border pixel 2
#gaps inner all set 40
#gaps outer current plus 20
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# start a terminal
#bindsym $mod+Return exec i3-sensible-terminal
bindsym $mod+Return exec alacritty
# kill focused window
bindsym $mod+Shift+A kill
# start dmenu (a program launcher)
#bindsym $mod+d exec dmenu_run
# There also is the (new) i3-dmenu-desktop which only displays applications
# shipping a .desktop file. It is a wrapper around dmenu, so you need that
# installed.
#bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
bindsym $mod+d exec rofi -show drun
# change focus
#bindsym $mod+j focus left
#bindsym $mod+k focus down
#bindsym $mod+l focus up
#bindsym $mod+m focus right
# alternatively, you can use the cursor keys:
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focused window
#bindsym $mod+Shift+j move left
#bindsym $mod+Shift+k move down
#bindsym $mod+Shift+l move up
#bindsym $mod+Shift+M move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# split in horizontal orientation
bindsym $mod+h split h
# split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
bindsym $mod+z layout tabbed
bindsym $mod+e layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+q focus parent
# focus the child container
#bindsym $mod+d focus child
# switch to workspace
bindsym $mod+ampersand workspace 1
bindsym $mod+eacute workspace 2
bindsym $mod+quotedbl workspace 3
bindsym $mod+apostrophe workspace 4
bindsym $mod+parenleft workspace 5
bindsym $mod+minus workspace 6
bindsym $mod+egrave workspace 7
bindsym $mod+underscore workspace 8
bindsym $mod+ccedilla workspace 9
bindsym $mod+agrave workspace 10
bindsym $mod+parenright workspace 11
bindsym $mod+equal workspace 12
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace 1
bindsym $mod+Shift+eacute move container to workspace 2
bindsym $mod+Shift+3 move container to workspace 3
bindsym $mod+Shift+4 move container to workspace 4
bindsym $mod+Shift+5 move container to workspace 5
bindsym $mod+Shift+6 move container to workspace 6
bindsym $mod+Shift+egrave move container to workspace 7
bindsym $mod+Shift+8 move container to workspace 8
bindsym $mod+Shift+ccedilla move container to workspace 9
bindsym $mod+Shift+agrave move container to workspace 10
bindsym $mod+Shift+degree move container to workspace 11
bindsym $mod+Shift+plus move container to workspace 12
# move current workspace between monitors
bindsym $mod+Control+left move workspace to output left
bindsym $mod+Control+right move workspace to output down
bindsym $mod+Control+up move workspace to output up
bindsym $mod+Control+down move workspace to output right
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
#bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
bindsym $mod+Shift+e exit
bindsym $mod+l exec i3lock -f -c 222222
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym j resize shrink width 10 px or 10 ppt
bindsym k resize grow height 10 px or 10 ppt
bindsym l resize shrink height 10 px or 10 ppt
bindsym m resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
bindsym $mod+w sticky toggle
# Color scheme night owl
#client.focused #a2bffc #a2bffc #282828 #282828
#client.focused_inactive #1d2021 #1d2021 #928374 #282828
#client.unfocused #32302f #32302f #928374 #282828
#client.urgent #cc241d #cc241d #ebdbb2 #282828
# Theme
#
# Note: I only really need border for the current focused window, so the inactive broder is set to background color. If you want a more visible vorder, replace #000b1e with #0abdc6 (for example) on client.[focused_inactive|unfocused]
default_border pixel 1
default_floating_border pixel 1
client.focused #ea00d9 #ea00d9 #000b1e #ea00d9 #ea00d9
client.focused_inactive #000b1e #000b1e #0abdc6 #000b1e #000b1e
client.unfocused #000b1e #000b1e #0abdc6 #000b1e #000b1e
client.urgent #ff0000 #ff0000 #000b1e #ff0000 #ff0000
client.placeholder #000b1e #000b1e #0abdc6 #000b1e #000b1e
exec xsetroot -solid "#222222"
#exec "setxkbmap -option 'grp:alt_shift_toggle' -layout fr,fr -variant oss,bepo"
# Pulse Audio controls
bindsym XF86AudioRaiseVolume exec --no-startup-id "pactl set-sink-volume 0 +5%; pactl set-sink-volume 1 +5%"
bindsym XF86AudioLowerVolume exec --no-startup-id "pactl set-sink-volume 0 -5%; pactl set-sink-volume 1 -5%"
bindsym XF86AudioMute exec --no-startup-id "pactl set-sink-mute 0 toggle" # mute sound
# gestion de la luminosité
bindsym XF86MonBrightnessUp exec brightnessctl set +10% # increase screen brightness
bindsym XF86MonBrightnessDown exec brightnessctl set 10%- # decrease screen brightness
exec_always --no-startup-id autorandr -c
exec_always --no-startup-id bash ~/.config/polybar/launch.sh
exec --no-startup-id pulseaudio -k && pulseaudio --start
exec --no-startup-id nm-applet
exec --no-startup-id blueman-applet
exec --no-startup-id nextcloud
#exec --no-startup-id rofi
#exec --no-startup-id secret-tool lookup "KeePass Perso" | keepassxc --pw-stdin "$HOME/nextcloud/perso/db.kdbx"

View File

@@ -0,0 +1,33 @@
[General]
ConfigVersion=2
[Browser]
CustomProxyLocation=
Enabled=true
HttpAuthPermission=true
[FdoSecrets]
Enabled=false
[GUI]
ApplicationTheme=dark
CompactMode=true
Language=fr
MinimizeOnClose=true
MinimizeOnStartup=false
MinimizeToTray=true
ShowTrayIcon=true
TrayIconAppearance=colorful
[KeeShare]
Active="<?xml version=\"1.0\"?><KeeShare><Active/></KeeShare>\n"
Own="<?xml version=\"1.0\"?><KeeShare><PrivateKey>MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDmiKbjSSOdseCsE97YT3rvZgzQ2u5/Dd/lo5q3cYgdhfbVFlcu+XhScD+mQ7MVuDfx4cuFnmQ4e5IjdcXIllU2vJVhWdvaBmWMnzQHRP95r7YrhhLoWOR4jVT2wHgkhoCOL6OA9AcvBDLA02lwcQ+mxiQgG0UMuVjtALtPfnzR7HokJDoCFAL41m0TsSounoHzdPyhegWCbtrF1bIT3++mdci49sTWkmXyqki8tQnaAANc0/yJmU/vhKPRTal6wRUAUYusw+VYyIOlnYNqs5UsopeF2B9j0/JUZMUHRcoUVm5NmYbw5ujDu46sqnO7tCSQ2i9zqeCaivmU97cNibCVAgMBAAECggEARuz2A2lmJscqK2b1obFaTjskaEFjLP3Uy675E8U/Lm4f0dFMw2wHQ727J2keuOjzdVyVpCdmCCakgHpkfmEaGHwOrWPbCwn6xjfY5v+oZgTUVDGssYVfzWMWJ9BxZjNna9dmQ29Qont1LfQdNXXjbdj6FlKtfMute0VFW6C7wE2ejiVmx2TOZQ+5hERgHct4c4FXQPaUrzgrAEd+2RHLKPy7VR+ObrEBZBAvSMBq9HgpV8GbRPDC7MjFUSPAjvTcdh6eBhrAoeznLmZcQDwCG9Js6jivVX0rvcd8FTFaC8vGCPWCRbgeGT2ym8ecblCgdGn3CLxSZOaQ3z2hsfbKhQKBgQD0RKuaKFiYM95fn8ShzQI/Au2wHc/LB9wkdkX4tenVac4PBifqO2yLIJ2NatQxp2GJbcilxxPw3rYltkVpLO0N27ap94syJV/xQrwQJ76XyjTofl8A9KSEfY4k1UR9cS2JaQdKutOCL9zFaVjnQRBeq+l6zCBEwnGIE9EOjvJU6wKBgQDxmx0YnBiCurvqGxZ26KFmg/nTF/Zi+7YYNT93voXgADIZyaAFqCS/xqqVS2gntG1EV8DPW3ABOz4Ef9q87JFKJ820O4P0pI2X8YgsN4oeaQlb71eUj4ET1Y2cHHQcagCVtUHP/vFJlj9Bm3R8pb5jSuaUs3r+UMfE/9FdHtCwfwKBgCRCDTbUxlHRYTDQhl9+DtdLl/yMcEuy3vqKk9hXKF6FVhDk2QfryjDcpoZXVSgJsHC12xLAejVG2cK/S45RHN7xvit8kyzeX19wiHndbG0blr7sAy4hIkqIWJEfFwuHwTqkXHC7SqoIcLzc5lVtUwC6g+22XxPVyQRp7J48mbwBAoGBAN0CVXVjpRBBHRCjwsL3Pl12sJsnOl2FgCdY3jv9bp1f0HTCeb1y+FrtsrFrD1XyuFliJKAKNsUJmkunYUKc7LL3AjaykpzBwjyR100LaS80SjltEaJ2O08XdLivVo9/cBWCfzdzMOltpWOwfrhfLW/K3m58WDA3WOaeVLhoLeKlAoGAHkaYpRYgMjRLtg+//bf2Vhraaun7UvQTUrOq8VpEU+o92fVs9n71bHzfydLHQDHPn/+cCxK5mS1mS9OSdJLESG6ewU8lLnbyLVEGgEtbabEjdkyFh+UScH/2Ne6Wr/QFvbDlxqlVV8C3NA+Ao1/MhGq+iJfc0i9ES6rBhMZEH5s=</PrivateKey><PublicKey><Signer>daiko</Signer><Key>MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDmiKbjSSOdseCsE97YT3rvZgzQ2u5/Dd/lo5q3cYgdhfbVFlcu+XhScD+mQ7MVuDfx4cuFnmQ4e5IjdcXIllU2vJVhWdvaBmWMnzQHRP95r7YrhhLoWOR4jVT2wHgkhoCOL6OA9AcvBDLA02lwcQ+mxiQgG0UMuVjtALtPfnzR7HokJDoCFAL41m0TsSounoHzdPyhegWCbtrF1bIT3++mdci49sTWkmXyqki8tQnaAANc0/yJmU/vhKPRTal6wRUAUYusw+VYyIOlnYNqs5UsopeF2B9j0/JUZMUHRcoUVm5NmYbw5ujDu46sqnO7tCSQ2i9zqeCaivmU97cNibCVAgMBAAECggEARuz2A2lmJscqK2b1obFaTjskaEFjLP3Uy675E8U/Lm4f0dFMw2wHQ727J2keuOjzdVyVpCdmCCakgHpkfmEaGHwOrWPbCwn6xjfY5v+oZgTUVDGssYVfzWMWJ9BxZjNna9dmQ29Qont1LfQdNXXjbdj6FlKtfMute0VFW6C7wE2ejiVmx2TOZQ+5hERgHct4c4FXQPaUrzgrAEd+2RHLKPy7VR+ObrEBZBAvSMBq9HgpV8GbRPDC7MjFUSPAjvTcdh6eBhrAoeznLmZcQDwCG9Js6jivVX0rvcd8FTFaC8vGCPWCRbgeGT2ym8ecblCgdGn3CLxSZOaQ3z2hsfbKhQKBgQD0RKuaKFiYM95fn8ShzQI/Au2wHc/LB9wkdkX4tenVac4PBifqO2yLIJ2NatQxp2GJbcilxxPw3rYltkVpLO0N27ap94syJV/xQrwQJ76XyjTofl8A9KSEfY4k1UR9cS2JaQdKutOCL9zFaVjnQRBeq+l6zCBEwnGIE9EOjvJU6wKBgQDxmx0YnBiCurvqGxZ26KFmg/nTF/Zi+7YYNT93voXgADIZyaAFqCS/xqqVS2gntG1EV8DPW3ABOz4Ef9q87JFKJ820O4P0pI2X8YgsN4oeaQlb71eUj4ET1Y2cHHQcagCVtUHP/vFJlj9Bm3R8pb5jSuaUs3r+UMfE/9FdHtCwfwKBgCRCDTbUxlHRYTDQhl9+DtdLl/yMcEuy3vqKk9hXKF6FVhDk2QfryjDcpoZXVSgJsHC12xLAejVG2cK/S45RHN7xvit8kyzeX19wiHndbG0blr7sAy4hIkqIWJEfFwuHwTqkXHC7SqoIcLzc5lVtUwC6g+22XxPVyQRp7J48mbwBAoGBAN0CVXVjpRBBHRCjwsL3Pl12sJsnOl2FgCdY3jv9bp1f0HTCeb1y+FrtsrFrD1XyuFliJKAKNsUJmkunYUKc7LL3AjaykpzBwjyR100LaS80SjltEaJ2O08XdLivVo9/cBWCfzdzMOltpWOwfrhfLW/K3m58WDA3WOaeVLhoLeKlAoGAHkaYpRYgMjRLtg+//bf2Vhraaun7UvQTUrOq8VpEU+o92fVs9n71bHzfydLHQDHPn/+cCxK5mS1mS9OSdJLESG6ewU8lLnbyLVEGgEtbabEjdkyFh+UScH/2Ne6Wr/QFvbDlxqlVV8C3NA+Ao1/MhGq+iJfc0i9ES6rBhMZEH5s=</Key></PublicKey></KeeShare>\n"
QuietSuccess=true
[PasswordGenerator]
AdditionalChars=
ExcludedChars=
Length=32
[SSHAgent]
Enabled=true

View File

@@ -0,0 +1,21 @@
background #1e1e1e
foreground #b8bcb9
cursor #eee
selection_background #efcc00
color0 #3a3c43
color8 #888987
color1 #be3e48
color9 #fb001e
color2 #869a3a
color10 #0e712e
color3 #c4a535
color11 #c37033
color4 #4e76a1
color12 #176ce3
color5 #855b8d
color13 #fb0067
color6 #568ea3
color14 #2d6f6c
color7 #b8bcb9
color15 #fcffb8
selection_foreground #1e1e1e

View File

@@ -0,0 +1,29 @@
# Colors
foreground #979eab
background #282c34
color0 #282c34
color1 #e06c75
color2 #98c379
color3 #e5c07b
color4 #61afef
color5 #be5046
color6 #56b6c2
color7 #979eab
color8 #393e48
color9 #d19a66
color10 #56b6c2
color11 #e5c07b
color12 #61afef
color13 #be5046
color14 #56b6c2
color15 #abb2bf
# Tab Bar
active_tab_foreground #282c34
active_tab_background #979eab
inactive_tab_foreground #abb2bf
inactive_tab_background #282c34

16
.config/kitty/kitty.conf Normal file
View File

@@ -0,0 +1,16 @@
# Color Scheme template Green Armed
font_family Fira Code
italic_font auto
bold_font auto
bold_italic_font auto
window_margin_width 4.0
font_size 11.0
background_opacity 1
enable_audio_bell no
tab_bar_style powerline
include current-theme.conf

View File

@@ -0,0 +1,23 @@
# Color Scheme template Green Armed
font_family Fira Code
#font_family Hack Nerd font
#font_family Source Code Pro
italic_font auto
bold_font auto
bold_italic_font auto
font_size 10.0
background_opacity 1
tab_bar_style powerline
#include monokai-pro-dimmed.conf
#include dark-one.conf
# BEGIN_KITTY_THEME
# Monokai Soda
include current-theme.conf
# END_KITTY_THEME

View File

@@ -0,0 +1,21 @@
background #1e1e1e
foreground #b8bcb9
cursor #eee
selection_background #efcc00
color0 #3a3c43
color8 #888987
color1 #be3e48
color9 #fb001e
color2 #869a3a
color10 #0e712e
color3 #c4a535
color11 #c37033
color4 #4e76a1
color12 #176ce3
color5 #855b8d
color13 #fb0067
color6 #568ea3
color14 #2d6f6c
color7 #b8bcb9
color15 #fcffb8
selection_foreground #1e1e1e

View File

@@ -0,0 +1,21 @@
background #191919
foreground #c4c4b5
cursor #f6f6ec
selection_background #343434
color0 #191919
color8 #615e4b
color1 #f3005f
color9 #f3005f
color2 #97e023
color10 #97e023
color3 #fa8419
color11 #dfd561
color4 #9c64fe
color12 #9c64fe
color5 #f3005f
color13 #f3005f
color6 #57d1ea
color14 #57d1ea
color7 #c4c4b5
color15 #f6f6ee
selection_foreground #191919

View File

@@ -0,0 +1,61 @@
# Monokai-pro for Kitty
# Based on https://www.monokai.pro/
# src : https://github.com/langolf/kitty-monokaipro/blob/master/kitty-monokaipro.conf
foreground #fcfcfa
background #2d2a2e
background #000000
selection_foreground #19181a
selection_background #ffd866
url_color #78dce8
cursor #fcfcfa
cursor_text_color #2d2a2e
active_tab_background #ffd866
active_tab_foreground #19181a
active_tab_font_style bold
inactive_tab_background #2d2a2e
inactive_tab_foreground #fcfcfa
inactive_tab_font_style normal
tab_fade 0.1 0.2 0.8 1
tab_bar_margin_width 1.0
dim_opacity 0.5
inactive_text_alpha 0.5
active_border_color #19181a
draw_minimal_borders yes
window_padding_width 10
window_margin_width 0
macos_titlebar_color background
# black
color0 #19181a
color8 #19181a
# red
color1 #FF5C57
color9 #FF5C57
# green
color2 #a9dc76
color10 #a9dc76
# yellow
color3 #ffd866
color11 #ffd866
# blue
color4 #3399cc
color12 #3399cc
# magenta
color5 #ff6188
color13 #ff6188
# cyan
color6 #78dce8
color14 #78dce8
# white
color7 #fcfcfa
color15 #fcfcfa

13
.config/meteo.yaml Normal file
View File

@@ -0,0 +1,13 @@
locations:
florac:
altitude: 522
latitude: 44.3245
longitude: 3.5925
mafresié:
altitude: 360
latitude: 44.1230
longitude: 2.0200
calvernais:
altitude: 100
latitude: 47.5756
longitude: -1.7111

View File

@@ -1,67 +1,36 @@
" vim-plug: Vim plugin manager
" ============================
"
" Download plug.vim and put it in ~/.vim/autoload
" 1. Download plug.vim and put it in 'autoload' directory
"
" # Vim
" curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
" https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
"
" Edit your .vimrc
" # Neovim
" sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \
" https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
"
" call plug#begin('~/.vim/plugged')
" 2. Add a vim-plug section to your ~/.vimrc (or ~/.config/nvim/init.vim for Neovim)
"
" " Make sure you use single quotes
" call plug#begin()
"
" " Shorthand notation; fetches https://github.com/junegunn/vim-easy-align
" Plug 'junegunn/vim-easy-align'
" " List your plugins here
" Plug 'tpope/vim-sensible'
"
" " Any valid git URL is allowed
" Plug 'https://github.com/junegunn/vim-github-dashboard.git'
"
" " Multiple Plug commands can be written in a single line using | separators
" Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets'
"
" " On-demand loading
" Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
" Plug 'tpope/vim-fireplace', { 'for': 'clojure' }
"
" " Using a non-default branch
" Plug 'rdnetto/YCM-Generator', { 'branch': 'stable' }
"
" " Using a tagged release; wildcard allowed (requires git 1.9.2 or above)
" Plug 'fatih/vim-go', { 'tag': '*' }
"
" " Plugin options
" Plug 'nsf/gocode', { 'tag': 'v.20150303', 'rtp': 'vim' }
"
" " Plugin outside ~/.vim/plugged with post-update hook
" Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
"
" " Unmanaged plugin (manually installed and updated)
" Plug '~/my-prototype-plugin'
"
" " Initialize plugin system
" call plug#end()
"
" Then reload .vimrc and :PlugInstall to install plugins.
" 3. Reload the file or restart Vim, then you can,
"
" Plug options:
" :PlugInstall to install plugins
" :PlugUpdate to update plugins
" :PlugDiff to review the changes from the last update
" :PlugClean to remove plugins no longer in the list
"
"| Option | Description |
"| ----------------------- | ------------------------------------------------ |
"| `branch`/`tag`/`commit` | Branch/tag/commit of the repository to use |
"| `rtp` | Subdirectory that contains Vim plugin |
"| `dir` | Custom directory for the plugin |
"| `as` | Use different name for the plugin |
"| `do` | Post-update hook (string or funcref) |
"| `on` | On-demand loading: Commands or `<Plug>`-mappings |
"| `for` | On-demand loading: File types |
"| `frozen` | Do not update unless explicitly specified |
"
" More information: https://github.com/junegunn/vim-plug
" For more information, see https://github.com/junegunn/vim-plug
"
"
" Copyright (c) 2017 Junegunn Choi
" Copyright (c) 2024 Junegunn Choi
"
" MIT License
"
@@ -238,10 +207,11 @@ endfunction
function! plug#begin(...)
if a:0 > 0
let s:plug_home_org = a:1
let home = s:path(s:plug_fnamemodify(s:plug_expand(a:1), ':p'))
elseif exists('g:plug_home')
let home = s:path(g:plug_home)
elseif has('nvim')
let home = stdpath('data') . '/plugged'
elseif !empty(&rtp)
let home = s:path(split(&rtp, ',')[0]) . '/plugged'
else
@@ -350,7 +320,7 @@ function! plug#end()
endif
let lod = { 'ft': {}, 'map': {}, 'cmd': {} }
if exists('g:did_load_filetypes')
if get(g:, 'did_load_filetypes', 0)
filetype off
endif
for name in g:plugs_order
@@ -389,6 +359,9 @@ function! plug#end()
if !empty(types)
augroup filetypedetect
call s:source(s:rtp(plug), 'ftdetect/**/*.vim', 'after/ftdetect/**/*.vim')
if has('nvim-0.5.0')
call s:source(s:rtp(plug), 'ftdetect/**/*.lua', 'after/ftdetect/**/*.lua')
endif
augroup END
endif
for type in types
@@ -405,7 +378,7 @@ function! plug#end()
for [map, names] in items(lod.map)
for [mode, map_prefix, key_prefix] in
\ [['i', '<C-O>', ''], ['n', '', ''], ['v', '', 'gv'], ['o', '', '']]
\ [['i', '<C-\><C-O>', ''], ['n', '', ''], ['v', '', 'gv'], ['o', '', '']]
execute printf(
\ '%snoremap <silent> %s %s:<C-U>call <SID>lod_map(%s, %s, %s, "%s")<CR>',
\ mode, map, map_prefix, string(map), string(names), mode != 'i', key_prefix)
@@ -436,6 +409,9 @@ endfunction
function! s:load_plugin(spec)
call s:source(s:rtp(a:spec), 'plugin/**/*.vim', 'after/plugin/**/*.vim')
if has('nvim-0.5.0')
call s:source(s:rtp(a:spec), 'plugin/**/*.lua', 'after/plugin/**/*.lua')
endif
endfunction
function! s:reload_plugins()
@@ -653,6 +629,9 @@ function! s:lod(names, types, ...)
let rtp = s:rtp(g:plugs[name])
for dir in a:types
call s:source(rtp, dir.'/**/*.vim')
if has('nvim-0.5.0') " see neovim#14686
call s:source(rtp, dir.'/**/*.lua')
endif
endfor
if a:0
if !s:source(rtp, a:1) && !empty(s:glob(rtp, a:2))
@@ -804,10 +783,11 @@ endfunction
function! s:syntax()
syntax clear
syntax region plug1 start=/\%1l/ end=/\%2l/ contains=plugNumber
syntax region plug2 start=/\%2l/ end=/\%3l/ contains=plugBracket,plugX
syntax region plug2 start=/\%2l/ end=/\%3l/ contains=plugBracket,plugX,plugAbort
syn match plugNumber /[0-9]\+[0-9.]*/ contained
syn match plugBracket /[[\]]/ contained
syn match plugX /x/ contained
syn match plugAbort /\~/ contained
syn match plugDash /^-\{1}\ /
syn match plugPlus /^+/
syn match plugStar /^*/
@@ -832,6 +812,7 @@ function! s:syntax()
hi def link plug2 Repeat
hi def link plugH2 Type
hi def link plugX Exception
hi def link plugAbort Ignore
hi def link plugBracket Structure
hi def link plugNumber Number
@@ -867,7 +848,7 @@ function! s:lastline(msg)
endfunction
function! s:new_window()
execute get(g:, 'plug_window', 'vertical topleft new')
execute get(g:, 'plug_window', '-tabnew')
endfunction
function! s:plug_window_exists()
@@ -929,7 +910,7 @@ function! s:prepare(...)
endif
endfor
call s:job_abort()
call s:job_abort(0)
if s:switch_in()
if b:plug_preview == 1
pc
@@ -965,6 +946,8 @@ function! s:close_pane()
if b:plug_preview == 1
pc
let b:plug_preview = -1
elseif exists('s:jobs') && !empty(s:jobs)
call s:job_abort(1)
else
bd
endif
@@ -1029,6 +1012,11 @@ function! s:is_updated(dir)
endfunction
function! s:do(pull, force, todo)
if has('nvim')
" Reset &rtp to invalidate Neovim cache of loaded Lua modules
" See https://github.com/junegunn/vim-plug/pull/1157#issuecomment-1809226110
let &rtp = &rtp
endif
for [name, spec] in items(a:todo)
if !isdirectory(spec.dir)
continue
@@ -1090,12 +1078,14 @@ endfunction
function! s:checkout(spec)
let sha = a:spec.commit
let output = s:git_revision(a:spec.dir)
let error = 0
if !empty(output) && !s:hash_match(sha, s:lines(output)[0])
let credential_helper = s:git_version_requirement(2) ? '-c credential.helper= ' : ''
let output = s:system(
\ 'git '.credential_helper.'fetch --depth 999999 && git checkout '.plug#shellescape(sha).' --', a:spec.dir)
let error = v:shell_error
endif
return output
return [output, error]
endfunction
function! s:finish(pull)
@@ -1156,7 +1146,7 @@ function! s:update_impl(pull, force, args) abort
let threads = (len(args) > 0 && args[-1] =~ '^[1-9][0-9]*$') ?
\ remove(args, -1) : get(g:, 'plug_threads', 16)
let managed = filter(copy(g:plugs), 's:is_managed(v:key)')
let managed = filter(deepcopy(g:plugs), 's:is_managed(v:key)')
let todo = empty(args) ? filter(managed, '!v:val.frozen || !isdirectory(v:val.dir)') :
\ filter(managed, 'index(args, v:key) >= 0')
@@ -1290,9 +1280,11 @@ function! s:update_finish()
if !pos
continue
endif
let out = ''
let error = 0
if has_key(spec, 'commit')
call s:log4(name, 'Checking out '.spec.commit)
let out = s:checkout(spec)
let [out, error] = s:checkout(spec)
elseif has_key(spec, 'tag')
let tag = spec.tag
if tag =~ '\*'
@@ -1305,19 +1297,16 @@ function! s:update_finish()
endif
call s:log4(name, 'Checking out '.tag)
let out = s:system('git checkout -q '.plug#shellescape(tag).' -- 2>&1', spec.dir)
else
let branch = s:git_origin_branch(spec)
call s:log4(name, 'Merging origin/'.s:esc(branch))
let out = s:system('git checkout -q '.plug#shellescape(branch).' -- 2>&1'
\. (has_key(s:update.new, name) ? '' : ('&& git merge --ff-only '.plug#shellescape('origin/'.branch).' 2>&1')), spec.dir)
let error = v:shell_error
endif
if !v:shell_error && filereadable(spec.dir.'/.gitmodules') &&
if !error && filereadable(spec.dir.'/.gitmodules') &&
\ (s:update.force || has_key(s:update.new, name) || s:is_updated(spec.dir))
call s:log4(name, 'Updating submodules. This may take a while.')
let out .= s:bang('git submodule update --init --recursive'.s:submodule_opt.' 2>&1', spec.dir)
let error = v:shell_error
endif
let msg = s:format_message(v:shell_error ? 'x': '-', name, out)
if v:shell_error
if error
call add(s:update.errors, name)
call s:regress_bar()
silent execute pos 'd _'
@@ -1341,7 +1330,12 @@ function! s:update_finish()
endif
endfunction
function! s:job_abort()
function! s:mark_aborted(name, message)
let attrs = { 'running': 0, 'error': 1, 'abort': 1, 'lines': [a:message] }
let s:jobs[a:name] = extend(get(s:jobs, a:name, {}), attrs)
endfunction
function! s:job_abort(cancel)
if (!s:nvim && !s:vim8) || !exists('s:jobs')
return
endif
@@ -1355,8 +1349,18 @@ function! s:job_abort()
if j.new
call s:rm_rf(g:plugs[name].dir)
endif
if a:cancel
call s:mark_aborted(name, 'Aborted')
endif
endfor
let s:jobs = {}
if a:cancel
for todo in values(s:update.todo)
let todo.abort = 1
endfor
else
let s:jobs = {}
endif
endfunction
function! s:last_non_empty_line(lines)
@@ -1370,6 +1374,16 @@ function! s:last_non_empty_line(lines)
return ''
endfunction
function! s:bullet_for(job, ...)
if a:job.running
return a:job.new ? '+' : '*'
endif
if get(a:job, 'abort', 0)
return '~'
endif
return a:job.error ? 'x' : get(a:000, 0, '-')
endfunction
function! s:job_out_cb(self, data) abort
let self = a:self
let data = remove(self.lines, -1) . a:data
@@ -1378,9 +1392,10 @@ function! s:job_out_cb(self, data) abort
" To reduce the number of buffer updates
let self.tick = get(self, 'tick', -1) + 1
if !self.running || self.tick % len(s:jobs) == 0
let bullet = self.running ? (self.new ? '+' : '*') : (self.error ? 'x' : '-')
let result = self.error ? join(self.lines, "\n") : s:last_non_empty_line(self.lines)
call s:log(bullet, self.name, result)
if len(result)
call s:log(s:bullet_for(self), self.name, result)
endif
endif
endfunction
@@ -1393,7 +1408,7 @@ endfunction
function! s:job_cb(fn, job, ch, data)
if !s:plug_window_exists() " plug window closed
return s:job_abort()
return s:job_abort(0)
endif
call call(a:fn, [a:job, a:data])
endfunction
@@ -1404,16 +1419,17 @@ function! s:nvim_cb(job_id, data, event) dict abort
\ s:job_cb('s:job_exit_cb', self, 0, a:data)
endfunction
function! s:spawn(name, cmd, opts)
let job = { 'name': a:name, 'running': 1, 'error': 0, 'lines': [''],
\ 'new': get(a:opts, 'new', 0) }
function! s:spawn(name, spec, queue, opts)
let job = { 'name': a:name, 'spec': a:spec, 'running': 1, 'error': 0, 'lines': [''],
\ 'new': get(a:opts, 'new', 0), 'queue': copy(a:queue) }
let Item = remove(job.queue, 0)
let argv = type(Item) == s:TYPE.funcref ? call(Item, [a:spec]) : Item
let s:jobs[a:name] = job
if s:nvim
if has_key(a:opts, 'dir')
let job.cwd = a:opts.dir
endif
let argv = a:cmd
call extend(job, {
\ 'on_stdout': function('s:nvim_cb'),
\ 'on_stderr': function('s:nvim_cb'),
@@ -1429,7 +1445,7 @@ function! s:spawn(name, cmd, opts)
\ 'Invalid arguments (or job table is full)']
endif
elseif s:vim8
let cmd = join(map(copy(a:cmd), 'plug#shellescape(v:val, {"script": 0})'))
let cmd = join(map(copy(argv), 'plug#shellescape(v:val, {"script": 0})'))
if has_key(a:opts, 'dir')
let cmd = s:with_cd(cmd, a:opts.dir, 0)
endif
@@ -1449,27 +1465,33 @@ function! s:spawn(name, cmd, opts)
let job.lines = ['Failed to start job']
endif
else
let job.lines = s:lines(call('s:system', has_key(a:opts, 'dir') ? [a:cmd, a:opts.dir] : [a:cmd]))
let job.lines = s:lines(call('s:system', has_key(a:opts, 'dir') ? [argv, a:opts.dir] : [argv]))
let job.error = v:shell_error != 0
let job.running = 0
endif
endfunction
function! s:reap(name)
let job = s:jobs[a:name]
let job = remove(s:jobs, a:name)
if job.error
call add(s:update.errors, a:name)
elseif get(job, 'new', 0)
let s:update.new[a:name] = 1
endif
let s:update.bar .= job.error ? 'x' : '='
let bullet = job.error ? 'x' : '-'
let more = len(get(job, 'queue', []))
let result = job.error ? join(job.lines, "\n") : s:last_non_empty_line(job.lines)
call s:log(bullet, a:name, empty(result) ? 'OK' : result)
call s:bar()
if len(result)
call s:log(s:bullet_for(job), a:name, result)
endif
call remove(s:jobs, a:name)
if !job.error && more
let job.spec.queue = job.queue
let s:update.todo[a:name] = job.spec
else
let s:update.bar .= s:bullet_for(job, '=')
call s:bar()
endif
endfunction
function! s:bar()
@@ -1522,6 +1544,16 @@ function! s:update_vim()
call s:tick()
endfunction
function! s:checkout_command(spec)
let a:spec.branch = s:git_origin_branch(a:spec)
return ['git', 'checkout', '-q', a:spec.branch, '--']
endfunction
function! s:merge_command(spec)
let a:spec.branch = s:git_origin_branch(a:spec)
return ['git', 'merge', '--ff-only', 'origin/'.a:spec.branch]
endfunction
function! s:tick()
let pull = s:update.pull
let prog = s:progress_opt(s:nvim || s:vim8)
@@ -1536,13 +1568,24 @@ while 1 " Without TCO, Vim stack is bound to explode
let name = keys(s:update.todo)[0]
let spec = remove(s:update.todo, name)
let new = empty(globpath(spec.dir, '.git', 1))
if get(spec, 'abort', 0)
call s:mark_aborted(name, 'Skipped')
call s:reap(name)
continue
endif
call s:log(new ? '+' : '*', name, pull ? 'Updating ...' : 'Installing ...')
redraw
let queue = get(spec, 'queue', [])
let new = empty(globpath(spec.dir, '.git', 1))
if empty(queue)
call s:log(new ? '+' : '*', name, pull ? 'Updating ...' : 'Installing ...')
redraw
endif
let has_tag = has_key(spec, 'tag')
if !new
if len(queue)
call s:spawn(name, spec, queue, { 'dir': spec.dir })
elseif !new
let [error, _] = s:git_validate(spec, 0)
if empty(error)
if pull
@@ -1553,7 +1596,11 @@ while 1 " Without TCO, Vim stack is bound to explode
if !empty(prog)
call add(cmd, prog)
endif
call s:spawn(name, cmd, { 'dir': spec.dir })
let queue = [cmd, split('git remote set-head origin -a')]
if !has_tag && !has_key(spec, 'commit')
call extend(queue, [function('s:checkout_command'), function('s:merge_command')])
endif
call s:spawn(name, spec, queue, { 'dir': spec.dir })
else
let s:jobs[name] = { 'running': 0, 'lines': ['Already installed'], 'error': 0 }
endif
@@ -1568,7 +1615,7 @@ while 1 " Without TCO, Vim stack is bound to explode
if !empty(prog)
call add(cmd, prog)
endif
call s:spawn(name, extend(cmd, [spec.uri, s:trim(spec.dir)]), { 'new': 1 })
call s:spawn(name, spec, [extend(cmd, [spec.uri, s:trim(spec.dir)]), function('s:checkout_command'), function('s:merge_command')], { 'new': 1 })
endif
if !s:jobs[name].running
@@ -2267,7 +2314,10 @@ endfunction
function! s:with_cd(cmd, dir, ...)
let script = a:0 > 0 ? a:1 : 1
return printf('cd%s %s && %s', s:is_win ? ' /d' : '', plug#shellescape(a:dir, {'script': script}), a:cmd)
let pwsh = s:is_powershell(&shell)
let cd = s:is_win && !pwsh ? 'cd /d' : 'cd'
let sep = pwsh ? ';' : '&&'
return printf('%s %s %s %s', cd, plug#shellescape(a:dir, {'script': script, 'shell': &shell}), sep, a:cmd)
endfunction
function! s:system(cmd, ...)
@@ -2344,18 +2394,21 @@ function! s:git_validate(spec, check_branch)
\ current_branch, origin_branch)
endif
if empty(err)
let [ahead, behind] = split(s:lastline(s:system([
\ 'git', 'rev-list', '--count', '--left-right',
\ printf('HEAD...origin/%s', origin_branch)
\ ], a:spec.dir)), '\t')
if !v:shell_error && ahead
if behind
let ahead_behind = split(s:lastline(s:system([
\ 'git', 'rev-list', '--count', '--left-right',
\ printf('HEAD...origin/%s', origin_branch)
\ ], a:spec.dir)), '\t')
if v:shell_error || len(ahead_behind) != 2
let err = "Failed to compare with the origin. The default branch might have changed.\nPlugClean required."
else
let [ahead, behind] = ahead_behind
if ahead && behind
" Only mention PlugClean if diverged, otherwise it's likely to be
" pushable (and probably not that messed up).
let err = printf(
\ "Diverged from origin/%s (%d commit(s) ahead and %d commit(s) behind!\n"
\ .'Backup local changes and run PlugClean and PlugUpdate to reinstall it.', origin_branch, ahead, behind)
else
elseif ahead
let err = printf("Ahead of origin/%s by %d commit(s).\n"
\ .'Cannot update until local changes are pushed.',
\ origin_branch, ahead)
@@ -2387,7 +2440,7 @@ function! s:clean(force)
let errs = {}
let [cnt, total] = [0, len(g:plugs)]
for [name, spec] in items(g:plugs)
if !s:is_managed(name)
if !s:is_managed(name) || get(spec, 'frozen', 0)
call add(dirs, spec.dir)
else
let [err, clean] = s:git_validate(spec, 1)
@@ -2619,26 +2672,34 @@ function! s:preview_commit()
let sha = matchstr(getline('.'), '^ \X*\zs[0-9a-f]\{7,9}')
if empty(sha)
return
let name = matchstr(getline('.'), '^- \zs[^:]*\ze:$')
if empty(name)
return
endif
let title = 'HEAD@{1}..'
let command = 'git diff --no-color HEAD@{1}'
else
let title = sha
let command = 'git show --no-color --pretty=medium '.sha
let name = s:find_name(line('.'))
endif
let name = s:find_name(line('.'))
if empty(name) || !has_key(g:plugs, name) || !isdirectory(g:plugs[name].dir)
return
endif
if exists('g:plug_pwindow') && !s:is_preview_window_open()
execute g:plug_pwindow
execute 'e' sha
if !s:is_preview_window_open()
execute get(g:, 'plug_pwindow', 'vertical rightbelow new')
execute 'e' title
else
execute 'pedit' sha
execute 'pedit' title
wincmd P
endif
setlocal previewwindow filetype=git buftype=nofile nobuflisted modifiable
setlocal previewwindow filetype=git buftype=nofile bufhidden=wipe nobuflisted modifiable
let batchfile = ''
try
let [sh, shellcmdflag, shrd] = s:chsh(1)
let cmd = 'cd '.plug#shellescape(g:plugs[name].dir).' && git show --no-color --pretty=medium '.sha
let cmd = 'cd '.plug#shellescape(g:plugs[name].dir).' && '.command
if s:is_win
let [batchfile, cmd] = s:batchfile(cmd)
endif
@@ -2764,9 +2825,9 @@ function! s:snapshot(force, ...) abort
1
let anchor = line('$') - 3
let names = sort(keys(filter(copy(g:plugs),
\'has_key(v:val, "uri") && !has_key(v:val, "commit") && isdirectory(v:val.dir)')))
\'has_key(v:val, "uri") && isdirectory(v:val.dir)')))
for name in reverse(names)
let sha = s:git_revision(g:plugs[name].dir)
let sha = has_key(g:plugs[name], 'commit') ? g:plugs[name].commit : s:git_revision(g:plugs[name].dir)
if !empty(sha)
call append(anchor, printf("silent! let g:plugs['%s'].commit = '%s'", name, sha))
redraw

File diff suppressed because one or more lines are too long

View File

@@ -2,40 +2,39 @@ syntax on
set nocompatible
set encoding=utf8
set mouse=a
"set mouse=a
set hidden
set updatetime=300
" -- Initialisation de Plug
call plug#begin('~/.config/nvim/plugged')
Plug 'crusoexia/vim-monokai'
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'loctvl842/monokai-pro.nvim'
Plug 'junegunn/fzf.vim'
Plug 'StanAngeloff/php.vim'
" Plug 'vim-airline/vim-airline'
Plug 'famiu/feline.nvim'
Plug 'cakebaker/scss-syntax.vim'
" Plug 'plasticboy/vim-markdown'
" Plug 'tpope/vim-fugitive'
Plug 'rust-lang/rust.vim'
Plug 'jiangmiao/auto-pairs' " Ferme automatiquement les parenthèses, crochets…
Plug 'lukas-reineke/indent-blankline.nvim' " Affiche les indentations.
Plug 'terrortylor/nvim-comment' " Permet de basculer les commentaires sur une ligne
Plug 'junegunn/fzf', { 'do': { -> fzf#install() } }
Plug 'kyazdani42/nvim-web-devicons' " requis pas bufferline
Plug 'akinsho/bufferline.nvim',
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'pappasam/coc-jedi', { 'do': 'yarn install --frozen-lockfile && yarn build', 'branch': 'main' }
" Plug 'akinsho/bufferline.nvim'
" Plug 'ms-jpq/chadtree', {'branch': 'chad', 'do': 'python3 -m chadtree deps'}
call plug#end()
silent! colorscheme cyberpunk-neon
set background=dark
set ruler " Affiche la position du curseur
set number " Affiche le numéro des lignes
"set cursorline " Surligne la ligne en cours
set wrap
set scrolloff=5
set ignorecase
set smartcase
set incsearch
set hlsearch " Surligne les résultats d'une recherche
" -- Indentation
" -- Indentation:w
set expandtab " Les tabulations deviennent des espaces
set tabstop=4 " Nombre d'espace pour une tabulation
set smartindent
@@ -44,63 +43,24 @@ set autoindent
set wildmenu " Autocomplete les commandes via un menu
if (has("termguicolors"))
set termguicolors
endif
"Coc configuration
inoremap <silent><expr> <TAB>
\ coc#pum#visible() ? coc#pum#next(1) :
\ CheckBackspace() ? "\<Tab>" :
\ coc#refresh()
inoremap <expr><S-TAB> coc#pum#visible() ? coc#pum#prev(1) : "\<C-h>"
inoremap <silent><expr> <c-space> coc#refresh()
function! CheckBackspace() abort
let col = col('.') - 1
return !col || getline('.')[col - 1] =~# '\s'
endfunction
"Tous les fichiers du repertoire courant
nnoremap <silent> <C-p> :Files<CR>
" Tous les fichiers du repertoire courant suivis par GIT
nnoremap <silent> <C-g> :GFiles<CR>
nnoremap <silent> <C-o> :Buffers<CR>
nnoremap <C-f> :Rg!
nnoremap <C-n> :bn<CR>
nnoremap <C-b> :bp<CR>
"nnoremap <C-f> :Rg!
"nnoremap <C-n> :bn<CR>
"nnoremap <C-b> :bp<CR>
" -- Les modifications de .vimrc sont prises en compte immédiatement
"if has("autocmd")
" autocmd! bufwritepost .vimrc source ~/.vimrc
"endif
"
"" --Nerdtree
""map <C-n> :NERDTreeToggle<CR>
""let NERDTreeQuitOnOpen=0
""let NERDTreeMinimalUI = 1
""let NERDTreeDirArrows = 1
""let NERDTreeQuitOnOpen = 1
""let g:NERDTreeDirArrowExpandable = '▸'
""let g:NERDTreeDirArrowCollapsible = '▾'
"
"
"
"" -- vim airline
"let g:airline#extensions#tabline#enabled = 1
"
"" -- Autocompletion avec coc
"inoremap <silent><expr> <c-space> coc#refresh()
"
"" -- Utiliser les tabulations
"" Tabultation précedente
"map <C-left> :tabp<cr>
"" Tabulation suivante
"map <C-right> :tabn<cr>" Ferme tabulation courante
"map <C-t><c> :tabc<cr>
"COC Make Enter accept the autocomplete suggestion
inoremap <silent><expr> <CR> pumvisible() ? coc#_select_confirm() : "\<CR>"
set shiftwidth=4
set softtabstop=4
@@ -111,8 +71,12 @@ autocmd Filetype css setlocal ts=2 sw=2 expandtab
autocmd Filetype scss setlocal ts=2 sw=2 expandtab
autocmd Filetype python setlocal ts=2 sw=2 expandtab
set termguicolors
lua << EOF
require("bufferline").setup{}
require('feline').setup()
-- require("bufferline").setup{}
require("monokai-pro").setup({
-- ... your config
filter = "spectrum"
})
vim.cmd([[colorscheme monokai-pro]])
EOF

Submodule .config/nvim/plugged/auto-pairs deleted from 39f06b873a

Submodule .config/nvim/plugged/bufferline.nvim deleted from f5791fdd56

Submodule .config/nvim/plugged/coc.nvim deleted from 8b64d47d45

Submodule .config/nvim/plugged/feline.nvim deleted from b7391bbfcb

Submodule .config/nvim/plugged/fzf.vim deleted from c491d702b7

Submodule .config/nvim/plugged/indent-blankline.nvim deleted from c15bbe9f23

Submodule .config/nvim/plugged/nvim-comment deleted from e9ac16ab05

Submodule .config/nvim/plugged/nvim-web-devicons deleted from 2d02a56189

Submodule .config/nvim/plugged/php.vim deleted from 930aec5c70

Submodule .config/nvim/plugged/rust.vim deleted from 4aa69b84c8

Submodule .config/nvim/plugged/scss-syntax.vim deleted from bda22a93d1

Submodule .config/nvim/plugged/vim-monokai deleted from 66f7dc9c63

View File

@@ -1,407 +0,0 @@
;==========================================================
;
;
; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗
; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝
; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗
; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║
; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
;
;
; To learn more about how to configure Polybar
; go to https://github.com/jaagr/polybar
;
; The README contains alot of information
;
;==========================================================
[colors]
;background = ${xrdb:color0:#222}
background = #000b1e
background-alt = #133e7c
;foreground = ${xrdb:color7:#222}
foreground = #0abdc6
foreground-alt = #ea00d9
primary = #ffff00
secondary = #ea00d9
alert = #ea00d9
[bar/main]
monitor = ${env:MONITOR:eDP1}
width = 100%
height = 27
;offset-x = 1%
;offset-y = 1%
radius = 0.0
fixed-center = true
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 3
line-color = #f00
border-size = 2
border-color = ${colors.background}
padding-left = 0
padding-right = 2
module-margin-left = 1
module-margin-right = 2
font-0 = Inconsolata:size=10:antialias=true
font-1 = unifont:size=8:antialias=true
modules-left = i3
modules-center = date
modules-right = battery pulseaudio
tray-position = right
tray-padding = 2
;tray-transparent = true
;tray-background = #0063ff
;wm-restack = bspwm
wm-restack = i3
;override-redirect = true
;scroll-up = bspwm-desknext
;scroll-down = bspwm-deskprev
;scroll-up = i3wm-wsnext
;scroll-down = i3wm-wsprev
cursor-click = pointer
cursor-scroll = ns-resize
[module/xwindow]
type = internal/xwindow
label = %title:0:30:...%
[module/xkeyboard]
type = internal/xkeyboard
blacklist-0 = num lock
format-prefix = " "
format-prefix-foreground = ${colors.foreground-alt}
format-prefix-underline = ${colors.secondary}
label-layout = %layout%
label-layout-underline = ${colors.secondary}
label-indicator-padding = 2
label-indicator-margin = 1
label-indicator-background = ${colors.secondary}
label-indicator-underline = ${colors.secondary}
[module/filesystem]
type = internal/fs
interval = 25
mount-0 = /
label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%%
label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ${colors.foreground-alt}
[module/bspwm]
type = internal/bspwm
label-focused = %index%
label-focused-background = ${colors.background-alt}
label-focused-underline= ${colors.primary}
label-focused-padding = 2
label-occupied = %index%
label-occupied-padding = 2
label-urgent = %index%!
label-urgent-background = ${colors.alert}
label-urgent-padding = 2
label-empty = %index%
label-empty-foreground = ${colors.foreground-alt}
label-empty-padding = 2
; Separator in between workspaces
; label-separator = |
[module/i3]
type = internal/i3
format = <label-state> <label-mode>
index-sort = true
wrapping-scroll = false
; Only show workspaces on the same output as the bar
pin-workspaces = true
label-mode-padding = 2
label-mode-foreground = #000
label-mode-background = ${colors.primary}
; focused = Active workspace on focused monitor
label-focused = %index%
label-focused-background = ${module/bspwm.label-focused-background}
label-focused-underline = ${module/bspwm.label-focused-underline}
label-focused-padding = ${module/bspwm.label-focused-padding}
; unfocused = Inactive workspace on any monitor
label-unfocused = %index%
label-unfocused-padding = ${module/bspwm.label-occupied-padding}
; visible = Active workspace on unfocused monitor
label-visible = %index%
label-visible-background = ${self.label-focused-background}
label-visible-underline = ${self.label-focused-underline}
label-visible-padding = ${self.label-focused-padding}
; urgent = Workspace with urgency hint set
label-urgent = %index%
label-urgent-background = ${module/bspwm.label-urgent-background}
label-urgent-padding = ${module/bspwm.label-urgent-padding}
; Separator in between workspaces
; label-separator = |
[module/mpd]
type = internal/mpd
format-online = <label-song> <icon-prev> <icon-stop> <toggle> <icon-next>
icon-prev = 
icon-stop = 
icon-play = 
icon-pause = 
icon-next = 
label-song-maxlen = 25
label-song-ellipsis = true
;[module/xbacklight]
;type = internal/xbacklight
;
;format = <label> <bar>
;label = BL
;
;bar-width = 10
;bar-indicator = |
;bar-indicator-foreground = #fff
;bar-indicator-font = 2
;bar-fill = ─
;bar-fill-font = 2
;bar-fill-foreground = #9f78e1
;bar-empty = ─
;bar-empty-font = 2
;bar-empty-foreground = ${colors.foreground-alt}
;[module/backlight-acpi]
;inherit = module/xbacklight
;type = internal/backlight
;card = intel_backlight
;[module/cpu]
;type = internal/cpu
;interval = 2
;format-prefix = " "
;format-prefix-foreground = ${colors.foreground-alt}
;format-underline = #f90000
;label = %percentage:2%%
;[module/memory]
;type = internal/memory
;interval = 2
;format-prefix = " "
;format-prefix-foreground = ${colors.foreground-alt}
;format-underline = #4bffdc
;label = %percentage_used%%
;[module/wlan]
;type = internal/network
;interface = net1
;interval = 3.0
;format-connected = <ramp-signal> <label-connected>
;format-connected-underline = #9f78e1
;label-connected = %essid%
;
;format-disconnected =
;format-disconnected = <label-disconnected>
;format-disconnected-underline = ${self.format-connected-underline}
;label-disconnected = %ifname% disconnected
;label-disconnected-foreground = ${colors.foreground-alt}
;ramp-signal-0 = 
;ramp-signal-1 = 
;ramp-signal-2 = 
;ramp-signal-3 = 
;ramp-signal-4 = 
;ramp-signal-foreground = ${colors.foreground-alt}
;[module/eth]
;type = internal/network
;interface = ens1
;interval = 3.0
;format-connected-underline = #55aa55
;format-connected-prefix = " "
;format-connected-prefix-foreground = ${colors.foreground-alt}
;label-connected = %local_ip%
;format-disconnected =
;format-disconnected = <label-disconnected>
;format-disconnected-underline = ${self.format-connected-underline}
;label-disconnected = %ifname% disconnected
;label-disconnected-foreground = ${colors.foreground-alt}
[module/date]
type = internal/date
interval = 5
date = " %Y-%m-%d"
date-alt = " %Y-%m-%d"
time = "%H:%M "
time-alt = "%H:%M "
;format-prefix = 
;format-prefix-foreground = ${colors.foreground-alt}
format-underline = #ea00d9
label = %date% %time%
[module/pulseaudio]
type = internal/pulseaudio
sink = alsa_output.pci-0000_24_00.3.analog-stereo
format-volume = <label-volume>
label-volume = vol %percentage%%
label-volume-foreground = ${root.foreground}
label-muted = "muted"
label-muted-foreground = #ea00d9
use-ui-max = true
[module/alsa]
type = internal/alsa
format-volume = <label-volume> <bar-volume>
label-volume = VOL
label-volume-foreground = ${root.foreground}
format-muted-prefix = " "
format-muted-foreground = ${colors.foreground-alt}
label-muted = sound muted
bar-volume-width = 10
bar-volume-foreground-0 = #55aa55
bar-volume-foreground-1 = #55aa55
bar-volume-foreground-2 = #55aa55
bar-volume-foreground-3 = #55aa55
bar-volume-foreground-4 = #55aa55
bar-volume-foreground-5 = #f5a70a
bar-volume-foreground-6 = #ff5555
bar-volume-gradient = false
bar-volume-indicator = |
bar-volume-indicator-font = 2
bar-volume-fill = ─
bar-volume-fill-font = 2
bar-volume-empty = ─
bar-volume-empty-font = 2
bar-volume-empty-foreground = ${colors.foreground-alt}
[module/battery]
type = internal/battery
battery = BAT0
adapter = ADP1
full-at = 98
format-charging = <animation-charging> <label-charging>
format-charging-underline = #ffb52a
format-discharging = <animation-discharging> <label-discharging>
format-discharging-underline = ${self.format-charging-underline}
format-full-prefix = " "
format-full-prefix-foreground = ${colors.foreground-alt}
format-full-underline = ${self.format-charging-underline}
ramp-capacity-0 = 
ramp-capacity-1 = 
ramp-capacity-2 = 
ramp-capacity-foreground = ${colors.foreground-alt}
animation-charging-0 = 
animation-charging-1 = 
animation-charging-2 = 
animation-charging-foreground = ${colors.foreground-alt}
animation-charging-framerate = 750
animation-discharging-0 = 
animation-discharging-1 = 
animation-discharging-2 = 
animation-discharging-foreground = ${colors.foreground-alt}
animation-discharging-framerate = 750
[module/temperature]
type = internal/temperature
thermal-zone = 0
warn-temperature = 60
format = <ramp> <label>
format-underline = #f50a4d
format-warn = <ramp> <label-warn>
format-warn-underline = ${self.format-underline}
label = %temperature-c%
label-warn = %temperature-c%
label-warn-foreground = ${colors.secondary}
ramp-0 = 
ramp-1 = 
ramp-2 = 
ramp-foreground = ${colors.foreground-alt}
[module/powermenu]
type = custom/menu
expand-right = true
format-spacing = 1
label-open = ☢
label-open-foreground = ${colors.secondary}
label-close =  cancel
label-close-foreground = ${colors.secondary}
label-separator = |
label-separator-foreground = ${colors.foreground-alt}
menu-0-0 = reboot
menu-0-0-exec = menu-open-1
menu-0-1 = power off
menu-0-1-exec = menu-open-2
menu-1-0 = cancel
menu-1-0-exec = menu-open-0
menu-1-1 = reboot
menu-1-1-exec = sudo reboot
menu-2-0 = power off
menu-2-0-exec = sudo poweroff
menu-2-1 = cancel
menu-2-1-exec = menu-open-0
[settings]
screenchange-reload = true
;compositing-background = xor
;compositing-background = screen
;compositing-foreground = source
;compositing-border = over
[global/wm]
margin-top = 5
margin-bottom = 5
; vim:ft=dosini

View File

@@ -1,19 +0,0 @@
#!/usr/bin/env sh
# Terminate already running bar instances
killall -q polybar
readonly MAINSCREEN="eDP1"
# Wait until the processes have been shut down
while pgrep -x polybar >/dev/null; do sleep 1; done
# Launch polybar
MONITOR="${MAINSCREEN}" polybar main &
for m in $(polybar --list-monitors | cut -d":" -f1); do
if [ ${m} != "${MAINSCREEN}" ]; then
MONITOR=$m polybar --reload main &
fi
done

View File

@@ -1,141 +0,0 @@
configuration {
/* modi: "window,run,ssh";*/
/* width: 50;*/
/* lines: 15;*/
/* columns: 1;*/
/* font: "mono 12";*/
/* bw: 1;*/
/* location: 0;*/
/* padding: 5;*/
/* yoffset: 0;*/
/* xoffset: 0;*/
/* fixed-num-lines: true;*/
/* show-icons: false;*/
/* terminal: "rofi-sensible-terminal";*/
/* ssh-client: "ssh";*/
/* ssh-command: "{terminal} -e {ssh-client} {host}";*/
/* run-command: "{cmd}";*/
/* run-list-command: "";*/
/* run-shell-command: "{terminal} -e {cmd}";*/
/* window-command: "xkill -id {window}";*/
/* window-match-fields: "all";*/
/* drun-icon-theme: ;*/
/* drun-match-fields: "name,generic,exec,categories";*/
/* disable-history: false;*/
/* sort: false;*/
/* levenshtein-sort: false;*/
/* case-sensitive: false;*/
/* cycle: true;*/
/* sidebar-mode: false;*/
/* eh: 1;*/
/* auto-select: false;*/
/* parse-hosts: false;*/
/* parse-known-hosts: true;*/
/* combi-modi: "window,run";*/
/* matching: "normal";*/
/* tokenize: true;*/
/* m: "-5";*/
/* line-margin: 2;*/
/* line-padding: 1;*/
/* filter: ;*/
/* separator-style: "dash";*/
/* hide-scrollbar: false;*/
/* fullscreen: false;*/
/* fake-transparency: false;*/
/* dpi: -1;*/
/* threads: 0;*/
/* scrollbar-width: 8;*/
/* scroll-method: 0;*/
/* fake-background: "screenshot";*/
/* window-format: "{w} {i}{c} {t}";*/
/* click-to-exit: true;*/
/* show-match: true;*/
/* color-normal: ;*/
/* color-urgent: ;*/
/* color-active: ;*/
/* color-window: ;*/
/* max-history-size: 25;*/
/* combi-hide-mode-prefix: false;*/
/* pid: "/run/user/1000/rofi.pid";*/
/* display-window: ;*/
/* display-windowcd: ;*/
/* display-run: ;*/
/* display-ssh: ;*/
/* display-drun: ;*/
/* display-combi: ;*/
/* display-keys: ;*/
/* kb-primary-paste: "Control+V,Shift+Insert";*/
/* kb-secondary-paste: "Control+v,Insert";*/
/* kb-clear-line: "Control+w";*/
/* kb-move-front: "Control+a";*/
/* kb-move-end: "Control+e";*/
/* kb-move-word-back: "Alt+b";*/
/* kb-move-word-forward: "Alt+f";*/
/* kb-move-char-back: "Left,Control+b";*/
/* kb-move-char-forward: "Right,Control+f";*/
/* kb-remove-word-back: "Control+Alt+h,Control+BackSpace";*/
/* kb-remove-word-forward: "Control+Alt+d";*/
/* kb-remove-char-forward: "Delete,Control+d";*/
/* kb-remove-char-back: "BackSpace,Control+h";*/
/* kb-remove-to-eol: "Control+k";*/
/* kb-remove-to-sol: "Control+u";*/
/* kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";*/
/* kb-accept-custom: "Control+Return";*/
/* kb-accept-alt: "Shift+Return";*/
/* kb-delete-entry: "Shift+Delete";*/
/* kb-mode-next: "Shift+Right,Control+Tab";*/
/* kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";*/
/* kb-row-left: "Control+Page_Up";*/
/* kb-row-right: "Control+Page_Down";*/
/* kb-row-up: "Up,Control+p,ISO_Left_Tab";*/
/* kb-row-down: "Down,Control+n";*/
/* kb-row-tab: "Tab";*/
/* kb-page-prev: "Page_Up";*/
/* kb-page-next: "Page_Down";*/
/* kb-row-first: "Home,KP_Home";*/
/* kb-row-last: "End,KP_End";*/
/* kb-row-select: "Control+space";*/
/* kb-screenshot: "Alt+S";*/
/* kb-toggle-case-sensitivity: "grave,dead_grave";*/
/* kb-toggle-sort: "Alt+grave";*/
/* kb-cancel: "Escape,Control+g,Control+bracketleft";*/
/* kb-custom-1: "Alt+1";*/
/* kb-custom-2: "Alt+2";*/
/* kb-custom-3: "Alt+3";*/
/* kb-custom-4: "Alt+4";*/
/* kb-custom-5: "Alt+5";*/
/* kb-custom-6: "Alt+6";*/
/* kb-custom-7: "Alt+7";*/
/* kb-custom-8: "Alt+8";*/
/* kb-custom-9: "Alt+9";*/
/* kb-custom-10: "Alt+0";*/
/* kb-custom-11: "Alt+exclam";*/
/* kb-custom-12: "Alt+at";*/
/* kb-custom-13: "Alt+numbersign";*/
/* kb-custom-14: "Alt+dollar";*/
/* kb-custom-15: "Alt+percent";*/
/* kb-custom-16: "Alt+dead_circumflex";*/
/* kb-custom-17: "Alt+ampersand";*/
/* kb-custom-18: "Alt+asterisk";*/
/* kb-custom-19: "Alt+parenleft";*/
/* kb-select-1: "Super+1";*/
/* kb-select-2: "Super+2";*/
/* kb-select-3: "Super+3";*/
/* kb-select-4: "Super+4";*/
/* kb-select-5: "Super+5";*/
/* kb-select-6: "Super+6";*/
/* kb-select-7: "Super+7";*/
/* kb-select-8: "Super+8";*/
/* kb-select-9: "Super+9";*/
/* kb-select-10: "Super+0";*/
/* ml-row-left: "ScrollLeft";*/
/* ml-row-right: "ScrollRight";*/
/* ml-row-up: "ScrollUp";*/
/* ml-row-down: "ScrollDown";*/
/* me-select-entry: "MousePrimary";*/
/* me-accept-entry: "MouseDPrimary";*/
/* me-accept-custom: "Control+MouseDPrimary";*/
}
@theme "cyberpunk-neon"

View File

@@ -1,111 +0,0 @@
* {
darkpurple: #711c91;
purple: #ea00d9;
lightblue: #0abdc6;
blue: #133E7C;
darkblue: #091833;
green: #60ff60;
yellow: #FFFF00;
orange: #f09C02;
pink: #ffa0a0;
red: #FF0000;
}
#window {
location: center;
anchor: center;
border: 2px;
border-color: @purple;
spacing: 0;
children: [mainbox];
orientation: horizontal;
background-color: @darkblue;
}
#mainbox {
spacing: 0;
children: [ inputbar, listview ];
background-color: @darkblue;
}
#message {
border-color: @red;
border: 5px;
padding: 8;
background-color: @green;
}
#message {
color: @black;
}
#inputbar {
color: @purple;
padding: 12px;
background-color: @darkblue;
}
#entry,prompt,case-indicator {
text-font: inherit;
text-color:inherit;
background-color: inherit;
}
#entry {
color: @lightblue;
}
#prompt {
margin: 0px 0.3em 0em 0em ;
}
#listview {
padding: 0px;
border-color: @pink;
dynamic: false;
lines: 10;
background-color: @darkblue;
}
#element,element-icon,element-text {
color: inherit;
background-color: inherit;
}
#element {
padding: 5px;
margin: 0 5px;
vertical-align: 0.5;
border-color: @magenta;
color: @lightblue;
font:inherit;
}
#element selected.normal {
color: @darkblue;
background-color: @yellow;
}
#element-text {
highlight: bold #711c91;
}
#element alternate active {
foreground: @blue;
}
#element alternate urgent {
foreground: @red;
}
#element selected active {
background-color: @blue;
foreground: @lightblue;
}
#element selected urgent {
background-color: @red;
foreground: @dark;
}

101
.config/sway/config Normal file
View File

@@ -0,0 +1,101 @@
# Default config for sway
#
# Copy this to ~/.config/sway/config and edit it to your liking.
#
# Read `man 5 sway` for a complete reference.
### Variables
#
# Logo key. Use Mod1 for Alt.
set $mod Mod4
# Your preferred terminal emulator
set $term /usr/bin/kitty
# Your preferred application launcher
# Note: pass the final command to swaymsg so that the resulting window can be opened
# on the original workspace that the command was run on.
# set $menu dmenu_path | dmenu | xargs swaymsg exec --
set $menu wofi --gtk-dark --show=drun
include "$HOME/.config/sway/config.d/*"
default_border pixel 5
smart_borders on
gaps inner 8
smart_gaps on
focus_follows_mouse no
### Output configuration
#
# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
output * bg #283646 solid_color
output eDP-1 bg "$HOME/nextcloud/perso/images/wallapper_desktop.png" fill
#
# Example configuration:
#
# output HDMI-A-1 resolution 1920x1080 position 1920,0
#
# You can get the names of your outputs by running: swaymsg -t get_outputs
### Idle configuration
#
# Example configuration:
#
# exec swayidle -w \
# timeout 300 'swaylock -f -c 000000' \
# timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \
# before-sleep 'swaylock -f -c 000000'
#
# This will lock your screen after 300 seconds of inactivity, then turn off
# your displays after another 300 seconds, and turn your screens back on when
# resumed. It will also lock your screen before your computer goes to sleep.
### Key bindings
#
# Basics:
#
# Start a terminal
bindsym $mod+Return exec $term
# Kill focused window
bindsym $mod+Shift+q kill
# Start your launcher
bindsym $mod+d exec $menu
# Drag floating windows by holding down $mod and left mouse button.
# Resize them with right mouse button + $mod.
# Despite the name, also works for non-floating windows.
# Change normal to inverse to use left mouse button for resizing and right
# mouse button for dragging.
floating_modifier $mod normal
# Reload the configuration file
bindsym $mod+Shift+c reload
# Exit sway (logs you out of your Wayland session)
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
bindsym $mod+l exec swaylock --color "#243646"
### Laptop screen is close
bindswitch --locked lid:on output eDP-1 disable
### Laptop screen is open
bindswitch --locked lid:off output eDP-1 enable
exec kanshi
bar {
swaybar_command waybar
}
exec blueman-applet
exec nm-applet --indicator
exec nextcloud --background
exec keepassxc

View File

@@ -0,0 +1,17 @@
# swaymsg -t get_outputs
# Laptop pro
output 'Najing CEC Panda FPD Technology CO. ltd 0x0056 Unknown' pos 0 0 res 1920x1080 subpixel rgb
workspace 1 output 'Najing CEC Panda FPD Technology CO. ltd 0x0056 Unknown'
# laptop perso
output 'BOE 0x090F Unknown' pos 0 0 res 1920x1080 subpixel rgb
workspace 1 output 'BOE 0x090F Unknown'
# Home screen
output 'Samsung Electric Company LC34G55T HNTW606264' pos 1920 0
workspace 5 output 'Samsung Electric Company LC34G55T HNTW606264'
# Work screen
output 'Iiyama North America PL3481WQ 1242550210951' pos 1920 0
workspace 5 output 'Iiyama North America PL3481WQ 1242550210951'

View File

@@ -0,0 +1,9 @@
# import variables into system-user enviroment
# based on the instructions in the sway wiki
# see also https://github.com/swaywm/sway/issues/5732
# and https://github.com/systemd/systemd/blob/dfc637d0ff756889e8e5b7cb4ec991eb06069aa1/xorg/50-systemd-user.sh
exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK
exec hash dbus-update-activation-environment 2>/dev/null && \
dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK

View File

@@ -0,0 +1,4 @@
input type:keyboard {
xkb_layout "fr"
xkb_variant "oss"
}

View File

@@ -0,0 +1,22 @@
# You can "split" the current object of your focus with
# $mod+b or $mod+v, for horizontal and vertical splits
# respectively.
bindsym $mod+h splith
bindsym $mod+v splitv
# Switch the current container between different layout styles
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# Make the current focus fullscreen
bindsym $mod+f fullscreen
# Toggle the current focus between tiling and floating mode
bindsym $mod+Shift+space floating toggle
# Swap focus between the tiling area and the floating area
bindsym $mod+space focus mode_toggle
# Move focus to the parent container
bindsym $mod+a focus parent

View File

@@ -0,0 +1,11 @@
mode "resize" {
bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
bindsym Up resize shrink height 10px
bindsym Right resize grow width 10px
# Return to default mode
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"

View File

@@ -0,0 +1,17 @@
# Move your focus around
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# Move the focused window
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# Move current workspace
bindsym $mod+Control+Shift+Right move workspace to output right
bindsym $mod+Control+Shift+Left move workspace to output left
bindsym $mod+Control+Shift+Down move workspace to output down
bindsym $mod+Control+Shift+Up move workspace to output up

View File

@@ -0,0 +1,8 @@
bindsym --locked XF86AudioRaiseVolume exec wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
bindsym --locked XF86AudioLowerVolume exec wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindsym --locked XF86AudioMute exec wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bindsym XF86MonBrightnessDown exec brightnessctl set 5%-
bindsym XF86MonBrightnessUp exec brightnessctl set 5%+
bindsym --locked XF86AudioPlay exec playerctl play-pause
bindsym XF86AudioNext exec playerctl next
bindsym XF86AudioPrev exec playerctl previous

View File

@@ -0,0 +1,27 @@
# switch to workspace
bindsym $mod+ampersand workspace 1
bindsym $mod+eacute workspace 2
bindsym $mod+quotedbl workspace 3
bindsym $mod+apostrophe workspace 4
bindsym $mod+parenleft workspace 5
bindsym $mod+minus workspace 6
bindsym $mod+egrave workspace 7
bindsym $mod+underscore workspace 8
bindsym $mod+ccedilla workspace 9
bindsym $mod+agrave workspace 10
bindsym $mod+parenright workspace 11
bindsym $mod+equal workspace 12
# move focused container to workspace
bindsym $mod+Shift+ampersand move container to workspace 1
bindsym $mod+Shift+eacute move container to workspace 2
bindsym $mod+Shift+quotedbl move container to workspace 3
bindsym $mod+Shift+apostrophe move container to workspace 4
bindsym $mod+Shift+parenleft move container to workspace 5
bindsym $mod+Shift+minus move container to workspace 6
bindsym $mod+Shift+egrave move container to workspace 7
bindsym $mod+Shift+underscore move container to workspace 8
bindsym $mod+Shift+ccedilla move container to workspace 9
bindsym $mod+Shift+agrave move container to workspace 10
bindsym $mod+Shift+parenright move container to workspace 11
bindsym $mod+Shift+equal move container to workspace 12

View File

@@ -0,0 +1,14 @@
[Unit]
Description=GNOME Keyring daemon
Requires=gnome-keyring-daemon.socket
[Service]
Type=simple
StandardError=journal
ExecStart=/usr/bin/gnome-keyring-daemon --foreground --components="pkcs11,secrets,ssh" --control-directory=%t/keyring
Restart=on-failure
[Install]
Also=gnome-keyring-daemon.socket
WantedBy=default.target

64
.config/waybar/config Normal file
View File

@@ -0,0 +1,64 @@
{
"height": 30, // Waybar height (to be removed for auto height)
"spacing": 1, // Gaps between modules (4px)
"modules-left": ["sway/workspaces"],
"modules-center": ["clock"],
"modules-right": ["tray", "pulseaudio", "battery"],
"sway/scratchpad": {
"format": "{icon} {count}",
"show-empty": false,
"format-icons": ["", ""],
"tooltip": true,
"tooltip-format": "{app}: {title}"
},
"tray": {
"icon-size": 16,
"spacing": 4
},
"clock": {
"timezone": "Europe/Paris",
"format": "{:%d-%m-%Y - %H:%M}",
},
"battery": {
"states": {
// "good": 95,
"warning": 30,
"critical": 15
},
"format": "{capacity}% {icon}",
"format-charging": "{capacity}% ",
"format-plugged": "{capacity}% ",
"format-alt": "{time} {icon}",
"format-icons": ["", "", "", "", ""]
},
"battery#bat2": {
"bat": "BAT2"
},
"network": {
// "interface": "wlp2*", // (Optional) To force the use of this interface
"format-wifi": "{essid} ({signalStrength}%) ",
"format-ethernet": "{ipaddr}/{cidr} ",
"tooltip-format": "{ifname} via {gwaddr} ",
"format-linked": "{ifname} (No IP) ",
"format-disconnected": "Disconnected ⚠",
"format-alt": "{ifname}: {ipaddr}/{cidr}"
},
"pulseaudio": {
// "scroll-step": 1, // %, can be a float
"format": "{volume}% {icon}",
"format-bluetooth": "{volume}% {icon} {format_source}",
"format-bluetooth-muted": " {icon} {format_source}",
"format-muted": " {format_source}",
"format-icons": {
"headphone": "",
"hands-free": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", "", ""]
},
"on-click": "pavucontrol"
},
}

279
.config/waybar/style.css Normal file
View File

@@ -0,0 +1,279 @@
* {
/* `otf-font-awesome` is required to be installed for icons */
font-family: FontAwesome, Roboto, Helvetica, Arial, sans-serif;
font-size: 13px;
}
window#waybar {
background-color: rgba(0, 0, 0, 0.8);
border-bottom: 3px solid rgba(100, 114, 125, 0.5);
color: #ffffff;
transition-property: background-color;
transition-duration: .5s;
}
window#waybar.hidden {
opacity: 0.2;
}
/*
window#waybar.empty {
background-color: transparent;
}
window#waybar.solo {
background-color: #FFFFFF;
}
*/
window#waybar.termite {
background-color: #3F3F3F;
}
window#waybar.chromium {
background-color: #000000;
border: none;
}
button {
/* Use box-shadow instead of border so the text isn't offset */
box-shadow: inset 0 -3px transparent;
/* Avoid rounded borders under each button name */
border: none;
border-radius: 0;
}
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
button:hover {
background: inherit;
box-shadow: inset 0 -3px #ffffff;
}
#workspaces button {
padding: 0 5px;
background-color: transparent;
color: #ffffff;
}
#workspaces button:hover {
background: rgba(0, 0, 0, 0.2);
}
#workspaces button.focused {
background-color: #64727D;
box-shadow: inset 0 -3px #ffffff;
}
#workspaces button.urgent {
background-color: #eb4d4b;
}
#mode {
background-color: #64727D;
border-bottom: 3px solid #ffffff;
}
#clock,
#battery,
#cpu,
#memory,
#disk,
#temperature,
#backlight,
#network,
#pulseaudio,
#wireplumber,
#custom-media,
#tray,
#mode,
#idle_inhibitor,
#scratchpad,
#mpd {
padding: 0 10px;
color: #ffffff;
}
#window,
#workspaces {
margin: 0 4px;
}
/* If workspaces is the leftmost module, omit left margin */
.modules-left > widget:first-child > #workspaces {
margin-left: 0;
}
/* If workspaces is the rightmost module, omit right margin */
.modules-right > widget:last-child > #workspaces {
margin-right: 0;
}
#clock {
/* background-color: #64727D;*/
}
#battery {
/* background-color: #ffffff;*/
}
/*#battery.charging, #battery.plugged {
color: #ffffff;
background-color: #26A65B;
}*/
@keyframes blink {
to {
/*background-color: #ffffff;*/
color: red;
}
}
#battery.critical:not(.charging) {
/*background-color: #f53c3c;*/
color: yellow;
animation-name: blink;
animation-duration: 0.5s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
label:focus {
background-color: #000000;
}
#cpu {
background-color: #2ecc71;
color: #000000;
}
#memory {
background-color: #9b59b6;
}
#disk {
background-color: #964B00;
}
#backlight {
background-color: #90b1b1;
}
#network {
/*background-color: #2980b9;*/
}
#network.disconnected {
background-color: #f53c3c;
}
#pulseaudio {
/*background-color: #f1c40f;*/
color: white;
}
#pulseaudio.muted {
background-color: #90b1b1;
color: #2a5c45;
}
#wireplumber {
background-color: #fff0f5;
color: #000000;
}
#wireplumber.muted {
background-color: #f53c3c;
}
#custom-media {
background-color: #66cc99;
color: #2a5c45;
min-width: 100px;
}
#custom-media.custom-spotify {
background-color: #66cc99;
}
#custom-media.custom-vlc {
background-color: #ffa000;
}
#temperature {
background-color: #f0932b;
}
#temperature.critical {
background-color: #eb4d4b;
}
#tray {
/*background-color: #2980b9;*/
}
#tray > .passive {
-gtk-icon-effect: dim;
}
#tray > .needs-attention {
-gtk-icon-effect: highlight;
background-color: #eb4d4b;
}
#idle_inhibitor {
background-color: #2d3436;
}
#idle_inhibitor.activated {
background-color: #ecf0f1;
color: #2d3436;
}
#mpd {
background-color: #66cc99;
color: #2a5c45;
}
#mpd.disconnected {
background-color: #f53c3c;
}
#mpd.stopped {
background-color: #90b1b1;
}
#mpd.paused {
background-color: #51a37a;
}
#language {
background: #00b093;
color: #740864;
padding: 0 5px;
margin: 0 5px;
min-width: 16px;
}
#keyboard-state {
background: #97e1ad;
color: #000000;
padding: 0 0px;
margin: 0 5px;
min-width: 16px;
}
#keyboard-state > label {
padding: 0 5px;
}
#keyboard-state > label.locked {
background: rgba(0, 0, 0, 0.2);
}
#scratchpad {
background: rgba(0, 0, 0, 0.2);
}
#scratchpad.empty {
background-color: transparent;
}

View File

@@ -1,13 +1,20 @@
[push]
default = simple
[user]
email = florestan@bredow.fr
name = Florestan Bredow
[core]
editor = nvim
email = daiko@daiko.fr
[pull]
rebase = true
[credential]
helper = /usr/lib/git-core/git-credential-libsecret
[init]
defaultBranch = master
[http]
sslbackend = openssl
sslVerify = false
[safe]
directory = /home/bredow/ansible/src
directory = /home/bredow/ansible/inventaire
[core]
editor = nvim
[filter "lfs"]
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true

45
.local/bin/on Executable file
View File

@@ -0,0 +1,45 @@
#!/usr/bin/env python3
import os
import textwrap
import argparse
import subprocess
from datetime import date
def load_args():
"""loads cli parameters"""
parser = argparse.ArgumentParser(
description="Takes a snapshot of all pad contents"
)
parser.add_argument('all', nargs=argparse.REMAINDER)
args = parser.parse_args()
return vars(args)
def main():
args = load_args()
name = ' '.join(args['all'])
today = date.today().strftime('%Y-%m-%d')
filename = f'/home/bredow/nextcloud/perso/notes/zettelkasten/inbox/{name}.md'
content = textwrap.dedent(f"""\
---
date: {today}
tags:
-
---
""")
if not os.path.exists(filename):
with open(filename, 'w') as file:
file.write(content)
subprocess.run(['nvim', '+normal G$', '+startinsert', filename])
os._exit(0)
if __name__ == "__main__":
main()

31
.local/bin/self-update Executable file
View File

@@ -0,0 +1,31 @@
#!/usr/bin/env fish
function get_latest_release
curl --silent "https://api.github.com/repos/$1/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")'
end
function update_languagetool
cd "$HOME/vm/docker/languagetool"
docker compose pull
docker compose down
docker compose up -d
cd -
end
function main
# Mise à jour système
yay -Suy
fisher update
# Mise à jour service languagetool
update_languagetool
# Mise à jour de l'environnement de neovim
nvim +":PlugInstall --sync" +"PlugUpdate" +"CocInstall coc-jedi" +qa
exit 0
end
main

View File

@@ -0,0 +1,3 @@
[D-BUS Service]
Name=org.freedesktop.secrets
Exec=/usr/bin/keepassxc

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,11 +0,0 @@
export TERMINAL="alacritty"
alias vim="nvim"
dbus-update-activation-environment --systemd DISPLAY
eval $(/usr/bin/gnome-keyring-daemon --start --components=pkcs11,secrets,ssh)
export SSH_AUTH_SOCK
xrdb -merge ~/.Xresources
exec i3