Compare commits

...

10 commits

Author SHA1 Message Date
Nikos Papadakis
ab4f9942e8
nvim 2023-06-15 10:44:03 +03:00
Nikos Papadakis
7a5bbc1e40
nvim 2023-06-14 12:36:32 +03:00
Nikos Papadakis
e7f569e938
nvim 2023-06-14 12:30:11 +03:00
Nikos Papadakis
5aea9e5dea
nvim 2023-06-02 21:05:34 +03:00
Nikos Papadakis
d83f895351
nvim 2023-05-24 12:44:09 +03:00
Nikos Papadakis
68a79b3b12
nvim 2023-05-08 16:21:15 +03:00
Nikos Papadakis
95fd821052
nvim 2023-05-07 14:35:05 +03:00
Nikos Papadakis
061f45aa53
fish 2023-05-07 00:46:13 +03:00
Nikos Papadakis
f50092a738
nvim 2023-05-07 00:37:10 +03:00
Nikos Papadakis
fe74dee2a1
nvim 2023-05-07 00:02:42 +03:00
16 changed files with 223 additions and 52 deletions

View file

@ -4,7 +4,7 @@ alias exa="exa --group-directories-first"
alias newkey="gpg-connect-agent \"scd serialno\" \"learn --force\" /bye" alias newkey="gpg-connect-agent \"scd serialno\" \"learn --force\" /bye"
alias usepodman="set -x -g DOCKER_HOST unix://(podman info --format '{{.Host.RemoteSocket.Path}}')" alias usepodman="set -x -g DOCKER_HOST unix://(podman info --format '{{.Host.RemoteSocket.Path}}')"
test "$TERM" = "xterm-kitty" && alias ssh="kitty +kitten ssh" test "$TERM" = "xterm-kitty" && alias ssh="kitty +kitten ssh"
test "$TERM_PROGRAM" = "WezTerm" && alias ssh="wezterm ssh" # test "$TERM_PROGRAM" = "WezTerm" && alias ssh="wezterm ssh"
abbr vim nvim abbr vim nvim
abbr ls exa abbr ls exa
abbr ll exa -lh abbr ll exa -lh
@ -14,13 +14,14 @@ abbr gc git commit
abbr gap git add -p abbr gap git add -p
abbr gps git push abbr gps git push
abbr gpl git pull abbr gpl git pull
test doas && abbr sudo doas # test (command -v doas) && abbr sudo doas
# Environment variables # Environment variables
set -x -g RUSTUP_HOME $XDG_DATA_HOME/rustup set -x -g RUSTUP_HOME $XDG_DATA_HOME/rustup
set -x -g CARGO_HOME $HOME/.cargo set -x -g CARGO_HOME $HOME/.cargo
set -x -g PATH $CARGO_HOME/bin $RUSTUP_HOME/bin $HOME/.local/bin $PATH set -x -g PATH $CARGO_HOME/bin $RUSTUP_HOME/bin $HOME/.local/bin $PATH
test fnm && fnm env | source test (command -v fnm) && fnm env | source
test starship && starship init fish | source test (command -v zoxide) && zoxide init fish | source
test zoxide && zoxide init fish | source [ -e /opt/asdf-vm/asdf.fish ] && source /opt/asdf-vm/asdf.fish
[ -e "$HOME/.asdf" ] && source $HOME/.asdf/asdf.fish

View file

@ -0,0 +1,90 @@
function fish_prompt
set -l __last_command_exit_status $status
if not set -q -g __fish_arrow_functions_defined
set -g __fish_arrow_functions_defined
function _git_branch_name
set -l branch (git symbolic-ref --quiet HEAD 2>/dev/null)
if set -q branch[1]
echo (string replace -r '^refs/heads/' '' $branch)
else
echo (git rev-parse --short HEAD 2>/dev/null)
end
end
function _is_git_dirty
not command git diff-index --cached --quiet HEAD -- &>/dev/null
or not command git diff --no-ext-diff --quiet --exit-code &>/dev/null
end
function _is_git_repo
type -q git
or return 1
git rev-parse --git-dir >/dev/null 2>&1
end
function _hg_branch_name
echo (hg branch 2>/dev/null)
end
function _is_hg_dirty
set -l stat (hg status -mard 2>/dev/null)
test -n "$stat"
end
function _is_hg_repo
fish_print_hg_root >/dev/null
end
function _repo_branch_name
_$argv[1]_branch_name
end
function _is_repo_dirty
_is_$argv[1]_dirty
end
function _repo_type
if _is_hg_repo
echo hg
return 0
else if _is_git_repo
echo git
return 0
end
return 1
end
end
set -l cyan (set_color -o cyan)
set -l yellow (set_color -o yellow)
set -l red (set_color -o red)
set -l green (set_color -o green)
set -l blue (set_color -o blue)
set -l normal (set_color normal)
set -l arrow_color "$green"
if test $__last_command_exit_status != 0
set arrow_color "$red"
end
set -l arrow "$arrow_color"
if fish_is_root_user
set arrow "$arrow_color# "
end
set -l cwd $cyan(basename (prompt_pwd))
set -l repo_info
if set -l repo_type (_repo_type)
set -l repo_branch $red(_repo_branch_name $repo_type)
set repo_info "$blue $repo_type:($repo_branch$blue)"
if _is_repo_dirty $repo_type
set -l dirty "$yellow"
set repo_info "$repo_info$dirty"
end
end
echo -n -s $arrow ' '$cwd $repo_info $normal ' '
end

View file

@ -1,6 +0,0 @@
local ok, alpha = pcall(require, "alpha")
if not ok then
return
end
alpha.setup(require("alpha.themes.startify").config)

View file

@ -3,7 +3,7 @@ if not ok then
return return
end end
vim.g.catppuccin_flavour = "latte" -- latte, frappe, macchiato, mocha vim.g.catppuccin_flavour = "mocha" -- latte, frappe, macchiato, mocha
catppuccin.setup { catppuccin.setup {
compile = { compile = {

View file

@ -4,8 +4,6 @@ if not ok then
return return
end end
local nmap = require("my.utils").nmap
local border = { local border = {
{ "", "FloatBorder" }, { "", "FloatBorder" },
{ "", "FloatBorder" }, { "", "FloatBorder" },
@ -60,12 +58,7 @@ local format_handler = function(err, result, ctx)
end end
local on_attach = function(client, bufnr) local on_attach = function(client, bufnr)
nmap("<Leader>r", vim.lsp.buf.rename, "Rename", bufnr) require("my.keymaps").lsp_keymaps(client, bufnr)
nmap("<Leader>cf", vim.lsp.buf.format, "Format document", bufnr)
nmap("<Leader>ca", vim.lsp.buf.code_action, "Code actions", bufnr)
nmap("<Leader>ci", vim.lsp.buf.implementation, "Go to implementation", bufnr)
nmap("<Leader>D", vim.lsp.buf.type_definition, "Go to type definition", bufnr)
nmap("gr", "<Cmd>Telescope lsp_references<CR>", "View references", bufnr)
if client.server_capabilities.completionProvider then if client.server_capabilities.completionProvider then
vim.api.nvim_buf_set_option(bufnr, "omnifunc", "v:lua.vim.lsp.omnifunc") vim.api.nvim_buf_set_option(bufnr, "omnifunc", "v:lua.vim.lsp.omnifunc")
@ -75,10 +68,6 @@ local on_attach = function(client, bufnr)
vim.api.nvim_buf_set_option(bufnr, "tagfunc", "v:lua.vim.lsp.tagfunc") vim.api.nvim_buf_set_option(bufnr, "tagfunc", "v:lua.vim.lsp.tagfunc")
end end
if client.server_capabilities.hoverProvider then
nmap("K", vim.lsp.buf.hover, "LSP hover", bufnr)
end
-- Highlight on cursor hold -- Highlight on cursor hold
if client.server_capabilities.documentHighlightProvider then if client.server_capabilities.documentHighlightProvider then
vim.api.nvim_create_autocmd({ "CursorHold" }, { vim.api.nvim_create_autocmd({ "CursorHold" }, {
@ -156,13 +145,10 @@ local servers = {
}, },
}, },
}, },
ocamllsp = {}, elixirls = {
-- denols = {}, cmd = { "elixir-ls" }
-- svelte = {}, },
-- tailwindcss = { tsserver = {},
-- root_dir = lspconfig.util.root_pattern("tailwind.config.js", "tailwind.config.ts", "tailwind.config.cjs"),
-- },
-- tsserver = {},
} }
for lsp, settings in pairs(servers) do for lsp, settings in pairs(servers) do

View file

@ -23,6 +23,7 @@ lualine.setup {
options = { options = {
theme = "auto", theme = "auto",
globalstatus = true, globalstatus = true,
section_separators = "",
}, },
sections = { sections = {
lualine_b = { lualine_b = {

View file

@ -0,0 +1,6 @@
local ok, mason = pcall(require, "mason")
if not ok then
return
end
mason.setup()

View file

@ -0,0 +1,24 @@
local ok, oil = pcall(require, "oil")
if not ok then
return
end
oil.setup {
keymaps = {
["g?"] = "actions.show_help",
["<CR>"] = "actions.select",
["<C-v>"] = "actions.select_vsplit",
["<C-s>"] = "actions.select_split",
["<C-t>"] = "actions.select_tab",
["<C-p>"] = "actions.preview",
["<C-c>"] = "actions.close",
["r"] = "actions.refresh",
["-"] = "actions.parent",
["_"] = "actions.open_cwd",
["`"] = "actions.cd",
["~"] = "actions.tcd",
["g."] = "actions.toggle_hidden",
},
use_default_keymaps = false,
}

View file

@ -4,16 +4,39 @@ if not ok then
return return
end end
local nmap = require("my.utils").nmap telescope.setup {
extensions = {
fzf = {
fuzzy = true,
override_generic_sorter = true,
override_file_sorter = true,
case_mode = "smart_case",
}
}
}
telescope.setup {} local function project()
local exclusions = {
"**/.git/",
"*.svg",
"*.png",
"*.jpg",
}
local function project_or_files() local find_command = nil
local opts = { show_untracked = true } if FD_EXISTS == 1 then
local ok = pcall(builtin.git_files, opts) find_command = { "fd", "--hidden", "-t", "f" }
if not ok then for _, value in ipairs(exclusions) do
builtin.fd(opts) table.insert(find_command, "--exclude")
table.insert(find_command, value)
end end
elseif RIPGREP_EXISTS == 1 then
find_command = { "rg", "--files", "--hidden", "--glob", "!**/.git/*" }
end
builtin.find_files {
find_command = find_command,
}
end end
local function dotfiles() local function dotfiles()
@ -24,7 +47,10 @@ local function dotfiles()
} }
end end
nmap("<C-p>", project_or_files, "Find project files") telescope.load_extension("fzf")
nmap("<Leader>fn", dotfiles, "Dotfiles")
nmap("<Leader>fg", builtin.live_grep, "Live grep") require("my.keymaps").telescope_keymaps {
nmap("<Leader>gs", builtin.git_status, "Git status") project = project,
dotfiles = dotfiles,
builtin = builtin,
}

View file

@ -6,9 +6,10 @@ end
treesitter.setup { treesitter.setup {
highlight = { highlight = {
enable = true, enable = true,
additional_vim_regex_highlighting = false,
}, },
indent = { indent = {
enable = { "php" }, enable = false,
}, },
textobjects = { textobjects = {
select = { select = {

View file

@ -5,8 +5,13 @@ Configuration Home: https://github.com/esprssoo/dotfiles
--]] --]]
FD_EXISTS = vim.fn.executable("fd")
RIPGREP_EXISTS = vim.fn.executable("rg")
vim.g.mapleader = " " vim.g.mapleader = " "
vim.g.netrw_banner = 0 -- vim.g.netrw_banner = 0
vim.g.loaded_netrw = 1
vim.g.loaded_netrwPlugin = 1
require "my.plugins" require "my.plugins"
require "my.options" require "my.options"

View file

@ -39,12 +39,15 @@ vmap("<A-k>", ":m '<-2<CR>gv=gv")
nmap("<Esc>", vim.cmd.nohl) nmap("<Esc>", vim.cmd.nohl)
nmap("<Tab>", "<C-^>") nmap("<Tab>", "<C-^>")
nmap("<C-i>", "<Tab>") -- Re-bind for jump list
-- nmap("<Leader>n", "<Cmd>windo set nu! relativenumber!<CR>") -- nmap("<Leader>n", "<Cmd>windo set nu! relativenumber!<CR>")
-- nmap("<Leader>t", "<Cmd>windo set expandtab!<CR>") -- nmap("<Leader>t", "<Cmd>windo set expandtab!<CR>")
-- nmap("<Leader>.", "<Cmd>w<CR>") -- nmap("<Leader>.", "<Cmd>w<CR>")
-- nmap("S", require("my.nodesplit").split) -- nmap("S", require("my.nodesplit").split)
nmap("[d", vim.diagnostic.goto_prev, "previous diagnostic") nmap("[d", vim.diagnostic.goto_prev, "previous diagnostic")
nmap("]d", vim.diagnostic.goto_next, "next diagnostic") nmap("]d", vim.diagnostic.goto_next, "next diagnostic")
nmap("[q", vim.cmd.cprevious, "quickfix previous")
nmap("]q", vim.cmd.cnext, "quickfix next")
nmap("<Leader>q", vim.diagnostic.setqflist, "set diagnostic to quickfix list") nmap("<Leader>q", vim.diagnostic.setqflist, "set diagnostic to quickfix list")
-- nmap("<F2>", utils.reload, "reload configuration") -- nmap("<F2>", utils.reload, "reload configuration")
nmap("[t", vim.cmd.tabp, "previous tab") nmap("[t", vim.cmd.tabp, "previous tab")
@ -58,3 +61,29 @@ imap("jk", "<Esc>")
vmap("<Leader>p", '"_dP') vmap("<Leader>p", '"_dP')
vmap(">", ">gv") vmap(">", ">gv")
vmap("<", "<gv") vmap("<", "<gv")
local function lsp_keymaps(client, bufnr)
nmap("<Leader>r", vim.lsp.buf.rename, "Rename", bufnr)
nmap("<Leader>cf", vim.lsp.buf.format, "Format document", bufnr)
nmap("<Leader>ca", vim.lsp.buf.code_action, "Code actions", bufnr)
nmap("<Leader>ci", vim.lsp.buf.implementation, "Go to implementation", bufnr)
nmap("<Leader>D", vim.lsp.buf.type_definition, "Go to type definition", bufnr)
nmap("gr", "<Cmd>Telescope lsp_references<CR>", "View references", bufnr)
if client.server_capabilities.hoverProvider then
nmap("K", vim.lsp.buf.hover, "LSP hover", bufnr)
end
end
local function telescope_keymaps(fns)
nmap("<C-p>", fns.project, "Find project files")
nmap("<Leader>fn", fns.dotfiles, "Dotfiles")
nmap("<Leader><C-p>", fns.builtin.git_files, "Find git files")
nmap("<Leader>fg", fns.builtin.live_grep, "Live grep")
nmap("<Leader>gs", fns.builtin.git_status, "Git status")
end
return {
lsp_keymaps = lsp_keymaps,
telescope_keymaps = telescope_keymaps,
}

View file

@ -19,18 +19,20 @@ end
require "paq" { require "paq" {
"savq/paq-nvim", "savq/paq-nvim",
"nvim-lua/plenary.nvim", "nvim-lua/plenary.nvim",
{ "nvim-telescope/telescope.nvim", branch = "0.1.x" },
{ "catppuccin/nvim", as = "catppuccin" },
"lewis6991/gitsigns.nvim", "lewis6991/gitsigns.nvim",
"kyazdani42/nvim-web-devicons", "kyazdani42/nvim-web-devicons",
"lukas-reineke/indent-blankline.nvim", "lukas-reineke/indent-blankline.nvim",
"nvim-lualine/lualine.nvim", "nvim-lualine/lualine.nvim",
"windwp/nvim-autopairs", "windwp/nvim-autopairs",
"goolord/alpha-nvim",
"mickael-menu/zk-nvim", "mickael-menu/zk-nvim",
{ "nvim-telescope/telescope.nvim", branch = "0.1.x" },
{ "nvim-telescope/telescope-fzf-native.nvim", run = "make" },
{ "catppuccin/nvim", as = "catppuccin" },
{ "williamboman/mason.nvim", branch = "v1.0.1" },
"stevearc/oil.nvim",
-- Treesitter -- Treesitter
{ "nvim-treesitter/nvim-treesitter", run = vim.cmd.TSUpdate, branch = "v0.9.0" }, { "nvim-treesitter/nvim-treesitter", branch = "master" },
"nvim-treesitter/playground", "nvim-treesitter/playground",
"nvim-treesitter/nvim-treesitter-textobjects", "nvim-treesitter/nvim-treesitter-textobjects",
@ -44,5 +46,4 @@ require "paq" {
"L3MON4D3/LuaSnip", "L3MON4D3/LuaSnip",
"nvim-lua/lsp-status.nvim", "nvim-lua/lsp-status.nvim",
"onsails/lspkind.nvim", "onsails/lspkind.nvim",
"mfussenegger/nvim-lint",
} }

View file

@ -55,3 +55,10 @@
Καθαρισμός Καθαρισμός
όλους όλους
ταυτίζοντας ταυτίζοντας
συμφωνείς
ίσως
δείξεις
πως
πώς
Νίκος
Παπαδάκης

View file

@ -4,11 +4,11 @@ return {
font = wezterm.font 'JetBrainsMono Nerd Font Mono', font = wezterm.font 'JetBrainsMono Nerd Font Mono',
-- freetype_load_target = 'Light', -- freetype_load_target = 'Light',
-- freetype_render_target = 'HorizontalLcd', -- freetype_render_target = 'HorizontalLcd',
color_scheme = 'Catppuccin Frappe', color_scheme = 'Catppuccin Mocha',
window_background_opacity = 0.9, window_background_opacity = 0.9,
max_fps = 165, max_fps = 165,
front_end = "WebGpu", -- front_end = "WebGpu",
webgpu_power_preference = "HighPerformance", -- webgpu_power_preference = "HighPerformance",
initial_cols = 160, initial_cols = 160,
initial_rows = 48, initial_rows = 48,
window_padding = { window_padding = {