• 0 Posts
  • 220 Comments
Joined 1 year ago
cake
Cake day: June 12th, 2023

help-circle



  • I’m gonna go ahead and say that the lawyers I implemented it for understand it a lot better than you (and yes even Google’s lawyers).

    If not in the EU, this doesn’t impact a business not planning to operate there.

    it does if you ever will operate there though. Many many companies eventually need to do business in the EU. So not following GDPR is just asking to never be allowed to operate there ever. Fine for local newspapers, not fine for a finance company that eventually needs to do business across national boundaries.



  • I have fzf-git for all of that, but honestly I don’t ever use it, as I’m hardly ever switching between branches and tab complete is enough for me in most cases.

    ###
    # FZF GIT
    ###
    # Deciphered from fzf-file-widget. Somewhat unclear why it doesn't exist already!
    function fzf_add_to_commandline -d 'add stdin to the command line, for fzf functions'
      #git checkout $1
      read -l result
      
      commandline -t ""
      commandline -it -- (string escape $result)
      commandline -f repaint
    end
    
    function fzf_checkout -d "git checkout"
      read -l result
      git checkout $result
    end
    
    
    # https://gist.github.com/aluxian/9c6f97557b7971c32fdff2f2b1da8209
    function __git_fzf_is_in_git_repo
      command -s -q git
        and git rev-parse HEAD >/dev/null 2>&1
    end
    
    function __git_fzf_git_status
      __git_fzf_is_in_git_repo; or return
      git -c color.status=always status --short | \
        fzf -m --ansi --preview 'git diff --color=always HEAD -- {-1} | head -500' | \
        cut -c4- | \
        sed 's/.* -> //' | \
        fzf_add_to_commandline
      commandline -f repaint
    end
    
    function __git_fzf_git_branch
      __git_fzf_is_in_git_repo; or return
      git branch -a --color=always | \
        grep -v '/HEAD\s' | \
        fzf -m --ansi --preview-window right:70% --preview 'git log --color=always --oneline --graph --date=short \
          --pretty="format:%C(auto)%cd %h%d %s %C(magenta)[%an]%Creset" \
          --print0 \
          --read0 \
          (echo {} | sed s/^..// | cut -d" " -f1) | head -'$LINES | \
        sed 's/^..//' | cut -d' ' -f1 | \
        sed 's#^remotes/##' | \
        # fzf_add_to_commandline | \
        fzf_checkout
    end
    
    function __git_fzf_git_tag
      __git_fzf_is_in_git_repo; or return
      git tag --sort -version:refname | \
        fzf -m --ansi --preview-window right:70% --preview 'git show --color=always {} | head -'$LINES | \
        fzf_add_to_commandline
    
    end
    
    function __git_fzf_git_log
      __git_fzf_is_in_git_repo; or return
      git log --color=always --graph --date=short --format="%C(auto)%cd %h%d %s %C(magenta)[%an]%Creset" | \
        fzf -m --ansi --reverse --preview 'git show --color=always (echo {} | grep -o "[a-f0-9]\{7,\}") | head -'$LINES | \
        sed -E 's/.*([a-f0-9]{7,}).*/\1/' | \
        fzf_add_to_commandline
    end
    
    # https://gist.github.com/junegunn/8b572b8d4b5eddd8b85e5f4d40f17236
    function git_fzf_key_bindings -d "Set custom key bindings for git+fzf"
      bind \ca\cs __git_fzf_git_status
      bind \ca\cf __git_fzf_git_branch
      bind \ca\ct __git_fzf_git_tag
      bind \ca\cl __git_fzf_git_log
    end
    
    git_fzf_key_bindings