aboutsummaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)Author
2026-04-26Document remaining indexing semanticsBozhidar Batsov
Three doc gaps surfaced during the indexing review: * The `*' prefix on `projectile-globally-ignored-directories' entries is not a glob - it is what promotes a basename match from "anchored at the project root" to "anywhere in the tree", and it only takes effect under hybrid indexing. * The default `projectile-generic-command' picks `fd' when it's on PATH and falls back to a `find ... | tr ...' pipeline. The fallback does not exclude common build directories, which is a trap for non-VCS projects under alien on hosts without `fd'. * `projectile-git-use-fd' controls how Projectile handles deleted-but-unstaged files: with `fd' they disappear immediately, with `git ls-files' Projectile post-filters via `git ls-files -zd'.
2026-04-26Document hybrid indexing and add a per-method feature matrixBozhidar Batsov
The configuration page covered alien indexing in depth but mentioned hybrid only in passing, so users had to read the source to learn that hybrid is "alien with Projectile's filtering rules layered on top". Add a dedicated section explaining what hybrid does and when to reach for it, and a comparison table summarising which knobs (dirconfig, global ignores/unignores, sort order, default caching, Windows support) apply under each indexing method.
2026-04-26Add projectile-discard-root-cache command (#1936)Bozhidar Batsov
The existing projectile-invalidate-cache always tries to also clear the per-project files cache, which means it either prompts for a project (with prefix arg) or only operates when you're already in a project. Users who just created a marker file in a directory that Projectile previously considered rootless ended up picking an unrelated project from the prompt just to get the root cache flushed. projectile-discard-root-cache is a focused alternative that empties projectile-project-root-cache only. Wired into the menu next to the existing 'Invalidate cache' entry; deliberately not bound on the prefix map since the keymap is already dense.
2026-04-26Document the project root cache and marker semanticsBozhidar Batsov
- New 'Project root cache' subsection in projects.adoc covering invalidation, when negative results bite (the recurring 'I created .projectile and Projectile still doesn't see it' confusion from #1936), and how to reset programmatically. - Note in 'Customizing Project Detection' that projectile-root-top-down only matches regular files while projectile-root-bottom-up matches both - this difference is what forces VCS markers like .git onto the bottom-up list. - Expand the file-local override section with a concrete example and call out that overrides bypass the cache. - Rewrite projectile-project-root's docstring to mention caching, the tramp-archive unwrap, and the disconnected-remote behaviour that callers used to have to read the source to discover.
2026-04-25Soft-deprecate prefix-less dirconfig entriesdirconfig-refactorBozhidar Batsov
The implicit "any unprefixed line is an ignore pattern" rule is the last source of subtle parser surprises — it's the reason why a single leading space silently changes a +-keep into a literal ignore pattern, and it makes typo'd comments slip through as ignores. Mark these lines as :legacy-ignore in the classifier, record them in a new prefixless-ignore slot on the dirconfig struct, and emit a one-time warning per project listing the offending entries. The behavior is unchanged — the lines still go into the ignore list — but users now get a nudge to write them as -entry. The warning can be silenced via projectile-warn-on-prefixless-dirconfig-lines.
2026-04-25Document the dirconfig format more preciselyBozhidar Batsov
The parser docstring only described + and - prefixes even though the function returns a 3-tuple including the ! ensure bucket. Fill that in, and pull the path-vs-glob distinction out of the prose in projects.adoc into a subsection of its own — that ambiguity is at the root of recurring confusion (#740, #1109, #680, #1941).
2026-02-13Document moderate-priority undocumented configuration optionsBozhidar Batsov
- VCS commands: table of all per-VCS command variables, plus projectile-git-submodule-command and projectile-git-ignored-command - Caching: projectile-files-cache-expire - Tags: projectile-tags-file-name, projectile-tags-backend - Searching: projectile-use-git-grep - Project name: projectile-project-name-function - Dirty projects: projectile-vcs-dirty-state - Hooks: projectile-find-file-hook, projectile-find-dir-hook, projectile-before-switch-project-hook - Misc: projectile-verbose, projectile-show-menu - Ignore/unignore: projectile-globally-ignored-file-suffixes, projectile-global-ignore-file-patterns, projectile-globally-unignored-files, projectile-globally-unignored-directories
2026-02-13Document previously undocumented configuration optionsBozhidar Batsov
- fd integration: projectile-git-use-fd, projectile-fd-executable, projectile-git-fd-args - Known projects: projectile-known-projects-file, projectile-ignored-projects, projectile-ignored-project-function, projectile-track-known-projects-automatically - Buffer filtering: projectile-buffers-filter-function, projectile-kill-buffers-filter - Test/impl toggling: projectile-default-src-directory, projectile-default-test-directory, projectile-test-prefix-function, projectile-test-suffix-function, projectile-create-missing-test-files
2026-02-13Fix typos in the documentationBozhidar Batsov
2026-01-07Support eat terminalPhilippe Vaucher
2025-07-16[Docs] Fix config example for "Removal of missing projects" (#1955)Jeffrey 'jf' Lim
Fixes #1954
2025-06-12Handle the projects cache betterRadon Rosborough
2025-04-02Set `projectile-auto-discover` to `nil` by defaultBozhidar Batsov
That's a safer default, given the changes to its behavior in 2.9.
2025-03-02[Docs] Document projectile-max-file-buffer-countBozhidar Batsov
2025-03-02[Docs] Reflow a few long linesBozhidar Batsov
2025-02-15[Docs] Update Antora instructionsBozhidar Batsov
2025-02-14Reset docs versionBozhidar Batsov
2025-02-14Update Antora docs versionBozhidar Batsov
2025-02-14[Docs] Fix broken linkBozhidar Batsov
2025-02-14Fix docs: .bloop for Scala, not clojureAdam Frey
Bloop is a Scala build tool, not a Clojure tool: https://scalacenter.github.io/bloop/
2025-02-04[Docs] Remove mentions of selectrumBozhidar Batsov
It was deprecated in favor of vertico.
2025-02-03Make the cache transient by defaultBozhidar Batsov
2025-02-03Introduce projectile-auto-cleanup-known-projectsBozhidar Batsov
2025-02-03Introduce a common prefix for project lifecycle command keybindingsBozhidar Batsov
2025-02-01[Docs] Improve docs on ignoring filesBozhidar Batsov
2025-01-31[Docs] Minor tweakBozhidar Batsov
2025-01-31[Docs] Update some setup instructionsBozhidar Batsov
2025-01-31Rename the cache file to .projectile-cache.eldBozhidar Batsov
2025-01-30[Docs] Reflow a paragraphBozhidar Batsov
2025-01-30Add some configuration exampleBozhidar Batsov
2025-01-30[Docs] Tweak wordingBozhidar Batsov
2025-01-30[Docs] Expand the caching docsBozhidar Batsov
2025-01-30[Docs] Fix broken referencesBozhidar Batsov
2025-01-30Rework the caching logicBozhidar Batsov
The main changes from before are: - Each project has its own cache file - Cache files are consulted only when you request the files of some project This makes caching both more robust and faster, as before the cache file for all projects was loaded when projectile-mode was enabled.
2025-01-30[Docs] Update a comparison entryBozhidar Batsov
2025-01-30[Docs] Remove support pageBozhidar Batsov
2025-01-30Drop support for Emacs 25Bozhidar Batsov
Emacs 25 is ancient at this point and likely no one is using it anymore.
2025-01-30feat: add support for swift projectsPeter Grayson
Add support for swift projects using swift package manager (SPM). The 'swift-spm symbol is qualified to leave room for other flavors of swift project that are more Xcode oriented or use cocoapods.
2024-11-13Expands table of files for project markers (#1919)slackline
First attempt at expanding the table of file markers for projects based on code at [master/projectile.el#L3441](https://github.com/bbatsov/projectile/blob/master/projectile.el?rgh-link-date=2024-10-22T08%3A55%3A41Z#L3441) I've followed the order of the languages/files in `projectile.el` (I hope!). Not sure descriptions under `Project Type` are 100% correct so happy to revise anything that needs changing.
2024-11-02Add Zig project discovery (#1918)stephan-cr
2024-10-22Order file markers table by file nameNeil Shephard
Browsing the documentation I found it cumbersome to read this table as it wasn't in alphabetical order. This commit re-orders the table by `File` column. Perhaps a different order might be to include a column for language and order by that with sub-ordering by supported files within that language.
2024-08-24Add support for xmake build utility (#1899)Ben Hutchinson
2024-02-12[Docs] Extend comparison sectionBozhidar Batsov
2024-02-10[Docs] Move some text aroundBozhidar Batsov
2024-02-10[Docs] Extend the comparison with project.elBozhidar Batsov
2024-02-10[Docs] Fix a typoBozhidar Batsov
2024-02-10[Docs] Tweak markupBozhidar Batsov
2024-02-10[Docs] Add a comparison with project.elBozhidar Batsov
2024-01-23Add new custom variable 'projectile-cmd-hist-ignoredups'Laurence Warne
Add new custom variable 'projectile-cmd-hist-ignoredups', which can be used to tweak how duplicates are dealt with in projectile's command history. The custom variable is identical in behaviour to 'eshell-hist-ignoredups'. Specifically, the existing default behavior is maintained with the value of t, which means consecutive duplicates are ignored. A value of 'erase means only the last duplicate is kept, whilst a value of nil means all duplicates are kept.
2024-01-21vcs: add Jujutsu supportDaehyeok Mun