Première grosse initialisation
67
.Xresources
Normal file
@ -0,0 +1,67 @@
|
||||
! Solarized colors
|
||||
#define S_base03 #002b36
|
||||
#define S_base02 #073642
|
||||
#define S_base01 #586e75
|
||||
#define S_base00 #657b83
|
||||
#define S_base0 #839496
|
||||
#define S_base1 #93a1a1
|
||||
#define S_base2 #eee8d5
|
||||
#define S_base3 #fdf6e3
|
||||
|
||||
*background: S_base03
|
||||
*foreground: S_base0
|
||||
*fadeColor: S_base03
|
||||
*cursorColor: S_base1
|
||||
*pointerColorBackground:S_base01
|
||||
*pointerColorForeground:S_base1
|
||||
|
||||
#define S_yellow #b58900
|
||||
#define S_orange #cb4b16
|
||||
#define S_red #dc322f
|
||||
#define S_magenta #d33682
|
||||
#define S_violet #6c71c4
|
||||
#define S_blue #268bd2
|
||||
#define S_cyan #2aa198
|
||||
#define S_green #859900
|
||||
|
||||
! black dark/light
|
||||
*color0: S_base02
|
||||
*color8: S_base03
|
||||
|
||||
!! red dark/light
|
||||
*color1: S_red
|
||||
*color9: S_orange
|
||||
|
||||
!! green dark/light
|
||||
*color2: S_green
|
||||
*color10: S_base01
|
||||
|
||||
!! yellow dark/light
|
||||
*color3: S_yellow
|
||||
*color11: S_base00
|
||||
|
||||
!! blue dark/light
|
||||
*color4: S_blue
|
||||
*color12: S_base0
|
||||
|
||||
!! magenta dark/light
|
||||
*color5: S_magenta
|
||||
*color13: S_violet
|
||||
|
||||
!! cyan dark/light
|
||||
*color6: S_cyan
|
||||
*color14: S_base1
|
||||
|
||||
!! white dark/light
|
||||
*color7: S_base2
|
||||
*color15: S_base3
|
||||
|
||||
! ------------------------------------------------------------------------------
|
||||
! ROFI Solarized color theme
|
||||
! ------------------------------------------------------------------------------
|
||||
|
||||
rofi.color-enabled: true
|
||||
rofi.color-window: #002b37, #002b37, #003642
|
||||
rofi.color-normal: #002b37, #819396, #002b37, #003642, #819396
|
||||
rofi.color-active: #002b37, #008ed4, #002b37, #003642, #008ed4
|
||||
rofi.color-urgent: #002b37, #da4281, #002b37, #003642, #da4281
|
80
.compton.conf
Normal file
@ -0,0 +1,80 @@
|
||||
#################################
|
||||
# GLX backend
|
||||
#################################
|
||||
glx-copy-from-front = false;
|
||||
glx-swap-method = "undefined";
|
||||
backend = "glx"; # Enables OpenGL backend
|
||||
paint-on-overlay = true; # These 3 can improve performance, work well in most cases
|
||||
glx-no-stencil = true;
|
||||
glx-no-rebind-pixmap = true;
|
||||
vsync = "opengl-swc"; # Enables one of the vsync methods. Check here for more info: https://github.com/chjj/compton/wiki/vsync-guide
|
||||
|
||||
#################################
|
||||
# Shadows
|
||||
#################################
|
||||
shadow = true; # Enabled client-side shadows on windows.
|
||||
no-dnd-shadow = true; # Don't draw shadows on DND windows.
|
||||
no-dock-shadow = true; # Avoid drawing shadows on dock/panel windows.
|
||||
#clear-shadow = true; # Zero the part of the shadow's mask behind the window.
|
||||
shadow-radius = 5; # The blur radius for shadows (default 12)
|
||||
shadow-offset-x = -5; # The left offset for shadows. (default -15)
|
||||
shadow-offset-y = -5; # The top offset for shadows. (default -15)
|
||||
shadow-opacity = 0.5;
|
||||
shadow-ignore-shaped = false;
|
||||
|
||||
shadow-exclude = [
|
||||
"! name~=''",
|
||||
"name = 'Notification'",
|
||||
"name = 'Plank'",
|
||||
"name = 'Docky'",
|
||||
"name = 'Kupfer'",
|
||||
"name = 'xfce4-notifyd'",
|
||||
"name *= 'VLC'",
|
||||
"name *= 'compton'",
|
||||
"name *= 'Chromium'",
|
||||
"name *= 'Chrome'",
|
||||
"name *= 'Firefox'",
|
||||
"name *= 'Dofus'",
|
||||
"class_g = 'Conky'",
|
||||
"class_g = 'Kupfer'",
|
||||
"class_g = 'Synapse'",
|
||||
"class_g ?= 'Notify-osd'",
|
||||
"class_g ?= 'Cairo-dock'",
|
||||
"class_g ?= 'Xfce4-notifyd'",
|
||||
"class_g ?= 'Xfce4-power-manager'"
|
||||
];
|
||||
|
||||
#################################
|
||||
# Opacity
|
||||
#################################
|
||||
menu-opacity = 1;
|
||||
inactive-opacity = 0.7;
|
||||
active-opacity = 1;
|
||||
frame-opacity = 1;
|
||||
inactive-opacity-override = false;
|
||||
alpha-step = 0.06;
|
||||
blur-background-fixed = false;
|
||||
blur-background-exclude = [
|
||||
"window_type = 'dock'",
|
||||
"window_type = 'desktop'"
|
||||
];
|
||||
# Comme expliqué ici : https://wiki.archlinux.org/index.php/Termite#Transparency
|
||||
opacity-rule = [
|
||||
"0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
|
||||
];
|
||||
|
||||
#################################
|
||||
# Fading
|
||||
#################################
|
||||
# Fading
|
||||
fading = true; # Fade windows during opacity changes.
|
||||
fade-delta = 4; # The time between steps in a fade in milliseconds. (default 10).
|
||||
fade-in-step = 0.03; # Opacity change between steps while fading in. (default 0.028)
|
||||
fade-out-step = 0.03; # Opacity change between steps while fading out (default 0.03)
|
||||
|
||||
detect-client-opacity = true; # Fixes opacity in some apps, such as xfce4-notifyd
|
||||
|
||||
wintypes:
|
||||
{
|
||||
tooltip = { fade = true; shadow = false; };
|
||||
};
|
416
.config/dunst/dunstrc
Normal file
@ -0,0 +1,416 @@
|
||||
[global]
|
||||
### Display ###
|
||||
|
||||
# Which monitor should the notifications be displayed on.
|
||||
monitor = 0
|
||||
|
||||
# Display notification on focused monitor. Possible modes are:
|
||||
# mouse: follow mouse pointer
|
||||
# keyboard: follow window with keyboard focus
|
||||
# none: don't follow anything
|
||||
#
|
||||
# "keyboard" needs a window manager that exports the
|
||||
# _NET_ACTIVE_WINDOW property.
|
||||
# This should be the case for almost all modern window managers.
|
||||
#
|
||||
# If this option is set to mouse or keyboard, the monitor option
|
||||
# will be ignored.
|
||||
follow = mouse
|
||||
|
||||
# The geometry of the window:
|
||||
# [{width}]x{height}[+/-{x}+/-{y}]
|
||||
# The geometry of the message window.
|
||||
# The height is measured in number of notifications everything else
|
||||
# in pixels. If the width is omitted but the height is given
|
||||
# ("-geometry x2"), the message window expands over the whole screen
|
||||
# (dmenu-like). If width is 0, the window expands to the longest
|
||||
# message displayed. A positive x is measured from the left, a
|
||||
# negative from the right side of the screen. Y is measured from
|
||||
# the top and down respectively.
|
||||
# The width can be negative. In this case the actual width is the
|
||||
# screen width minus the width defined in within the geometry option.
|
||||
geometry = "300x5-30+20"
|
||||
|
||||
# Show how many messages are currently hidden (because of geometry).
|
||||
indicate_hidden = yes
|
||||
|
||||
# Shrink window if it's smaller than the width. Will be ignored if
|
||||
# width is 0.
|
||||
shrink = no
|
||||
|
||||
# The transparency of the window. Range: [0; 100].
|
||||
# This option will only work if a compositing window manager is
|
||||
# present (e.g. xcompmgr, compiz, etc.).
|
||||
transparency = 0
|
||||
|
||||
# The height of the entire notification. If the height is smaller
|
||||
# than the font height and padding combined, it will be raised
|
||||
# to the font height and padding.
|
||||
notification_height = 0
|
||||
|
||||
# Draw a line of "separator_height" pixel height between two
|
||||
# notifications.
|
||||
# Set to 0 to disable.
|
||||
separator_height = 2
|
||||
|
||||
# Padding between text and separator.
|
||||
padding = 8
|
||||
|
||||
# Horizontal padding.
|
||||
horizontal_padding = 8
|
||||
|
||||
# Defines width in pixels of frame around the notification window.
|
||||
# Set to 0 to disable.
|
||||
frame_width = 3
|
||||
|
||||
# Defines color of the frame around the notification window.
|
||||
frame_color = "#aaaaaa"
|
||||
|
||||
# Define a color for the separator.
|
||||
# possible values are:
|
||||
# * auto: dunst tries to find a color fitting to the background;
|
||||
# * foreground: use the same color as the foreground;
|
||||
# * frame: use the same color as the frame;
|
||||
# * anything else will be interpreted as a X color.
|
||||
separator_color = frame
|
||||
|
||||
# Sort messages by urgency.
|
||||
sort = yes
|
||||
|
||||
# Don't remove messages, if the user is idle (no mouse or keyboard input)
|
||||
# for longer than idle_threshold seconds.
|
||||
# Set to 0 to disable.
|
||||
# A client can set the 'transient' hint to bypass this. See the rules
|
||||
# section for how to disable this if necessary
|
||||
idle_threshold = 120
|
||||
|
||||
### Text ###
|
||||
|
||||
font = Monospace 8
|
||||
|
||||
# The spacing between lines. If the height is smaller than the
|
||||
# font height, it will get raised to the font height.
|
||||
line_height = 0
|
||||
|
||||
# Possible values are:
|
||||
# full: Allow a small subset of html markup in notifications:
|
||||
# <b>bold</b>
|
||||
# <i>italic</i>
|
||||
# <s>strikethrough</s>
|
||||
# <u>underline</u>
|
||||
#
|
||||
# For a complete reference see
|
||||
# <http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>.
|
||||
#
|
||||
# strip: This setting is provided for compatibility with some broken
|
||||
# clients that send markup even though it's not enabled on the
|
||||
# server. Dunst will try to strip the markup but the parsing is
|
||||
# simplistic so using this option outside of matching rules for
|
||||
# specific applications *IS GREATLY DISCOURAGED*.
|
||||
#
|
||||
# no: Disable markup parsing, incoming notifications will be treated as
|
||||
# plain text. Dunst will not advertise that it has the body-markup
|
||||
# capability if this is set as a global setting.
|
||||
#
|
||||
# It's important to note that markup inside the format option will be parsed
|
||||
# regardless of what this is set to.
|
||||
markup = full
|
||||
|
||||
# The format of the message. Possible variables are:
|
||||
# %a appname
|
||||
# %s summary
|
||||
# %b body
|
||||
# %i iconname (including its path)
|
||||
# %I iconname (without its path)
|
||||
# %p progress value if set ([ 0%] to [100%]) or nothing
|
||||
# %n progress value if set without any extra characters
|
||||
# %% Literal %
|
||||
# Markup is allowed
|
||||
format = "<b>%s</b>\n%b"
|
||||
|
||||
# Alignment of message text.
|
||||
# Possible values are "left", "center" and "right".
|
||||
alignment = left
|
||||
|
||||
# Show age of message if message is older than show_age_threshold
|
||||
# seconds.
|
||||
# Set to -1 to disable.
|
||||
show_age_threshold = 60
|
||||
|
||||
# Split notifications into multiple lines if they don't fit into
|
||||
# geometry.
|
||||
word_wrap = yes
|
||||
|
||||
# When word_wrap is set to no, specify where to make an ellipsis in long lines.
|
||||
# Possible values are "start", "middle" and "end".
|
||||
ellipsize = middle
|
||||
|
||||
# Ignore newlines '\n' in notifications.
|
||||
ignore_newline = no
|
||||
|
||||
# Stack together notifications with the same content
|
||||
stack_duplicates = true
|
||||
|
||||
# Hide the count of stacked notifications with the same content
|
||||
hide_duplicate_count = false
|
||||
|
||||
# Display indicators for URLs (U) and actions (A).
|
||||
show_indicators = yes
|
||||
|
||||
### Icons ###
|
||||
|
||||
# Align icons left/right/off
|
||||
icon_position = off
|
||||
|
||||
# Scale larger icons down to this size, set to 0 to disable
|
||||
max_icon_size = 32
|
||||
|
||||
# Paths to default icons.
|
||||
# icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
|
||||
icon_path = /usr/share/icons/Adwaita/16x16/status/:/usr/share/icons/Adwaita/16x16/devices/
|
||||
|
||||
|
||||
### History ###
|
||||
|
||||
# Should a notification popped up from history be sticky or timeout
|
||||
# as if it would normally do.
|
||||
sticky_history = yes
|
||||
|
||||
# Maximum amount of notifications kept in history
|
||||
history_length = 20
|
||||
|
||||
### Misc/Advanced ###
|
||||
|
||||
# dmenu path.
|
||||
dmenu = /usr/bin/dmenu -p dunst:
|
||||
|
||||
# Browser for opening urls in context menu.
|
||||
browser = /usr/bin/firefox -new-tab
|
||||
|
||||
# Always run rule-defined scripts, even if the notification is suppressed
|
||||
always_run_script = true
|
||||
|
||||
# Define the title of the windows spawned by dunst
|
||||
title = Dunst
|
||||
|
||||
# Define the class of the windows spawned by dunst
|
||||
class = Dunst
|
||||
|
||||
# Print a notification on startup.
|
||||
# This is mainly for error detection, since dbus (re-)starts dunst
|
||||
# automatically after a crash.
|
||||
startup_notification = false
|
||||
|
||||
# Manage dunst's desire for talking
|
||||
# Can be one of the following values:
|
||||
# crit: Critical features. Dunst aborts
|
||||
# warn: Only non-fatal warnings
|
||||
# mesg: Important Messages
|
||||
# info: all unimportant stuff
|
||||
# debug: all less than unimportant stuff
|
||||
verbosity = mesg
|
||||
|
||||
# Define the corner radius of the notification window
|
||||
# in pixel size. If the radius is 0, you have no rounded
|
||||
# corners.
|
||||
# The radius will be automatically lowered if it exceeds half of the
|
||||
# notification height to avoid clipping text and/or icons.
|
||||
corner_radius = 0
|
||||
|
||||
### Legacy
|
||||
|
||||
# Use the Xinerama extension instead of RandR for multi-monitor support.
|
||||
# This setting is provided for compatibility with older nVidia drivers that
|
||||
# do not support RandR and using it on systems that support RandR is highly
|
||||
# discouraged.
|
||||
#
|
||||
# By enabling this setting dunst will not be able to detect when a monitor
|
||||
# is connected or disconnected which might break follow mode if the screen
|
||||
# layout changes.
|
||||
force_xinerama = false
|
||||
|
||||
### mouse
|
||||
|
||||
# Defines action of mouse event
|
||||
# Possible values are:
|
||||
# * none: Don't do anything.
|
||||
# * do_action: If the notification has exactly one action, or one is marked as default,
|
||||
# invoke it. If there are multiple and no default, open the context menu.
|
||||
# * close_current: Close current notification.
|
||||
# * close_all: Close all notifications.
|
||||
mouse_left_click = close_current
|
||||
mouse_middle_click = do_action
|
||||
mouse_right_click = close_all
|
||||
|
||||
# Experimental features that may or may not work correctly. Do not expect them
|
||||
# to have a consistent behaviour across releases.
|
||||
[experimental]
|
||||
# Calculate the dpi to use on a per-monitor basis.
|
||||
# If this setting is enabled the Xft.dpi value will be ignored and instead
|
||||
# dunst will attempt to calculate an appropriate dpi value for each monitor
|
||||
# using the resolution and physical size. This might be useful in setups
|
||||
# where there are multiple screens with very different dpi values.
|
||||
per_monitor_dpi = false
|
||||
|
||||
[shortcuts]
|
||||
|
||||
# Shortcuts are specified as [modifier+][modifier+]...key
|
||||
# Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
|
||||
# "mod3" and "mod4" (windows-key).
|
||||
# Xev might be helpful to find names for keys.
|
||||
|
||||
# Close notification.
|
||||
close = ctrl+space
|
||||
|
||||
# Close all notifications.
|
||||
close_all = ctrl+shift+space
|
||||
|
||||
# Redisplay last message(s).
|
||||
# On the US keyboard layout "grave" is normally above TAB and left
|
||||
# of "1". Make sure this key actually exists on your keyboard layout,
|
||||
# e.g. check output of 'xmodmap -pke'
|
||||
history = ctrl+grave
|
||||
|
||||
# Context menu.
|
||||
context = ctrl+shift+period
|
||||
|
||||
[urgency_low]
|
||||
# IMPORTANT: colors have to be defined in quotation marks.
|
||||
# Otherwise the "#" and following would be interpreted as a comment.
|
||||
background = "#222222"
|
||||
foreground = "#888888"
|
||||
timeout = 10
|
||||
# Icon for notifications with low urgency, uncomment to enable
|
||||
#icon = /path/to/icon
|
||||
|
||||
[urgency_normal]
|
||||
background = "#285577"
|
||||
foreground = "#ffffff"
|
||||
timeout = 10
|
||||
# Icon for notifications with normal urgency, uncomment to enable
|
||||
#icon = /path/to/icon
|
||||
|
||||
[urgency_critical]
|
||||
background = "#900000"
|
||||
foreground = "#ffffff"
|
||||
frame_color = "#ff0000"
|
||||
timeout = 0
|
||||
# Icon for notifications with critical urgency, uncomment to enable
|
||||
#icon = /path/to/icon
|
||||
|
||||
# Every section that isn't one of the above is interpreted as a rules to
|
||||
# override settings for certain messages.
|
||||
#
|
||||
# Messages can be matched by
|
||||
# appname (discouraged, see desktop_entry)
|
||||
# body
|
||||
# category
|
||||
# desktop_entry
|
||||
# icon
|
||||
# match_transient
|
||||
# msg_urgency
|
||||
# stack_tag
|
||||
# summary
|
||||
#
|
||||
# and you can override the
|
||||
# background
|
||||
# foreground
|
||||
# format
|
||||
# frame_color
|
||||
# fullscreen
|
||||
# new_icon
|
||||
# set_stack_tag
|
||||
# set_transient
|
||||
# timeout
|
||||
# urgency
|
||||
#
|
||||
# Shell-like globbing will get expanded.
|
||||
#
|
||||
# Instead of the appname filter, it's recommended to use the desktop_entry filter.
|
||||
# GLib based applications export their desktop-entry name. In comparison to the appname,
|
||||
# the desktop-entry won't get localized.
|
||||
#
|
||||
# SCRIPTING
|
||||
# You can specify a script that gets run when the rule matches by
|
||||
# setting the "script" option.
|
||||
# The script will be called as follows:
|
||||
# script appname summary body icon urgency
|
||||
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
|
||||
#
|
||||
# NOTE: if you don't want a notification to be displayed, set the format
|
||||
# to "".
|
||||
# NOTE: It might be helpful to run dunst -print in a terminal in order
|
||||
# to find fitting options for rules.
|
||||
|
||||
# Disable the transient hint so that idle_threshold cannot be bypassed from the
|
||||
# client
|
||||
#[transient_disable]
|
||||
# match_transient = yes
|
||||
# set_transient = no
|
||||
#
|
||||
# Make the handling of transient notifications more strict by making them not
|
||||
# be placed in history.
|
||||
#[transient_history_ignore]
|
||||
# match_transient = yes
|
||||
# history_ignore = yes
|
||||
|
||||
# fullscreen values
|
||||
# show: show the notifications, regardless if there is a fullscreen window opened
|
||||
# delay: displays the new notification, if there is no fullscreen window active
|
||||
# If the notification is already drawn, it won't get undrawn.
|
||||
# pushback: same as delay, but when switching into fullscreen, the notification will get
|
||||
# withdrawn from screen again and will get delayed like a new notification
|
||||
#[fullscreen_delay_everything]
|
||||
# fullscreen = delay
|
||||
#[fullscreen_show_critical]
|
||||
# msg_urgency = critical
|
||||
# fullscreen = show
|
||||
|
||||
#[espeak]
|
||||
# summary = "*"
|
||||
# script = dunst_espeak.sh
|
||||
|
||||
#[script-test]
|
||||
# summary = "*script*"
|
||||
# script = dunst_test.sh
|
||||
|
||||
#[ignore]
|
||||
# # This notification will not be displayed
|
||||
# summary = "foobar"
|
||||
# format = ""
|
||||
|
||||
#[history-ignore]
|
||||
# # This notification will not be saved in history
|
||||
# summary = "foobar"
|
||||
# history_ignore = yes
|
||||
|
||||
#[skip-display]
|
||||
# # This notification will not be displayed, but will be included in the history
|
||||
# summary = "foobar"
|
||||
# skip_display = yes
|
||||
|
||||
#[signed_on]
|
||||
# appname = Pidgin
|
||||
# summary = "*signed on*"
|
||||
# urgency = low
|
||||
#
|
||||
#[signed_off]
|
||||
# appname = Pidgin
|
||||
# summary = *signed off*
|
||||
# urgency = low
|
||||
#
|
||||
#[says]
|
||||
# appname = Pidgin
|
||||
# summary = *says*
|
||||
# urgency = critical
|
||||
#
|
||||
#[twitter]
|
||||
# appname = Pidgin
|
||||
# summary = *twitter.com*
|
||||
# urgency = normal
|
||||
#
|
||||
#[stack-volumes]
|
||||
# appname = "some_volume_notifiers"
|
||||
# set_stack_tag = "volume"
|
||||
#
|
||||
# vim: ft=cfg
|
BIN
.config/i3/A-Spiral-to-the-Unknown.jpg
Normal file
After Width: | Height: | Size: 634 KiB |
BIN
.config/i3/Beach_by_Renato_Giordanelli.jpg
Normal file
After Width: | Height: | Size: 483 KiB |
BIN
.config/i3/abstract-blue-background-1920x1200.jpg
Normal file
After Width: | Height: | Size: 517 KiB |
248
.config/i3/config
Normal file
@ -0,0 +1,248 @@
|
||||
# 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).
|
||||
#
|
||||
#exec --no-startup-id xsetroot -solid "#33333"
|
||||
|
||||
# Default wallpaper (if no one found)
|
||||
exec --no-startup-id feh --bg-fill $HOME/.config/i3/Beach_by_Renato_Giordanelli.jpg
|
||||
|
||||
|
||||
# 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:monospace 8
|
||||
|
||||
# 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:DejaVu Sans Mono 10
|
||||
|
||||
# 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 doesn’t scale on retina/hidpi displays.
|
||||
|
||||
# Use Mouse+$mod to drag floating windows to their wanted position
|
||||
floating_modifier $mod
|
||||
|
||||
# start a terminal (use .profile that set $TERMINAL variable)
|
||||
bindsym $mod+Return exec i3-sensible-terminal
|
||||
|
||||
# kill focused window
|
||||
bindsym $mod+Shift+A kill
|
||||
|
||||
# start dmenu (a program launcher)
|
||||
#bindsym $mod+d exec dmenu_run
|
||||
bindsym $mod+d exec rofi -show combi
|
||||
# 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
|
||||
|
||||
# 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
|
||||
bindsym Mod1+Tab focus right
|
||||
bindsym Mod1+Shift+Tab focus left
|
||||
|
||||
# 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 Mod1+Control+Right workspace next
|
||||
bindsym Mod1+Control+Left workspace prev
|
||||
|
||||
# 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
|
||||
|
||||
# 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 'Tu as appuyé sur le raccourci de sortie. Sortir réellement de i3 ? Cela terminera ta session X.' -b 'Oui, quitter i3' 'i3-msg exit'"
|
||||
|
||||
# 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 window’s width.
|
||||
# Pressing right will grow the window’s width.
|
||||
# Pressing up will shrink the window’s height.
|
||||
# Pressing down will grow the window’s 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"
|
||||
|
||||
##### Application that goes to a specific Workspace
|
||||
|
||||
assign [class="jetbrains-idea|Code"] 1
|
||||
assign [class="Google-chrome|Vivaldi-stable|Opera|Firefox|Navigator|Nightly|Chromium"] 2
|
||||
assign [class="Thunderbird|Mail"] 3
|
||||
assign [class="Mattermost|mattermost-desktop|Rambox|Slack|Scudcloud|Gitter|Dino"] 4
|
||||
|
||||
##### STATUS BAR
|
||||
|
||||
# Start i3bar to display a workspace bar (plus the system information i3status
|
||||
# finds out, if available)
|
||||
#bar {
|
||||
# status_command i3status
|
||||
# tray_output primary
|
||||
#}
|
||||
|
||||
exec_always --no-startup-id "killall polybar; polybar -r default"
|
||||
|
||||
##### MISCELLANEOUS CONFIGURATION
|
||||
|
||||
# Pulse Audio controls
|
||||
set $sink `pactl list short sinks | head -n1 | cut -f1`
|
||||
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume $sink +5% #increase sound volume
|
||||
bindsym XF86AudioLowerVolume exec pactl set-sink-volume $sink -5% #decrease sound volume
|
||||
bindsym XF86AudioMute exec pactl set-sink-mute $sink toggle # mute sound
|
||||
|
||||
# Brightness controls
|
||||
bindsym XF86MonBrightnessUp exec xbacklight -inc 5 # increase screen brightness
|
||||
bindsym XF86MonBrightnessDown exec xbacklight -dec 5 # decrease screen brightness
|
||||
|
||||
# Lock screen
|
||||
bindsym $mod+l exec xscreensaver-command --lock
|
||||
|
||||
# Print screen
|
||||
bindsym Print exec --no-startup-id scrot '%Y-%m-%d-%s_screenshot_$wx$h.jpg' -e 'mv $f ~/Images/'
|
||||
|
||||
# Suspend activity (bouton de veille)
|
||||
bindsym XF86Sleep exec systemctl suspend
|
||||
|
||||
#####
|
||||
## STARTUP PROGRAMS
|
||||
###
|
||||
|
||||
# Transparency (need compton)
|
||||
exec_always --no-startup-id "killall compton; compton"
|
||||
|
||||
# DBUS daemon (needed for keyboard applet and more I think)
|
||||
#exec --no-startup-id /usr/lib/gnome-settings-daemon/gnome-settings-daemon
|
||||
|
||||
# Eyes economy
|
||||
exec --no-startup-id redshift -l 48.666977:7.706748
|
||||
|
||||
# Lock screen
|
||||
exec_always --no-startup-id xscreensaver # if not launched via systemd or xinitrc
|
||||
|
||||
# XFCE panel instead of i3status
|
||||
#exec --no-startup-id xfce4-panel --disable-wm-check
|
||||
|
||||
# Time tracking
|
||||
#exec --no-startup-id hamster-indicator
|
||||
|
||||
# Default terminal
|
||||
exec --no-startup-id i3-sensible-terminal
|
||||
|
||||
# I3 Gaps (need i3-gaps)
|
||||
for_window [class="^.*"] border pixel 2
|
||||
for_window [class=".*"] title_format " %title"
|
||||
gaps inner 5
|
||||
smart_borders on
|
||||
smart_gaps on
|
||||
|
||||
# Random wallpaper (need ~/bin/random_wallpaper from
|
||||
# https://github.com/blankoworld/dotfiles/blob/master/bin/random_wallpaper)
|
||||
exec_always --no-startup-id "kill -9 `ps aux | grep random_wallpaper |grep -v 'grep'| awk '{print $2}'`; random_wallpaper &"
|
||||
|
||||
# Network management
|
||||
exec --no-startup-id nm-applet
|
||||
|
||||
# Hasmter indicator
|
||||
exec --no-startup-id hamster
|
||||
|
||||
# Clipit : Presse-papiers pour le bureau
|
||||
exec --no-startup-id clipit
|
||||
|
||||
# Notification de bureau
|
||||
exec --no-startup-id dunst
|
425
.config/kitty/kitty.conf
Normal file
@ -0,0 +1,425 @@
|
||||
# vim:fileencoding=utf-8:ft=conf
|
||||
|
||||
# Font family. You can also specify different fonts for the
|
||||
# bold/italic/bold-italic variants. By default they are derived automatically,
|
||||
# by the OSes font system. Setting them manually is useful for font families
|
||||
# that have many weight variants like Book, Medium, Thick, etc. For example:
|
||||
# font_family Operator Mono Book
|
||||
# bold_font Operator Mono Medium
|
||||
# italic_font Operator Mono Book Italic
|
||||
# bold_italic_font Operator Mono Medium Italic
|
||||
#
|
||||
# You can get a list of full family names available on your computer by running
|
||||
# kitty list-fonts
|
||||
# The default values shown below rely on your OS to choose an appropriate monospace font family.
|
||||
font_family Fira Code
|
||||
italic_font Fira Code Light
|
||||
bold_font Fira Code Bold
|
||||
bold_italic_font Fira Code Retina
|
||||
|
||||
# Font size (in pts)
|
||||
font_size 14.0
|
||||
|
||||
# The amount the font size is changed by (in pts) when increasing/decreasing
|
||||
# the font size in a running terminal.
|
||||
font_size_delta 2
|
||||
|
||||
|
||||
# Adjust the cell dimensions.
|
||||
# You can use either numbers, which are interpreted as pixels or percentages
|
||||
# (number followed by %), which are interpreted as percentages of the
|
||||
# unmodified values. You can use negative pixels or percentages less than
|
||||
# 100% to reduce sizes (but this might cause rendering artifacts).
|
||||
adjust_line_height 0
|
||||
adjust_column_width 0
|
||||
|
||||
# Change the sizes of the lines used for the box drawing unicode characters
|
||||
# These values are in pts. They will be scaled by the monitor DPI to arrive at
|
||||
# a pixel value. There must be four values corresponding to thin, normal, thick,
|
||||
# and very thick lines;
|
||||
box_drawing_scale 0.001, 1, 1.5, 2
|
||||
|
||||
# The foreground color
|
||||
foreground #839496
|
||||
|
||||
# The background color
|
||||
background #002b36
|
||||
|
||||
# The opacity of the background. A number between 0 and 1, where 1 is opaque and 0 is fully transparent.
|
||||
# This will only work if supported by the OS (for instance, when using a compositor under X11). Note
|
||||
# that it only sets the default background color's opacity. This is so that
|
||||
# things like the status bar in vim, powerline prompts, etc. still look good.
|
||||
# But it means that if you use a color theme with a background color in your
|
||||
# editor, it will not be rendered as transparent. Instead you should change the
|
||||
# default background color in your kitty config and not use a background color
|
||||
# in the editor color scheme. Or use the escape codes to set the terminals
|
||||
# default colors in a shell script to launch your editor.
|
||||
# Be aware that using a value less than 1.0 is a (possibly significant) performance hit.
|
||||
background_opacity 0.87
|
||||
|
||||
# The foreground for selections
|
||||
selection_foreground #93a1a1
|
||||
|
||||
# The background for selections
|
||||
selection_background #073642
|
||||
|
||||
# The color and style for highlighting URLs on mouse-over. url_style can be one of:
|
||||
# none, single, double, curly
|
||||
url_color #0087BD
|
||||
url_style curly
|
||||
|
||||
# The cursor color
|
||||
cursor #ffffff
|
||||
|
||||
# The cursor shape can be one of (block, beam, underline)
|
||||
cursor_shape block
|
||||
|
||||
# The interval (in seconds) at which to blink the cursor. Set to zero to
|
||||
# disable blinking. Note that numbers smaller than repaint_delay will be
|
||||
# limited to repaint_delay.
|
||||
cursor_blink_interval 0.5
|
||||
|
||||
# Stop blinking cursor after the specified number of seconds of keyboard inactivity. Set to
|
||||
# zero to never stop blinking.
|
||||
cursor_stop_blinking_after 15.0
|
||||
|
||||
# Number of lines of history to keep in memory for scrolling back
|
||||
scrollback_lines 2000
|
||||
|
||||
# Program with which to view scrollback in a new window. The scrollback buffer is passed as
|
||||
# STDIN to this program. If you change it, make sure the program you use can
|
||||
# handle ANSI escape sequences for colors and text formatting.
|
||||
scrollback_pager less +G -R
|
||||
|
||||
# Wheel scroll multiplier (modify the amount scrolled by the mouse wheel). Use negative
|
||||
# numbers to change scroll direction.
|
||||
wheel_scroll_multiplier 5.0
|
||||
|
||||
# The interval between successive clicks to detect double/triple clicks (in seconds)
|
||||
click_interval 0.5
|
||||
|
||||
# Characters considered part of a word when double clicking. In addition to these characters
|
||||
# any character that is marked as an alpha-numeric character in the unicode
|
||||
# database will be matched.
|
||||
select_by_word_characters :@-./_~?&=%+#
|
||||
|
||||
# The shell program to execute. The default value of . means
|
||||
# to use whatever shell is set as the default shell for the current user.
|
||||
# Note that on macOS if you change this, you might need to add --login to
|
||||
# ensure that the shell starts in interactive mode and reads its rc files.
|
||||
shell .
|
||||
|
||||
# Hide mouse cursor after the specified number of seconds of the mouse not being used. Set to
|
||||
# zero to disable mouse cursor hiding.
|
||||
mouse_hide_wait 3.0
|
||||
|
||||
# Set the active window to the window under the mouse when moving the mouse around
|
||||
focus_follows_mouse no
|
||||
|
||||
# The enabled window layouts. A comma separated list of layout names. The special value * means
|
||||
# all layouts. The first listed layout will be used as the startup layout.
|
||||
# For a list of available layouts, see the README.
|
||||
enabled_layouts *
|
||||
|
||||
# If enabled, the window size will be remembered so that new instances of kitty will have the same
|
||||
# size as the previous instance. If disabled, the window will initially have size configured
|
||||
# by initial_window_width/height, in pixels.
|
||||
remember_window_size yes
|
||||
initial_window_width 640
|
||||
initial_window_height 400
|
||||
|
||||
# Delay (in milliseconds) between screen updates. Decreasing it, increases
|
||||
# frames-per-second (FPS) at the cost of more CPU usage. The default value
|
||||
# yields ~100 FPS which is more than sufficient for most uses. Note that to
|
||||
# actually achieve 100FPS you have to either set sync_to_monitor to no or use a
|
||||
# monitor with a high refresh rate.
|
||||
repaint_delay 10
|
||||
|
||||
# Delay (in milliseconds) before input from the program running in the terminal
|
||||
# is processed. Note that decreasing it will increase responsiveness, but also
|
||||
# increase CPU usage and might cause flicker in full screen programs that
|
||||
# redraw the entire screen on each loop, because kitty is so fast that partial
|
||||
# screen updates will be drawn.
|
||||
input_delay 3
|
||||
|
||||
# Sync screen updates to the refresh rate of the monitor. This prevents
|
||||
# tearing (https://en.wikipedia.org/wiki/Screen_tearing) when scrolling. However,
|
||||
# it limits the rendering speed to the refresh rate of your monitor. With a
|
||||
# very high speed mouse/high keyboard repeat rate, you may notice some slight input latency.
|
||||
# If so, set this to no.
|
||||
sync_to_monitor yes
|
||||
|
||||
# Close the window when the child process (shell) exits. If no (the default),
|
||||
# the terminal will remain open when the child exits as long as there are still
|
||||
# processes outputting to the terminal (for example disowned or backgrounded
|
||||
# processes). If yes, the window will close as soon as the child process exits.
|
||||
# Note that setting it to yes means that any background processes still using
|
||||
# the terminal can fail silently because their stdout/stderr/stdin no longer
|
||||
# work.
|
||||
close_on_child_death no
|
||||
|
||||
# Visual bell duration. Flash the screen when a bell occurs for the specified number of
|
||||
# seconds. Set to zero to disable.
|
||||
visual_bell_duration 0.0
|
||||
|
||||
# Enable/disable the audio bell. Useful in environments that require silence.
|
||||
enable_audio_bell yes
|
||||
|
||||
# The modifier keys to press when clicking with the mouse on URLs to open the URL
|
||||
open_url_modifiers ctrl+shift
|
||||
|
||||
# The program with which to open URLs that are clicked on. The special value "default" means to
|
||||
# use the operating system's default URL handler.
|
||||
open_url_with default
|
||||
|
||||
# The modifiers to use rectangular selection (i.e. to select text in a
|
||||
# rectangular block with the mouse)
|
||||
rectangle_select_modifiers ctrl+alt
|
||||
|
||||
|
||||
# Allow other programs to control kitty. If you turn this on other programs can
|
||||
# control all aspects of kitty, including sending text to kitty windows,
|
||||
# opening new windows, closing windows, reading the content of windows, etc.
|
||||
# Note that this even works over ssh connections.
|
||||
allow_remote_control no
|
||||
|
||||
# The value of the TERM environment variable to set
|
||||
term xterm-kitty
|
||||
|
||||
# The width (in pts) of window borders. Will be rounded to the nearest number of pixels based on screen resolution.
|
||||
# Note that borders are displayed only when more than one window is visible. They are meant to separate multiple windows.
|
||||
window_border_width 1
|
||||
|
||||
# The window margin (in pts) (blank area outside the border)
|
||||
window_margin_width 0
|
||||
|
||||
# The window padding (in pts) (blank area between the text and the window border)
|
||||
window_padding_width 0
|
||||
|
||||
# The color for the border of the active window
|
||||
active_border_color #00ff00
|
||||
|
||||
# The color for the border of inactive windows
|
||||
inactive_border_color #cccccc
|
||||
|
||||
# Fade the text in inactive windows by the specified amount (a number between
|
||||
# zero and one, with 0 being fully faded).
|
||||
inactive_text_alpha 1.0
|
||||
|
||||
# Which edge to show the tab bar on, top or bottom
|
||||
tab_bar_edge bottom
|
||||
|
||||
# The separator between tabs in the tab bar
|
||||
tab_separator " ┇"
|
||||
|
||||
# Tab bar colors and styles
|
||||
active_tab_foreground #000
|
||||
active_tab_background #eee
|
||||
active_tab_font_style bold-italic
|
||||
inactive_tab_foreground #444
|
||||
inactive_tab_background #999
|
||||
inactive_tab_font_style normal
|
||||
|
||||
|
||||
# The 16 terminal colors. There are 8 basic colors, each color has a dull and
|
||||
# bright version.
|
||||
|
||||
# black
|
||||
color0 #073642
|
||||
color8 #002b36
|
||||
|
||||
# red
|
||||
color1 #dc322f
|
||||
color9 #cb4b16
|
||||
|
||||
# green
|
||||
color2 #859900
|
||||
color10 #586e75
|
||||
|
||||
# yellow
|
||||
color3 #b58900
|
||||
color11 #657b83
|
||||
|
||||
# blue
|
||||
color4 #268bd2
|
||||
color12 #839496
|
||||
|
||||
# magenta
|
||||
color5 #d33682
|
||||
color13 #6c71c4
|
||||
|
||||
# cyan
|
||||
color6 #2aa198
|
||||
color14 #93a1a1
|
||||
|
||||
# white
|
||||
color7 #b8d0d2
|
||||
color15 #fdf6e3
|
||||
|
||||
|
||||
# Key mapping
|
||||
# For a list of key names, see: http://www.glfw.org/docs/latest/group__keys.html
|
||||
# For a list of modifier names, see: http://www.glfw.org/docs/latest/group__mods.html
|
||||
#
|
||||
# You can use the special action no_op to unmap a keyboard shortcut that is
|
||||
# assigned in the default configuration.
|
||||
#
|
||||
# You can combine multiple actions to be triggered by a single shortcut, using the
|
||||
# syntax below:
|
||||
# map key combine <separator> action1 <separator> action2 <separator> action3 ...
|
||||
# For example:
|
||||
# map ctrl+shift+e combine : new_window : next_layout
|
||||
# this will create a new window and switch to the next available layout
|
||||
|
||||
# Clipboard
|
||||
map ctrl+shift+v paste_from_clipboard
|
||||
map ctrl+shift+s paste_from_selection
|
||||
map ctrl+shift+c copy_to_clipboard
|
||||
map shift+insert paste_from_selection
|
||||
# You can also pass the contents of the current selection to any program using
|
||||
# pass_selection_to_program. By default, the system's open program is used, but
|
||||
# you can specify your own, for example:
|
||||
# map ctrl+shift+o pass_selection_to_program firefox
|
||||
map ctrl+shift+o pass_selection_to_program
|
||||
|
||||
# Scrolling
|
||||
map ctrl+shift+up scroll_line_up
|
||||
map ctrl+shift+down scroll_line_down
|
||||
map ctrl+shift+k scroll_line_up
|
||||
map ctrl+shift+j scroll_line_down
|
||||
map ctrl+shift+page_up scroll_page_up
|
||||
map ctrl+shift+page_down scroll_page_down
|
||||
map ctrl+shift+home scroll_home
|
||||
map ctrl+shift+end scroll_end
|
||||
map ctrl+shift+h show_scrollback
|
||||
|
||||
# Window management
|
||||
map ctrl+shift+enter new_window
|
||||
map ctrl+shift+n new_os_window
|
||||
map ctrl+shift+w close_window
|
||||
map ctrl+shift+] next_window
|
||||
map ctrl+shift+[ previous_window
|
||||
map ctrl+shift+f move_window_forward
|
||||
map ctrl+shift+b move_window_backward
|
||||
map ctrl+shift+` move_window_to_top
|
||||
map ctrl+shift+1 first_window
|
||||
map ctrl+shift+2 second_window
|
||||
map ctrl+shift+3 third_window
|
||||
map ctrl+shift+4 fourth_window
|
||||
map ctrl+shift+5 fifth_window
|
||||
map ctrl+shift+6 sixth_window
|
||||
map ctrl+shift+7 seventh_window
|
||||
map ctrl+shift+8 eighth_window
|
||||
map ctrl+shift+9 ninth_window
|
||||
map ctrl+shift+0 tenth_window
|
||||
# You can open a new window running an arbitrary program, for example:
|
||||
# map ctrl+shift+y new_window mutt
|
||||
#
|
||||
# You can pass the current selection to the new program by using the @selection placeholder
|
||||
# map ctrl+shift+y new_window less @selection
|
||||
#
|
||||
# You can even send the contents of the current screen + history buffer as stdin using
|
||||
# the placeholders @text (which is the plain text) and @ansi (which includes text styling escape codes).
|
||||
# For only the current screen, use @screen or @ansi_screen.
|
||||
# For example, the following command opens the scrollback buffer in less in a new window.
|
||||
# map ctrl+shift+y new_window @ansi less +G -R
|
||||
#
|
||||
# You can open a new window with the current working directory set to the
|
||||
# working directory of the current window using
|
||||
# map ctrl+alt+enter new_window_with_cwd
|
||||
|
||||
|
||||
# Tab management
|
||||
map ctrl+shift+right next_tab
|
||||
map ctrl+shift+left previous_tab
|
||||
map ctrl+shift+t new_tab
|
||||
map ctrl+shift+q close_tab
|
||||
map ctrl+shift+l next_layout
|
||||
map ctrl+shift+. move_tab_forward
|
||||
map ctrl+shift+, move_tab_backward
|
||||
# You can also create shortcuts to go to specific tabs, with 1 being the first tab
|
||||
# map ctrl+alt+1 goto_tab 1
|
||||
# map ctrl+alt+2 goto_tab 2
|
||||
|
||||
# Just as with new_window above, you can also pass the name of arbitrary
|
||||
# commands to run when using new_tab and use new_tab_with_cwd.
|
||||
|
||||
|
||||
# Layout management
|
||||
# You can create shortcuts to switch to specific layouts
|
||||
# map ctrl+alt+1 goto_layout tall
|
||||
# map ctrl+alt+2 goto_layout stack
|
||||
|
||||
|
||||
# Miscellaneous
|
||||
map ctrl+shift+equal increase_font_size
|
||||
map ctrl+shift+minus decrease_font_size
|
||||
map ctrl+shift+backspace restore_font_size
|
||||
map ctrl+shift+f11 toggle_fullscreen
|
||||
map ctrl+shift+u input_unicode_character
|
||||
map ctrl+shift+f2 edit_config_file
|
||||
# Open a currently visible URL using the keyboard. The program used ot open the URL is specified in open_url_with.
|
||||
# You can customize how the URLs are detected and opened by specifying command line options to
|
||||
# url_hints. For example:
|
||||
# map ctrl+shift+e run_simple_kitten text url_hints --program firefox --regex "http://[^ ]+"
|
||||
map ctrl+shift+e run_simple_kitten text url_hints
|
||||
|
||||
# Sending arbitrary text on shortcut key presses
|
||||
# You can tell kitty to send arbitrary (UTF-8) encoded text to
|
||||
# the client program when pressing specified shortcut keys. For example:
|
||||
# map ctrl+alt+a send_text all Special text
|
||||
# This will send "Special text" when you press the Ctrl+Alt+a key combination.
|
||||
# The text to be sent is a python string literal so you can use escapes like
|
||||
# \x1b to send control codes or \u21fb to send unicode characters (or you can
|
||||
# just input the unicode characters directly as UTF-8 text). The first argument
|
||||
# to send_text is the keyboard modes in which to activate the shortcut. The possible
|
||||
# values are normal or application or kitty or a comma separated combination of them.
|
||||
# The special keyword all means all modes. The modes normal and application refer to
|
||||
# the DECCKM cursor key mode for terminals, and kitty refers to the special kitty
|
||||
# extended keyboard protocol. Another example, that outputs a word and then moves the cursor
|
||||
# to the start of the line (same as pressing the Home key):
|
||||
# map ctrl+alt+a send_text normal Word\x1b[H
|
||||
# map ctrl+alt+a send_text application Word\x1bOH
|
||||
|
||||
# Symbol mapping (special font for specified unicode code points). Map the
|
||||
# specified unicode codepoints to a particular font. Useful if you need special
|
||||
# rendering for some symbols, such as for Powerline. Avoids the need for
|
||||
# patched fonts. Each unicode code point is specified in the form U+<code point
|
||||
# in hexadecimal>. You can specify multiple code points, separated by commas
|
||||
# and ranges separated by hyphens. symbol_map itself can be specified multiple times.
|
||||
# Syntax is:
|
||||
#
|
||||
# symbol_map codepoints Font Family Name
|
||||
#
|
||||
# For example:
|
||||
#
|
||||
# symbol_map U+E0A0-U+E0A2,U+E0B0-U+E0B3 PowerlineSymbols
|
||||
|
||||
|
||||
# OS specific tweaks
|
||||
|
||||
# Copy to clipboard on select. With this enabled, simply selecting text with
|
||||
# the mouse will cause the text to be copied to clipboard. Useful on platforms
|
||||
# such as macOS/Wayland that do not have the concept of primary selections. Note
|
||||
# that this is a security risk, as all programs, including websites open in your
|
||||
# browser can read the contents of the clipboard.
|
||||
copy_on_select no
|
||||
|
||||
# Change the color of the kitty window's titlebar on macOS. A value of "system"
|
||||
# means to use the default system color, a value of "background" means to use
|
||||
# the default background color and finally you can use an arbitrary color, such
|
||||
# as #12af59 or "red".
|
||||
macos_titlebar_color system
|
||||
|
||||
# Hide the kitty window's title bar on macOS.
|
||||
macos_hide_titlebar no
|
||||
|
||||
# Use the option key as an alt key. With this set to no, kitty will use
|
||||
# the macOS native Option+Key = unicode character behavior. This will
|
||||
# break any Alt+key keyboard shortcuts in your terminal programs, but you
|
||||
# can use the macOS unicode input technique.
|
||||
macos_option_as_alt yes
|
||||
|
||||
# The number is a percentage of maximum volume.
|
||||
# See man XBell for details.
|
||||
x11_bell_volume 80
|
396
.config/polybar/config
Normal file
@ -0,0 +1,396 @@
|
||||
;=====================================================
|
||||
;
|
||||
; 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 = #222
|
||||
background-alt = #444
|
||||
;foreground = ${xrdb:color7:#222}
|
||||
foreground = #dfdfdf
|
||||
foreground-alt = #555
|
||||
primary = #ffb52a
|
||||
secondary = #e60053
|
||||
alert = #bd2c40
|
||||
|
||||
[bar/default]
|
||||
;monitor = ${env:MONITOR:HDMI-1}
|
||||
width = 100%
|
||||
height = 27
|
||||
;offset-x = 1%
|
||||
;offset-y = 1%
|
||||
radius = 0
|
||||
fixed-center = false
|
||||
|
||||
background = ${colors.background}
|
||||
foreground = ${colors.foreground}
|
||||
|
||||
line-size = 3
|
||||
line-color = #f00
|
||||
|
||||
border-size = 0
|
||||
border-color = #00000000
|
||||
|
||||
padding-left = 0
|
||||
padding-right = 2
|
||||
|
||||
module-margin-left = 0
|
||||
module-margin-right = 1
|
||||
|
||||
font-0 = DejaVu Sans Mono:size=10.5;1
|
||||
;font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
|
||||
font-1 = FontAwesome:size=10
|
||||
font-2 = siji:pixelsize=10;1
|
||||
|
||||
modules-left = i3
|
||||
modules-center = xwindow
|
||||
modules-right = xbacklight volume memory cpu wlan eth battery temperature date powermenu
|
||||
|
||||
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
|
||||
|
||||
locale = fr_FR.UTF-8
|
||||
|
||||
[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
|
||||
|
||||
[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% %icon%
|
||||
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% %icon%
|
||||
label-unfocused-padding = ${module/bspwm.label-occupied-padding}
|
||||
|
||||
; visible = Active workspace on unfocused monitor
|
||||
label-visible = %index% %icon%
|
||||
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% %icon%
|
||||
label-urgent-background = ${module/bspwm.label-urgent-background}
|
||||
label-urgent-padding = ${module/bspwm.label-urgent-padding}
|
||||
|
||||
ws-icon-0 = 1;
|
||||
ws-icon-1 = 2;
|
||||
ws-icon-2 = 3;
|
||||
ws-icon-3 = 4;
|
||||
|
||||
[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>
|
||||
label = %percentage%%
|
||||
|
||||
; Only applies if <ramp> is used
|
||||
ramp-0 = 🌕
|
||||
ramp-1 = 🌔
|
||||
ramp-2 = 🌓
|
||||
ramp-3 = 🌒
|
||||
ramp-4 = 🌑
|
||||
|
||||
bar-width = 10
|
||||
bar-indicator = |
|
||||
bar-indicator-foreground = #ff
|
||||
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%%
|
||||
|
||||
[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 = wlp3s0
|
||||
interval = 3.0
|
||||
|
||||
;format-connected = <ramp-signal> <label-connected>
|
||||
format-connected = <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 = eno1
|
||||
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 = %a %d %b
|
||||
date-alt = " %Y-%m-%d"
|
||||
|
||||
time = %R
|
||||
time-alt = %R:%S
|
||||
|
||||
format-prefix = " "
|
||||
format-prefix-foreground = ${colors.foreground-alt}
|
||||
format-underline = #0a6cf5
|
||||
|
||||
label = %date% %time%
|
||||
|
||||
[module/volume]
|
||||
type = internal/volume
|
||||
|
||||
format-volume = <ramp-volume> <label-volume>
|
||||
label-volume = %percentage%%
|
||||
label-volume-foreground = ${root.foreground}
|
||||
|
||||
format-muted-prefix = " "
|
||||
format-muted-foreground = ${colors.foreground-alt}
|
||||
label-muted = %percentage%%
|
||||
|
||||
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}
|
||||
|
||||
ramp-volume-0 =
|
||||
ramp-volume-1 =
|
||||
ramp-volume-2 =
|
||||
ramp-volume-3 =
|
||||
|
||||
[module/battery]
|
||||
type = internal/battery
|
||||
battery = BAT0
|
||||
adapter = ADP1
|
||||
full-at = 98
|
||||
|
||||
format-charging = <animation-charging> <label-charging>
|
||||
format-charging-underline = #ffb52a
|
||||
|
||||
format-discharging = <ramp-capacity> <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
|
||||
|
||||
[module/temperature]
|
||||
type = internal/temperature
|
||||
thermal-zone = 0
|
||||
warn-temperature = 60
|
||||
|
||||
hwmon-path = /sys/devices/platform/coretemp.0/hwmon/hwmon2/temp1_input
|
||||
|
||||
;format = <ramp> <label>
|
||||
format = <label>
|
||||
format-underline = #f50a4d
|
||||
;format-warn = <ramp> <label-warn>
|
||||
format-warn = <label-warn>
|
||||
format-warn-underline = ${self.format-underline}
|
||||
|
||||
label = %temperature%
|
||||
label-warn = %temperature%
|
||||
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 = annuler
|
||||
label-close-foreground = ${colors.secondary}
|
||||
label-separator = |
|
||||
label-separator-foreground = ${colors.foreground-alt}
|
||||
|
||||
menu-0-0 = redémarrer
|
||||
menu-0-0-exec = menu-open-1
|
||||
menu-0-1 = arrêt
|
||||
menu-0-1-exec = menu-open-2
|
||||
|
||||
menu-1-0 = annuler
|
||||
menu-1-0-exec = menu-open-0
|
||||
menu-1-1 = redémarrer
|
||||
menu-1-1-exec = systemctl reboot
|
||||
|
||||
menu-2-0 = arrêt
|
||||
menu-2-0-exec = systemctl poweroff
|
||||
menu-2-1 = annuler
|
||||
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
|
385
.config/polybar/config.old
Normal file
@ -0,0 +1,385 @@
|
||||
;=====================================================
|
||||
;
|
||||
; 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 = #222
|
||||
background-alt = #444
|
||||
;foreground = ${xrdb:color7:#222}
|
||||
foreground = #dfdfdf
|
||||
foreground-alt = #555
|
||||
primary = #ffb52a
|
||||
secondary = #e60053
|
||||
alert = #bd2c40
|
||||
|
||||
[bar/default]
|
||||
;monitor = ${env:MONITOR:HDMI-1}
|
||||
width = 100%
|
||||
height = 27
|
||||
;offset-x = 1%
|
||||
;offset-y = 1%
|
||||
radius = 0
|
||||
fixed-center = false
|
||||
|
||||
background = ${colors.background}
|
||||
foreground = ${colors.foreground}
|
||||
|
||||
line-size = 3
|
||||
line-color = #f00
|
||||
|
||||
border-size = 0
|
||||
border-color = #00000000
|
||||
|
||||
padding-left = 0
|
||||
padding-right = 2
|
||||
|
||||
module-margin-left = 0
|
||||
module-margin-right = 1
|
||||
|
||||
font-0 = DejaVu Sans Mono:size=10.5;1
|
||||
;font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
|
||||
font-1 = FontAwesome:size=10
|
||||
font-2 = siji:pixelsize=10;1
|
||||
|
||||
modules-left = i3
|
||||
modules-center = xwindow
|
||||
modules-right = volume memory cpu wlan eth temperature date powermenu
|
||||
|
||||
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
|
||||
|
||||
locale = fr_FR.UTF-8
|
||||
|
||||
[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
|
||||
|
||||
[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% %icon%
|
||||
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% %icon%
|
||||
label-unfocused-padding = ${module/bspwm.label-occupied-padding}
|
||||
|
||||
; visible = Active workspace on unfocused monitor
|
||||
label-visible = %index% %icon%
|
||||
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% %icon%
|
||||
label-urgent-background = ${module/bspwm.label-urgent-background}
|
||||
label-urgent-padding = ${module/bspwm.label-urgent-padding}
|
||||
|
||||
ws-icon-0 = 1;
|
||||
ws-icon-1 = 2;
|
||||
ws-icon-2 = 3;
|
||||
ws-icon-3 = 4;
|
||||
|
||||
[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 = #ff
|
||||
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%%
|
||||
|
||||
[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 = wlp3s0
|
||||
interval = 3.0
|
||||
|
||||
;format-connected = <ramp-signal> <label-connected>
|
||||
format-connected = <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 = eno1
|
||||
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 = %a %d %b
|
||||
date-alt = " %Y-%m-%d"
|
||||
|
||||
time = %R
|
||||
time-alt = %R:%S
|
||||
|
||||
format-prefix =
|
||||
format-prefix-foreground = ${colors.foreground-alt}
|
||||
format-underline = #0a6cf5
|
||||
|
||||
label = %date% %time%
|
||||
|
||||
[module/volume]
|
||||
type = internal/volume
|
||||
|
||||
format-volume = <ramp-volume> <label-volume>
|
||||
label-volume = %percentage%%
|
||||
label-volume-foreground = ${root.foreground}
|
||||
|
||||
format-muted-prefix = " "
|
||||
format-muted-foreground = ${colors.foreground-alt}
|
||||
label-muted = %percentage%%
|
||||
|
||||
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}
|
||||
|
||||
ramp-volume-0 =
|
||||
ramp-volume-1 =
|
||||
ramp-volume-2 =
|
||||
ramp-volume-3 =
|
||||
|
||||
[module/battery]
|
||||
type = internal/battery
|
||||
battery = BAT0
|
||||
adapter = ADP1
|
||||
full-at = 98
|
||||
|
||||
format-charging = <animation-charging> <label-charging>
|
||||
format-charging-underline = #ffb52a
|
||||
|
||||
format-discharging = <ramp-capacity> <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
|
||||
|
||||
[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%
|
||||
label-warn = %temperature%
|
||||
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 = annuler
|
||||
label-close-foreground = ${colors.secondary}
|
||||
label-separator = |
|
||||
label-separator-foreground = ${colors.foreground-alt}
|
||||
|
||||
menu-0-0 = redémarrer
|
||||
menu-0-0-exec = menu-open-1
|
||||
menu-0-1 = arrêt
|
||||
menu-0-1-exec = menu-open-2
|
||||
|
||||
menu-1-0 = annuler
|
||||
menu-1-0-exec = menu-open-0
|
||||
menu-1-1 = redémarrer
|
||||
menu-1-1-exec = systemctl reboot
|
||||
|
||||
menu-2-0 = arrêt
|
||||
menu-2-0-exec = systemctl poweroff
|
||||
menu-2-1 = annuler
|
||||
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
|
32
.config/termite/config
Normal file
@ -0,0 +1,32 @@
|
||||
[options]
|
||||
font = DejaVu Sans Mono 12
|
||||
|
||||
# Solarized dark color scheme
|
||||
# found here: https://github.com/alpha-omega/termite-colors-solarized
|
||||
[colors]
|
||||
foreground = #839496
|
||||
foreground_bold = #eee8d5
|
||||
#foreground_dim = #888888
|
||||
background = rgba(0, 43, 54, 0.87)
|
||||
cursor = #93a1a1
|
||||
|
||||
# if unset, will reverse foreground and background
|
||||
#highlight = #839496
|
||||
|
||||
# colors from color0 to color254 can be set
|
||||
color0 = #073642
|
||||
color1 = #dc322f
|
||||
color2 = #859900
|
||||
color3 = #b58900
|
||||
color4 = #268bd2
|
||||
color5 = #d33682
|
||||
color6 = #2aa198
|
||||
color7 = #eee8d5
|
||||
color8 = #002b36
|
||||
color9 = #cb4b16
|
||||
color10 = #586e75
|
||||
color11 = #657b83
|
||||
color12 = #839496
|
||||
color13 = #6c71c4
|
||||
color14 = #93a1a1
|
||||
color15 = #fdf6e3
|
14
.gitconfig
Normal file
@ -0,0 +1,14 @@
|
||||
[user]
|
||||
name = Olivier DOSSMANN
|
||||
email = git@dossmann.net
|
||||
[alias]
|
||||
st = status
|
||||
[color]
|
||||
ui = true
|
||||
[push]
|
||||
default = matching
|
||||
[core]
|
||||
excludesfile = /home/od/.gitignore_global
|
||||
quotePath = false
|
||||
[commit]
|
||||
template = /home/od/.gitmessage.txt
|
94
.gitignore_global
Normal file
@ -0,0 +1,94 @@
|
||||
# Created by https://www.gitignore.io/
|
||||
|
||||
### Django ###
|
||||
*.log
|
||||
*.pot
|
||||
*.pyc
|
||||
__pycache__/
|
||||
local_settings.py
|
||||
db.sqlite3
|
||||
|
||||
### Virtual Env ###
|
||||
.env
|
||||
.venv
|
||||
.python-version
|
||||
|
||||
# If your build process includes running collectstatic, then you probably don't need or want to include staticfiles/
|
||||
# in your Git repository. Update and uncomment the following line accordingly.
|
||||
# <django-project-name>/staticfiles/
|
||||
|
||||
### VisualStudioCode ###
|
||||
.vscode
|
||||
.vscode/*
|
||||
!.vscode/settings.json
|
||||
!.vscode/tasks.json
|
||||
!.vscode/launch.json
|
||||
!.vscode/extensions.json
|
||||
.history
|
||||
|
||||
### PyCharm ###
|
||||
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
|
||||
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
|
||||
|
||||
# User-specific stuff:
|
||||
.idea/**/workspace.xml
|
||||
.idea/**/tasks.xml
|
||||
.idea/dictionaries
|
||||
|
||||
# Sensitive or high-churn files:
|
||||
.idea/**/dataSources/
|
||||
.idea/**/dataSources.ids
|
||||
.idea/**/dataSources.xml
|
||||
.idea/**/dataSources.local.xml
|
||||
.idea/**/sqlDataSources.xml
|
||||
.idea/**/dynamic.xml
|
||||
.idea/**/uiDesigner.xml
|
||||
|
||||
# Gradle:
|
||||
.idea/**/gradle.xml
|
||||
.idea/**/libraries
|
||||
|
||||
# CMake
|
||||
cmake-build-debug/
|
||||
|
||||
# Mongo Explorer plugin:
|
||||
.idea/**/mongoSettings.xml
|
||||
|
||||
## File-based project format:
|
||||
*.iws
|
||||
|
||||
## Plugin-specific files:
|
||||
|
||||
# IntelliJ
|
||||
/out/
|
||||
|
||||
# mpeltonen/sbt-idea plugin
|
||||
.idea_modules/
|
||||
|
||||
# JIRA plugin
|
||||
atlassian-ide-plugin.xml
|
||||
|
||||
# Cursive Clojure plugin
|
||||
.idea/replstate.xml
|
||||
|
||||
# Crashlytics plugin (for Android Studio and IntelliJ)
|
||||
com_crashlytics_export_strings.xml
|
||||
crashlytics.properties
|
||||
crashlytics-build.properties
|
||||
fabric.properties
|
||||
|
||||
### PyCharm Patch ###
|
||||
# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721
|
||||
|
||||
# *.iml
|
||||
# modules.xml
|
||||
# .idea/misc.xml
|
||||
# *.ipr
|
||||
|
||||
# Sonarlint plugin
|
||||
.idea/sonarlint
|
||||
|
||||
# Extra
|
||||
.idea/*
|
||||
|
||||
# End of https://www.gitignore.io/api/django,visualstudiocode,pycharm
|
15
.gitmessage.txt
Normal file
@ -0,0 +1,15 @@
|
||||
# the title begins with a verb, imperative mode
|
||||
# no trailing dot
|
||||
component: summarize changes in 50 char or less
|
||||
|
||||
# Focus on why you are making this change as opposed to how (the code
|
||||
# explains that).
|
||||
# Wrap line at 72 characters. Bullet points list is better, but full
|
||||
# paragraphs are possible too.
|
||||
* Adds your new feature.
|
||||
* Fixes an existing issue, may closes #issue.
|
||||
* Improves and existing feature.
|
||||
|
||||
# No `Signed-off-by` line anymore.
|
||||
# Multiple `Co-Authored-by` lines are allowed.
|
||||
Co-Authored-by: Olivier DOSSMANN <git@dossmann.net>
|
744
.p10k.zsh
Normal file
@ -0,0 +1,744 @@
|
||||
# Generated by Powerlevel10k configuration wizard on 2019-09-10 at 16:53 CEST.
|
||||
# Based on romkatv/powerlevel10k/config/p10k-lean.zsh, checksum 31124.
|
||||
# Wizard options: awesome-fontconfig + powerline, small icons, lean, 1 line, compact,
|
||||
# few icons, concise.
|
||||
# Type `p10k configure` to generate another config.
|
||||
#
|
||||
# Config for Powerlevel10k with lean prompt style. Type `p10k configure` to generate
|
||||
# your own config based on it.
|
||||
#
|
||||
# Tip: Looking for a nice color? Here's a one-liner to print colormap.
|
||||
#
|
||||
# for i in {0..255}; do print -Pn "%${i}F${(l:3::0:)i}%f " ${${(M)$((i%8)):#7}:+$'\n'}; done
|
||||
|
||||
if [[ -o 'aliases' ]]; then
|
||||
# Temporarily disable aliases.
|
||||
'builtin' 'unsetopt' 'aliases'
|
||||
local p10k_lean_restore_aliases=1
|
||||
else
|
||||
local p10k_lean_restore_aliases=0
|
||||
fi
|
||||
|
||||
() {
|
||||
emulate -L zsh
|
||||
setopt no_unset extended_glob
|
||||
zmodload zsh/langinfo
|
||||
if [[ ${langinfo[CODESET]:-} != (utf|UTF)(-|)8 ]]; then
|
||||
local LC_ALL=${${(@M)$(locale -a):#*.(utf|UTF)(-|)8}[1]:-en_US.UTF-8}
|
||||
fi
|
||||
|
||||
# Unset all configuration options. This allows you to apply configiguration changes without
|
||||
# restarting zsh. Edit ~/.p10k.zsh and type `source ~/.p10k.zsh`.
|
||||
unset -m 'POWERLEVEL9K_*'
|
||||
|
||||
# The list of segments shown on the left. Fill it with the most important segments.
|
||||
typeset -g POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(
|
||||
# os_icon # os identifier
|
||||
prompt_char # prompt symbol
|
||||
)
|
||||
|
||||
# The list of segments shown on the right. Fill it with less important segments.
|
||||
# Right prompt on the last prompt line (where you are typing your commands) gets
|
||||
# automatically hidden when the input line reaches it. Right prompt above the
|
||||
# last prompt line gets hidden if it would overlap with left prompt.
|
||||
typeset -g POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(
|
||||
status # exit code of the last command
|
||||
command_execution_time # duration of the last command
|
||||
dir # current directory
|
||||
vcs # git status
|
||||
background_jobs # presence of background jobs
|
||||
virtualenv # python virtual environment (https://docs.python.org/3/library/venv.html)
|
||||
# anaconda # conda environment (https://conda.io/)
|
||||
pyenv # python environment (https://github.com/pyenv/pyenv)
|
||||
# nodenv # node.js version from nodenv (https://github.com/nodenv/nodenv)
|
||||
# nvm # node.js version from nvm (https://github.com/nvm-sh/nvm)
|
||||
# nodeenv # node.js environment (https://github.com/ekalinin/nodeenv)
|
||||
# node_version # node.js version
|
||||
# go_version # go version (https://golang.org)
|
||||
# rust_version # rustc version (https://www.rust-lang.org)
|
||||
# rbenv # ruby version from rbenv (https://github.com/rbenv/rbenv)
|
||||
# rvm # ruby version from rvm (https://rvm.io)
|
||||
# kubecontext # current kubernetes context (https://kubernetes.io/)
|
||||
# terraform # terraform workspace (https://www.terraform.io)
|
||||
# context # user@host
|
||||
# nordvpn # nordvpn connection status, linux only (https://nordvpn.com/)
|
||||
# ranger # ranger shell (https://github.com/ranger/ranger)
|
||||
context
|
||||
# ram # free RAM
|
||||
# load # CPU load
|
||||
# time # current time
|
||||
# public_ip # public IP address
|
||||
# proxy # system-wide http/https/ftp proxy
|
||||
# battery # internal battery
|
||||
# example # example user-defined segment (see prompt_example function below)
|
||||
)
|
||||
|
||||
# Basic style options that define the overall look of your prompt. You probably don't want to
|
||||
# change them.
|
||||
typeset -g POWERLEVEL9K_BACKGROUND= # transparent background
|
||||
typeset -g POWERLEVEL9K_{LEFT,RIGHT}_{LEFT,RIGHT}_WHITESPACE= # no surrounding whitespace
|
||||
typeset -g POWERLEVEL9K_{LEFT,RIGHT}_SUBSEGMENT_SEPARATOR=' ' # separate segments with a space
|
||||
typeset -g POWERLEVEL9K_{LEFT,RIGHT}_SEGMENT_SEPARATOR= # no end-of-line symbol
|
||||
|
||||
# To disable default icons for all segments, set POWERLEVEL9K_VISUAL_IDENTIFIER_EXPANSION=''.
|
||||
#
|
||||
# To enable default icons for all segments, don't define POWERLEVEL9K_VISUAL_IDENTIFIER_EXPANSION
|
||||
# or set it to '${P9K_VISUAL_IDENTIFIER}'.
|
||||
#
|
||||
# To remove spaces from all default icons, set POWERLEVEL9K_VISUAL_IDENTIFIER_EXPANSION
|
||||
# to '${P9K_VISUAL_IDENTIFIER// }'. You'll know that you you need this option if you see extra
|
||||
# spaces after icons.
|
||||
#
|
||||
# To enable default icons for one segment (e.g., dir), set
|
||||
# POWERLEVEL9K_DIR_VISUAL_IDENTIFIER_EXPANSION='${P9K_VISUAL_IDENTIFIER}'.
|
||||
#
|
||||
# To assign a specific icon to one segment (e.g., dir), set
|
||||
# POWERLEVEL9K_DIR_VISUAL_IDENTIFIER_EXPANSION='⭐'.
|
||||
#
|
||||
# To assign a specific icon to a segment in a given state (e.g., dir in state NOT_WRITABLE),
|
||||
# set POWERLEVEL9K_DIR_NOT_WRITABLE_VISUAL_IDENTIFIER_EXPANSION='⭐'.
|
||||
#
|
||||
# Note: You can use $'\u2B50' instead of '⭐'. It's especially convenient when specifying
|
||||
# icons that your text editor cannot render. Don't forget to put $ and use single quotes when
|
||||
# defining icons via Unicode codepoints.
|
||||
#
|
||||
# Note: Many default icons cannot be displayed with system fonts. You'll need to install a
|
||||
# capable font to use them. See POWERLEVEL9K_MODE below.
|
||||
typeset -g POWERLEVEL9K_VISUAL_IDENTIFIER_EXPANSION='${P9K_VISUAL_IDENTIFIER// }'
|
||||
|
||||
# This option makes a difference only when default icons are enabled for all or some prompt
|
||||
# segments (see POWERLEVEL9K_VISUAL_IDENTIFIER_EXPANSION above). LOCK_ICON can be printed as
|
||||
# $'\uE0A2', $'\uE138' or $'\uF023' depending on POWERLEVEL9K_MODE. The correct value of this
|
||||
# parameter depends on the provider of the font your terminal is using.
|
||||
#
|
||||
# Font Provider | POWERLEVEL9K_MODE
|
||||
# ---------------------------------+-------------------
|
||||
# Powerline | powerline
|
||||
# Font Awesome | awesome-fontconfig
|
||||
# Adobe Source Code Pro | awesome-fontconfig
|
||||
# Source Code Pro | awesome-fontconfig
|
||||
# Awesome-Terminal Fonts (regular) | awesome-fontconfig
|
||||
# Awesome-Terminal Fonts (patched) | awesome-patched
|
||||
# Nerd Fonts | nerdfont-complete
|
||||
# Other | compatible
|
||||
#
|
||||
# If this looks overwhelming, either stick with a preinstalled system font and set
|
||||
# POWERLEVEL9K_MODE=compatible, or install the recommended Powerlevel10k font from
|
||||
# https://github.com/romkatv/powerlevel10k/#recommended-meslo-nerd-font-patched-for-powerlevel10k
|
||||
# and set POWERLEVEL9K_MODE=nerdfont-complete.
|
||||
typeset -g POWERLEVEL9K_MODE=awesome-fontconfig
|
||||
|
||||
# When set to true, icons appear before content on both sides of the prompt. When set
|
||||
# to false, icons go after content. If empty or not set, icons go before content in the left
|
||||
# prompt and after content in the right prompt.
|
||||
#
|
||||
# You can also override it for a specific segment:
|
||||
#
|
||||
# POWERLEVEL9K_STATUS_ICON_BEFORE_CONTENT=false
|
||||
#
|
||||
# Or for a specific segment in specific state:
|
||||
#
|
||||
# POWERLEVEL9K_DIR_NOT_WRITABLE_ICON_BEFORE_CONTENT=false
|
||||
typeset -g POWERLEVEL9K_ICON_BEFORE_CONTENT=true
|
||||
|
||||
# Add an empty line before each prompt.
|
||||
typeset -g POWERLEVEL9K_PROMPT_ADD_NEWLINE=false
|
||||
|
||||
# Ruler, a.k.a. the horizontal line before each prompt. If you set it to true, you'll
|
||||
# probably want to set POWERLEVEL9K_PROMPT_ADD_NEWLINE=false above and
|
||||
# POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_CHAR=' ' below.
|
||||
typeset -g POWERLEVEL9K_SHOW_RULER=false
|
||||
typeset -g POWERLEVEL9K_RULER_CHAR='─' # reasonable alternative: '·'
|
||||
typeset -g POWERLEVEL9K_RULER_FOREGROUND=240
|
||||
|
||||
# Filler between left and right prompt on the first prompt line. You can set it to '·' or '─'
|
||||
# to make it easier to see the alignment between left and right prompt and to separate prompt
|
||||
# from command output. It serves the same purpose as ruler (see above) without increasing
|
||||
# the number of prompt lines. You'll probably want to set POWERLEVEL9K_SHOW_RULER=false
|
||||
# if using this. You might also like POWERLEVEL9K_PROMPT_ADD_NEWLINE=false for more compact
|
||||
# prompt.
|
||||
typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_CHAR=' '
|
||||
if [[ $POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_CHAR != ' ' ]]; then
|
||||
# The color of the filler.
|
||||
typeset -g POWERLEVEL9K_MULTILINE_FIRST_PROMPT_GAP_FOREGROUND=240
|
||||
# Add a space between the end of left prompt and the filler.
|
||||
typeset -g POWERLEVEL9K_LEFT_PROMPT_LAST_SEGMENT_END_SYMBOL=' '
|
||||
# Add a space between the filler and the start of right prompt.
|
||||
typeset -g POWERLEVEL9K_RIGHT_PROMPT_FIRST_SEGMENT_START_SYMBOL=' '
|
||||
# Start filler from the edge of the screen if there are no left segments on the first line.
|
||||
typeset -g POWERLEVEL9K_EMPTY_LINE_LEFT_PROMPT_FIRST_SEGMENT_END_SYMBOL='%{%}'
|
||||
# End filler on the edge of the screen if there are no right segments on the first line.
|
||||
typeset -g POWERLEVEL9K_EMPTY_LINE_RIGHT_PROMPT_FIRST_SEGMENT_START_SYMBOL='%{%}'
|
||||
fi
|
||||
|
||||
#################################[ os_icon: os identifier ]##################################
|
||||
# OS identifier color.
|
||||
typeset -g POWERLEVEL9K_OS_ICON_FOREGROUND=
|
||||
# Make the icon bold.
|
||||
typeset -g POWERLEVEL9K_OS_ICON_CONTENT_EXPANSION='%B${P9K_CONTENT// }'
|
||||
|
||||
################################[ prompt_char: prompt symbol ]################################
|
||||
if [[ $UID != 0 || $EUID != 0 ]]; then
|
||||
# Orange prompt symbol if the last command succeeded.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_OK_{VIINS,VICMD,VIVIS}_FOREGROUND=208
|
||||
# Pink prompt symbol if the last command failed.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_ERROR_{VIINS,VICMD,VIVIS}_FOREGROUND=161
|
||||
else
|
||||
# Pink prompt symbol if the last command succeeded.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_OK_{VIINS,VICMD,VIVIS}_FOREGROUND=207
|
||||
# Red prompt symbol if the last command failed.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_ERROR_{VIINS,VICMD,VIVIS}_FOREGROUND=197
|
||||
fi
|
||||
# Default prompt symbol.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIINS_CONTENT_EXPANSION='❯'
|
||||
# Prompt symbol in command vi mode.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VICMD_CONTENT_EXPANSION='❮'
|
||||
# Prompt symbol in visual vi mode.
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_{OK,ERROR}_VIVIS_CONTENT_EXPANSION='Ⅴ'
|
||||
typeset -g POWERLEVEL9K_PROMPT_CHAR_LEFT_PROMPT_LAST_SEGMENT_END_SYMBOL=''
|
||||
|
||||
##################################[ dir: current directory ]##################################
|
||||
# Default current directory color.
|
||||
typeset -g POWERLEVEL9K_DIR_FOREGROUND=007
|
||||
# If directory is too long, shorten some of its segments to the shortest possible unique
|
||||
# prefix. The shortened directory can be tab-completed to the original.
|
||||
typeset -g POWERLEVEL9K_SHORTEN_STRATEGY=truncate_from_right
|
||||
# Replace removed segment suffixes with this symbol.
|
||||
typeset -g POWERLEVEL9K_SHORTEN_DELIMITER=
|
||||
# Color of the shortened directory segments.
|
||||
typeset -g POWERLEVEL9K_DIR_SHORTENED_FOREGROUND=015
|
||||
# Color of the anchor directory segments. Anchor segments are never shortened. The first
|
||||
# segment is always an anchor.
|
||||
typeset -g POWERLEVEL9K_DIR_ANCHOR_FOREGROUND=39
|
||||
# Display anchor directory segments in bold.
|
||||
typeset -g POWERLEVEL9K_DIR_ANCHOR_BOLD=true
|
||||
# Don't shorten directories that contain any of these files. They are anchors.
|
||||
local anchor_files=(
|
||||
.bzr
|
||||
.citc
|
||||
.git
|
||||
.hg
|
||||
.node-version
|
||||
.python-version
|
||||
.ruby-version
|
||||
.shorten_folder_marker
|
||||
.svn
|
||||
.terraform
|
||||
CVS
|
||||
Cargo.toml
|
||||
composer.json
|
||||
go.mod
|
||||
package.json
|
||||
)
|
||||
typeset -g POWERLEVEL9K_SHORTEN_FOLDER_MARKER="(${(j:|:)anchor_files})"
|
||||
# Don't shorten this many last directory segments. They are anchors.
|
||||
typeset -g POWERLEVEL9K_SHORTEN_DIR_LENGTH=1
|
||||
# Shorten directory if it's longer than this even if there is space for it. The value can
|
||||
# be either absolute (e.g., '80') or a percentage of terminal width (e.g, '50%'). If empty,
|
||||
# directory will be shortened only when prompt doesn't fit.
|
||||
typeset -g POWERLEVEL9K_DIR_MAX_LENGTH=80
|
||||
# When `dir` segment is on the last prompt line, try to shorten it enough to leave at least this
|
||||
# many columns for typing commands.
|
||||
typeset -g POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS=40
|
||||
# When `dir` segment is on the last prompt line, try to shorten it enough to leave at least
|
||||
# COLUMNS * POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS_PCT * 0.01 columns for typing commands.
|
||||
typeset -g POWERLEVEL9K_DIR_MIN_COMMAND_COLUMNS_PCT=50
|
||||
# If set to true, embed a hyperlink into the directory. Useful for quickly
|
||||
# opening a directory in the file manager simply by clicking the link.
|
||||
# Can also be handy when the directory is shortened, as it allows you to see
|
||||
# the full directory that was used in previous commands.
|
||||
typeset -g POWERLEVEL9K_DIR_HYPERLINK=false
|
||||
|
||||
# Enable special styling for non-writable directories.
|
||||
typeset -g POWERLEVEL9K_DIR_SHOW_WRITABLE=true
|
||||
# Show this icon when the current directory is not writable. POWERLEVEL9K_DIR_SHOW_WRITABLE
|
||||
# above must be set to true for this parameter to have effect.
|
||||
# typeset -g POWERLEVEL9K_DIR_NOT_WRITABLE_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
# Custom prefix.
|
||||
# typeset -g POWERLEVEL9K_DIR_PREFIX='%fin '
|
||||
|
||||
# POWERLEVEL9K_DIR_CLASSES allows you to specify custom icons for different directories.
|
||||
# It must be an array with 3 * N elements. Each triplet consists of:
|
||||
#
|
||||
# 1. A pattern against which the current directory is matched. Matching is done with
|
||||
# extended_glob option enabled.
|
||||
# 2. Directory class for the purpose of styling.
|
||||
# 3. Icon.
|
||||
#
|
||||
# Triplets are tried in order. The first triplet whose pattern matches $PWD wins. If there
|
||||
# are no matches, the directory will have no icon.
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# typeset -g POWERLEVEL9K_DIR_CLASSES=(
|
||||
# '~/work(/*)#' WORK '(╯°□°)╯︵ ┻━┻'
|
||||
# '~(/*)#' HOME '⌂'
|
||||
# '*' DEFAULT '')
|
||||
#
|
||||
# With these settings, the current directory in the prompt may look like this:
|
||||
#
|
||||
# (╯°□°)╯︵ ┻━┻ ~/work/projects/important/urgent
|
||||
#
|
||||
# Or like this:
|
||||
#
|
||||
# ⌂ ~/best/powerlevel10k
|
||||
#
|
||||
# You can also set different colors for directories of different classes. Remember to override
|
||||
# FOREGROUND, SHORTENED_FOREGROUND and ANCHOR_FOREGROUND for every directory class that you wish
|
||||
# to have its own color.
|
||||
#
|
||||
# typeset -g POWERLEVEL9K_DIR_WORK_FOREGROUND=31
|
||||
# typeset -g POWERLEVEL9K_DIR_WORK_SHORTENED_FOREGROUND=103
|
||||
# typeset -g POWERLEVEL9K_DIR_WORK_ANCHOR_FOREGROUND=39
|
||||
#
|
||||
typeset -g POWERLEVEL9K_DIR_CLASSES=()
|
||||
|
||||
#####################################[ vcs: git status ]######################################
|
||||
# Branch icon. Set this parameter to '\uF126 ' for the popular Powerline branch icon.
|
||||
typeset -g POWERLEVEL9K_VCS_BRANCH_ICON=$'\uF126 '
|
||||
|
||||
# Untracked files icon. It's really a question mark, your font isn't broken.
|
||||
# Change the value of this parameter to show a different icon.
|
||||
typeset -g POWERLEVEL9K_VCS_UNTRACKED_ICON='?'
|
||||
|
||||
# Réduit à 25 la limite du nombre de caractère pour la branche
|
||||
typeset -g POWERLEVEL9K_VCS_SHORTEN_LENGTH=12
|
||||
typeset -g POWERLEVEL9K_VCS_SHORTEN_STRATEGY='truncate_from_right'
|
||||
typeset -g POWERLEVEL9K_VCS_SHORTEN_MIN_LENGTH=20
|
||||
|
||||
# Git status: feature:master#tag ⇣42⇡42 *42 merge ~42 +42 !42 ?42.
|
||||
#
|
||||
# You can edit the lines below to customize how Git status looks.
|
||||
#
|
||||
# VCS_STATUS parameters are set by gitstatus plugin. See reference:
|
||||
# https://github.com/romkatv/gitstatus/blob/master/gitstatus.plugin.zsh.
|
||||
local vcs=''
|
||||
# If on a branch...
|
||||
vcs+='${${VCS_STATUS_LOCAL_BRANCH:+%${POWERLEVEL9K_VCS_VISUAL_IDENTIFIER_COLOR}F'${(g::)POWERLEVEL9K_VCS_BRANCH_ICON}'%${POWERLEVEL9K_VCS_CLEAN_FOREGROUND}F'
|
||||
# Ajoute le nom du remote si différent de "origin" - Changer 75 par une autre couleur si besoin
|
||||
vcs+='${${VCS_STATUS_REMOTE_NAME:#origin}:+%75F${VCS_STATUS_REMOTE_NAME//\%/%%}/}%${POWERLEVEL9K_VCS_CLEAN_FOREGROUND}F'
|
||||
# If local branch name is at most 32 characters long, show it in full.
|
||||
# This is the equivalent of POWERLEVEL9K_VCS_SHORTEN_MIN_LENGTH=32.
|
||||
vcs+='${${${$(($#VCS_STATUS_LOCAL_BRANCH<=$(($POWERLEVEL9K_VCS_SHORTEN_MIN_LENGTH)))):#0}:+${VCS_STATUS_LOCAL_BRANCH//\%/%%}}'
|
||||
# If local branch name is over 32 characters long, show the first 12 … the last 12. The same as
|
||||
# POWERLEVEL9K_VCS_SHORTEN_LENGTH=12 with POWERLEVEL9K_VCS_SHORTEN_STRATEGY=truncate_middle.
|
||||
vcs+=':-${VCS_STATUS_LOCAL_BRANCH[1,$(($POWERLEVEL9K_VCS_SHORTEN_LENGTH))]//\%/%%}%28F…%${POWERLEVEL9K_VCS_CLEAN_FOREGROUND}F${VCS_STATUS_LOCAL_BRANCH[-$(($POWERLEVEL9K_VCS_SHORTEN_LENGTH)),-1]//\%/%%}}}'
|
||||
# '@72f5c8a' if not on a branch.
|
||||
vcs+=':-%f@%76F${VCS_STATUS_COMMIT[1,8]}}'
|
||||
# ':master' if the tracking branch name differs from local branch.
|
||||
# vcs+='${${VCS_STATUS_REMOTE_BRANCH:#$VCS_STATUS_LOCAL_BRANCH}:+%f:%76F${VCS_STATUS_REMOTE_BRANCH//\%/%%}}'
|
||||
# '#tag' if on a tag.
|
||||
vcs+='${VCS_STATUS_TAG:+%f %221F ${VCS_STATUS_TAG//\%/%%}}'
|
||||
# ⇣42 if behind the remote.
|
||||
vcs+='${${VCS_STATUS_COMMITS_BEHIND:#0}:+ %76F⇣${VCS_STATUS_COMMITS_BEHIND}}'
|
||||
# ⇡42 if ahead of the remote; no leading space if also behind the remote: ⇣42⇡42.
|
||||
# If you want '⇣42 ⇡42' instead, replace '${${(M)VCS_STATUS_COMMITS_BEHIND:#0}:+ }' with ' '.
|
||||
vcs+='${${VCS_STATUS_COMMITS_AHEAD:#0}:+${${(M)VCS_STATUS_COMMITS_BEHIND:#0}:+ }%76F⇡${VCS_STATUS_COMMITS_AHEAD}}'
|
||||
# *42 if have stashes.
|
||||
vcs+='${${VCS_STATUS_STASHES:#0}:+ %042F ${VCS_STATUS_STASHES}}'
|
||||
# 'merge' if the repo is in an unusual state.
|
||||
vcs+='${VCS_STATUS_ACTION:+ %${POWERLEVEL9K_PROMPT_CHAR_ERROR_VICMD_FOREGROUND}F${VCS_STATUS_ACTION//\%/%%}}'
|
||||
# ~42 if have merge conflicts.
|
||||
vcs+='${${VCS_STATUS_NUM_CONFLICTED:#0}:+ %${POWERLEVEL9K_PROMPT_CHAR_ERROR_VICMD_FOREGROUND}F~${VCS_STATUS_NUM_CONFLICTED}}'
|
||||
# +42 if have staged changes.
|
||||
vcs+='${${VCS_STATUS_NUM_STAGED:#0}:+ %${POWERLEVEL9K_VCS_MODIFIED_FOREGROUND}F ${VCS_STATUS_NUM_STAGED}}'
|
||||
# !42 if have unstaged changes.
|
||||
vcs+='${${VCS_STATUS_NUM_UNSTAGED:#0}:+ %${POWERLEVEL9K_VCS_MODIFIED_FOREGROUND}F!${VCS_STATUS_NUM_UNSTAGED}}'
|
||||
# ?42 if have untracked files. It's really a question mark, your font isn't broken.
|
||||
# See POWERLEVEL9K_VCS_UNTRACKED_ICON above if you want to use a different icon.
|
||||
# Remove the next line if you don't want to see untracked files at all.
|
||||
vcs+='${${VCS_STATUS_NUM_UNTRACKED:#0}:+ %${POWERLEVEL9K_VCS_UNTRACKED_FOREGROUND}F'${(g::)POWERLEVEL9K_VCS_UNTRACKED_ICON}'${VCS_STATUS_NUM_UNTRACKED}}'
|
||||
# If P9K_CONTENT is not empty, leave it unchanged. It's either "loading" or from vcs_info.
|
||||
vcs="\${P9K_CONTENT:-$vcs}"
|
||||
|
||||
# Disable the default Git status formatting.
|
||||
typeset -g POWERLEVEL9K_VCS_DISABLE_GITSTATUS_FORMATTING=true
|
||||
# Install our own Git status formatter.
|
||||
typeset -g POWERLEVEL9K_VCS_{CLEAN,UNTRACKED,MODIFIED}_CONTENT_EXPANSION=$vcs
|
||||
# When Git status is being refreshed asynchronously, display the last known repo status in grey.
|
||||
typeset -g POWERLEVEL9K_VCS_LOADING_CONTENT_EXPANSION=${${${vcs//\%f}//\%<->F}//\%F\{(\#|)[[:xdigit:]]#(\\|)\}}
|
||||
# Enable counters for staged, unstaged, etc.
|
||||
typeset -g POWERLEVEL9K_VCS_{STAGED,UNSTAGED,UNTRACKED,CONFLICTED,COMMITS_AHEAD,COMMITS_BEHIND}_MAX_NUM=-1
|
||||
|
||||
# Icon color.
|
||||
typeset -g POWERLEVEL9K_VCS_VISUAL_IDENTIFIER_COLOR=039
|
||||
# Custom icon.
|
||||
typeset -g POWERLEVEL9K_VCS_VISUAL_IDENTIFIER_EXPANSION=
|
||||
# Custom prefix.
|
||||
# typeset -g POWERLEVEL9K_VCS_PREFIX='%fon '
|
||||
|
||||
# Show status of repositories of these types. You can add svn and/or hg if you are
|
||||
# using them. If you do, your prompt may become slow even when your current directory
|
||||
# isn't in an svn or hg reposotiry.
|
||||
typeset -g POWERLEVEL9K_VCS_BACKENDS=(git)
|
||||
|
||||
typeset -g POWERLEVEL9K_VCS_LOADING_FOREGROUND=244
|
||||
# These settings are used for respositories other than Git or when gitstatusd fails and
|
||||
# Powerlevel10k has to fall back to using vcs_info.
|
||||
typeset -g POWERLEVEL9K_VCS_CLEAN_FOREGROUND=141
|
||||
typeset -g POWERLEVEL9K_VCS_UNTRACKED_FOREGROUND=203
|
||||
typeset -g POWERLEVEL9K_VCS_MODIFIED_FOREGROUND=204
|
||||
|
||||
##########################[ status: exit code of the last command ]###########################
|
||||
# Status on success. No content, just an icon.
|
||||
# Enable OK_PIPE, ERROR_PIPE and ERROR_SIGNAL status states to allow us to enable, disable and
|
||||
# style them independently from the regular OK and ERROR state.
|
||||
typeset -g POWERLEVEL9K_STATUS_EXTENDED_STATES=true
|
||||
|
||||
# Status on success. No content, just an icon. No need to show it if prompt_char is enabled as
|
||||
# it will signify success by turning green.
|
||||
typeset -g POWERLEVEL9K_STATUS_OK=false
|
||||
typeset -g POWERLEVEL9K_STATUS_OK_FOREGROUND=70
|
||||
typeset -g POWERLEVEL9K_STATUS_OK_VISUAL_IDENTIFIER_EXPANSION='✔'
|
||||
|
||||
# Status when some part of a pipe command fails but the overall exit status is zero. It may look
|
||||
# like this: 1|0.
|
||||
typeset -g POWERLEVEL9K_STATUS_OK_PIPE=true
|
||||
typeset -g POWERLEVEL9K_STATUS_OK_PIPE_FOREGROUND=70
|
||||
typeset -g POWERLEVEL9K_STATUS_OK_PIPE_VISUAL_IDENTIFIER_EXPANSION='✔'
|
||||
|
||||
# Status when it's just an error code (e.g., '1'). No need to show it if prompt_char is enabled as
|
||||
# it will signify error by turning red.
|
||||
typeset -g POWERLEVEL9K_STATUS_ERROR=false
|
||||
typeset -g POWERLEVEL9K_STATUS_ERROR_FOREGROUND=160
|
||||
typeset -g POWERLEVEL9K_STATUS_ERROR_VISUAL_IDENTIFIER_EXPANSION='↵'
|
||||
|
||||
# Status when the last command was terminated by a signal.
|
||||
typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL=true
|
||||
typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL_FOREGROUND=160
|
||||
# Use terse signal names: "INT" instead of "SIGINT(2)".
|
||||
typeset -g POWERLEVEL9K_STATUS_VERBOSE_SIGNAME=false
|
||||
typeset -g POWERLEVEL9K_STATUS_ERROR_SIGNAL_VISUAL_IDENTIFIER_EXPANSION='↵'
|
||||
|
||||
# Status when some part of a pipe command fails and the overall exit status is also non-zero.
|
||||
# It may look like this: 1|0.
|
||||
typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE=true
|
||||
typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE_FOREGROUND=160
|
||||
typeset -g POWERLEVEL9K_STATUS_ERROR_PIPE_VISUAL_IDENTIFIER_EXPANSION='↵'
|
||||
|
||||
###################[ command_execution_time: duration of the last command ]###################
|
||||
# Show duration of the last command if takes longer than this many seconds.
|
||||
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_THRESHOLD=3
|
||||
# Show this many fractional digits. Zero means round to seconds.
|
||||
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_PRECISION=0
|
||||
# Execution time color.
|
||||
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FOREGROUND=101
|
||||
# Duration format: 1d 2h 3m 4s.
|
||||
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_FORMAT='d h m s'
|
||||
# Custom icon.
|
||||
typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_VISUAL_IDENTIFIER_EXPANSION=
|
||||
# Custom prefix.
|
||||
# typeset -g POWERLEVEL9K_COMMAND_EXECUTION_TIME_PREFIX='%ftook '
|
||||
|
||||
#######################[ background_jobs: presence of background jobs ]#######################
|
||||
# Don't show the number of background jobs.
|
||||
typeset -g POWERLEVEL9K_BACKGROUND_JOBS_VERBOSE=false
|
||||
# Background jobs color.
|
||||
typeset -g POWERLEVEL9K_BACKGROUND_JOBS_FOREGROUND=70
|
||||
# Icon to show when there are background jobs.
|
||||
typeset -g POWERLEVEL9K_BACKGROUND_JOBS_VISUAL_IDENTIFIER_EXPANSION='${P9K_VISUAL_IDENTIFIER// }'
|
||||
|
||||
##########[ nordvpn: nordvpn connection status, linux only (https://nordvpn.com/) ]###########
|
||||
# NordVPN connection indicator color.
|
||||
typeset -g POWERLEVEL9K_NORDVPN_FOREGROUND=39
|
||||
# Hide NordVPN connection indicator when not connected.
|
||||
typeset -g POWERLEVEL9K_NORDVPN_{DISCONNECTED,CONNECTING,DISCONNECTING}_CONTENT_EXPANSION=
|
||||
typeset -g POWERLEVEL9K_NORDVPN_{DISCONNECTED,CONNECTING,DISCONNECTING}_VISUAL_IDENTIFIER_EXPANSION=
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_NORDVPN_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
#################[ ranger: ranger shell (https://github.com/ranger/ranger) ]##################
|
||||
# Ranger shell color.
|
||||
typeset -g POWERLEVEL9K_RANGER_FOREGROUND=178
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_RANGER_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
######################################[ ram: free RAM ]#######################################
|
||||
# RAM color.
|
||||
typeset -g POWERLEVEL9K_RAM_FOREGROUND=66
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_RAM_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
######################################[ load: CPU load ]######################################
|
||||
# Show average CPU load over this many last minutes. Valid values are 1, 5 and 15.
|
||||
typeset -g POWERLEVEL9K_LOAD_WHICH=5
|
||||
# Load color when load is under 50%.
|
||||
typeset -g POWERLEVEL9K_LOAD_NORMAL_FOREGROUND=66
|
||||
# Load color when load is between 50% and 70%.
|
||||
typeset -g POWERLEVEL9K_LOAD_WARNING_FOREGROUND=178
|
||||
# Load color when load is over 70%.
|
||||
typeset -g POWERLEVEL9K_LOAD_CRITICAL_FOREGROUND=166
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_LOAD_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
####################################[ context: user@host ]####################################
|
||||
# Default context color.
|
||||
local host_color=180
|
||||
case $HOST in
|
||||
lueur)
|
||||
host_color=204
|
||||
;;
|
||||
baloo | sam)
|
||||
host_color=220
|
||||
;;
|
||||
*)
|
||||
host_color=079
|
||||
;;
|
||||
esac
|
||||
typeset -g POWERLEVEL9K_CONTEXT_FOREGROUND=$host_color
|
||||
# Default context format: %n is username, %m is hostname.
|
||||
typeset -g POWERLEVEL9K_CONTEXT_TEMPLATE='%B%m%b'
|
||||
typeset -g POWERLEVEL9K_ALWAYS_SHOW_CONTEXT=true
|
||||
|
||||
# Context color when running with privileges.
|
||||
typeset -g POWERLEVEL9K_CONTEXT_ROOT_FOREGROUND=$host_color
|
||||
# Context format when running with privileges: %n is username, %m is hostname.
|
||||
typeset -g POWERLEVEL9K_CONTEXT_ROOT_TEMPLATE='%F{red}%n%F{$POWERLEVEL9K_CONTEXT_FOREGROUND}@%B%m%b'
|
||||
|
||||
# Don't show context unless running with privileges or in SSH.
|
||||
# typeset -g POWERLEVEL9K_CONTEXT_{DEFAULT,SUDO}_{CONTENT,VISUAL_IDENTIFIER}_EXPANSION=
|
||||
# Affiche la machine pour le context par défaut
|
||||
# typeset -g POWERLEVEL9K_CONTEXT_DEFAULT_CONTENT_EXPANSION='%m'
|
||||
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_CONTEXT_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
# Custom prefix.
|
||||
# typeset -g POWERLEVEL9K_CONTEXT_PREFIX='%fwith '
|
||||
|
||||
###[ virtualenv: python virtual environment (https://docs.python.org/3/library/venv.html) ]###
|
||||
# Python virtual environment color.
|
||||
typeset -g POWERLEVEL9K_VIRTUALENV_FOREGROUND=37
|
||||
# Don't show Python version next to the virtual environment name.
|
||||
typeset -g POWERLEVEL9K_VIRTUALENV_SHOW_PYTHON_VERSION=false
|
||||
# Separate environment name from Python version only with a space.
|
||||
typeset -g POWERLEVEL9K_VIRTUALENV_{LEFT,RIGHT}_DELIMITER=
|
||||
# Custom icon.
|
||||
typeset -g POWERLEVEL9K_VIRTUALENV_VISUAL_IDENTIFIER_EXPANSION='🐍'
|
||||
|
||||
#####################[ anaconda: conda environment (https://conda.io/) ]######################
|
||||
# Anaconda environment color.
|
||||
typeset -g POWERLEVEL9K_ANACONDA_FOREGROUND=37
|
||||
# Don't show Python version next to the anaconda environment name.
|
||||
typeset -g POWERLEVEL9K_ANACONDA_SHOW_PYTHON_VERSION=false
|
||||
# Separate environment name from Python version only with a space.
|
||||
typeset -g POWERLEVEL9K_ANACONDA_{LEFT,RIGHT}_DELIMITER=
|
||||
# Custom icon.
|
||||
typeset -g POWERLEVEL9K_ANACONDA_VISUAL_IDENTIFIER_EXPANSION='🐍'
|
||||
|
||||
################[ pyenv: python environment (https://github.com/pyenv/pyenv) ]################
|
||||
# Pyenv color.
|
||||
typeset -g POWERLEVEL9K_PYENV_FOREGROUND=37
|
||||
# Don't show the current Python version if it's the same as global.
|
||||
typeset -g POWERLEVEL9K_PYENV_PROMPT_ALWAYS_SHOW=false
|
||||
# Custom icon.
|
||||
typeset -g POWERLEVEL9K_PYENV_VISUAL_IDENTIFIER_EXPANSION='🐍'
|
||||
|
||||
##########[ nodenv: node.js version from nodenv (https://github.com/nodenv/nodenv) ]##########
|
||||
# Nodenv color.
|
||||
typeset -g POWERLEVEL9K_NODENV_FOREGROUND=70
|
||||
# Don't show node version if it's the same as global: $(nodenv version-name) == $(nodenv global).
|
||||
typeset -g POWERLEVEL9K_NODENV_PROMPT_ALWAYS_SHOW=false
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_NODENV_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
##############[ nvm: node.js version from nvm (https://github.com/nvm-sh/nvm) ]###############
|
||||
# Nvm color.
|
||||
typeset -g POWERLEVEL9K_NVM_FOREGROUND=70
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_NVM_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
############[ nodeenv: node.js environment (https://github.com/ekalinin/nodeenv) ]############
|
||||
# Nodeenv color.
|
||||
typeset -g POWERLEVEL9K_NODEENV_FOREGROUND=70
|
||||
# Don't show Node version next to the environment name.
|
||||
typeset -g POWERLEVEL9K_NODEENV_SHOW_NODE_VERSION=false
|
||||
# Separate environment name from Node version only with a space.
|
||||
typeset -g POWERLEVEL9K_NODEENV_{LEFT,RIGHT}_DELIMITER=
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_NODEENV_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
##############################[ node_version: node.js version ]###############################
|
||||
# Node version color.
|
||||
typeset -g POWERLEVEL9K_NODE_VERSION_FOREGROUND=70
|
||||
# Show node version only when in a directory tree containing package.json.
|
||||
typeset -g POWERLEVEL9K_NODE_VERSION_PROJECT_ONLY=true
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_NODE_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
#######################[ go_version: go version (https://golang.org) ]########################
|
||||
# Go version color.
|
||||
typeset -g POWERLEVEL9K_GO_VERSION_FOREGROUND=37
|
||||
# Show go version only when in a go project subdirectory.
|
||||
typeset -g POWERLEVEL9K_GO_VERSION_PROJECT_ONLY=true
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_GO_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
#################[ rust_version: rustc version (https://www.rust-lang.org) ]##################
|
||||
# Rust version color.
|
||||
typeset -g POWERLEVEL9K_RUST_VERSION_FOREGROUND=37
|
||||
# Show rust version only when in a rust project subdirectory.
|
||||
typeset -g POWERLEVEL9K_RUST_VERSION_PROJECT_ONLY=true
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_RUST_VERSION_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
#############[ rbenv: ruby version from rbenv (https://github.com/rbenv/rbenv) ]##############
|
||||
# Rbenv color.
|
||||
typeset -g POWERLEVEL9K_RBENV_FOREGROUND=168
|
||||
# Don't show ruby version if it's the same as global: $(rbenv version-name) == $(rbenv global).
|
||||
typeset -g POWERLEVEL9K_RBENV_PROMPT_ALWAYS_SHOW=false
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_RBENV_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
#######################[ rvm: ruby version from rvm (https://rvm.io) ]########################
|
||||
# Rvm color.
|
||||
typeset -g POWERLEVEL9K_RVM_FOREGROUND=168
|
||||
# Don't show @gemset at the end.
|
||||
typeset -g POWERLEVEL9K_RVM_SHOW_GEMSET=false
|
||||
# Don't show ruby- at the front.
|
||||
typeset -g POWERLEVEL9K_RVM_SHOW_PREFIX=false
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_RVM_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
#############[ kubecontext: current kubernetes context (https://kubernetes.io/) ]#############
|
||||
# Kubernetes context classes for the purpose of using different colors, icons and expansions with
|
||||
# different contexts.
|
||||
#
|
||||
# POWERLEVEL9K_KUBECONTEXT_CLASSES is an array with even number of elements. The first element
|
||||
# in each pair defines a pattern against which the current kubernetes context gets matched.
|
||||
# More specifically, it's P9K_CONTENT prior to the application of context expansion (see below)
|
||||
# that gets matched. If you unset all POWERLEVEL9K_KUBECONTEXT_*CONTENT_EXPANSION parameters,
|
||||
# you'll see this value in your prompt. The second element of each pair in
|
||||
# POWERLEVEL9K_KUBECONTEXT_CLASSES defines the context class. Patterns are tried in order. The
|
||||
# first match wins.
|
||||
#
|
||||
# For example, given these settings:
|
||||
#
|
||||
# typeset -g POWERLEVEL9K_KUBECONTEXT_CLASSES=(
|
||||
# '*prod*' PROD
|
||||
# '*test*' TEST
|
||||
# '*' DEFAULT)
|
||||
#
|
||||
# If your current kubernetes context is "deathray-testing/default", its class is TEST
|
||||
# because "deathray-testing/default" doesn't match the pattern '*prod*' but does match '*test*'.
|
||||
#
|
||||
# You can define different colors, icons and content expansions for different classes:
|
||||
#
|
||||
# typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_FOREGROUND=28
|
||||
# typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
# typeset -g POWERLEVEL9K_KUBECONTEXT_TEST_CONTENT_EXPANSION='> ${P9K_CONTENT} <'
|
||||
typeset -g POWERLEVEL9K_KUBECONTEXT_CLASSES=(
|
||||
# '*prod*' PROD # These values are examples that are unlikely
|
||||
# '*test*' TEST # to match your needs. Customize them as needed.
|
||||
'*' DEFAULT)
|
||||
typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_FOREGROUND=134
|
||||
# typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
# Use POWERLEVEL9K_KUBECONTEXT_CONTENT_EXPANSION to specify the content displayed by kubecontext
|
||||
# segment. Parameter expansions are very flexible and fast, too. See reference:
|
||||
# http://zsh.sourceforge.net/Doc/Release/Expansion.html#Parameter-Expansion.
|
||||
#
|
||||
# Within the expansion the following parameters are always available:
|
||||
#
|
||||
# - P9K_CONTENT The content that would've been displayed if there was no content
|
||||
# expansion defined.
|
||||
# - P9K_KUBECONTEXT_NAME The current context's name. Corresponds to column NAME in the
|
||||
# output of `kubectl config get-contexts`.
|
||||
# - P9K_KUBECONTEXT_CLUSTER The current context's cluster. Corresponds to column CLUSTER in the
|
||||
# output of `kubectl config get-contexts`.
|
||||
# - P9K_KUBECONTEXT_NAMESPACE The current context's namespace. Corresponds to column NAMESPACE
|
||||
# in the output of `kubectl config get-contexts`. If there is no
|
||||
# namespace, the parameter is set to "default".
|
||||
#
|
||||
# If the context points to Google Kubernetes Engine (GKE) or Elastic Kubernetes Service (EKS),
|
||||
# the following extra parameters are available:
|
||||
#
|
||||
# - P9K_KUBECONTEXT_CLOUD_NAME Either "gke" or "eks".
|
||||
# - P9K_KUBECONTEXT_CLOUD_ACCOUNT Account/project ID.
|
||||
# - P9K_KUBECONTEXT_CLOUD_ZONE Availability zone.
|
||||
# - P9K_KUBECONTEXT_CLOUD_CLUSTER Cluster.
|
||||
#
|
||||
# P9K_KUBECONTEXT_CLOUD_* parameters are derived from P9K_KUBECONTEXT_CLUSTER. For example,
|
||||
# if P9K_KUBECONTEXT_CLUSTER is "gke_my-account_us-east1-a_my-cluster-01":
|
||||
#
|
||||
# - P9K_KUBECONTEXT_CLOUD_NAME=gke
|
||||
# - P9K_KUBECONTEXT_CLOUD_ACCOUNT=my-account
|
||||
# - P9K_KUBECONTEXT_CLOUD_ZONE=us-east1-a
|
||||
# - P9K_KUBECONTEXT_CLOUD_CLUSTER=my-cluster-01
|
||||
#
|
||||
# If P9K_KUBECONTEXT_CLUSTER is "arn:aws:eks:us-east-1:123456789012:cluster/my-cluster-01":
|
||||
#
|
||||
# - P9K_KUBECONTEXT_CLOUD_NAME=eks
|
||||
# - P9K_KUBECONTEXT_CLOUD_ACCOUNT=123456789012
|
||||
# - P9K_KUBECONTEXT_CLOUD_ZONE=us-east-1
|
||||
# - P9K_KUBECONTEXT_CLOUD_CLUSTER=my-cluster-01
|
||||
typeset -g POWERLEVEL9K_KUBECONTEXT_DEFAULT_CONTENT_EXPANSION=
|
||||
# Show P9K_KUBECONTEXT_CLOUD_CLUSTER if it's not empty and fall back to P9K_KUBECONTEXT_NAME.
|
||||
POWERLEVEL9K_KUBECONTEXT_DEFAULT_CONTENT_EXPANSION+='${P9K_KUBECONTEXT_CLOUD_CLUSTER:-${P9K_KUBECONTEXT_NAME}}'
|
||||
# Append the current context's namespace if it's not "default".
|
||||
POWERLEVEL9K_KUBECONTEXT_DEFAULT_CONTENT_EXPANSION+='${${:-/$P9K_KUBECONTEXT_NAMESPACE}:#/default}'
|
||||
|
||||
# Custom prefix.
|
||||
# typeset -g POWERLEVEL9K_KUBECONTEXT_PREFIX='%fat '
|
||||
|
||||
################[ terraform: terraform workspace (https://www.terraform.io) ]#################
|
||||
# Terraform color.
|
||||
typeset -g POWERLEVEL9K_TERRAFORM_FOREGROUND=38
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_TERRAFORM_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
###############################[ public_ip: public IP address ]###############################
|
||||
# Public IP color.
|
||||
typeset -g POWERLEVEL9K_PUBLIC_IP_FOREGROUND=94
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_PUBLIC_IP_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
#########################[ proxy: system-wide http/https/ftp proxy ]##########################
|
||||
# Proxy color.
|
||||
typeset -g POWERLEVEL9K_PROXY_FOREGROUND=68
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_PROXY_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
################################[ battery: internal battery ]#################################
|
||||
# Show battery in red when it's below this level and not connected to power supply.
|
||||
typeset -g POWERLEVEL9K_BATTERY_LOW_THRESHOLD=20
|
||||
typeset -g POWERLEVEL9K_BATTERY_LOW_FOREGROUND=160
|
||||
# Show battery in green when it's charging or fully charged.
|
||||
typeset -g POWERLEVEL9K_BATTERY_{CHARGING,CHARGED}_FOREGROUND=70
|
||||
# Show battery in yellow when it's discharging.
|
||||
typeset -g POWERLEVEL9K_BATTERY_DISCONNECTED_FOREGROUND=178
|
||||
# Battery pictograms going from low to high level of charge.
|
||||
typeset -g POWERLEVEL9K_BATTERY_STAGES=('%K{232}▁' '%K{232}▂' '%K{232}▃' '%K{232}▄' '%K{232}▅' '%K{232}▆' '%K{232}▇' '%K{232}█')
|
||||
# Don't show the remaining time to charge/discharge.
|
||||
typeset -g POWERLEVEL9K_BATTERY_VERBOSE=false
|
||||
|
||||
####################################[ time: current time ]####################################
|
||||
# Current time color.
|
||||
typeset -g POWERLEVEL9K_TIME_FOREGROUND=66
|
||||
# Format for the current time: 09:51:02. See `man 3 strftime`.
|
||||
typeset -g POWERLEVEL9K_TIME_FORMAT='%D{%H:%M:%S}'
|
||||
# If set to true, time will update when you hit enter. This way prompts for the past
|
||||
# commands will contain the start times of their commands as opposed to the default
|
||||
# behavior where they contain the end times of their preceding commands.
|
||||
typeset -g POWERLEVEL9K_TIME_UPDATE_ON_COMMAND=false
|
||||
# Custom icon.
|
||||
typeset -g POWERLEVEL9K_TIME_VISUAL_IDENTIFIER_EXPANSION=
|
||||
# Custom prefix.
|
||||
# typeset -g POWERLEVEL9K_TIME_PREFIX='%fat '
|
||||
|
||||
# Example of a user-defined prompt segment. Function prompt_example will be called on every
|
||||
# prompt if `example` prompt segment is added to POWERLEVEL9K_LEFT_PROMPT_ELEMENTS or
|
||||
# POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS. It displays an icon and orange text greeting the user.
|
||||
#
|
||||
# Type `p10k help segment` for documentation and a more sophisticated example.
|
||||
function prompt_example() {
|
||||
p10k segment -f 208 -i '⭐' -t 'hello, %n'
|
||||
}
|
||||
|
||||
# User-defined prompt segments can be customized the same way as built-in segments.
|
||||
typeset -g POWERLEVEL9K_EXAMPLE_FOREGROUND=208
|
||||
typeset -g POWERLEVEL9K_EXAMPLE_VISUAL_IDENTIFIER_EXPANSION='${P9K_VISUAL_IDENTIFIER}'
|
||||
}
|
||||
|
||||
(( ! p10k_lean_restore_aliases )) || setopt aliases
|
||||
'builtin' 'unset' 'p10k_lean_restore_aliases'
|
20
.profile
Normal file
@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env bash
|
||||
# This file provide user specific environment used as fallback from several tools
|
||||
|
||||
# set PATH so it includes user's private bin if it exists
|
||||
if [ -d "$HOME/bin" ] ; then
|
||||
export PATH=$HOME/bin:$PATH
|
||||
fi
|
||||
|
||||
# Search a TERMINAL for i3
|
||||
for term in kitty termite qterminal urxvt rxvt-unicode sakura gnome-terminal; do
|
||||
if [[ -n `which $term` ]]; then
|
||||
export TERMINAL=`which $term`
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
# Permit DBUS to be launched
|
||||
if [ "$0" = "/usr/sbin/lightdm-session" -a "$DESKTOP_SESSION" = "i3" ]; then
|
||||
export $(gnome-keyring-daemon -s)
|
||||
fi
|
87
.tmux.conf
Normal file
@ -0,0 +1,87 @@
|
||||
# Main configuration taken from
|
||||
#+ http://zanshin.net/2013/09/05/my-tmux-configuration/
|
||||
|
||||
# use UTF8
|
||||
#set -g utf8
|
||||
#set-window-option -g utf8 on
|
||||
|
||||
# make tmux display things in 256 colors
|
||||
set -g default-terminal "tmux-256color"
|
||||
|
||||
# set scrollback history to 10000 (10k)
|
||||
set -g history-limit 10000
|
||||
|
||||
# set Ctrl-a as the default prefix key combination
|
||||
# and unbind C-b to free it up
|
||||
set -g prefix C-a
|
||||
unbind C-b
|
||||
|
||||
# use send-prefix to pass C-a through to application
|
||||
bind C-a send-prefix
|
||||
|
||||
# set window and pane index to 1 (0 by default)
|
||||
set-option -g base-index 1
|
||||
setw -g pane-base-index 1
|
||||
|
||||
## explicitly disable mouse control
|
||||
#setw -g mode-mouse off
|
||||
#set -g mouse-select-pane off
|
||||
#set -g mouse-resize-pane off
|
||||
#set -g mouse-select-window off
|
||||
|
||||
# ---------------------
|
||||
# Copy & Paste
|
||||
# ---------------------
|
||||
|
||||
# use vim keybindings in copy mode
|
||||
setw -g mode-keys vi
|
||||
|
||||
# ----------------------
|
||||
# set some pretty colors
|
||||
# ----------------------
|
||||
# set pane colors - hilight the active pane
|
||||
set-option -g pane-border-fg colour235 #base02
|
||||
set-option -g pane-active-border-fg colour240 #base01
|
||||
|
||||
# colorize messages in the command line
|
||||
set-option -g message-bg black #base02
|
||||
set-option -g message-fg brightred #orange
|
||||
|
||||
# ----------------------
|
||||
# Status Bar
|
||||
# -----------------------
|
||||
set-option -g status on # turn the status bar on
|
||||
#set -g status-utf8 on # set utf-8 for the status bar
|
||||
set -g status-interval 5 # set update frequencey (default 15 seconds)
|
||||
set -g status-justify centre # center window list for clarity
|
||||
# set-option -g status-position top # position the status bar at top of screen
|
||||
|
||||
# visual notification of activity in other windows
|
||||
setw -g monitor-activity on
|
||||
set -g visual-activity on
|
||||
|
||||
# set color for status bar
|
||||
set-option -g status-bg colour235 #base02
|
||||
set-option -g status-fg yellow #yellow
|
||||
set-option -g status-attr dim
|
||||
|
||||
# set window list colors - red for active and cyan for inactive
|
||||
set-window-option -g window-status-fg default
|
||||
set-window-option -g window-status-bg colour236
|
||||
set-window-option -g window-status-attr dim
|
||||
|
||||
set-window-option -g window-status-current-fg brightred #orange
|
||||
set-window-option -g window-status-current-bg colour236
|
||||
set-window-option -g window-status-current-attr bright
|
||||
|
||||
# status bar
|
||||
#set -g status-right "#[fg=blue]#S #I:#P #[fg=yellow]:: %d %b %Y #[fg=green]:: %l:%M %p :: #(date -u | awk '{print $4}')::"
|
||||
set -g status-right "#[fg=green]#(~/bin/battery) | #[fg=yellow]#(~/bin/current_date)"
|
||||
set -g status-left "#{pane_current_path}"
|
||||
set -g status-left-length 30
|
||||
|
||||
# Activer mon layout par defaut
|
||||
new -s projets -n dev
|
||||
splitw -v -p 50 -t dev
|
||||
neww -n discussion
|
||||
selectw -t dev
|
42
.xinitrc
Normal file
@ -0,0 +1,42 @@
|
||||
#!/bin/sh
|
||||
|
||||
userresources=$HOME/.Xresources
|
||||
usermodmap=$HOME/.Xmodmap
|
||||
sysresources=/etc/X11/xinit/.Xresources
|
||||
sysmodmap=/etc/X11/xinit/.Xmodmap
|
||||
|
||||
# merge in defaults and keymaps
|
||||
|
||||
if [ -f $sysresources ]; then
|
||||
xrdb -merge $sysresources
|
||||
fi
|
||||
|
||||
if [ -f $sysmodmap ]; then
|
||||
xmodmap $sysmodmap
|
||||
fi
|
||||
|
||||
if [ -f "$userresources" ]; then
|
||||
xrdb -merge "$userresources"
|
||||
fi
|
||||
|
||||
if [ -f "$usermodmap" ]; then
|
||||
xmodmap "$usermodmap"
|
||||
fi
|
||||
|
||||
# start some nice programs
|
||||
|
||||
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
|
||||
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
|
||||
[ -x "$f" ] && . "$f"
|
||||
done
|
||||
unset f
|
||||
fi
|
||||
|
||||
#i3 &
|
||||
#xclock -geometry 50x50-1+1 &
|
||||
#xterm -geometry 80x50+494+51 &
|
||||
#xterm -geometry 80x20+494-0 &
|
||||
#exec xterm -geometry 80x66+0+0 -name login
|
||||
#exec $1
|
||||
|
||||
exec i3
|
321
.zsh/completion/_docker-compose
Normal file
@ -0,0 +1,321 @@
|
||||
#compdef docker-compose
|
||||
|
||||
# Description
|
||||
# -----------
|
||||
# zsh completion for docker-compose
|
||||
# https://github.com/sdurrheimer/docker-compose-zsh-completion
|
||||
# -------------------------------------------------------------------------
|
||||
# Version
|
||||
# -------
|
||||
# 0.1.0
|
||||
# -------------------------------------------------------------------------
|
||||
# Authors
|
||||
# -------
|
||||
# * Steve Durrheimer <s.durrheimer@gmail.com>
|
||||
# -------------------------------------------------------------------------
|
||||
# Inspiration
|
||||
# -----------
|
||||
# * @albers docker-compose bash completion script
|
||||
# * @felixr docker zsh completion script : https://github.com/felixr/docker-zsh-completion
|
||||
# -------------------------------------------------------------------------
|
||||
|
||||
# For compatibility reasons, Compose and therefore its completion supports several
|
||||
# stack compositon files as listed here, in descending priority.
|
||||
# Support for these filenames might be dropped in some future version.
|
||||
__docker-compose_compose_file() {
|
||||
local file
|
||||
for file in docker-compose.y{,a}ml fig.y{,a}ml ; do
|
||||
[ -e $file ] && {
|
||||
echo $file
|
||||
return
|
||||
}
|
||||
done
|
||||
echo docker-compose.yml
|
||||
}
|
||||
|
||||
# Extracts all service names from docker-compose.yml.
|
||||
___docker-compose_all_services_in_compose_file() {
|
||||
local already_selected
|
||||
local -a services
|
||||
already_selected=$(echo ${words[@]} | tr " " "|")
|
||||
awk -F: '/^[a-zA-Z0-9]/{print $1}' "${compose_file:-$(__docker-compose_compose_file)}" 2>/dev/null | grep -Ev "$already_selected"
|
||||
}
|
||||
|
||||
# All services, even those without an existing container
|
||||
__docker-compose_services_all() {
|
||||
services=$(___docker-compose_all_services_in_compose_file)
|
||||
_alternative "args:services:($services)"
|
||||
}
|
||||
|
||||
# All services that have an entry with the given key in their docker-compose.yml section
|
||||
___docker-compose_services_with_key() {
|
||||
local already_selected
|
||||
local -a buildable
|
||||
already_selected=$(echo ${words[@]} | tr " " "|")
|
||||
# flatten sections to one line, then filter lines containing the key and return section name.
|
||||
awk '/^[a-zA-Z0-9]/{printf "\n"};{printf $0;next;}' "${compose_file:-$(__docker-compose_compose_file)}" 2>/dev/null | awk -F: -v key=": +$1:" '$0 ~ key {print $1}' 2>/dev/null | grep -Ev "$already_selected"
|
||||
}
|
||||
|
||||
# All services that are defined by a Dockerfile reference
|
||||
__docker-compose_services_from_build() {
|
||||
buildable=$(___docker-compose_services_with_key build)
|
||||
_alternative "args:buildable services:($buildable)"
|
||||
}
|
||||
|
||||
# All services that are defined by an image
|
||||
__docker-compose_services_from_image() {
|
||||
pullable=$(___docker-compose_services_with_key image)
|
||||
_alternative "args:pullable services:($pullable)"
|
||||
}
|
||||
|
||||
__docker-compose_get_services() {
|
||||
local kind expl
|
||||
declare -a running stopped lines args services
|
||||
|
||||
docker_status=$(docker ps > /dev/null 2>&1)
|
||||
if [ $? -ne 0 ]; then
|
||||
_message "Error! Docker is not running."
|
||||
return 1
|
||||
fi
|
||||
|
||||
kind=$1
|
||||
shift
|
||||
[[ $kind = (stopped|all) ]] && args=($args -a)
|
||||
|
||||
lines=(${(f)"$(_call_program commands docker ps ${args})"})
|
||||
services=(${(f)"$(_call_program commands docker-compose 2>/dev/null ${compose_file:+-f $compose_file} ${compose_project:+-p $compose_project} ps -q)"})
|
||||
|
||||
# Parse header line to find columns
|
||||
local i=1 j=1 k header=${lines[1]}
|
||||
declare -A begin end
|
||||
while (( $j < ${#header} - 1 )) {
|
||||
i=$(( $j + ${${header[$j,-1]}[(i)[^ ]]} - 1))
|
||||
j=$(( $i + ${${header[$i,-1]}[(i) ]} - 1))
|
||||
k=$(( $j + ${${header[$j,-1]}[(i)[^ ]]} - 2))
|
||||
begin[${header[$i,$(($j-1))]}]=$i
|
||||
end[${header[$i,$(($j-1))]}]=$k
|
||||
}
|
||||
lines=(${lines[2,-1]})
|
||||
|
||||
# Container ID
|
||||
local line s name
|
||||
local -a names
|
||||
for line in $lines; do
|
||||
if [[ $services == *"${line[${begin[CONTAINER ID]},${end[CONTAINER ID]}]%% ##}"* ]]; then
|
||||
names=(${(ps:,:)${${line[${begin[NAMES]},-1]}%% *}})
|
||||
for name in $names; do
|
||||
s="${${name%_*}#*_}:${(l:15:: :::)${${line[${begin[CREATED]},${end[CREATED]}]/ ago/}%% ##}}"
|
||||
s="$s, ${line[${begin[CONTAINER ID]},${end[CONTAINER ID]}]%% ##}"
|
||||
s="$s, ${${${line[$begin[IMAGE],$end[IMAGE]]}/:/\\:}%% ##}"
|
||||
if [[ ${line[${begin[STATUS]},${end[STATUS]}]} = Exit* ]]; then
|
||||
stopped=($stopped $s)
|
||||
else
|
||||
running=($running $s)
|
||||
fi
|
||||
done
|
||||
fi
|
||||
done
|
||||
|
||||
[[ $kind = (running|all) ]] && _describe -t services-running "running services" running
|
||||
[[ $kind = (stopped|all) ]] && _describe -t services-stopped "stopped services" stopped
|
||||
}
|
||||
|
||||
__docker-compose_stoppedservices() {
|
||||
__docker-compose_get_services stopped "$@"
|
||||
}
|
||||
|
||||
__docker-compose_runningservices() {
|
||||
__docker-compose_get_services running "$@"
|
||||
}
|
||||
|
||||
__docker-compose_services () {
|
||||
__docker-compose_get_services all "$@"
|
||||
}
|
||||
|
||||
__docker-compose_caching_policy() {
|
||||
oldp=( "$1"(Nmh+1) ) # 1 hour
|
||||
(( $#oldp ))
|
||||
}
|
||||
|
||||
__docker-compose_commands () {
|
||||
local cache_policy
|
||||
|
||||
zstyle -s ":completion:${curcontext}:" cache-policy cache_policy
|
||||
if [[ -z "$cache_policy" ]]; then
|
||||
zstyle ":completion:${curcontext}:" cache-policy __docker-compose_caching_policy
|
||||
fi
|
||||
|
||||
if ( [[ ${+_docker_compose_subcommands} -eq 0 ]] || _cache_invalid docker_compose_subcommands) \
|
||||
&& ! _retrieve_cache docker_compose_subcommands;
|
||||
then
|
||||
local -a lines
|
||||
lines=(${(f)"$(_call_program commands docker-compose 2>&1)"})
|
||||
_docker_compose_subcommands=(${${${lines[$((${lines[(i)Commands:]} + 1)),${lines[(I) *]}]}## #}/ ##/:})
|
||||
_store_cache docker_compose_subcommands _docker_compose_subcommands
|
||||
fi
|
||||
_describe -t docker-compose-commands "docker-compose command" _docker_compose_subcommands
|
||||
}
|
||||
|
||||
__docker-compose_subcommand () {
|
||||
local -a _command_args
|
||||
integer ret=1
|
||||
case "$words[1]" in
|
||||
(build)
|
||||
_arguments \
|
||||
'--help[Print usage]' \
|
||||
'--no-cache[Do not use cache when building the image]' \
|
||||
'*:services:__docker-compose_services_from_build' && ret=0
|
||||
;;
|
||||
(help)
|
||||
_arguments ':subcommand:__docker-compose_commands' && ret=0
|
||||
;;
|
||||
(kill)
|
||||
_arguments \
|
||||
'--help[Print usage]' \
|
||||
'-s[SIGNAL to send to the container. Default signal is SIGKILL.]:signal:_signals' \
|
||||
'*:running services:__docker-compose_runningservices' && ret=0
|
||||
;;
|
||||
(logs)
|
||||
_arguments \
|
||||
'--help[Print usage]' \
|
||||
'--no-color[Produce monochrome output.]' \
|
||||
'*:services:__docker-compose_services_all' && ret=0
|
||||
;;
|
||||
(migrate-to-labels)
|
||||
_arguments -A '-*' \
|
||||
'--help[Print usage]' \
|
||||
'(-):Recreate containers to add labels' && ret=0
|
||||
;;
|
||||
(port)
|
||||
_arguments \
|
||||
'--help[Print usage]' \
|
||||
'--protocol=-[tcp or udap (defaults to tcp)]:protocol:(tcp udp)' \
|
||||
'--index=-[index of the container if there are mutiple instances of a service (defaults to 1)]:index: ' \
|
||||
'1:running services:__docker-compose_runningservices' \
|
||||
'2:port:_ports' && ret=0
|
||||
;;
|
||||
(ps)
|
||||
_arguments \
|
||||
'--help[Print usage]' \
|
||||
'-q[Only display IDs]' \
|
||||
'*:services:__docker-compose_services_all' && ret=0
|
||||
;;
|
||||
(pull)
|
||||
_arguments \
|
||||
'--help[Print usage]' \
|
||||
'*:services:__docker-compose_services_from_image' && ret=0
|
||||
;;
|
||||
(rm)
|
||||
_arguments \
|
||||
'(-f --force)'{-f,--force}"[Don't ask to confirm removal]" \
|
||||
'--help[Print usage]' \
|
||||
'-v[Remove volumes associated with containers]' \
|
||||
'*:stopped services:__docker-compose_stoppedservices' && ret=0
|
||||
;;
|
||||
(run)
|
||||
_arguments \
|
||||
'-d[Detached mode: Run container in the background, print new container name.]' \
|
||||
'--entrypoint[Overwrite the entrypoint of the image.]:entry point: ' \
|
||||
'*-e[KEY=VAL Set an environment variable (can be used multiple times)]:environment variable KEY=VAL: ' \
|
||||
'--help[Print usage]' \
|
||||
'(-u --user)'{-u,--user=-}'[Run as specified username or uid]:username or uid:_users' \
|
||||
"--no-deps[Don't start linked services.]" \
|
||||
'--rm[Remove container after run. Ignored in detached mode.]' \
|
||||
"--service-ports[Run command with the service's ports enabled and mapped to the host.]" \
|
||||
'-T[Disable pseudo-tty allocation. By default `docker-compose run` allocates a TTY.]' \
|
||||
'(-):services:__docker-compose_services' \
|
||||
'(-):command: _command_names -e' \
|
||||
'*::arguments: _normal' && ret=0
|
||||
;;
|
||||
(scale)
|
||||
_arguments \
|
||||
'--help[Print usage]' \
|
||||
'*:running services:__docker-compose_runningservices' && ret=0
|
||||
;;
|
||||
(start)
|
||||
_arguments \
|
||||
'--help[Print usage]' \
|
||||
'*:stopped services:__docker-compose_stoppedservices' && ret=0
|
||||
;;
|
||||
(stop|restart)
|
||||
_arguments \
|
||||
'--help[Print usage]' \
|
||||
'(-t --timeout)'{-t,--timeout}"[Specify a shutdown timeout in seconds. (default: 10)]:seconds: " \
|
||||
'*:running services:__docker-compose_runningservices' && ret=0
|
||||
;;
|
||||
(up)
|
||||
_arguments \
|
||||
'-d[Detached mode: Run containers in the background, print new container names.]' \
|
||||
'--help[Print usage]' \
|
||||
'--no-color[Produce monochrome output.]' \
|
||||
"--no-deps[Don't start linked services.]" \
|
||||
"--no-recreate[If containers already exist, don't recreate them.]" \
|
||||
"--force-recreate[Recreate containers even if their configuration and image haven't changed]" \
|
||||
"--no-build[Don't build an image, even if it's missing]" \
|
||||
'(-t --timeout)'{-t,--timeout}"[Specify a shutdown timeout in seconds. (default: 10)]:seconds: " \
|
||||
'*:services:__docker-compose_services_all' && ret=0
|
||||
;;
|
||||
(version)
|
||||
_arguments \
|
||||
'--help[Print usage]' \
|
||||
"--short[Shows only Compose's version number.]" && ret=0
|
||||
;;
|
||||
(*)
|
||||
_message 'Unknown sub command'
|
||||
esac
|
||||
|
||||
return ret
|
||||
}
|
||||
|
||||
_docker-compose () {
|
||||
# Support for subservices, which allows for `compdef _docker docker-shell=_docker_containers`.
|
||||
# Based on /usr/share/zsh/functions/Completion/Unix/_git without support for `ret`.
|
||||
if [[ $service != docker-compose ]]; then
|
||||
_call_function - _$service
|
||||
return
|
||||
fi
|
||||
|
||||
local curcontext="$curcontext" state line ret=1
|
||||
typeset -A opt_args
|
||||
|
||||
_arguments -C \
|
||||
'(- :)'{-h,--help}'[Get help]' \
|
||||
'--verbose[Show more output]' \
|
||||
'(- :)'{-v,--version}'[Print version and exit]' \
|
||||
'(-f --file)'{-f,--file}'[Specify an alternate docker-compose file (default: docker-compose.yml)]:file:_files -g "*.yml"' \
|
||||
'(-p --project-name)'{-p,--project-name}'[Specify an alternate project name (default: directory name)]:project name:' \
|
||||
'(-): :->command' \
|
||||
'(-)*:: :->option-or-argument' && ret=0
|
||||
|
||||
local counter=1
|
||||
#local compose_file compose_project
|
||||
while [ $counter -lt ${#words[@]} ]; do
|
||||
case "${words[$counter]}" in
|
||||
-f|--file)
|
||||
(( counter++ ))
|
||||
compose_file="${words[$counter]}"
|
||||
;;
|
||||
-p|--project-name)
|
||||
(( counter++ ))
|
||||
compose_project="${words[$counter]}"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
(( counter++ ))
|
||||
done
|
||||
|
||||
case $state in
|
||||
(command)
|
||||
__docker-compose_commands && ret=0
|
||||
;;
|
||||
(option-or-argument)
|
||||
curcontext=${curcontext%:*:*}:docker-compose-$words[1]:
|
||||
__docker-compose_subcommand && ret=0
|
||||
;;
|
||||
esac
|
||||
|
||||
return ret
|
||||
}
|
||||
|
||||
_docker-compose "$@"
|
8
.zshenv
Normal file
@ -0,0 +1,8 @@
|
||||
typeset -U PATH path
|
||||
path=("$HOME/.local/bin" "$HOME/bin" "$path[@]")
|
||||
export PATH
|
||||
|
||||
# Autocomplètement supplémentaire (Docker)
|
||||
if [ -d "$HOME/.zsh/completion" ] ; then
|
||||
fpath=(~/.zsh/completion $fpath)
|
||||
fi
|
175
.zshrc
Normal file
@ -0,0 +1,175 @@
|
||||
# If you come from bash you might have to change your $PATH.
|
||||
# export PATH=$HOME/bin:/usr/local/bin:$PATH
|
||||
|
||||
# Path to your oh-my-zsh installation.
|
||||
export ZSH="${HOME}/.oh-my-zsh"
|
||||
|
||||
# Set name of the theme to load --- if set to "random", it will
|
||||
# load a random theme each time oh-my-zsh is loaded, in which case,
|
||||
# to know which specific one was loaded, run: echo $RANDOM_THEME
|
||||
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
|
||||
ZSH_THEME="powerlevel10k/powerlevel10k"
|
||||
|
||||
# Set list of themes to pick from when loading at random
|
||||
# Setting this variable when ZSH_THEME=random will cause zsh to load
|
||||
# a theme from this variable instead of looking in ~/.oh-my-zsh/themes/
|
||||
# If set to an empty array, this variable will have no effect.
|
||||
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
||||
|
||||
# Uncomment the following line to use case-sensitive completion.
|
||||
# CASE_SENSITIVE="true"
|
||||
|
||||
# Uncomment the following line to use hyphen-insensitive completion.
|
||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||
# HYPHEN_INSENSITIVE="true"
|
||||
|
||||
# Uncomment the following line to disable bi-weekly auto-update checks.
|
||||
# DISABLE_AUTO_UPDATE="true"
|
||||
|
||||
# Uncomment the following line to automatically update without prompting.
|
||||
# DISABLE_UPDATE_PROMPT="true"
|
||||
|
||||
# Uncomment the following line to change how often to auto-update (in days).
|
||||
# export UPDATE_ZSH_DAYS=13
|
||||
|
||||
# Uncomment the following line if pasting URLs and other text is messed up.
|
||||
# DISABLE_MAGIC_FUNCTIONS=true
|
||||
|
||||
# Uncomment the following line to disable colors in ls.
|
||||
# DISABLE_LS_COLORS="true"
|
||||
|
||||
# Uncomment the following line to disable auto-setting terminal title.
|
||||
# DISABLE_AUTO_TITLE="true"
|
||||
|
||||
# Uncomment the following line to enable command auto-correction.
|
||||
# ENABLE_CORRECTION="true"
|
||||
|
||||
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||
# COMPLETION_WAITING_DOTS="true"
|
||||
|
||||
# Uncomment the following line if you want to disable marking untracked files
|
||||
# under VCS as dirty. This makes repository status check for large repositories
|
||||
# much, much faster.
|
||||
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
||||
|
||||
# Uncomment the following line if you want to change the command execution time
|
||||
# stamp shown in the history command output.
|
||||
# You can set one of the optional three formats:
|
||||
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||
# or set a custom format using the strftime function format specifications,
|
||||
# see 'man strftime' for details.
|
||||
# HIST_STAMPS="mm/dd/yyyy"
|
||||
|
||||
# Would you like to use another custom folder than $ZSH/custom?
|
||||
# ZSH_CUSTOM=/path/to/new-custom-folder
|
||||
|
||||
# Which plugins would you like to load?
|
||||
# Standard plugins can be found in ~/.oh-my-zsh/plugins/*
|
||||
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
|
||||
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||
# Add wisely, as too many plugins slow down shell startup.
|
||||
plugins=(git httpie pass pip pyenv sudo virtualenvwrapper wd)
|
||||
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
# powerlevel10k configuration
|
||||
POWERLEVEL9K_SHORTEN_DIR_LENGTH=1
|
||||
POWERLEVEL9K_SHORTEN_DELIMITER=""
|
||||
POWERLEVEL9K_SHORTEN_STRATEGY="truncate_from_right"
|
||||
|
||||
# User configuration
|
||||
export PAGER=most
|
||||
export BROWSER=elinks
|
||||
export SSH_ASKPASS=qt4-ssh-askpass
|
||||
export AUTEUR="Olivier DOSSMANN"
|
||||
export DEFAULT_USER="od"
|
||||
export WORKON_HOME=~/.virtualenvs
|
||||
source /usr/bin/virtualenvwrapper.sh
|
||||
|
||||
# You may need to manually set your language environment
|
||||
export LANG=fr_FR.UTF-8
|
||||
|
||||
# Preferred editor for local and remote sessions
|
||||
if [[ -n $SSH_CONNECTION ]]; then
|
||||
export EDITOR='vim'
|
||||
else
|
||||
export EDITOR='nvim'
|
||||
fi
|
||||
|
||||
# Enlève le prompt de droite après avoir appuyé sur Entrée
|
||||
setopt transient_rprompt
|
||||
|
||||
# Compilation flags
|
||||
# export ARCHFLAGS="-arch x86_64"
|
||||
|
||||
# Set personal aliases, overriding those provided by oh-my-zsh libs,
|
||||
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
|
||||
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
|
||||
# For a full list of active aliases, run `alias`.
|
||||
#
|
||||
# Example aliases
|
||||
# alias zshconfig="mate ~/.zshrc"
|
||||
# alias ohmyzsh="mate ~/.oh-my-zsh"
|
||||
alias e="${EDITOR}"
|
||||
alias vi="${EDITOR}"
|
||||
alias mem='free -mt'
|
||||
alias df='df -hT'
|
||||
alias ls='exa'
|
||||
alias ll='exa -l'
|
||||
alias l='exa -F'
|
||||
alias rgrep='rg --no-ignore'
|
||||
export GREP_COLORS='ms=01;33:mc=01;33:s1=:cx=:fn=37;ln=32:bn=32:se=36'
|
||||
alias diff='colordiff'
|
||||
alias dotfiles='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'
|
||||
# évite de faire des erreurs
|
||||
alias rm='rm -i'
|
||||
alias cp='cp -i'
|
||||
alias grep='grep --color'
|
||||
# requêtes
|
||||
alias https='http --verify=no --default-scheme=https'
|
||||
# pytest
|
||||
alias pyt='pipenv run pytest -vvs --no-cov --disable-warnings'
|
||||
alias pytc='pipenv run pytest -vvs --disable-warnings --cov-report=xml:cov.xml'
|
||||
|
||||
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
||||
[[ -f ~/.p10k.zsh ]] && source ~/.p10k.zsh
|
||||
|
||||
# Connexion automatique
|
||||
mkdir -p "${HOME}/etc/ssh";
|
||||
function ssh-procure-launch-agent {
|
||||
eval `ssh-agent -s -a ~/etc/ssh/ssh-agent-socket`;
|
||||
ssh-add;
|
||||
}
|
||||
|
||||
if [ ! $SSH_AGENT_PID ]; then
|
||||
if [ -e ~/etc/ssh/ssh-agent-socket ] ; then
|
||||
SSH_AGENT_PID=`ps -fC ssh-agent |grep 'etc/ssh/ssh-agent-socket' |sed -r 's/^\S+\s+(\S+).*$/\1/'`;
|
||||
if [[ $SSH_AGENT_PID =~ [0-9]+ ]]; then
|
||||
# in this case the agent has already been launched and we are just attaching to it.
|
||||
##++ It should check that this pid is actually active & belongs to an ssh instance
|
||||
export SSH_AGENT_PID;
|
||||
SSH_AUTH_SOCK=~/etc/ssh/ssh-agent-socket; export SSH_AUTH_SOCK;
|
||||
else
|
||||
# in this case there is no agent running, so the socket file is left over from a graceless agent termination.
|
||||
rm ~/etc/ssh/ssh-agent-socket;
|
||||
ssh-procure-launch-agent;
|
||||
fi;
|
||||
else
|
||||
ssh-procure-launch-agent;
|
||||
fi;
|
||||
fi;
|
||||
|
||||
# Start X automatically
|
||||
if systemctl -q is-active graphical.target && [[ ! $DISPLAY && $XDG_VTNR -eq 1 ]]; then
|
||||
exec startx
|
||||
fi
|
||||
|
||||
# Launch nvm possibilities (for javascript environment)
|
||||
case $HOST in
|
||||
lueur | baloo | sam)
|
||||
:
|
||||
;;
|
||||
*)
|
||||
source /usr/share/nvm/init-nvm.sh
|
||||
;;
|
||||
esac
|
154
README.md
Normal file
@ -0,0 +1,154 @@
|
||||
# Les fichiers de configuration d'Olivier
|
||||
|
||||
Cf. https://medium.com/toutsbrasil/how-to-manage-your-dotfiles-with-git-f7aeed8adf8b
|
||||
et https://news.ycombinator.com/item?id=11070797
|
||||
|
||||
La première fois ça donne :
|
||||
|
||||
```bash
|
||||
git init --bare $HOME/.dotfiles
|
||||
alias dotfiles='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'
|
||||
dotfiles config --local status.showUntrackedFiles no
|
||||
```
|
||||
|
||||
et on utilise la commande `dotfiles` (inclure dans .zshrc) pour ajouter des fichiers :
|
||||
|
||||
```bash
|
||||
dotfiles add .zshrc
|
||||
```
|
||||
|
||||
Les autres fois :
|
||||
|
||||
```bash
|
||||
git clone --bare https://github.com/USERNAME/dotfiles.git $HOME/.dotfiles
|
||||
alias dotfiles='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'
|
||||
dotfiles checkout
|
||||
source ~/.zshrc
|
||||
```
|
||||
|
||||
Ce qui relance zsh pour rendre la commande `dotfiles` active !
|
||||
|
||||
## Description
|
||||
|
||||
Quelques fichiers de configuration possibles pour des outils quotidiens tels que :
|
||||
|
||||
* Multiplexeur
|
||||
* Éditeur
|
||||
* Serveur graphique
|
||||
* Interpréteur de commande
|
||||
* etc.
|
||||
|
||||
D'autres viendront au fur et à mesure.
|
||||
|
||||
## Dépendances
|
||||
|
||||
Sont nécessaires :
|
||||
|
||||
* colordiff
|
||||
* dunst
|
||||
* elinks
|
||||
* exa
|
||||
* gartoon-redux (https://www.gnome-look.org/content/show.php?content=74841) : icônes mode cartoon :)
|
||||
* git-core
|
||||
* htop
|
||||
* kitty + ttf-fira-code (AUR) pour les fontes avec ligatures
|
||||
* mlocate
|
||||
* most
|
||||
* i3wm-gaps
|
||||
* redshift
|
||||
* ripgrep
|
||||
* tmux
|
||||
* trizen
|
||||
* ttf-dejavu
|
||||
* vim + neovim
|
||||
* vim-airline + powerline-fonts (pour VIM)
|
||||
* xscreensaver
|
||||
* zsh + oh-my-zsh (Cf. https://github.com/robbyrussell/oh-my-zsh) + powerlevel10k (Cf. https://github.com/romkatv/powerlevel10k#oh-my-zsh)
|
||||
|
||||
## Cas de ZSH
|
||||
|
||||
```bash
|
||||
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
|
||||
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k
|
||||
cp dotfiles/zshrc ~/.zshrc
|
||||
cp dotfiles/p10k.zsh ~/.p10k.zsh
|
||||
```
|
||||
|
||||
## Cas d'i3
|
||||
|
||||
Nécessite :
|
||||
|
||||
* .profile pour rendre disponible $HOME/bin
|
||||
* .Xresources
|
||||
|
||||
Dépendances :
|
||||
|
||||
* gksu (pour éteindre/redémarrer le système à partir de polybar)
|
||||
* scrot
|
||||
* feh
|
||||
* i3-gaps (à la place d'i3)
|
||||
* rofi (pour le menu de lancement)
|
||||
* compton (pour la transparence et les ombres des fenêtres)
|
||||
* polybar (à la place de la barre d'état)
|
||||
* ttf-font-awesome-4 (pour afficher des icônes dans la barre d'état)
|
||||
* (optionnel) network-manager-applet (pour la configuration wifi)
|
||||
* pavucontrol (gestion du son)
|
||||
* wireless_tools pour l'affichage wifi dans polybar
|
||||
* clipit (presse-papier du bureau)
|
||||
* hamster-time-tracker (enregistrement des durées de travail)
|
||||
* httpie
|
||||
* nvm (pour zshrc qui demande cet outil)
|
||||
* dunst (pour notification bureau)
|
||||
|
||||
## À Configurer (avec un script bash ou autre)
|
||||
|
||||
* .Xdefaults (nécessaire que pour urxvt)
|
||||
* .Xresources (thème dark solarized pour X)
|
||||
* .gitconfig
|
||||
* .gitignore_global
|
||||
* .gitmessage.txt
|
||||
* .i3status.conf
|
||||
* .profile
|
||||
* .tmux.conf
|
||||
* .vimrc
|
||||
* .xinitrc
|
||||
* .zprofile
|
||||
* .zsh
|
||||
* .zshenv
|
||||
* .zshrc
|
||||
* .p10k.zsh
|
||||
* [optionnel] environnement openbox
|
||||
* dossier .config
|
||||
* dossier bin
|
||||
* dossier zsh
|
||||
* dossier wallpapers
|
||||
|
||||
Clavier FR avec la commande suivante :
|
||||
|
||||
```
|
||||
localectl --no-convert set-x11-keymap fr,fr pc104 oss,bepo grp:alt_shift_toggle
|
||||
```
|
||||
|
||||
## Autologin
|
||||
|
||||
Cf. https://wiki.archlinux.org/index.php/Getty#Automatic_login_to_virtual_console
|
||||
|
||||
## Configuration de Git
|
||||
|
||||
```bash
|
||||
git config --global commit.template ~/.gitmessage.txt
|
||||
```
|
||||
|
||||
## Selfie de la caméra avec mpv
|
||||
|
||||
```bash
|
||||
mpv av://v4l2:/dev/video0
|
||||
```
|
||||
|
||||
puis on appuie sur la touche **[s]**.
|
||||
|
||||
## Liens utiles
|
||||
|
||||
* https://dotfiles.github.io/
|
||||
* https://github.com/svetlyak40wt/dotfiler
|
||||
* https://gist.github.com/NeoTheFox/afd26413899d6e0431f88546027144a6 (config kitty)
|
5
TODO
Normal file
@ -0,0 +1,5 @@
|
||||
* ajouter configuration vscode
|
||||
* Ajouter Fira Code (Cf. https://github.com/tonsky/FiraCode)
|
||||
* Ajouter script d'installation des ttf Fira Code dans ~/.local/share/fonts + fc-cache -f
|
||||
* configurer vscode pour utiliser FiraCode
|
||||
* faire un test TRAVIS avec un archlinux (ou debian/ubuntu) et copier la configuration + lancer un shell pour savoir si ça plante
|
After Width: | Height: | Size: 1.7 MiB |
BIN
wallpapers/Anime-Couples-in-Rain-Pics-HD.jpg
Normal file
After Width: | Height: | Size: 1022 KiB |
BIN
wallpapers/Kissing-Anime-Couples-Wallpapers-HD.jpg
Normal file
After Width: | Height: | Size: 509 KiB |
BIN
wallpapers/Romantic-Anime-Couples-Images-Free-Download.jpg
Normal file
After Width: | Height: | Size: 782 KiB |
BIN
wallpapers/Romantic-Anime-Couples-Pictures-HD.jpg
Normal file
After Width: | Height: | Size: 415 KiB |
BIN
wallpapers/Romantic-Anime-Couples-Wallpapers.jpg
Normal file
After Width: | Height: | Size: 276 KiB |
BIN
wallpapers/Sad-Romantic-Couples-Images-Wallpapers.jpg
Normal file
After Width: | Height: | Size: 163 KiB |
BIN
wallpapers/anime-and-manga-beautiful-couple-with-sakura.jpg
Normal file
After Width: | Height: | Size: 554 KiB |
BIN
wallpapers/couple_pretty_anime_girl_sweet_beauty_nice.jpg
Normal file
After Width: | Height: | Size: 613 KiB |
BIN
wallpapers/hijiri_byakuren_touhou_drawn_by_aibivy.jpg
Normal file
After Width: | Height: | Size: 273 KiB |