skillfed

fancycompleter

colorful TAB completion for Python prompt

fancycompleter v0.11.1 1.5M downloads/30d#3,884 on PyPI4
Permissive license BSD AGING released

What it is and what it does

fancycompleter is a Python interactive prompt enhancement that replaces the standard rlcompleter with a version that displays TAB completions in color, coded by type (strings in green, functions in blue, etc.). It works by installing a custom completer into readline or pyrepl and, on some systems, runs a pure-Python replacement prompt based on code.InteractiveConsole to ensure colors display correctly.

The package improves on the standard completer in several ways: it shows only the characters after the dot to save screen space, handles dictionary and list indexing in completions, disables the automatic parenthesis insertion for callables, and allows a real tab character to be inserted at the start of a line. Installation is simple—either call fancycompleter.interact() in a startup script or use the built-in install command to set up PYTHONSTARTUP automatically.

Use it for:

  • Enable colored TAB completion in your Python REPL to quickly identify the type of available attributes and methods.
  • Set up a custom Python startup environment that automatically loads fancycompleter for every interactive session.
  • Complete expressions involving dictionary or list indexing at the prompt, which the standard rlcompleter cannot do.
  • Work on Windows with colored completions by installing the patched pyreadline fork.
  • Use PyPy or CPython 3.13+ without extra configuration to get colored completions out of the box.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Adds colorful TAB completion to the Python interactive prompt, extending the standard library's rlcompleter with color-coded completions by type and improved completion logic.

Yes, if you spend significant time in the Python interactive prompt and want visual feedback on completion types. The install is frictionless, the license is permissive, and there are no known vulnerabilities. The package is aging but actively maintained and supports current Python versions. The main caveat is that color support on CPython <3.13 depends on pyrepl or a patched readline, which may require extra setup on some systems.

Install

fancycompleter on PyPI

pip

pip install fancycompleter

uv

uv add fancycompleter

poetry

poetry add fancycompleter

Installing fancycompleter

Before you install

Low friction install with a pure-Python wheel and two runtime dependencies (pyreadline3, pyrepl). The package is aging but actively maintained—last commit 2026-01-26—and supports current Python versions (3.8–3.13). No known vulnerabilities.

License in practice

BSD license is permissive; you can use, modify, and distribute this package with minimal restrictions, making it safe for both open-source and commercial projects.

Quickstart

pip install fancycompleter

Then in your Python startup file or PYTHONSTARTUP script:
import fancycompleter
fancycompleter.interact(persist_history=True)

On CPython <3.13 on Linux/OSX, pyrepl (a dependency) is required for colors; on Windows, colored completions require a patched version of pyreadline. PyPy and CPython 3.13+ work out of the box.

Verify before relying

  • Whether the package works correctly with all Python 3.8–3.13 versions in practice, or if there are known incompatibilities.
  • Current state of the pyreadline fork mentioned in the docs and whether it is still maintained for Windows color support.

Package facts

License BSD (permissive)
Python support supports the current Python release (>=3.8)
Install friction low — pure-Python wheel
Runtime dependencies 2 — pyreadline3, pyrepl
Maintenance aging — 445 days since the last release
Last repo commit
First released
Downloads 1,454,938/month — #3,884 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: fancycompleter-0.11.1-py3-none-any.whl

Keywords: rlcompleter, prompt, color, completion

Development Status :: 4 - BetaEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: BSD LicenseOperating System :: Microsoft :: WindowsOperating System :: POSIXProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Utilities

Tags

python repl tab completioncolored autocomplete python promptinteractive python shell enhancementpython readline replacementsyntax-highlighted tab completionpython prompt completion colorsrlcompleter extension
repl-enhancementtab-completioninteractive-shell

More Utilities packages