Merge branch 'dev' into thesis

nvim: remove icons from completion
        use textobjects with treesitter
        smart pasting in visual mode
        add description to <C-E>
        comments and formatting in maps.lua
        keymaps in visual-mode only
        fix lsp formatting
mail: remove personal config from public repo
st: update to 0.9
        fix color codes in config.def.h
dmenu: update to 5.2
dwm: update to 6.4
        window selborder gets its own variable
        increase bordersize
        restoreafterrest patch
system: restartsig patch for dwm
dotfiles: put everything on chapril.org
        update gitignore
This commit is contained in:
David JULIEN 2023-01-09 14:54:24 +01:00
commit 8ed8116312
No known key found for this signature in database
GPG Key ID: 1DD6B2BA6DD78810
25 changed files with 201 additions and 228 deletions

View File

@ -30,6 +30,7 @@
*.foreground: #fbf1c7
*.normforeground: #a89984
*.selforeground: #ebdbb2
*.selborder: #427d61
*.cursorColor: #ebdbb2
/* dmenu colors */

View File

@ -30,6 +30,7 @@
*.foreground: #665c64
*.normforeground: #665c64
*.selforeground: #1d2021
*.selborder: #d65d0e
*.cursorColor: #1d2021
/* dmenu colors */

View File

@ -4,7 +4,7 @@
*.japan: IPAexGothic:size=12
/* dwm config */
dwm.borderpx: 2
dwm.borderpx: 3
dwm.gappx: 15
/* st config */

View File

@ -1,25 +0,0 @@
# University
IMAPStore david.julien@univ-nantes.fr-remote
Host imaps.etu.univ-nantes.fr
Port 993
User E22D718J
PassCmd "pass univ-nantes.fr/E22D718J"
AuthMechs LOGIN
SSLType IMAPS
CertificateFile /etc/ssl/certs/ca-certificates.crt
MaildirStore david.julien@univ-nantes.fr-local
Subfolders Verbatim
Path /home/julien-d/.local/share/mail/univ/
Inbox /home/julien-d/.local/share/mail/univ/INBOX
Channel univ
Expunge Both
Master :david.julien@univ-nantes.fr-remote:
Slave :david.julien@univ-nantes.fr-local:
Patterns * !"[Gmail]/All Mail"
Create Both
SyncState *
MaxMessages 0
ExpireUnread no
# End Profile

View File

@ -0,0 +1,25 @@
# Personnal - Critical
IMAPStore email@address.you-remote
Host address.you
Port 993
User email@address.you
PassCmd "pass address.you/email"
AuthMechs LOGIN
SSLType IMAPS
CertificateFile /etc/ssl/certs/ca-certificates.crt
MaildirStore email@address.you-local
Subfolders Verbatim
Path /home/user/.local/share/mail/address/
Inbox /home/user/.local/share/mail/address/INBOX
Channel address
Expunge Both
Far :email@address.you-remote:
Near :email@address.you-local:
Patterns * !"[Gmail]/All Mail"
Create Both
SyncState *
MaxMessages 0
ExpireUnread no
# End Profile

View File

@ -1,10 +0,0 @@
account univ
host smtp.etu.univ-nantes.fr
port 587
from david.julien@univ-nantes.fr
user E22D718J
passwordeval "pass univ-nantes.fr/E22D718J"
auth on
tls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
logfile /home/swytch/.config/msmtp/msmtp.log

View File

@ -0,0 +1,10 @@
account address
host address.you
port 587
from email@address.you
user email@address.you
passwordeval "pass address.you/email"
auth on
tls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
logfile /home/user/.local/share/msmtp/msmtp.log

View File

@ -1,67 +0,0 @@
# vim: filetype=neomuttrc
# muttrc file for account david.julien@univ-nantes.fr
set realname = "David JULIEN"
set from = "david.julien@univ-nantes.fr"
set sendmail = "msmtp -a univ"
alias me david.julien <david.julien@univ-nantes.fr>
set folder = "$XDG_DATA_HOME/mail/univ"
set header_cache = "$XDG_CACHE_HOME/neomutt/univ/headers"
set message_cachedir = "$XDG_CACHE_HOME/neomutt/univ/bodies"
set mbox_type = Maildir
set crypt_autosign = yes
set pgp_self_encrypt = yes
set pgp_default_key = "0x1DD6B2BA6DD78810"
bind index,pager gg noop
bind index,pager g noop
bind index,pager M noop
bind index,pager C noop
bind index gg first-entry
unmailboxes *
unalternates *
set signature="$XDG_CONFIG_HOME/neomutt/accounts/nantes.signature"
unmacro index o
macro index o "<shell-escape>mailsync<enter>" "run mbsync to sync david.julien@univ-nantes.fr"
mailboxes "=Sent" "=Drafts" "=Trash" "=INBOX" "=thesis" "=publications" "=teaching" "=teaching/X11I020" "=teaching/X11I040" "=forge" "=velo" "=admin" "=login"
set record = "+Sent"
macro index,pager gs "<change-folder>=Sent<enter>" "go to sent"
macro index,pager Ms ";<save-message>=Sent<enter>" "move mail to sent"
macro index,pager Cs ";<copy-message>=Sent<enter>" "copy mail to sent"
set postponed = "+Drafts"
macro index,pager gd "<change-folder>=Drafts<enter>" "go to drafts"
macro index,pager Md ";<save-message>=Drafts<enter>" "move mail to drafts"
macro index,pager Cd ";<copy-message>=Drafts<enter>" "copy mail to drafts"
macro index,pager gt "<change-folder>=Trash<enter>" "go to trash"
macro index,pager Mt ";<save-message>=Trash<enter>" "move mail to trash"
macro index,pager Ct ";<copy-message>=Trash<enter>" "copy mail to trash"
set trash = "+Trash"
macro index,pager gi "<change-folder>=INBOX<enter>" "go to inbox"
macro index,pager Mi ";<save-message>=INBOX<enter>" "move mail to inbox"
macro index,pager Ci ";<copy-message>=INBOX<enter>" "copy mail to inbox"
set spoolfile = "+INBOX"
macro index,pager gT "<change-folder>=thesis<enter>" "go to thesis"
macro index,pager MT ";<save-message>=thesis<enter>" "move mail to thesis"
macro index,pager CT ";<copy-message>=thesis<enter>" "copy mail to thesis"
macro index,pager gf "<change-folder>=forge<enter>" "go to forge"
macro index,pager Mf ";<save-message>=forge<enter>" "move mail to forge"
macro index,pager Cf ";<copy-message>=forge<enter>" "copy mail to forge"
macro index,pager gv "<change-folder>=velo<enter>" "go to velo"
macro index,pager Mv ";<save-message>=velo<enter>" "move mail to velo"
macro index,pager Cv ";<copy-message>=velo<enter>" "copy mail to velo"
macro index,pager ga "<change-folder>=admin<enter>" "go to admin"
macro index,pager Ma ";<save-message>=admin<enter>" "move mail to admin"
macro index,pager Ca ";<copy-message>=admin<enter>" "copy mail to admin"
macro index,pager gl "<change-folder>=login<enter>" "go to login"
macro index,pager Ml ";<save-message>=login<enter>" "move mail to login"
macro index,pager Cl ";<copy-message>=login<enter>" "copy mail to login"
macro index,pager gp "<change-folder>=publications<enter>" "go to publications"
macro index,pager Mp ";<save-message>=publications<enter>" "move mail to publications"
macro index,pager Cp ";<copy-message>=publications<enter>" "copy mail to publications"
macro index,pager gc2 "<change-folder>=teaching/X11I020<enter>" "go to teaching/X11I020"
macro index,pager Mc2 ";<save-message>=teaching/X11I020<enter>" "move mail to teaching/X11I020"
macro index,pager Cc2 ";<copy-message>=teaching/X11I020<enter>" "copy mail to teaching/X11I020"
macro index,pager gc4 "<change-folder>=teaching/X11I040<enter>" "go to teaching/X11I040"
macro index,pager Mc4 ";<save-message>=teaching/X11I040<enter>" "move mail to teaching/X11I040"
macro index,pager Cc4 ";<copy-message>=teaching/X11I040<enter>" "copy mail to teaching/X11I040"

View File

@ -1,7 +0,0 @@
David JULIEN
Doctorant au LS2N (Nantes)
Équipe VELO
Faculté de Sciences et Techniques
Bâtiment 11 - Bureau 221

View File

@ -5,7 +5,7 @@ bind index,pager g noop
bind index \Cf noop
# Switching accounts
macro index,pager in '<sync-mailbox><enter-command>source $XDG_CONFIG_HOME/neomutt/accounts/1-david.julien@univ-nantes.fr.muttrc<enter><change-folder>!<enter>;<check-stats>' "switch to david.julien@univ-nantes.fr"
macro index,pager i1 '<sync-mailbox><enter-command>source $XDG_CONFIG_HOME/neomutt/accounts/account_template.muttrc<enter><change-folder>!<enter>;<check-stats>' "switch to email@address.you"
# General rebindings
bind index j next-entry

View File

@ -1,5 +0,0 @@
# vim: filetype=neomuttrc
source /home/swytch/.config/mutt/neomutt.muttrc
source /home/swytch/.config/mutt/accounts/account_template.muttrc
macro index,pager i1 '<sync-mailbox><enter-command>source
/home/swytch/.config/mutt/accounts/account_template.muttrc<enter><change-folder>!<enter>;<check-stats>' "switch to david.julien@posteo.net"

View File

@ -1,8 +1,4 @@
# vim: filetype=neomuttrc
# Adapted from Luke Smith's mutt-wizard config files.
# More information : https://github.com/LukeSmithxyz/mutt-wizard
set mailcap_path = $XDG_CONFIG_HOME/neomutt/mailcap:$mailcap_path
set mime_type_query_command = "file --mime-type -b %s"
set date_format="%d/%m/%y %I:%M%p"
@ -30,7 +26,7 @@ auto_view application/pgp-encrypted
#set display_filter = "tac | sed '/\\\[-- Autoview/,+1d' | tac" # Suppress autoview messages.
alternative_order text/plain text/enriched text/html
source $XDG_CONFIG_HOME/neomutt/maps
source $XDG_CONFIG_HOME/neomutt/colors
source $XDG_CONFIG_HOME/neomutt/accounts/1-david.julien@univ-nantes.fr.muttrc
source $XDG_CONFIG_HOME/neomutt/accounts/account_template.muttrc
$XDG_CONFIG_HOME/neomutt/accounts/account_template.muttrc<enter><change-folder>!<enter>;<check-stats>' "switch to email@address.you

View File

@ -1,23 +0,0 @@
#!/usr/bin/env sh
# The accounts to be cleaned
accounts="univ"
filter() {
notmuch search --output=files --format=text0 $parameters and tag:unread| xargs -0 --no-run-if-empty mv -t "$XDG_DATA_HOME/mail/$account/$tag/new/"
notmuch search --output=files --format=text0 $parameters and not tag:unread| xargs -0 --no-run-if-empty mv -t "$XDG_DATA_HOME/mail/$account/$tag/cur/"
}
for account in $accounts
do
notmuch tag --input $XDG_CONFIG_HOME/notmuch/tags/$account
tags_location="$XDG_CONFIG_HOME/notmuch/tags/$account"
tags="$(grep "+" "$tags_location" | sed -e 's/^.//' -e 's/ .*//')"
for tag in $tags
do
case $tag in
"+univ") ;;
*) parameters="folder:$account/INBOX and tag:$tag" && filter;;
esac
done
done

View File

@ -1,18 +0,0 @@
# vim: filetype=none
# !filters will be applied top to bottom
# mailbox
#+univ -- path:univ/
+teaching/X11I020 -inbox subject:x11i020
+teaching/X11I040 -inbox subject:x11i040
+publications -inbox subject:[hal]
+forge -inbox from:gitlab@univ-nantes.fr
+velo -inbox subject:[ls2n-velo]
+login -inbox from:login@univ-nantes.fr
+admin -inbox from:virginie.dupont or from alexiane.brard or from emmanuelle.sale
+thesis -inbox from:benoit.delahaye or from:guillaume.cantin or from:gilles.ardourel

View File

@ -11,7 +11,7 @@ vim.keymap.set({ "n", "v" }, "<space>",
})
vim.g.mapleader = " "
-- Dealing with word wrap
-- dealing with word wrap
vim.keymap.set("n", "k",
"v:count == 0 ? 'gk' : 'k'",
{
@ -27,18 +27,33 @@ vim.keymap.set("n", "j",
desc = "Smart down motion"
})
vim.keymap.set("n", "<leader>y",
-- yank and pasting
vim.keymap.set({ "n", "x" }, "<leader>y",
"\"+y",
{ desc = "Yank to clipboard"}
)
vim.keymap.set("n", "<leader>p",
"\"+P",
{ desc = "Copy from clipboard"}
{ desc = "Paste from clipboard" }
)
vim.keymap.set("x", "<leader>p",
"\"_dP",
{ desc = "Send selection to void register and paste from clipboard" }
)
-- deletion
vim.keymap.set({ "n", "x" }, "<leader>d",
"\"_d",
{ desc = "Send selection to void register" }
)
-- comfort zone
vim.keymap.set("n", "<leader><enter>",
"<cmd>w! | !compiler %<CR>",
{ desc = "Compile current file using ~/.local/bin/compiler" }
)
-- packer
vim.keymap.set("n", "<leader>u",
function() require("packer").sync() end,
{ desc = "Sync packer config and update plugins" }
@ -77,4 +92,6 @@ vim.keymap.set("n", "<leader>s",
)
-- snippets
vim.keymap.set({ "i", "s" }, "<C-E>", "<Plug>luasnip-next-choice")
vim.keymap.set({ "i", "s" }, "<C-E>", "<Plug>luasnip-next-choice",
{ desc = "Cycle through luasnip choices" }
)

View File

@ -18,33 +18,7 @@ end
cmp.event:on( 'confirm_done', cmp_autopairs.on_confirm_done({ map_char = { tex = '' } }))
-- Custom item icons
local icons = {
Class = "",
Color = "",
Constant = "µ",
Constructor = "",
Enum = "",
EnumMember = "",
Event = "",
Field = "",
File = "",
Folder = "",
Function = "",
Keyword = "",
Interface = "",
Method = "",
Module = "",
Operator = "",
Property = "",
Reference = "",
Snippet = "",
Struct = "",
Text = "",
TypeParameter = "",
Unit = "",
Value = "",
Variable = "",
}
local icons = { }
cmp.setup {
completion = {
@ -62,8 +36,6 @@ cmp.setup {
},
formatting = {
format = function(entry, vim_item)
vim_item.kind = string.format("%s %s", icons[vim_item.kind],
vim_item.kind)
vim_item.menu = ({
nvim_lsp = "[lsp]",
nvim_lua = "[nvim]",

View File

@ -38,7 +38,7 @@ local on_attach = function(_, bufnr)
vim.keymap.set("n", "gi", vim.lsp.buf.implementation, opts)
vim.keymap.set("n", "<leader>ln", vim.diagnostic.goto_next, opts)
vim.keymap.set("n", "<leader>lp", vim.diagnostic.goto_prev, opts)
vim.keymap.set("n", "<leader>lf", vim.lsp.buf.formatting, opts)
vim.keymap.set("n", "<leader>lf", vim.lsp.buf.format, opts)
vim.keymap.set("n", "<C-k>", vim.lsp.buf.signature_help, opts)
vim.keymap.set("n", "<leader>wa",
vim.lsp.buf.add_workspace_folder, opts)

View File

@ -54,6 +54,11 @@ return require("packer").startup(function()
config = function() require("plugin.treesitter") end
}
use { -- Additional text objects via treesitter
'nvim-treesitter/nvim-treesitter-textobjects',
after = 'nvim-treesitter',
}
-- telescope
use {
"nvim-telescope/telescope.nvim",

View File

@ -4,12 +4,112 @@
-- Description : treesitter config file
require("nvim-treesitter.configs").setup {
ensure_installed = { "c", "lua", "python", "rust", "bash" },
ignore_install = { "javascript" },
ensure_installed = { "c", "lua", "rust", "bash", "vim" },
highlight = {
enable = true,
},
indent = {
enable = true,
},
incremental_selection = {
enable = true,
keymaps = {
init_selection = "<C-Space>",
node_incremental = "<C-Space>",
scope_incremental = "<Tab>",
node_decremental = "<BS>",
},
},
textobjects = {
select = {
enable = true,
lookahead = true, -- Automatically jump forward to textobj, similar to targets.vim
keymaps = {
-- use the capture groups defined in textobjects.scm
["ap"] = {
query = "@parameter.outer",
desc = "Select parameter region"
},
["ip"] = {
query = "@parameter.inner",
desc = "Select inner part of a parameter region"
},
["af"] = {
query = "@function.outer",
desc = "Select a function block"
},
["if"] = {
query = "@function.inner",
desc = "Select inner part of a function"
},
["ac"] = {
query = "@class.outer",
desc = "Select a class block"
},
["ic"] = {
query = "@class.inner",
desc = "Select inner part of a class"
},
},
},
move = {
enable = true,
set_jumps = true, -- whether to set jumps in the jumplist
goto_next_start = {
["]m"] = {
query = "@function.outer",
desc = "Jump to next function",
},
["])"] = {
query = "@class.outer",
desc = "Jump to next class",
},
},
goto_next_end = {
["]M"] = {
query = "@function.outer",
desc = "Jump after next function",
},
["]]"] = {
query = "@class.outer",
desc = "Jump after next class",
},
},
goto_previous_start = {
["[m"] = {
query = "@function.outer",
desc = "Jump to previous function",
},
["[)"] = {
query = "@class.outer",
desc = "Jump to previous class",
},
},
goto_previous_end = {
["[M"] = {
query = "@function.outer",
desc = "Jump after previous function",
},
["[]"] = {
query = "@class.outer",
desc = "Jump after previous class",
},
},
},
swap = {
enable = true,
swap_next = {
["<leader>a"] = {
query = "@parameter.inner",
desc = "Swap with next parameter",
},
},
swap_previous = {
["<leader>A"] = {
query = "@parameter.inner",
desc = "Swap with previous parameter",
},
},
},
},
}

View File

@ -39,7 +39,7 @@ super + shift + o
dmenuopen
super + c
switch-colors
switch-colors && kill -1 $(pidof dwm)
super + alt + c
switch-colors -s

15
.gitignore vendored
View File

@ -5,8 +5,6 @@
!/.zshenv
!/.local
!/.local/bin/
!/.local/src/
/.local/lib/
/.local/include/
/.local/share/
@ -16,16 +14,19 @@
/.config/dconf/
/.config/font-manager/
/.config/fontconfig/
/.config/gnupg/*
/.config/gnupg/
!/.config/gnupg/gpg-agent.conf
/.config/libreoffice/
/.config/mpd/*
/.config/mpd/
!/.config/mpd/mpd.conf
/.config/mutt/.mailsynclastrun
/.config/mbsync/config
/.config/msmtp/config
/.config/neomutt/neomuttrc
/.config/neomutt/personnal_maps
/.config/neomutt/accounts/
/.config/nvim/plugin/
/.config/pulse/
/.config/transmission-daemon/*
/.config/transmission-daemon/settings.json
/.config/transmission-daemon/
/.config/zsh/.zcompdump
/**/*.log

32
.gitmodules vendored
View File

@ -1,18 +1,18 @@
[submodule ".local/src/dwm"]
path = .local/src/dwm
url = git@github.com:swy7ch/dwm.git
[submodule ".local/src/dwmblocks"]
path = .local/src/dwmblocks
url = git@github.com:swy7ch/dwmblocks.git
[submodule ".local/src/st"]
path = .local/src/st
url = git@github.com:swy7ch/st.git
[submodule ".local/src/dmenu"]
path = .local/src/dmenu
url = git@github.com:swy7ch/dmenu
[submodule ".local/src/slock"]
path = .local/src/slock
url = git@github.com:swy7ch/slock.git
[submodule ".local/src/astronomy.nvim"]
path = .local/src/astronomy.nvim
url = git@github.com:swy7ch/astronomy.nvim
url = ssh://gitea@forge.chapril.org:222/swytch/astronomy.nvim
[submodule ".local/src/dmenu"]
path = .local/src/dmenu
url = ssh://gitea@forge.chapril.org:222/swytch/dmenu
[submodule ".local/src/dwm"]
path = .local/src/dwm
url = ssh://gitea@forge.chapril.org:222/swytch/dwm
[submodule ".local/src/dwmblocks"]
path = .local/src/dwmblocks
url = ssh://gitea@forge.chapril.org:222/swytch/dwmblocks
[submodule ".local/src/slock"]
path = .local/src/slock
url = ssh://gitea@forge.chapril.org:222/swytch/slock
[submodule ".local/src/st"]
path = .local/src/st
url = ssh://gitea@forge.chapril.org:222/swytch/st

@ -1 +1 @@
Subproject commit 0f4c5faed3e396832bd11586371698d06bf21b71
Subproject commit d5b5994a280d07312e21f07d307c15e50bded81f

@ -1 +1 @@
Subproject commit 4af8e137098783c0c17305bae7b9b440bd6571b7
Subproject commit 36a8e80ee2ac923016019b65dc88be7cb166b074

@ -1 +1 @@
Subproject commit 465b6c89b7ea9cd53fe3417d62f50dd1922df5dc
Subproject commit c0ce7e475b271aaf80059b2f2dd3163a8cf5f145