|
96 | 96 | if [[ -z "${HOMETMP+x}" ]] || [[ -z "${HOMETMP##*[[:space:]]}" ]]; then |
97 | 97 | HOMETMP="${HOME}/tmp" ; mkdir -p "${HOMETMP}" |
98 | 98 | fi |
| 99 | +if [[ -z "${HOST_TRIPLET}" ]] || [[ -z "${HOST_TRIPLET##*[[:space:]]}" ]]; then |
| 100 | + _HOST_TRIPLET="$(uname -m)-$(uname -s)" |
| 101 | + HOST_TRIPLET="$(echo "${_HOST_TRIPLET}" | tr -d '[:space:]')" |
| 102 | + export HOST_TRIPLET |
| 103 | +fi |
99 | 104 | if [[ -z "${USER_AGENT}" ]]; then |
100 | 105 | USER_AGENT="$(curl -qfsSL 'https://raw.githubusercontent.com/pkgforge/devscripts/refs/heads/main/Misc/User-Agents/ua_chrome_macos_latest.txt')" |
101 | 106 | fi |
@@ -258,6 +263,19 @@ function fix_validate_jsonl() |
258 | 263 | fi |
259 | 264 | } |
260 | 265 | export -f fix_validate_jsonl |
| 266 | +function init_fzf() |
| 267 | +{ |
| 268 | + if [[ "$(command -v bat)" && "$(command -v fd)" && "$(command -v fzf)" && "$(command -v tree)" ]]; then |
| 269 | + export FZF_DEFAULT_COMMAND='fd --type f --hidden --follow --exclude .git' |
| 270 | + #export FZF_DEFAULT_OPTS='--no-height --color=bg+:#343d46,gutter:-1,pointer:#ff3c3c,info:#0dbc79,hl:#0dbc79,hl+:#23d18b' |
| 271 | + export FZF_CTRL_T_COMMAND="${FZF_DEFAULT_COMMAND}" |
| 272 | + export FZF_CTRL_T_OPTS="--preview 'bat --color=always --line-range :50 {}'" |
| 273 | + export FZF_ALT_C_COMMAND='fd --type d "." --hidden --exclude .git' |
| 274 | + export FZF_ALT_C_OPTS="--preview 'tree -C {} | head -50'" |
| 275 | + eval "$(fzf --bash)" |
| 276 | + fi |
| 277 | +} |
| 278 | +export -f init_fzf |
261 | 279 | function install_soar_force() |
262 | 280 | { |
263 | 281 | if [[ ! -d "${HOME}/bin" ]]; then |
@@ -296,6 +314,18 @@ function refreshenv() |
296 | 314 | source "$(realpath "${HOME}/.bashrc" | tr -d '[:space:]')" |
297 | 315 | } |
298 | 316 | export -f refreshenv |
| 317 | +function setup_fzf() |
| 318 | +{ |
| 319 | + if [[ -d "${HOME}/.local/bin" ]] && [[ -w "${HOME}/.local/bin" ]]; then |
| 320 | + curl -w "(DL) <== %{url}\n" -qfsSL "https://bin.pkgforge.dev/${HOST_TRIPLET}/bat" -o "${HOME}/.local/bin/bat" |
| 321 | + curl -w "(DL) <== %{url}\n" -qfsSL "https://bin.pkgforge.dev/${HOST_TRIPLET}/fd" -o "${HOME}/.local/bin/fd" |
| 322 | + curl -w "(DL) <== %{url}\n" -qfsSL "https://bin.pkgforge.dev/${HOST_TRIPLET}/fzf" -o "${HOME}/.local/bin/fzf" |
| 323 | + curl -w "(DL) <== %{url}\n" -qfsSL "https://bin.pkgforge.dev/${HOST_TRIPLET}/tree" -o "${HOME}/.local/bin/tree" |
| 324 | + chmod 'a+x' "${HOME}/.local/bin/bat" "${HOME}/.local/bin/fd" "${HOME}/.local/bin/fzf" "${HOME}/.local/bin/tree" |
| 325 | + init_fzf && fzf --version && fzf |
| 326 | + fi |
| 327 | +} |
| 328 | +export -f setup_fzf |
299 | 329 | function strip_debug() |
300 | 330 | { |
301 | 331 | objcopy --remove-section=".comment" --remove-section=".note.*" "$1" 2>/dev/null |
@@ -391,13 +421,7 @@ if [[ "${NO_FZF}" != 1 ]]; then |
391 | 421 | fi |
392 | 422 | fi |
393 | 423 | if [[ "$(command -v bat)" && "$(command -v fd)" && "$(command -v fzf)" && "$(command -v tree)" ]]; then |
394 | | - export FZF_DEFAULT_COMMAND='fd --type f --hidden --follow --exclude .git' |
395 | | - #export FZF_DEFAULT_OPTS='--no-height --color=bg+:#343d46,gutter:-1,pointer:#ff3c3c,info:#0dbc79,hl:#0dbc79,hl+:#23d18b' |
396 | | - export FZF_CTRL_T_COMMAND="${FZF_DEFAULT_COMMAND}" |
397 | | - export FZF_CTRL_T_OPTS="--preview 'bat --color=always --line-range :50 {}'" |
398 | | - export FZF_ALT_C_COMMAND='fd --type d "." --hidden --exclude .git' |
399 | | - export FZF_ALT_C_OPTS="--preview 'tree -C {} | head -50'" |
400 | | - eval "$(fzf --bash)" |
| 424 | + init_fzf |
401 | 425 | fi |
402 | 426 | elif [[ "${NO_FZF}" == 1 ]]; then |
403 | 427 | disable_fzf &>/dev/null |
|
0 commit comments