{"id":21911614,"url":"https://github.com/jdujava/fzf-tab-jd","last_synced_at":"2025-04-16T04:37:14.033Z","repository":{"id":168601817,"uuid":"613055922","full_name":"jdujava/fzf-tab-jd","owner":"jdujava","description":"My fork of fzf-tab","archived":false,"fork":false,"pushed_at":"2024-11-09T11:38:08.000Z","size":1117,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-29T04:51:20.023Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jdujava.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-03-12T18:54:55.000Z","updated_at":"2024-11-09T11:38:13.000Z","dependencies_parsed_at":"2024-03-12T16:52:14.110Z","dependency_job_id":"76554110-9f14-4e06-8839-67eb1a898161","html_url":"https://github.com/jdujava/fzf-tab-jd","commit_stats":null,"previous_names":["jdujava/fzf-tab-jd"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jdujava%2Ffzf-tab-jd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jdujava%2Ffzf-tab-jd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jdujava%2Ffzf-tab-jd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jdujava%2Ffzf-tab-jd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jdujava","download_url":"https://codeload.github.com/jdujava/fzf-tab-jd/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249195529,"owners_count":21228227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-28T18:06:57.182Z","updated_at":"2025-04-16T04:37:14.004Z","avatar_url":"https://github.com/jdujava.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"My fork of `fzf-tab`.\n\nTo set upstream remote to original fzf-tab repo:\n```sh\ngit remote add upstream git@github.com:Aloxaf/fzf-tab.git\n```\n\n# fzf-tab\n\n[![CI](https://github.com/Aloxaf/fzf-tab/workflows/ci/badge.svg)](https://github.com/Aloxaf/fzf-tab/actions?query=workflow%3Aci)\n[![GitHub license](https://img.shields.io/github/license/Aloxaf/fzf-tab)](https://github.com/Aloxaf/fzf-tab/blob/master/LICENSE)\n\nReplace zsh's default completion selection menu with fzf!\n\n[![asciicast](https://asciinema.org/a/293849.svg)](https://asciinema.org/a/293849)\n\n\u003c!-- markdown-toc start - Don't edit this section. Run M-x markdown-toc-refresh-toc --\u003e\n**Table of Contents**\n\n- [fzf-tab](#fzf-tab)\n- [Install](#install)\n    - [Manual](#manual)\n    - [Antigen](#antigen)\n    - [Zinit](#zinit)\n    - [Oh-My-Zsh](#oh-my-zsh)\n    - [Prezto](#prezto)\n- [Usage](#usage)\n    - [Configure](#configure)\n    - [Tmux](#tmux)\n    - [Binary module](#binary-module)\n- [Difference from other plugins](#difference-from-other-plugins)\n- [Compatibility with other plugins](#compatibility-with-other-plugins)\n- [Related projects](#related-projects)\n\n\u003c!-- markdown-toc end --\u003e\n\n# Install\n\n\u003e [!IMPORTANT]\n\u003e\n\u003e 1. make sure [fzf](https://github.com/junegunn/fzf)  is installed\n\u003e 2. fzf-tab needs to be loaded after `compinit`, but before plugins which will wrap widgets, such as [zsh-autosuggestions](https://github.com/zsh-users/zsh-autosuggestions) or [fast-syntax-highlighting](https://github.com/zdharma-continuum/fast-syntax-highlighting)\n\u003e 3. Completions should be configured before `compinit`, as stated in the [zsh-completions manual installation guide](https://github.com/zsh-users/zsh-completions#manual-installation).\n\n### Manual\n\nFirst, clone this repository.\n\n```zsh\ngit clone https://github.com/Aloxaf/fzf-tab ~/somewhere\n```\n\nThen add the following line to your `~/.zshrc`.\n\n```zsh\nautoload -U compinit; compinit\nsource ~/somewhere/fzf-tab.plugin.zsh\n```\n\n### Antigen\n\n```zsh\nantigen bundle Aloxaf/fzf-tab\n```\n\n### Zinit\n\n```zsh\nzinit light Aloxaf/fzf-tab\n```\n\n### Oh-My-Zsh\n\nClone this repository to your custom directory and then add `fzf-tab` to your plugin list.\n\n```zsh\ngit clone https://github.com/Aloxaf/fzf-tab ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/fzf-tab\n```\n\n### Prezto\n\nClone this repository to your contrib directory and then add `fzf-tab` to your module list in `.zpreztorc`.\n\n```zsh\ngit clone https://github.com/Aloxaf/fzf-tab $ZPREZTODIR/contrib/fzf-tab\n```\n\n# Usage\n\nJust press \u003ckbd\u003eTab\u003c/kbd\u003e as usual~\n\nAvailable keybindings:\n\n- \u003ckbd\u003eCtrl\u003c/kdb\u003e+\u003ckdb\u003eSpace\u003c/kbd\u003e: select multiple results, can be configured by `fzf-bindings` tag\n\n- \u003ckbd\u003eF1\u003c/kbd\u003e/\u003ckbd\u003eF2\u003c/kbd\u003e: switch between groups, can be configured by `switch-group` tag\n\n- \u003ckbd\u003e/\u003c/kbd\u003e: trigger continuous completion (useful when completing a deep path), can be configured by `continuous-trigger` tag\n\nAvailable commands:\n\n- `disable-fzf-tab`: disable fzf-tab and fallback to compsys\n\n- `enable-fzf-tab`: enable fzf-tab\n\n- `toggle-fzf-tab`: toggle the state of fzf-tab. This is also a zle widget.\n\n## Configure\n\nA common configuration is:\n\n```zsh\n# disable sort when completing `git checkout`\nzstyle ':completion:*:git-checkout:*' sort false\n# set descriptions format to enable group support\n# NOTE: don't use escape sequences (like '%F{red}%d%f') here, fzf-tab will ignore them\nzstyle ':completion:*:descriptions' format '[%d]'\n# set list-colors to enable filename colorizing\nzstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}\n# force zsh not to show completion menu, which allows fzf-tab to capture the unambiguous prefix\nzstyle ':completion:*' menu no\n# preview directory's content with eza when completing cd\nzstyle ':fzf-tab:complete:cd:*' fzf-preview 'eza -1 --color=always $realpath'\n# custom fzf flags\n# NOTE: fzf-tab does not follow FZF_DEFAULT_OPTS by default\nzstyle ':fzf-tab:*' fzf-flags --color=fg:1,fg+:2 --bind=tab:accept\n# To make fzf-tab follow FZF_DEFAULT_OPTS.\n# NOTE: This may lead to unexpected behavior since some flags break this plugin. See Aloxaf/fzf-tab#455.\nzstyle ':fzf-tab:*' use-fzf-default-opts yes\n# switch group using `\u003c` and `\u003e`\nzstyle ':fzf-tab:*' switch-group '\u003c' '\u003e'\n```\n\n## Tmux\n\nIf you're using tmux \u003e= 3.2, we provide a script `ftb-tmux-popup` to make full use of it's \"popup\" feature.\n\n```zsh\nzstyle ':fzf-tab:*' fzf-command ftb-tmux-popup\n```\n\nBTW, you can also use this script outside the fzf-tab.\n\n```zsh\nls | ftb-tmux-popup\n```\n\n[![asciicast](https://asciinema.org/a/367471.svg)](https://asciinema.org/a/367471)\n\nFor more information, please see [Wiki#Configuration](https://github.com/Aloxaf/fzf-tab/wiki/Configuration).\n\n## Binary module\n\nBy default, fzf-tab uses [zsh-ls-colors](https://github.com/xPMo/zsh-ls-colors) to parse and apply ZLS_COLORS if you have set the `list-colors` tag.\n\nHowever, it is a pure zsh script and is slow if you have too many files to colorize.\nfzf-tab is shipped with a binary module to speed up this process. You can build it with `build-fzf-tab-module`, then it will be enabled automatically.\n\n# Difference from other plugins\n\nfzf-tab doesn't do \"complete\", it just shows you the results of the default completion system.\n\nSo it works EVERYWHERE (variables, function names, directory stack, in-word completion, etc.).\nAnd most of your configuration for default completion system is still valid.\n\n# Compatibility with other plugins\n\nSome plugins may also bind \"^I\" to their custom widget, like [fzf/shell/completion.zsh](https://github.com/junegunn/fzf/blob/master/shell/completion.zsh) or [ohmyzsh/lib/completion.zsh](https://github.com/ohmyzsh/ohmyzsh/blob/master/lib/completion.zsh#L61-L73).\n\nBy default, fzf-tab will call the widget previously bound to \"^I\" to get the completion list. So there is no problem in most cases, unless fzf-tab is initialized before a plugin which doesn't handle the previous binding properly.\n\nSo if you find your fzf-tab doesn't work properly, **please make sure it is the last plugin to bind \"^I\"** (If you don't know what I mean, just put it to the end of your plugin list).\n\n# Related projects\n\n- https://github.com/lincheney/fzf-tab-completion (fzf tab completion for zsh, bash and GNU readline apps)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjdujava%2Ffzf-tab-jd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjdujava%2Ffzf-tab-jd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjdujava%2Ffzf-tab-jd/lists"}