Compare commits

..

No commits in common. "5c6318341b2c84122b43378a25dc4bba3e937759" and "a8745a54ecef1dec8bacea7b4ddb1d07232c8c20" have entirely different histories.

2 changed files with 39 additions and 19 deletions

42
kakrc
View File

@ -1,8 +1,6 @@
# Load plug.kak # Load plug.kak
source "%val{config}/plugins/plug.kak/rc/plug.kak" source "%val{config}/plugins/plug.kak/rc/plug.kak"
plug "andreyorst/plug.kak" noload plug "andreyorst/plug.kak" noload
# plug auto-pairs
plug "alexherbo2/auto-pairs.kak"
# plug kak-lsp # plug kak-lsp
plug "kak-lsp/kak-lsp" do %{ plug "kak-lsp/kak-lsp" do %{
cargo build --release --locked cargo build --release --locked
@ -24,7 +22,7 @@ plug "kak-lsp/kak-lsp" do %{
define-command ee -docstring 'go to current error/warning from lsp' %{ lsp-find-error --include-warnings; lsp-find-error --previous --include-warnings } define-command ee -docstring 'go to current error/warning from lsp' %{ lsp-find-error --include-warnings; lsp-find-error --previous --include-warnings }
define-command lsp-restart -docstring 'restart lsp server' %{ lsp-stop; lsp-start } define-command lsp-restart -docstring 'restart lsp server' %{ lsp-stop; lsp-start }
hook global WinSetOption filetype=(c|cpp|sh|python) %{ hook global WinSetOption filetype=(c|cpp|cc|rust|javascript|typescript) %{
set-option window lsp_auto_highlight_references true set-option window lsp_auto_highlight_references true
set-option window lsp_hover_anchor false set-option window lsp_hover_anchor false
lsp-auto-hover-enable lsp-auto-hover-enable
@ -32,6 +30,18 @@ plug "kak-lsp/kak-lsp" do %{
lsp-enable-window lsp-enable-window
} }
hook global WinSetOption filetype=(rust) %{
set window lsp_server_configuration rust.clippy_preference="on"
}
hook global WinSetOption filetype=rust %{
hook window BufWritePre .* %{
evaluate-commands %sh{
test -f rustfmt.toml && printf lsp-formatting-sync
}
}
}
hook global KakEnd .* lsp-exit hook global KakEnd .* lsp-exit
} }
# Substitute c-n with tab # Substitute c-n with tab
@ -84,3 +94,29 @@ map global user p '<a-!>xclip -out -selection clipboard<ret>' \
-docstring 'Paste system clipboard after' -docstring 'Paste system clipboard after'
map global user R '|xclip -out -selection clipboard<ret>' \ map global user R '|xclip -out -selection clipboard<ret>' \
-docstring 'Replace selection from system clipboard' -docstring 'Replace selection from system clipboard'
## TESTING: copy and paste from TMUX
#if [ -n "$DISPLAY" ]; then
## printf %s "$kak_main_reg_dquote" | xsel --input --clipboard
#elif [ -n "$TMUX" ]; then
# map global user y '<a-|>tmux set-buffer --<ret>'
#fi
## Enable different options depending if we are inside TMUX or not
#try %{
# evaluate-commands %sh{ [ $tmux ] || echo "fail" }
# try %{
# hook global registermodified '"' %{ nop %sh{
# tmux set-buffer -- "$kak_main_reg_dquote"
# }}
# map global user p '!tmux show-buffer<ret>'
# map global user p '<a-!>tmux show-buffer<ret>'
# map global user r '|tmux show-buffer<ret>'
# }
#} catch %{
# try %{
# map global user y '<a-|>xclip -in -selection clipboard >&- 2>&-<ret>'
# map global user p '!xclip -out -selection clipboard<ret>'
# map global user p '<a-!>xclip -out -selection clipboard<ret>'
# map global user r '|xclip -out -selection clipboard<ret>'
# }
#}

View File

@ -1,16 +0,0 @@
### Commands used when setting up `kak-lsp`. Need to tidy up this and create a proper README.md
[kak-lsp Github](https://github.com/kak-lsp/kak-lsp)
[plug.kak Github](https://github.com/andreyorst/plug.kak)
`$ sudo yum install cargo`
`$ sudo yum install clangd`
`$ sudo yum install clang-tools`
`$ sudo yum install llvm`
`$ sudo yum install clang-tools-extra`
`$ git clone https://github.com/andreyorst/plug.kak.git $HOME/.config/kak/plugins/plug.kak`
`$ export PATH=$PATH:/home/doddo/.cargo/bin`
### Issues
- For some reason, kak-lsp does not seem to compile with the last version of Rust
- Fall back to download static precompiled `kak-lsp`
- Need to refactor the whole kakrc to make it more readable