Useful snippets

    Check if a file exists (pre-push example)

    Tue 03. March 2026 | 2026-03-03

    Bash

    Check existence

    lpo() {
      if [[ -f ".git/hooks/pre-push" ]]; then
        echo ".git/hooks/pre-push was found:"
        echo "pre-push is activated"
      else
        if [[ -f ".git/hooks/pre-push.sample" ]]; then
          echo ".git/hooks/pre-push was not found:"
          echo "but .git/hooks/pre-push.sample was found:"
          echo "pre-push is deactivated"
        else
          echo "Hmmmmm"
        fi
      fi
    }

    Nvim edit file

    po() {
      if [[ -f ".git/hooks/pre-push" ]]; then
        echo ".git/hooks/pre-push was found:"
        nvim .git/hooks/pre-push
      else
        if [[ -f ".git/hooks/pre-push.sample" ]]; then
          echo ".git/hooks/pre-push was not found:"
          echo "but .git/hooks/pre-push.sample was found:"
          nvim .git/hooks/pre-push.sample
        else
          echo "Hmmmmm"
        fi
      fi
    }

    Lua nvim edit file

    function file_exists(name)
       local f=io.open(name,"r")
       if f~=nil then io.close(f) return true else return false end
    end
    
    function open_prepush()
      if file_exists(".git/hooks/pre-push") then
        vim.cmd("vsplit .git/hooks/pre-push")
      elseif file_exists(".git/hooks/pre-push.sample") then
        vim.cmd("vsplit .git/hooks/pre-push.sample")
      else
        vim.cmd("echo 'Hmmmmm'")
      end
    end
    
    vim.keymap.set("n", "<leader><leader>po", open_prepush, { desc = "Open pre-push a new split" })

    prepush / git hooks

    Wed 25. February 2026 | 2026-02-25

    To activate pre-push, rename .git/hooks/pre-push.sample to .git/hooks/pre-push


    Example script:

    GREEN='\033[0;32m'
    RED='\033[1;91m'
    RESET='\033[0m'
    
    branch_name="$(git branch --show-current)"
    allowed_branch_name="my-branch"
    
    if [ "$branch_name" != "$allowed_branch_name" ]; then
      echo "Current branch: ${RED}${branch_name}${RESET}"
      echo "Allowed branch: ${GREEN}${allowed_branch_name}${RESET}" 
      echo
      echo "You can't push directly to this branch."
      exit 1
    fi

    Insert the current branch into the top of the pre-push file

    sed -i "" "s&An example&$(git branch --show-current)\n# An example&" .git/hooks/pre-push 

    Replace "An example" with current branch \n # An example

    Copy current branch to Mac clipboard

    echo $(git branch --show-current) | pbcopy 

    From vim:

    :!echo $(git branch --show-current) | pbcopy 

    UV python

    Thu 22. January 2026 | 2026-01-22

    Docs: https://docs.astral.sh/uv/


    Install Python version: https://docs.astral.sh/uv/getting-started/features/#python-versions

    uv python install <version>

    Uninstall python version

    uv python uninstall <version> 

    Initialize project

    uv init

    Set correct python version in .python-version

    (re)-build venv

    uv venv

    Updates .venv files

    Activate venv environment

    source .venv/bin/activate
    deactivate

    Install dependencies from requirements.txt

    uv pip install -r requirements.txt

    Install one single dependency

    uv python add <package> 

    Run package command

    uv run <command> 

    bash colors

    Fri 09. January 2026 | 2026-01-09

    GREEN='\033[0;32m'
    RED='\033[1;91m'
    RESET='\033[0m'
    echo -e "${RED}Found errors:${RESET}" 
    echo -e "${GREEN}Success!${RESET}" 

    https://gist.github.com/JBlond/2fea43a3049b38287e5e9cefc87b2124

    Regular Colors

    Value Color
    \e[0;30m Black
    \e[0;31m Red
    \e[0;32m Green
    \e[0;33m Yellow
    \e[0;34m Blue
    \e[0;35m Purple
    \e[0;36m Cyan
    \e[0;37m White

    Bold

    Value Color
    \e[1;30m Black
    \e[1;31m Red
    \e[1;32m Green
    \e[1;33m Yellow
    \e[1;34m Blue
    \e[1;35m Purple
    \e[1;36m Cyan
    \e[1;37m White

    Underline

    Value Color
    \e[4;30m Black
    \e[4;31m Red
    \e[4;32m Green
    \e[4;33m Yellow
    \e[4;34m Blue
    \e[4;35m Purple
    \e[4;36m Cyan
    \e[4;37m White

    Background

    Value Color
    \e[40m Black
    \e[41m Red
    \e[42m Green
    \e[43m Yellow
    \e[44m Blue
    \e[45m Purple
    \e[46m Cyan
    \e[47m White

    High Intensity

    Value Color
    \e[0;90m Black
    \e[0;91m Red
    \e[0;92m Green
    \e[0;93m Yellow
    \e[0;94m Blue
    \e[0;95m Purple
    \e[0;96m Cyan
    \e[0;97m White

    Bold High Intensity

    Value Color
    \e[1;90m Black
    \e[1;91m Red
    \e[1;92m Green
    \e[1;93m Yellow
    \e[1;94m Blue
    \e[1;95m Purple
    \e[1;96m Cyan
    \e[1;97m White

    High Intensity backgrounds

    Value Color
    \e[0;100m Black
    \e[0;101m Red
    \e[0;102m Green
    \e[0;103m Yellow
    \e[0;104m Blue
    \e[0;105m Purple
    \e[0;106m Cyan
    \e[0;107m White

    Reset

    Value Color
    \e[0m Reset

    other styles

    echo -e "\e[1mbold\e[0m"
    echo -e "\e[3mitalic\e[0m"
    echo -e "\e[3m\e[1mbold italic\e[0m"
    echo -e "\e[4munderline\e[0m"
    echo -e "\e[9mstrikethrough\e[0m"
    echo -e "\e[31mHello World\e[0m"
    echo -e "\x1B[31mHello World\e[0m"