mirror of
https://github.com/zotero/zotero.git
synced 2026-08-28 05:25:31 +00:00
Mirror of https://github.com/zotero/zotero.git
Search now ignores accents, so "seance" matches "séance" and vice versa. Text is normalized with Unicode NFKD compatibility decomposition (which also handles typographic ligatures, superscripts, full-width forms, etc.) plus a small map for letters NFKD leaves alone (ø, œ, æ, ß, ...) and the fraction slash, via Z.Utilities.Internal.normalizeForSearch(). The HTML tags we support in item fields are stripped, so markup isn't matched (#81). Typographic quotes (#29, #1876) and dashes are folded to ASCII. Each searchable column gets a normalized shadow column -- itemDataValues.valueNormalized, tags.nameNormalized, creators.firstNameNormalized/lastNameNormalized, and itemAnnotations.textNormalized/commentNormalized -- populated at write time and matched via COALESCE(normalized, raw) LIKE. NULL is stored when normalizing only changes case, so plain-ASCII values are only stored once. This covers the contains/doesNotContain/beginsWith operators in both quick search and Advanced Search. The new columns are local-only derived data and aren't synced. Older clients will ignore them, so this doesn't break DB compatibility. Existing rows are backfilled after the startup sync by Zotero.Schema.populateNormalizedSearchColumns(), which should only take a few seconds on most databases. Closes #29, #81, #1300, #1876 |
||
|---|---|---|
| .github/workflows | ||
| app | ||
| chrome | ||
| defaults/preferences | ||
| document-worker@6d0c0ce45d | ||
| js-build | ||
| note-editor@107ab75c32 | ||
| reader@8cb2963207 | ||
| resource | ||
| scripts | ||
| scss | ||
| styles@dff7452b24 | ||
| test | ||
| translators@60f2d542ff | ||
| types/gecko | ||
| .babelrc | ||
| .gitattributes | ||
| .gitignore | ||
| .gitmodules | ||
| chrome.manifest | ||
| CLAUDE.md | ||
| CONTRIBUTING.md | ||
| COPYING | ||
| eslint.config.mjs | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| update.rdf | ||
| version | ||
Zotero
Zotero is a free, easy-to-use tool to help you collect, organize, cite, and share your research sources.
Please post feature requests or bug reports to the Zotero Forums. If you're having trouble with Zotero, see Getting Help.
For more information on how to use this source code, see the Zotero documentation.