Compare commits
9 Commits
b53f1ee586
...
05ee0bf5f1
Author | SHA1 | Date |
---|---|---|
|
05ee0bf5f1 | |
|
46543f4eb8 | |
|
058dc4107c | |
|
b8953fc74a | |
|
b64d22e114 | |
|
0a50cd90b3 | |
|
4dbeaccf51 | |
|
df7d2aca6b | |
|
6b350ab1dd |
57
.bin/git-cb
57
.bin/git-cb
|
@ -11,13 +11,57 @@ types=(
|
||||||
selected=$(printf '%s\n' "${types[@]}" | fzf --prompt="Select branch type: ") || exit 1
|
selected=$(printf '%s\n' "${types[@]}" | fzf --prompt="Select branch type: ") || exit 1
|
||||||
type=${selected%% *}
|
type=${selected%% *}
|
||||||
|
|
||||||
|
echo "Fetching Jira tickets..."
|
||||||
|
jira_data=$(jira issue list --assignee=hektor.misplon@rightcrowd.com --order-by=priority --plain --no-headers 2>/dev/null)
|
||||||
|
|
||||||
|
if [[ $? -ne 0 || -z "$jira_data" ]]; then
|
||||||
|
echo "Warning: Could not fetch Jira tickets or no tickets found."
|
||||||
|
echo "Proceeding without ticket ID..."
|
||||||
|
ticket_id=""
|
||||||
|
else
|
||||||
|
# Create formatted list for fzf: "TICKET-123 - Issue description"
|
||||||
|
formatted_tickets=$(echo "$jira_data" | awk '{
|
||||||
|
ticket_id = $2
|
||||||
|
$1 = $2 = ""
|
||||||
|
description = $0
|
||||||
|
gsub(/^[ \t]+/, "", description)
|
||||||
|
if (length(description) > 60) {
|
||||||
|
description = substr(description, 1, 57) "..."
|
||||||
|
}
|
||||||
|
print ticket_id " - " description
|
||||||
|
}')
|
||||||
|
|
||||||
|
if [[ -z "$formatted_tickets" ]]; then
|
||||||
|
echo "No tickets found. Proceeding without ticket ID..."
|
||||||
|
ticket_id=""
|
||||||
|
else
|
||||||
|
# Let user select a ticket or skip
|
||||||
|
echo ""
|
||||||
|
selected_ticket=$(echo -e "SKIP - Create branch without ticket ID\n$formatted_tickets" | \
|
||||||
|
fzf --prompt="Select Jira ticket (or skip): " --height=40%) || exit 1
|
||||||
|
|
||||||
|
if [[ "$selected_ticket" == "SKIP"* ]]; then
|
||||||
|
ticket_id=""
|
||||||
|
else
|
||||||
|
ticket_id=${selected_ticket%% -*}
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
editor="${EDITOR:-vi}"
|
editor="${EDITOR:-vi}"
|
||||||
tmpfile=$(mktemp)
|
tmpfile=$(mktemp)
|
||||||
|
|
||||||
cat > "$tmpfile" << 'EOF'
|
if [[ -n "$ticket_id" ]]; then
|
||||||
# Enter your branch description below in kebab case (e.g. `my-description`):
|
cat > "$tmpfile" << EOF
|
||||||
|
# Selected ticket: $ticket_id
|
||||||
|
# Enter your branch description below in kebab case (e.g. \`my-description\`):
|
||||||
|
# The ticket ID will be automatically included in the branch name.
|
||||||
EOF
|
EOF
|
||||||
|
else
|
||||||
|
cat > "$tmpfile" << 'EOF'
|
||||||
|
# Enter your branch description below in kebab case (e.g. `my-description`):
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
|
||||||
"$editor" "$tmpfile"
|
"$editor" "$tmpfile"
|
||||||
|
|
||||||
|
@ -36,6 +80,11 @@ if [[ ! "$desc" =~ ^[a-z0-9]+(-[a-z0-9]+)*$ ]]; then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
branch="$type/$desc"
|
if [[ -n "$ticket_id" ]]; then
|
||||||
|
branch="$type/$ticket_id-$desc"
|
||||||
|
else
|
||||||
|
branch="$type/$desc"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Creating branch: $branch"
|
||||||
git checkout -b "$branch"
|
git checkout -b "$branch"
|
||||||
|
|
|
@ -44,6 +44,7 @@ parallel
|
||||||
pass
|
pass
|
||||||
pkgbuild-language-server
|
pkgbuild-language-server
|
||||||
pnpm
|
pnpm
|
||||||
|
ripgrep
|
||||||
sshfs
|
sshfs
|
||||||
stylelint
|
stylelint
|
||||||
svelte-language-server
|
svelte-language-server
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
# Get local IP
|
|
||||||
|
|
||||||
ip addr show $@ | awk '/inet / {gsub(/\/.*/,"",$2); print $2}' | tail -n 1
|
|
|
@ -9,20 +9,20 @@ require("conform").setup({
|
||||||
bash = { "shellcheck" },
|
bash = { "shellcheck" },
|
||||||
c = { "clang-format" },
|
c = { "clang-format" },
|
||||||
cpp = { "clang-format" },
|
cpp = { "clang-format" },
|
||||||
css = { "prettierd", "prettier" },
|
css = { "prettierd", "prettier", stop_after_first = true },
|
||||||
gdscript = { "gdformat" },
|
gdscript = { "gdformat" },
|
||||||
haskell = { "ormolu" },
|
haskell = { "ormolu" },
|
||||||
html = { "prettierd", "prettier" },
|
html = { "prettierd", "prettier", stop_after_first = true },
|
||||||
lua = { "stylua" }, -- configured in stylua.toml
|
lua = { "stylua" }, -- configured in stylua.toml
|
||||||
markdown = { "prettierd", "prettier" },
|
markdown = { "prettierd", "prettier", stop_after_first = true },
|
||||||
javascript = { "prettierd", "prettier" },
|
javascript = { "prettierd", "prettier", stop_after_first = true },
|
||||||
javascriptreact = { "prettierd", "prettier" },
|
javascriptreact = { "prettierd", "prettier", stop_after_first = true },
|
||||||
json = { "prettierd", "prettier" },
|
json = { "prettierd", "prettier", stop_after_first = true },
|
||||||
jsonc = { "prettierd", "prettier" },
|
jsonc = { "prettierd", "prettier", stop_after_first = true },
|
||||||
python = { "isort", "black" },
|
python = { "isort", "black" },
|
||||||
svelte = { "prettierd", "prettier" },
|
svelte = { "prettierd", "prettier", stop_after_first = true },
|
||||||
typescript = { "prettierd", "prettier" },
|
typescript = { "prettierd", "prettier", stop_after_first = true },
|
||||||
typescriptreact = { "prettierd", "prettier" },
|
typescriptreact = { "prettierd", "prettier", stop_after_first = true },
|
||||||
yaml = { "prettierd", "prettier" },
|
yaml = { "prettierd", "prettier", stop_after_first = true },
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,11 +0,0 @@
|
||||||
local gitblame = require("gitblame")
|
|
||||||
|
|
||||||
gitblame.setup({
|
|
||||||
enabled = false,
|
|
||||||
date_format = "%r",
|
|
||||||
message_template = " [<date> (<author>) <sha> <summary>]",
|
|
||||||
message_when_not_committed = " [Uncommitted changes]",
|
|
||||||
delay = 250,
|
|
||||||
})
|
|
||||||
|
|
||||||
-- vim.g.gitblame_virtual_text_column = 80
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
local gitsigns = require("gitsigns")
|
||||||
|
|
||||||
|
gitsigns.setup({
|
||||||
|
current_line_blame_opts = { delay = 0 },
|
||||||
|
current_line_blame_formatter = "<author>, <author_time:%R> - <summary>",
|
||||||
|
})
|
||||||
|
|
||||||
|
vim.api.nvim_create_user_command("Blame", gitsigns.toggle_current_line_blame, { nargs = "?" })
|
|
@ -10,9 +10,20 @@ local capabilities = cmp_nvim_lsp.default_capabilities()
|
||||||
|
|
||||||
local servers = {
|
local servers = {
|
||||||
bashls = {},
|
bashls = {},
|
||||||
eslint = {},
|
eslint = {
|
||||||
|
settings = {
|
||||||
|
--Assuming prettier/prettierd will handle formatting, we don't need to see these errors
|
||||||
|
rulesCustomizations = {
|
||||||
|
{ rule = "prettier/prettier", severity = "off" },
|
||||||
|
},
|
||||||
|
format = false,
|
||||||
|
},
|
||||||
|
},
|
||||||
emmet_language_server = {},
|
emmet_language_server = {},
|
||||||
gdscript = {},
|
gdscript = {},
|
||||||
|
helm_ls = {
|
||||||
|
filetypes = { "yaml", "helm", "yaml.helm-values" },
|
||||||
|
},
|
||||||
hls = { filetypes = { "haskell", "lhaskell", "cabal" } },
|
hls = { filetypes = { "haskell", "lhaskell", "cabal" } },
|
||||||
html = {},
|
html = {},
|
||||||
jsonls = {
|
jsonls = {
|
||||||
|
|
|
@ -63,7 +63,7 @@ bootstrap_paq({
|
||||||
{ "JoosepAlviste/nvim-ts-context-commentstring" }, -- commentstring based on cursor position (e.g. for Svelte)
|
{ "JoosepAlviste/nvim-ts-context-commentstring" }, -- commentstring based on cursor position (e.g. for Svelte)
|
||||||
{ "Wansmer/treesj" },
|
{ "Wansmer/treesj" },
|
||||||
{ "michaelb/sniprun", build = "sh install.sh" },
|
{ "michaelb/sniprun", build = "sh install.sh" },
|
||||||
{ "f-person/git-blame.nvim" },
|
{ "lewis6991/gitsigns.nvim" },
|
||||||
{ "brenoprata10/nvim-highlight-colors" },
|
{ "brenoprata10/nvim-highlight-colors" },
|
||||||
{ "razak17/tailwind-fold.nvim" },
|
{ "razak17/tailwind-fold.nvim" },
|
||||||
{ "rmagatti/auto-session" },
|
{ "rmagatti/auto-session" },
|
||||||
|
@ -74,6 +74,7 @@ bootstrap_paq({
|
||||||
{ 'olimorris/codecompanion.nvim' },
|
{ 'olimorris/codecompanion.nvim' },
|
||||||
{ "ravitemer/mcphub.nvim", build = "pnpm install -g mcp-hub@latest" },
|
{ "ravitemer/mcphub.nvim", build = "pnpm install -g mcp-hub@latest" },
|
||||||
{ "zbirenbaum/copilot.lua" },
|
{ "zbirenbaum/copilot.lua" },
|
||||||
{ "zbirenbaum/copilot-cmp" }
|
{ "zbirenbaum/copilot-cmp" },
|
||||||
|
{ "qvalentin/helm-ls.nvim", ft = "helm" },
|
||||||
})
|
})
|
||||||
-- }}}
|
-- }}}
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
local ls = require("luasnip")
|
||||||
|
local s = ls.snippet
|
||||||
|
local t = ls.text_node
|
||||||
|
local i = ls.insert_node
|
||||||
|
|
||||||
|
return {
|
||||||
|
s("host", {
|
||||||
|
t("Host "),
|
||||||
|
i(1, "alias"),
|
||||||
|
t({ "", "\tHostName " }),
|
||||||
|
i(2, "name"),
|
||||||
|
t({ "", "\tUser " }),
|
||||||
|
i(3, "user"),
|
||||||
|
}),
|
||||||
|
}
|
|
@ -0,0 +1,3 @@
|
||||||
|
sync.server.url=
|
||||||
|
sync.server.client_id=
|
||||||
|
sync.encryption_secret=
|
Loading…
Reference in New Issue