# kien/ctrlp.vim

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/kien-ctrlp-vim).**

7,241 stars · 662 forks · VimL

## Links

- GitHub: https://github.com/kien/ctrlp.vim
- Homepage: kien.github.com/ctrlp.vim
- awesome-repositories: https://awesome-repositories.com/repository/kien-ctrlp-vim.md

## Description

ctrlp.vim is a fuzzy file navigation tool for the Vim editor. It enables the location and opening of files, buffers, tags, and recently used items through approximate string matching and regular expressions.

The project identifies project roots by scanning for version control markers and configuration files. It allows for the creation of new files and their required parent directories directly from the search interface, and can open multiple files simultaneously.

Broad capabilities include text editor resource management and workflow automation, such as executing specific commands immediately after a file is opened. The system supports search indexing through pattern-based file filtering to exclude specific directories or symbolic links.

## Tags

### Development Tools & Productivity

- [Fuzzy File Finders](https://awesome-repositories.com/f/development-tools-productivity/fuzzy-file-finders.md) — Provides a comprehensive fuzzy search interface for locating files, open buffers, tags, and recently used items. ([source](https://github.com/kien/ctrlp.vim/blob/master/readme.md))
- [Buffer Navigation](https://awesome-repositories.com/f/development-tools-productivity/buffer-navigation.md) — Provides rapid navigation between open buffers, files, and tags using a fuzzy search interface. ([source](https://github.com/kien/ctrlp.vim/tree/master/doc))
- [Vim](https://awesome-repositories.com/f/development-tools-productivity/script-interpreters/vim.md) — Integrates directly with the Vim editor using native Vim script to manage buffers and navigation commands.
- [Project Root Discovery](https://awesome-repositories.com/f/development-tools-productivity/working-directory-configuration/workspace-and-project-contexts/project-root-discovery.md) — Determines the project root by scanning the filesystem for version control markers and configuration files. ([source](https://github.com/kien/ctrlp.vim/blob/master/readme.md))
- [Asynchronous Project Scans](https://awesome-repositories.com/f/development-tools-productivity/asynchronous-project-scans.md) — Implements non-blocking background directory crawling to populate the search list without freezing the editor UI.
- [Editor Buffer Managers](https://awesome-repositories.com/f/development-tools-productivity/editor-buffer-managers.md) — Manages recently used files and open buffers to facilitate quick switching between project documents.
- [File Ignore Patterns](https://awesome-repositories.com/f/development-tools-productivity/file-ignore-patterns.md) — Supports excluding specific files, directories, or symbolic links from the search index using ignore patterns.
- [Search-Integrated File Creation](https://awesome-repositories.com/f/development-tools-productivity/search-integrated-file-creation.md) — Generates new files and automatically creates any missing parent directories directly from the search prompt. ([source](https://github.com/kien/ctrlp.vim))
- [Vim-Based Workflows](https://awesome-repositories.com/f/development-tools-productivity/vim-based-workflows.md) — Automates development workflows by executing editor commands and creating directories from the search interface.

### Artificial Intelligence & ML

- [Marker Detection](https://awesome-repositories.com/f/artificial-intelligence-ml/spatial-pose-management/ar-spatial-trackers/marker-detection.md) — Automatically identifies project base directories by scanning for version control markers like .git folders.

### Data & Databases

- [Fuzzy Matching](https://awesome-repositories.com/f/data-databases/fuzzy-matching.md) — Uses fuzzy matching algorithms to calculate similarity scores and rank the most relevant files and buffers.
- [Fuzzy Search Engines](https://awesome-repositories.com/f/data-databases/search-indexing-technologies/search-indexing/search-information-retrieval/matching-ranking-logic/fuzzy-search-engines.md) — Implements a fuzzy search engine to filter candidates using flexible matching techniques for fast file navigation. ([source](https://github.com/kien/ctrlp.vim))
- [Search Result Filtering](https://awesome-repositories.com/f/data-databases/search-result-filtering.md) — Filters search results by excluding files, directories, or symbolic links based on custom ignore patterns. ([source](https://github.com/kien/ctrlp.vim/blob/master/readme.md))
