This commit is contained in:
Rikuoh Tsujitani 2023-08-17 14:14:00 +09:00
commit b3fcc22364
28 changed files with 3498 additions and 0 deletions

49
.Xresources Normal file
View file

@ -0,0 +1,49 @@
!! Import colorscheme
#define S_foreground #cacacc
#define S_background #1C1E27
#define S_black #3C3E47
#define S_red #E4436F
#define S_green #24e39d
#define S_yellow #EDA685
#define S_blue #2095B4
#define S_magenta #B367CF
#define S_cyan #00A5AF
#define S_lightgrey #b5b5ba
#define S_darkgrey #6C6F93
#define S_darkred #D95882
#define S_darkgreen #68DDC4
#define S_darkyellow #E8AEAA
#define S_darkblue #64A4BF
#define S_darkmagenta #B382CF
#define S_darkcyan #54AEB8
#define S_white #cacacc
!! Set colors
*background: S_background
*foreground: S_foreground
*color0: S_black
*color8: S_darkgrey
*color1: S_darkred
*color9: S_red
*color2: S_darkgreen
*color10: S_green
*color3: S_darkyellow
*color11: S_yellow
*color4: S_darkblue
*color12: S_blue
*color5: S_darkmagenta
*color13: S_magenta
*color6: S_darkcyan
*color14: S_cyan
*color7: S_lightgrey
*color15: S_white
!! Set DPI
Xft.dpi: 140
Xft.auohint: 0
Xft.lcdfilter: lcddefault
Xft.hintstyle: hintfull
Xft.antialias: 1
Xft.rgba: rgb
Xcursor.size: 32

79
.alacritty.yml Normal file
View file

@ -0,0 +1,79 @@
# シェル
shell:
program: /usr/bin/zsh
args:
- --login
# カーソル
cursor:
style:
shape: Underline
blinking: Always
unfocused_hollow: false
blink_interval: 470
# タブスペース
tabspaces: 4
# ウインドウ
window:
opacity: 0.95
padding:
x: 0
y: 0
dynamic_padding: false
# フォント
font:
size: 13
normal:
family: 'UDEV Gothic 35NFLG'
style: Regular
bold:
family: 'UDEV Gothic 35NFLG'
style: Bold
italic:
family: 'UDEV Gothic 35NFLG'
style: Italic
bold_italic:
family: 'UDEV Gothic 35NFLG'
style: Bold Italic
# 環境変数
env:
TERM: alacritty
# Colors (Horizon Dark)
colors:
# Primary colors
primary:
background: '0x1c1e26'
foreground: '0xe0e0e0'
# Cursor
cursor:
cursor: '0x00ff00'
vi_mode_cursor:
cursor: '0x00ff00'
# Normal colors
normal:
black: '0x16161c'
red: '0xe95678'
green: '0x29d398'
yellow: '0xfab795'
blue: '0x26bbd9'
magenta: '0xee64ac'
cyan: '0x59e1e3'
white: '0xd5d8da'
# Bright colors
bright:
black: '0x5b5858'
red: '0xec6a88'
green: '0x3fdaa4'
yellow: '0xfbc3a7'
blue: '0x3fc4de'
magenta: '0xf075b5'
cyan: '0x6be4e6'
white: '0xd5d8da'

19
.gtkrc-2.0 Normal file
View file

@ -0,0 +1,19 @@
# DO NOT EDIT! This file will be overwritten by LXAppearance.
# Any customization should be done in ~/.gtkrc-2.0.mine instead.
include "/home/riq0h/.gtkrc-2.0.mine"
gtk-theme-name="Breeze"
gtk-icon-theme-name="Qogir"
gtk-font-name="Noto Sans CJK JP 11"
gtk-cursor-theme-name="Qogir"
gtk-cursor-theme-size=0
gtk-toolbar-style=GTK_TOOLBAR_TEXT
gtk-toolbar-icon-size=GTK_ICON_SIZE_SMALL_TOOLBAR
gtk-button-images=0
gtk-menu-images=0
gtk-enable-event-sounds=0
gtk-enable-input-feedback-sounds=0
gtk-xft-antialias=1
gtk-xft-hinting=1
gtk-xft-hintstyle="hintfull"
gtk-xft-rgba="rgb"

2
.profile Normal file
View file

@ -0,0 +1,2 @@
export PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/riq0h/.fzf/bin:/home/riq0h/.local/share/gem/ruby/3.0.0/bin:/home/riq0h/go/bin"
[ "$XDG_CURRENT_DESKTOP" = "KDE" ] || [ "$XDG_CURRENT_DESKTOP" = "GNOME" ] || export QT_QPA_PLATFORMTHEME="qt5ct"

114
.tmux.conf Normal file
View file

@ -0,0 +1,114 @@
# prefixキーをM-aに変更する
set -g prefix M-a
# M-bのキーバインドを解除する
unbind M-b
# マウス操作を有効にする
set-option -g mouse on
# デフォルトシェルの設定
set-option -g default-shell /bin/zsh
set-option -g default-command /bin/zsh
# キーストロークのディレイを減らす
set -sg escape-time 0
# ウィンドウのインデックスを1から始める
set -g base-index 1
# ペインのインデックスを1から始める
set-window-option -g pane-base-index 1
# 設定ファイルをリロードする
bind-key r source-file ~/.tmux.conf \; display "Reloaded."
# M-a*2でtmux内のプログラムにM-aを送る
bind-key M-a send-prefix
# ウインドウ操作
bind-key -n M-s split-window -v -c "#{pane_current_path}"
bind-key -n M-v split-window -h -c "#{pane_current_path}"
bind-key -n M-Left select-pane -L
bind-key -n M-Right select-pane -R
bind-key -n M-Up select-pane -U
bind-key -n M-Down select-pane -D
bind-key -n M-w new-window
bind-key -n M-Tab select-window -t :+
bind-key -n M-1 select-window -t 1
bind-key -n M-2 select-window -t 2
bind-key -n M-3 select-window -t 3
bind-key -n M-4 select-window -t 4
bind-key -n M-5 select-window -t 5
bind-key -n M-6 select-window -t 6
bind-key -n M-7 select-window -t 7
bind-key -n M-8 select-window -t 8
bind-key -n M-9 select-window -t 9
bind-key -n M-h select-pane -L
bind-key -n M-l select-pane -R
bind-key -n M-j select-pane -D
bind-key -n M-k select-pane -U
bind-key -n M-q kill-pane
bind-key q kill-window
# コピーモード
set-window-option -g mode-keys vi
bind-key -T copy-mode-vi v send-keys -X begin-selection
bind-key -T copy-mode-vi C-v send-keys -X rectangle-toggle
bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "xsel -bi"
bind-key -T copy-mode-vi Y send-keys -X copy-line "xsel -bi"
bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "xsel -bi"
bind-key Space copy-mode
bind-key p paste-buffer
# Vimのキーバインドでペインをリサイズする
bind-key -r H resize-pane -L 3
bind-key -r J resize-pane -D 3
bind-key -r K resize-pane -U 3
bind-key -r L resize-pane -R 3
# 256色端末を使用する
set -g default-terminal "tmux-256color"
set -ga terminal-overrides ",$TERM:Tc"
# ペインの枠線
set -g pane-border-lines single
# ステータスバーを設定する
set-option -g status-position "top"
set -g status-justify "left"
set -g status "on"
set -g status-left-style "none"
set -g message-command-style "fg=#c5cdd9,bg=#414550"
set -g status-right-style "none"
set -g pane-active-border-style "fg=#a0c980"
set -g status-style "none,bg=#33353f"
set -g message-style "fg=#c5cdd9,bg=#414550"
set -g pane-border-style "fg=#414550"
set -g status-right-length "100"
set -g status-left-length "100"
set-window-option -g window-status-activity-style "none,fg=#a0c980,bg=#33353f"
set-window-option -g window-status-separator ""
set-window-option -g window-status-style "none,fg=#c5cdd9,bg=#33353f"
set -g status-left "#[fg=#2c2e34,bg=#a0c980] #S #[fg=#a0c980,bg=#33353f,nobold,nounderscore,noitalics]"
set -g status-right ""
set-window-option -g window-status-format "#[fg=#33353f,bg=#33353f,nobold,nounderscore,noitalics]#[default] #I #W #[fg=#33353f,bg=#33353f,nobold,nounderscore,noitalics]"
set-window-option -g window-status-current-format "#[fg=#33353f,bg=#414550,nobold,nounderscore,noitalics]#[fg=#c5cdd9,bg=#414550] #I #W #[fg=#414550,bg=#33353f,nobold,nounderscore,noitalics]"
## リフレッシュの間隔を設定する
set -g status-interval 1
## フォーカスイベント
set -g focus-events on
## ヴィジュアルノーティフィケーションを有効にする
set-window-option -g monitor-activity on
set -g visual-activity on
## Alcrittyでtmuxを有効にする
set-option -ga terminal-overrides ",alacritty:RGB"

8
.xinitrc Normal file
View file

@ -0,0 +1,8 @@
export LANG="ja_JP.UTF-8"
export XMODIFIERS="@im=fcitx"
export XMODIFIER="@im=fcitx"
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export DefaultIMModule=fcitx
exec i3
xset -b

6
.xprofile Normal file
View file

@ -0,0 +1,6 @@
export LANG="ja_JP.UTF-8"
export XMODIFIERS="@im=fcitx"
export XMODIFIER="@im=fcitx"
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export DefaultIMModule=fcitx

37
.zpreztorc Normal file
View file

@ -0,0 +1,37 @@
# 色彩
zstyle ':prezto:*:*' color 'yes'
# プリロード
zstyle ':prezto:load' pmodule \
'archive' \
'environment' \
'terminal' \
'editor' \
'history' \
'directory' \
'spectrum' \
'utility' \
'completion' \
'syntax-highlighting' \
'history-substring-search' \
'prompt'
# キーマップ
zstyle ':prezto:module:editor' key-bindings 'emacs'
# テーマ
zstyle ':prezto:module:prompt' theme 'pure'
# ハイライト
zstyle ':prezto:module:syntax-highlighting' color 'yes'
zstyle ':prezto:module:syntax-highlighting' highlighters \
'main' \
'brackets' \
'pattern'
# 途中まで打ったコマンドの履歴を検索
zstyle ':prezto:module:history-substring-search' case-sensitive 'yes'
zstyle ':prezto:module:history-substring-search' color 'yes'
zstyle ':prezto:module:history-substring-search:color' found ''
zstyle ':prezto:module:history-substring-search:color' not-found ''
zstyle ':prezto:module:history-substring-search' globbing-flags ''

101
.zshrc Normal file
View file

@ -0,0 +1,101 @@
# Preztoにぶん投げ
if [[ -s "${ZDOTDIR:-$HOME}/.zprezto/init.zsh" ]]; then
source "${ZDOTDIR:-$HOME}/.zprezto/init.zsh"
fi
# 上位階層に移動するコマンド
alias a='cd ../'
alias aa='cd ../../'
alias aaa='cd ../../../'
# デフォルトエディタをVimにする
export EDITOR=nvim
alias sudo='sudo -E '
alias v=nvim
alias vim=nvim
# paruを短縮する
alias poo=paru
# exaをls代わりにする
alias ls='exa --icons -a'
alias lsa='exa --icons -T -a'
# batをcatの代わりにする
alias cat=bat
# clearを短縮する
alias cls=clear
# 天気情報
alias wttr='() { curl -H "Accept-Language: ${LANG%_ja}" wttr.in/"${1:-Saitama}" }'
# BAT関連
export BAT_THEME="TwoDark"
# Zoxide関連
eval "$(zoxide init zsh)"
zle -N zi
bindkey '^z' zi
# Tailscale関連
alias tlsc='sudo tailscale up --exit-node-allow-lan-access --exit-node=mystech'
alias tlscd='sudo tailscale down'
# fzf関連
export PATH="$PATH:$HOME/.fzf/bin"
export FZF_DEFAULT_COMMAND='rg --files --hidden --glob "!.git"'
export FZF_DEFAULT_OPTS='--ansi --height 40% --reverse --border=none'
export FZF_CTRL_T_COMMAND='rg --files --hidden --follow --glob "!**/.git/*"'
export FZF_CTRL_T_OPTS="
--preview 'bat --color=always --style=header,grid {}'
--preview-window=right:60%"
fadd() {
local out q n addfiles
while out=$(
git status --short |
awk '{if (substr($0,2,1) !~ / /) print $2}' |
fzf-tmux --multi --exit-0 --expect=ctrl-d); do
q=$(head -1 <<< "$out")
n=$[$(wc -l <<< "$out") - 1]
addfiles=(`echo $(tail "-$n" <<< "$out")`)
[[ -z "$addfiles" ]] && continue
if [ "$q" = ctrl-d ]; then
git diff --color=always $addfiles | less -R
else
git add $addfiles
fi
done
}
rga-fzf() {
RG_PREFIX="rga --files-with-matches"
local file
file="$(
FZF_DEFAULT_COMMAND="$RG_PREFIX '$1'" \
fzf --sort --preview="[[ ! -z {} ]] && rga --pretty --context 5 {q} {}" \
--phony -q "$1" \
--bind "change:reload:$RG_PREFIX {q}" \
--preview-window="70%:wrap"
)" &&
echo "opening $file" &&
xdg-open "$file"
}
# tmux関連
alias tx="tmuximum"
if [ -z $TMUX ]; then
tmuximum
fi
# 履歴関連
HISTFILE=~/.zsh_history # ヒストリを保存するファイル
HISTSIZE=10000 # メモリに保存されるヒストリの件数
SAVEHIST=10000 # 保存されるヒストリの件数
setopt bang_hist # !を使ったヒストリ展開を行う(d)
setopt extended_history # ヒストリに実行時間も保存する
setopt hist_reduce_blanks # 余分なスペースを削除してヒストリに保存する
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh

81
alacritty.yml Normal file
View file

@ -0,0 +1,81 @@
# シェル
shell:
program: /Windows/System32/wsl.exe ~ -d Distrod
# カーソル
cursor:
style:
shape: Underline
blinking: Always
unfocused_hollow: false
blink_interval: 470
# タブスペース
tabspaces: 4
# フォント
font:
size: 12
normal:
family: 'UDEV Gothic 35NFLG'
style: Regular
bold:
family: 'UDEV Gothic 35NFLG'
style: Bold
italic:
family: 'UDEV Gothic 35NFLG'
style: Italic
bold_italic:
family: 'UDEV Gothic 35NFLG'
style: Bold Italic
# ウインドウ
window:
dimensions:
columms: 370
line: 250
decorations: full
opacity: 0.97
padding:
x: 0
y: 0
dynamic_padding: false
# 環境変数
env:
TERM: alacritty
# Colors (Horizon Dark)
colors:
# Primary colors
primary:
background: '0x1c1e26'
foreground: '0xe0e0e0'
# Cursor colors
cursor:
cursor: '0x00ff00'
vi_mode_cursor:
cursor: '0x00ff00'
# Normal colors
normal:
black: '0x16161c'
red: '0xe95678'
green: '0x29d398'
yellow: '0xfab795'
blue: '0x26bbd9'
magenta: '0xee64ac'
cyan: '0x59e1e3'
white: '0xd5d8da'
# Bright colors
bright:
black: '0x5b5858'
red: '0xec6a88'
green: '0x3fdaa4'
yellow: '0xfbc3a7'
blue: '0x3fc4de'
magenta: '0xf075b5'
cyan: '0x6be4e6'
white: '0xd5d8da'

165
colors-rofi.rasi Normal file
View file

@ -0,0 +1,165 @@
* {
active-background: #68DDC4;
active-foreground: @foreground;
normal-background: @background;
normal-foreground: @foreground;
urgent-background: #D95882;
urgent-foreground: @foreground;
alternate-active-background: @background;
alternate-active-foreground: @foreground;
alternate-normal-background: @background;
alternate-normal-foreground: @foreground;
alternate-urgent-background: @background;
alternate-urgent-foreground: @foreground;
selected-active-background: #D95882;
selected-active-foreground: @foreground;
selected-normal-background: #f08080;
selected-normal-foreground: @background;
selected-urgent-background: #D95882;
selected-urgent-foreground: @foreground;
background-color: @background;
background: #1C1E27;
foreground: #cacacc;
border-color: #E8AEAA;
spacing: 4;
}
#window {
background-color: @background;
border: 2px;
padding: 1ch;
width: 500px;
}
#mainbox {
border: 0;
padding: 0;
}
#message {
border: 2px 0px 0px;
border-color: @border-color;
padding: 1px;
}
#textbox {
text-color: @foreground;
}
#inputbar {
children: [ prompt,textbox-prompt-colon,entry,case-indicator ];
}
#textbox-prompt-colon {
expand: false;
str: "";
margin: 0px 0.3em 0em 0em;
text-color: @normal-foreground;
}
#listview {
fixed-height: 0;
border: 2px 0px 0px;
border-color: @border-color;
spacing: 0px;
scrollbar: false;
padding: 6px 0px 0px;
lines: 5;
}
#element {
border: 0;
padding: 8px;
}
#element.normal.normal {
background-color: @normal-background;
text-color: @normal-foreground;
}
#element.normal.urgent {
background-color: @urgent-background;
text-color: @urgent-foreground;
}
#element.normal.active {
background-color: @active-background;
text-color: @active-foreground;
}
#element.selected.normal {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#element.selected.urgent {
background-color: @selected-urgent-background;
text-color: @selected-urgent-foreground;
}
#element.selected.active {
background-color: @selected-active-background;
text-color: @selected-active-foreground;
}
#element.alternate.normal {
background-color: @alternate-normal-background;
text-color: @alternate-normal-foreground;
}
#element.alternate.urgent {
background-color: @alternate-urgent-background;
text-color: @alternate-urgent-foreground;
}
#element.alternate.active {
background-color: @alternate-active-background;
text-color: @alternate-active-foreground;
}
#scrollbar {
width: 4px;
border: 0;
handle-width: 8px;
padding: 0;
}
#sidebar {
border: 2px 0px 0px;
border-color: @border-color;
}
#button {
text-color: @normal-foreground;
}
#button.selected {
background-color: @selected-normal-background;
text-color: @selected-normal-foreground;
}
#inputbar {
spacing: 0;
text-color: @normal-foreground;
padding: 1px;
}
#case-indicator {
spacing: 0;
text-color: @normal-foreground;
}
#entry {
spacing: 0;
text-color: @normal-foreground;
}
#prompt {
spacing: 1;
margin: 0px 0px 4px 0em;
text-color: @normal-foreground;
}

261
config Normal file
View file

@ -0,0 +1,261 @@
# 神は言った――「光あれ」
set $mod Mod4
# ウインドウタイトルのフォント
font pango:Noto Sans CJK JP 8
# フローティングウインドウの操作キー
floating_modifier $mod
# ターミナル
bindsym $mod+Return exec --no-startup-id alacritty
# ファイラー
bindsym $mod+m exec --no-startup-id thunar
# タスクキル
bindsym $mod+q kill
# ランチャー
bindsym $mod+z exec --no-startup-id "rofi -show drun"
bindsym $mod+x exec --no-startup-id "rofi -show run"
# ウインドウフォーカス
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
# 代替ウインドウフォーカス
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# ウインドウ交換
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
# 代替ウインドウ交換
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# 水平ウインドウ分割
bindsym $mod+s split v
# 垂直ウインドウ分割
bindsym $mod+v split h
# フルスクリーン
bindsym $mod+f fullscreen toggle
# ウインドウの分割切り替え
bindsym $mod+e layout toggle split
# ウインドウフロート
bindsym $mod+w floating toggle
# フロートウインドウフォーカス
bindsym $mod+space focus mode_toggle
# 親コンテナへのフォーカス
bindsym $mod+a focus parent
# 子コンテナへのフォーカス
bindsym $mod+b focus child
# ワークスペース変数
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# ワークスペースの移動
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
# ウインドウを他のワークスペースに移動する
bindsym $mod+Shift+1 move container to workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2
bindsym $mod+Shift+3 move container to workspace $ws3
bindsym $mod+Shift+4 move container to workspace $ws4
bindsym $mod+Shift+5 move container to workspace $ws5
bindsym $mod+Shift+6 move container to workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws10
# 設定再読込み
bindsym $mod+Shift+c reload
# 再起動
bindsym $mod+Shift+r restart
# ウインドウリサイズ
mode "RESIZE" {
bindsym h resize shrink width 10 px or 5 ppt
bindsym j resize grow height 10 px or 5 ppt
bindsym k resize shrink height 10 px or 5 ppt
bindsym l resize grow width 10 px or 5 ppt
# 代替
bindsym Left resize shrink width 10 px or 5 ppt
bindsym Down resize grow height 10 px or 5 ppt
bindsym Up resize shrink height 10 px or 5 ppt
bindsym Right resize grow width 10 px or 5 ppt
# 通常モード遷移
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "RESIZE"
# コマンドモード――これによりキーバインドは実質無制限となる!
bindsym $mod+c mode "CMD"
mode "CMD"{
bindsym v exec vivaldi-stable; mode "default"
bindsym f exec "flameshot gui" mode "default"
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+c mode "default"
}
# シャットダウンシークエンス
bindsym $mod+Shift+e mode "SHUTDOWN SEQUENCE"
mode "SHUTDOWN SEQUENCE"{
bindsym p exec "systemctl poweroff"
bindsym r exec "systemctl reboot"
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+Shift+e mode "default"
}
# ステータスバーの色
set $background #2B303B
set $foreground #C0C5CE
set $lightred #BF616A
set $lightgreen #A3BE8C
set $lightyellow #EBCB8B
set $lightblue #8FA1B3
set $lightmagenta #B48EAD
set $lightcyan #96B5B4
set $lightwhite #C0C5CE
set $pink #FFB6C1
set $orange #F08080
# ステータスバー関連
bar {
font pango:UDEV Gothic 35 13
mode dock
position top
workspace_buttons yes
strip_workspace_numbers yes
binding_mode_indicator yes
tray_padding 2
colors {
background $background
focused_background $background
statusline $lightred
focused_statusline $lightred
# 左からborder, bg, fg
focused_workspace $orange $orange $background
active_workspace $background $background $foreground
inactive_workspace $background $background $foreground
urgent_workspace $green $green $background
binding_mode $green $green $background
}
status_command /usr/bin/bumblebee-status -m playerctl datetime \
-p playerctl.hide="true" playerctl.format="{{artist}} - {{title}}" playerctl.layout="playerctl.song" datetime.format="%m/%d %H:%M" -t monotone
}
# i3wm全体の色
set $bg #1C1E27
set $fg #CACACC
set $darkred #D95882
set $red #E4436F
set $darkgreen #68DDC4
set $green #24E39D
set $darkyellow #E8AEAA
set $yellow #EDA685
set $darkblue #64A4BF
set $blue #2095B4
set $darkmagenta #B382CF
set $darkcyan #54AEB8
set $cyan #00A5AF
set $darkwhite #CACACC
set $white #CACACA
set $darkgrey #6C6F93
# フォーカスカラー
# class border background text indicator child_border
client.focused $bg $darkgrey $fg $yellow $darkyellow
client.unfocused $bg $bg $fg $yellow $bg
# ウインドウの枠の太さ
for_window [class="^.*"] border pixel 2
# ウインドウ間の隙間の広さ
gaps top 6
gaps bottom 6
gaps right 6
gaps left 6
gaps inner 6
# マウスでフォーカスしない
focus_follows_mouse no
# 自動起動
exec --no-startup-id dunst
exec --no-startup-id "picom -b"
exec --no-startup-id xfce4-power-manager
exec --no-startup-id fcitx5
exec --no-startup-id vivaldi-stable
exec --no-startup-id discord
exec --no-startup-id slack
exec --no-startup-id parcellite
exec --no-startup-id "./sh/mount.sh"
exec --no-startup-id "feh --no-fehbg --bg-scale ~/Wallpaper.png"
exec --no-startup-id "xset r rate 200 30"
# フローティング起動一覧
for_window [class="Thunar"] floating enable, resize set 1024 780
for_window [class="Lxappearance"] floating enable, resize set 800 600
for_window [class="Pavucontrol"] floating enable, resize set 800 600
for_window [class="fcitx5-config-qt"] floating enable
for_window [class="mozc_tool"] floating enable, resize set 800 600
for_window [class="VirtualBox Manager"] floating enable, resize set 1280 1024
for_window [class="VirtualBox Machine"] floating enable
for_window [class="Io.github.celluloid_player.Celluloid"] floating enable
for_window [class="feh"] floating enable, resize set 1280 1024
for_window [class="transmission-gtk"] floating enable
for_window [class="stacer"] floating enable
for_window [class="Mousepad"] floating enable, resize set 1280 1024
for_window [class="Xfce4-power-manager-settings"] floating enable, resize 1024 780
for_window [class="qt5ct"] floating enable, resize set 1024 780
for_window [class="Qtconfig-qt4"] floating enable, resize set 1024 780
for_window [class="kdeconnect-app"] floating enbale
# ワークスペース指定一覧
assign [class="discord"] workspace 3
assign [class="Slack"] workspace 3

5
config.rasi Normal file
View file

@ -0,0 +1,5 @@
configuration {
font: "Noto Sans CJK JP 18";
drun-display-format: "{name}";
}
@import "colors-rofi.rasi"

245
dunstrc Normal file
View file

@ -0,0 +1,245 @@
[global]
font = Noto Sans CJK JP 12
# Allow a small subset of html markup:
# <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>.
# If markup is not allowed, those tags will be stripped out of the
# message.
markup = yes
plain_text = no
# 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
# Markup is allowed
format = "<b>%s</b>\n%b"
# Sort messages by urgency.
sort = no
# Show how many messages are currently hidden (because of geometry).
indicate_hidden = yes
# Alignment of message text.
# Possible values are "left", "center" and "right".
alignment = left
# The frequency with wich text that is longer than the notification
# window allows bounces back and forth.
# This option conflicts with "word_wrap".
# Set to 0 to disable.
bounce_freq = 0
# Show age of message if message is older than show_age_threshold
# seconds.
# Set to -1 to disable.
show_age_threshold = -1
# Split notifications into multiple lines if they don't fit into
# geometry.
word_wrap = no
# Ignore newlines '\n' in notifications.
ignore_newline = no
# Hide duplicate's count and stack them
stack_duplicates = yes
hide_duplicate_count = yes
width = 300
height = 500
offset = 12x39
# 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 windowmanager is
# present (e.g. xcompmgr, compiz, etc.).
transparency = 5
# 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.
idle_threshold = 0
# 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 windowmanager that exports the
# _NET_ACTIVE_WINDOW property.
# This should be the case for almost all modern windowmanagers.
#
# If this option is set to mouse or keyboard, the monitor option
# will be ignored.
follow = none
# 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 = 5
# Display indicators for URLs (U) and actions (A).
show_indicators = no
# The height of a single line. If the height is smaller than the
# font height, it will get raised to the font height.
# This adds empty space above and under the text.
line_height = 3
# Draw a line of "separatpr_height" pixel height between two
# notifications.
# Set to 0 to disable.
separator_height = 2
# Padding between text and separator.
padding = 6
# Horizontal padding.
horizontal_padding = 6
# 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
# Print a notification on startup.
# This is mainly for error detection, since dbus (re-)starts dunst
# automatically after a crash.
startup_notification = false
# dmenu path.
dmenu = /usr/bin/dmenu -p dunst:
# Browser for opening urls in context menu.
browser = /usr/bin/google-chrome-stable -new-tab
# Align icons left/right/off
icon_position = left
max_icon_size = 80
# Paths to default icons.
icon_path = /usr/share/icons/Qogir/symbolic/status
frame_width = 1
frame_color = "#a3be8c"
[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".
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.
frame_color = "#2b303b"
foreground = "#c0c5ce"
background = "#2b303b"
#background = "#2B313C"
timeout = 3
[urgency_normal]
frame_color = "#a3be8c"
foreground = "#c0c5ce"
background = "#2b303b"
#background = "#2B313C"
timeout = 3
[urgency_critical]
frame_color = "#f08080"
foreground = "#c0c5ce"
background = "#2b303b"
#background = "#2B313C"
timeout = 5
# 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", "summary", "body", "icon", "category",
# "msg_urgency" and you can override the "timeout", "urgency", "foreground",
# "background", "new_icon" and "format".
# Shell-like globbing will get expanded.
#
# 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.
#[espeak]
# summary = "*"
# script = dunst_espeak.sh
#[script-test]
# summary = "*script*"
# script = dunst_test.sh
#[ignore]
# # This notification will not be displayed
# summary = "foobar"
# format = ""
#[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
#
# vim: ft=cfg

733
init.lua Normal file
View file

@ -0,0 +1,733 @@
----GENERAL SETTINGS
local opt = vim.opt
vim.g.mapleader = ' '
opt.helplang = 'ja', 'en'
opt.tabstop = 2
opt.shiftwidth = 2
opt.expandtab = true
opt.list = true
opt.listchars = {tab='»-', trail='-', eol='', extends='»', precedes='«', nbsp='%'}
opt.wrap = true
opt.signcolumn = 'yes'
opt.smartcase = true
opt.ignorecase = true
opt.wrapscan = true
opt.hidden = true
opt.startofline = false
opt.showmatch = true
opt.matchtime = 1
opt.guicursor = ''
opt.cursorline = true
opt.wildmenu = true
opt.number = true
opt.showcmd = true
opt.autoread = true
opt.hlsearch = true
opt.backspace:append{'indent', 'eol', 'start'}
opt.showtabline = 1
opt.laststatus = 3
opt.ambiwidth = 'single'
opt.confirm = true
opt.pumblend = 15
opt.winblend = 15
opt.mouse = 'a'
opt.cmdheight = 2
opt.timeout = true
opt.ttimeout = true
opt.ttimeoutlen = 10
opt.clipboard:append{'unnamedplus'}
opt.termguicolors = true
opt.showmode = false
opt.completeopt:append{'menuone', 'noinsert'}
opt.backup = false
opt.swapfile = false
opt.encoding = 'utf-8'
opt.fileencodings = {'utf-8', 'iso-2022-jp', 'cp932', 'euc-jp', 'sjis'}
vim.opt.shortmess:append('I')
vim.cmd('set completeopt-=preview')
----ADVANCED SETTINGS
--KEEP CURSOR
vim.api.nvim_create_autocmd({ 'BufReadPost' }, {
pattern = { '*' },
callback = function()
vim.api.nvim_exec('silent! normal! g`"zv', false)
end,
})
----KEY MAPPING
--EDIT
vim.keymap.set('n', 'ew', ':<C-u>w<CR>')
vim.keymap.set('n', 'eq', ':<C-u>wq<CR>')
vim.keymap.set('n', 'Q', ':<C-u>quit!<CR>')
vim.keymap.set('n', '<leader>q', ':<C-u>bd<CR>')
vim.keymap.set('n', '<C-s>', ':<C-u>%s///cg<Left><Left><Left><Left>')
vim.keymap.set('n', '<C-c>', ":<C-u>echo wordcount()['chars']<CR>")
--TAB
vim.keymap.set('n', '<leader><TAB>', ':bprev<CR>', {silent = true})
vim.keymap.set('n', '<leader>t', ':tabclose<CR>', {silent = true})
vim.keymap.set('n', ']b', ':bnext<CR>', {silent =true})
--SPLIT
vim.keymap.set('n', 'sv', ':<C-u>vsplit<CR>', {silent = true})
vim.keymap.set('n', 'sp', ':<C-u>split<CR>', {silent =true})
--NOP
vim.keymap.set('n', '<MiddleMouse>', '<Nop>')
vim.keymap.set('n', '<2-MiddleMouse>', '<Nop>')
vim.keymap.set('n', '<3-MiddleMouse>', '<Nop>')
vim.keymap.set('n', '<4-MiddleMouse>', '<Nop>')
vim.keymap.set('i', '<1-MiddleMouse>', '<Nop>')
vim.keymap.set('i', '<2-MiddleMouse>', '<Nop>')
vim.keymap.set('i', '<3-MiddleMouse>', '<Nop>')
vim.keymap.set('i', '<4-MiddleMouse>', '<Nop>')
vim.keymap.set('n', 'qq', '<Nop>')
vim.keymap.set('n', 'gg', '<Nop>')
vim.keymap.set('n', 'ZZ', '<Nop>')
vim.keymap.set('n', 'ZQ', '<Nop>')
vim.keymap.set('n', '<C-z>', '<Nop>')
vim.keymap.set('n', '<F1>', '<Nop>')
vim.keymap.set('n', 'x', '"_x')
vim.keymap.set('v', 'x', '"_x')
vim.keymap.set('n', 's', '"_s')
--MOVE
vim.keymap.set('n', 'k', 'gk')
vim.keymap.set('n', 'j', 'gj')
vim.keymap.set('n', '<UP>', 'gk')
vim.keymap.set('n', '<DOWN>', 'gj')
vim.keymap.set('n', 'O', ":<C-u>call append(expand('.'), '')<CR>j")
vim.keymap.set('n', 'sh', '<C-w>h')
vim.keymap.set('n', 'sj', '<C-w>j')
vim.keymap.set('n', 'sk', '<C-w>k')
vim.keymap.set('n', 'sl', '<C-w>l')
vim.keymap.set('n', 'sH', '<C-w>H')
vim.keymap.set('n', 'sJ', '<C-w>J')
vim.keymap.set('n', 'sK', '<C-w>K')
vim.keymap.set('n', 'sL', '<C-w>L')
--COPY
vim.keymap.set('n', 'p', ']p')
vim.keymap.set('n', 'P', ']P')
vim.keymap.set('n', ']p', 'p')
vim.keymap.set('n', ']P', 'P')
----PLUGINS
--MANAGER
local lazypath = vim.fn.stdpath('data') .. '/lazy/lazy.nvim'
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({
'git',
'clone',
'--filter=blob:none',
'https://github.com/folke/lazy.nvim.git',
'--branch=stable',
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
require('lazy').setup({
defaults = {lazy = true},
{'nvim-lualine/lualine.nvim', event = 'VeryLazy'},
{'nvim-telescope/telescope.nvim', cmd = 'Telescope'},
{'nvim-telescope/telescope-file-browser.nvim', event = 'VeryLazy'},
{'lewis6991/gitsigns.nvim', config = true, event = 'VeryLazy'},
{'ryanoasis/vim-devicons', event = 'VeryLazy'},
{'nvim-tree/nvim-web-devicons', event = 'VeryLazy'},
{'williamboman/mason.nvim', event = 'BufRead', cmd = {'Mason', 'MasonInstall'},},
{'neovim/nvim-lspconfig', event = 'LspAttach'},
{'williamboman/mason-lspconfig.nvim', event = 'LspAttach'},
{'mfussenegger/nvim-dap', event = 'LspAttach'},
{'rcarriga/nvim-dap-ui', event = 'LspAttach'},
{'suketa/nvim-dap-ruby', config = true, event = 'LspAttach'},
{'j-hui/fidget.nvim', config = true, event = 'LspAttach'},
{'sainnhe/edge', event = 'VeryLazy'},
{'nvim-lua/plenary.nvim', event = 'VeryLazy'},
{'stevearc/dressing.nvim', event = 'VeryLazy'},
{'hrsh7th/nvim-cmp', event = 'InsertEnter, CmdlineEnter'},
{'hrsh7th/cmp-nvim-lsp', event = 'InsertEnter'},
{'hrsh7th/cmp-buffer', event = 'InsertEnter'},
{'hrsh7th/cmp-path', event = 'InsertEnter'},
{'hrsh7th/cmp-vsnip', event = 'InsertEnter'},
{'hrsh7th/cmp-cmdline', event = 'ModeChanged'},
{'hrsh7th/cmp-nvim-lsp-signature-help', event = 'InsertEnter'},
{'hrsh7th/cmp-nvim-lsp-document-symbol', event = 'InsertEnter'},
{'hrsh7th/cmp-calc', event = 'InsertEnter'},
{'onsails/lspkind.nvim', event = 'InsertEnter'},
{'hrsh7th/vim-vsnip', event = 'InsertEnter'},
{'hrsh7th/vim-vsnip-integ', event = 'InsertEnter'},
{'rafamadriz/friendly-snippets', event = 'InsertEnter'},
{'nvim-treesitter/nvim-treesitter', event = 'BufNewFile, BufRead'},
{'yioneko/nvim-yati', event = 'VeryLazy'},
{'windwp/nvim-autopairs', config = true, event = 'InsertEnter'},
{'andymass/vim-matchup', event = 'VeryLazy'},
{'Maan2003/lsp_lines.nvim', config = true, event = 'BufNewFile, BufRead'},
{'lambdalisue/suda.vim', cmd = {'SudaWrite', 'SudaRead'},},
{'lukas-reineke/indent-blankline.nvim', event = 'BufNewFile, BufRead'},
{'kevinhwang91/nvim-hlslens', event = 'BufNewFile, BufRead'},
{'numToStr/Comment.nvim', config = true, event = 'VeryLazy'},
{'rhysd/clever-f.vim', event = 'VeryLazy'},
{'luochen1990/rainbow', event = 'BufNewFile, BufRead'},
{'echasnovski/mini.surround', event = 'ModeChanged'},
{'echasnovski/mini.ai', event = 'ModeChanged'},
{'mvllow/modes.nvim', event = 'BufNewFile, BufRead'},
{'monaqa/dial.nvim', event = 'VeryLazy'},
{'tpope/vim-repeat', event = 'VeryLazy'},
{'dstein64/vim-startuptime', cmd = 'StartupTime'},
{'vim-jp/vimdoc-ja', ft = 'help'},
--non-lazy
{'vim-denops/denops.vim', lazy = false},
{'yuki-yano/fuzzy-motion.vim', lazy = false},
{'lambdalisue/gin.vim', lazy = false},
{'rbtnn/vim-ambiwidth', lazy = false},
{'lambdalisue/kensaku-search.vim', lazy = false},
{'lambdalisue/kensaku.vim', lazy = false},
{'brenoprata10/nvim-highlight-colors', config = true, lazy = false},
--disable default plugins
performance = {
rtp = {
disable_plugins = {
'netrw',
'netrwPlugin',
'netrwSettings',
'netrwFileHandlers',
'gzip',
'zip',
'zipPlugin',
'tar',
'tarPlugin',
'getscript',
'getscriptPlugin',
'vimball',
'vimballPlugin',
'2html_plugin',
'logipat',
'rrhelper',
'spellfile_plugin',
'sql_completion',
},
},
},
})
--lualine
require('lualine').setup {
options = {
icons_enabled = true,
component_separators = { left = '', right = ''},
section_separators = { left = '', right = ''},
disabled_filetypes = {'TelescopePrompt'},
always_divide_middle = true,
colored = false,
globalstatus = true,
},
sections = {
lualine_a = {''},
lualine_b = {'branch', 'diff'},
lualine_c = {
{
'filename',
path = 1,
file_status = true,
shorting_target = 40,
symbols = {
modified = '[+]',
readonly = '[RO]',
unnamed = 'Untitled',
}
}
},
lualine_x = {'filetype'},
lualine_y = {
{
'diagnostics',
source = {'nvim-lsp'},
},
{'progress'},
{'location'}
},
lualine_z = {''}
},
inactive_sections = {
lualine_a = {},
lualine_b = {},
lualine_c = {'filename'},
lualine_x = {'location'},
lualine_y = {},
lualine_z = {}
},
tabline = {},
extensions = {}
}
--telescope
require('telescope').setup({
defaults = {
borderchars = { "", "", "", "", "", "", "", "" },
color_devicons = true,
file_ignore_patterns = { 'node_modules', '.git', '.svg', '.npm', 'go', 'MEGA'},
mappings = {
i = {
['<esc>'] = require('telescope.actions').close,
},
},
},
})
vim.keymap.set('n', '<leader>.', '<cmd>Telescope find_files hidden=true<CR>')
vim.keymap.set('n', '<leader>,', '<cmd>Telescope oldfiles<CR>')
vim.keymap.set('n', '<leader>l', '<cmd>Telescope live_grep grep_open_files=true<CR>')
vim.keymap.set('n', '<leader>k', '<cmd>Telescope live_grep<CR>')
vim.keymap.set('n', '<leader>f', '<cmd>Telescope buffers<CR>')
vim.keymap.set('n', '<leader>h', '<cmd>Telescope help_tags<CR>')
vim.keymap.set('n', '<leader>y', '<cmd>Telescope registers<CR>')
vim.keymap.set('n', 'gd', '<cmd>Telescope lsp_definitions<CR>')
vim.keymap.set('n', 'gr', '<cmd>Telescope lsp_references<CR>')
vim.keymap.set('n', 'gi', '<cmd>Telescope lsp_implementations<CR>')
vim.keymap.set('n', 'gx', '<cmd>Telescope diagnostics<CR>')
vim.keymap.set('n', '<leader>e', '<cmd>Telescope file_browser<CR>')
local fb_actions = require 'telescope'.extensions.file_browser.actions
local previewers = require('telescope.previewers')
local Job = require('plenary.job')
local new_maker = function(filepath, bufnr, opts)
filepath = vim.fn.expand(filepath)
Job:new({
command = 'file',
args = { '--mime-type', '-b', filepath },
on_exit = function(j)
local mime_type = vim.split(j:result()[1], '/')[1]
if mime_type == 'text' then
previewers.buffer_previewer_maker(filepath, bufnr, opts)
else
vim.schedule(function()
vim.api.nvim_buf_set_lines(bufnr, 0, -1, false, { 'BINARY' })
end)
end
end
}):sync()
end
--LSP
local on_attach = function(client, bufnr)
client.server_capabilities.documentFormattingProvider = false
local set = vim.keymap.set
set('n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>')
set('n', 'ls', '<cmd>lua vim.lsp.buf.signature_help()<CR>')
set('n', 'ln', '<cmd>lua vim.lsp.buf.rename()<CR>')
set('n', 'la', '<cmd>lua vim.lsp.buf.code_action()<CR>')
set('n', 'l[', '<cmd>lua vim.lsp.diagnostic.goto_prev()<CR>')
set('n', 'l]', '<cmd>lua vim.lsp.diagnostic.goto_next()<CR>')
set('n', 'lf', '<cmd>lua vim.lsp.buf.format {async = true}<CR>')
end
vim.lsp.handlers['textDocument/publishDiagnostics'] = vim.lsp.with(
vim.lsp.diagnostic.on_publish_diagnostics, { virtual_text = false })
require('mason').setup()
require('mason-lspconfig').setup()
require('mason-lspconfig').setup_handlers {
function(server_name)
require('lspconfig')[server_name].setup {
on_attach = on_attach,
capabilities = capabilities,
}
end
}
--DAP
local function map(mode, lhs, rhs, opts)
local options = {noremap = true}
if opts then options = vim.tbl_extend('force', options, opts) end
vim.api.nvim_set_keymap(mode, lhs, rhs, options)
end
map("n", "<leader>5", ":lua require'dap'.continue()<CR>", { silent = true})
map("n", "<leader>6", ":lua require'dap'.step_over()<CR>", { silent = true})
map("n", "<leader>7", ":lua require'dap'.step_into()<CR>", { silent = true})
map("n", "<leader>8", ":lua require'dap'.step_out()<CR>", { silent = true})
map("n", "<leader>b", ":lua require'dap'.toggle_breakpoint()<CR>", { silent = true})
map("n", "<leader>c", ":lua require'dap'.set_breakpoint(vim.fn.input('Breakpoint condition: '))<CR>", { silent = true})
map("n", "<leader>i", ":lua require'dap'.set_breakpoint(nil, nil, vim.fn.input('Log point message: '))<CR>", { silent = true})
map("n", "<leader>d", ":lua require'dapui'.toggle()<CR>", { silent = true})
map("n", "<leader><leader>d", ":lua require'dapui'.eval()<CR>", { silent = true})
---DAP-UI
require("dapui").setup({
icons = { expanded = "", collapsed = "", current_frame = "" },
mappings = {
-- Use a table to apply multiple mappings
expand = { "<CR>", "<2-LeftMouse>" },
open = "o",
remove = "d",
edit = "e",
repl = "r",
toggle = "t",
},
expand_lines = vim.fn.has("nvim-0.7") == 1,
layouts = {
{
elements = {
-- Elements can be strings or table with id and size keys.
{ id = "scopes", size = 0.25 },
"breakpoints",
"stacks",
"watches",
},
size = 40, -- 40 columns
position = "left",
},
{
elements = {
"repl",
},
size = 0.25, -- 25% of total lines
position = "bottom",
},
},
controls = {
-- Requires Neovim nightly (or 0.8 when released)
enabled = true,
-- Display controls in this element
element = "repl",
icons = {
pause = "",
play = "",
step_into = "",
step_over = "",
step_out = "",
step_back = "",
run_last = "",
terminate = "",
},
},
floating = {
max_height = nil, -- These can be integers or a float between 0 and 1.
max_width = nil, -- Floats will be treated as percentage of your screen.
border = "single", -- Border style. Can be "single", "double" or "rounded"
mappings = {
close = { "q", "<Esc>" },
},
},
windows = { indent = 1 },
render = {
max_type_length = nil, -- Can be integer or nil.
max_value_lines = 100, -- Can be integer or nil.
}
})
--nvim-cmp
local cmp = require('cmp')
local lspkind = require('lspkind')
cmp.setup({