{"id":19253434,"url":"https://github.com/stevearc/pore","last_synced_at":"2026-05-16T04:36:35.045Z","repository":{"id":139186924,"uuid":"439994439","full_name":"stevearc/pore","owner":"stevearc","description":"Command line full-text search","archived":false,"fork":false,"pushed_at":"2022-01-13T00:59:43.000Z","size":39,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-15T08:51:59.657Z","etag":null,"topics":["cli","full-text-search","search"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/stevearc.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":"2021-12-19T23:56:15.000Z","updated_at":"2024-03-14T22:20:01.000Z","dependencies_parsed_at":null,"dependency_job_id":"7e9dee7e-702a-4db9-8058-02c8851ac966","html_url":"https://github.com/stevearc/pore","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevearc%2Fpore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevearc%2Fpore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevearc%2Fpore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stevearc%2Fpore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stevearc","download_url":"https://codeload.github.com/stevearc/pore/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240347981,"owners_count":19787237,"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":["cli","full-text-search","search"],"created_at":"2024-11-09T18:30:55.280Z","updated_at":"2026-05-16T04:36:35.016Z","avatar_url":"https://github.com/stevearc.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pore\n\n\u003e pore (verb) \\\n\u003e to read or study attentively\n\nPore is a command line [full-text\nsearch](https://en.wikipedia.org/wiki/Full-text_search) tool powered by\n[tantivy](https://github.com/quickwit-inc/tantivy).\n\n**When would I use this instead of grep or ripgrep?**\n\nIf you can express what you're looking for as a regular expression or exact text\nstring, use ripgrep. If you want something more like a Google search, use pore.\n\n```\nUSAGE:\n    pore [OPTIONS] [--] [ARGS]\n\nARGS:\n    \u003cquery\u003e\n\n\n    \u003cdir\u003e\n\n\nOPTIONS:\n        --color \u003ccolor\u003e\n            This flag controls when to use colors. The default setting is auto, which will try to\n            guess when to use colors.\n               The possible values for this flag are:\n\n                   never    Colors will never be used.\n                   auto     Auto-detect if the terminal supports colors (default).\n                   always   Colors will always be used regardless of where output is sent.\n                   ansi     Like 'always', but emits ANSI escapes (even in a Windows console).\n\n        --delete\n            Delete the cached index files for the directory (if any)\n\n        --files\n            Print out the files that would be searched (do not perform the search)\n\n    -g, --glob \u003cglob\u003e...\n            Include or exclude files and directories for searching that match the given glob. This\n            always overrides any other ignore logic. Multiple glob flags may be used. Precede a glob\n            with a ! to exclude it.\n\n        --glob-case-insensitive\n            Patterns passed to --glob and --oglob will be matched in a case-insentive way.\n\n    -h, --help\n            Print help information\n\n        --hidden\n            Search hidden files and directories\n\n    -i, --index \u003cindex\u003e\n            Use the specified index for querying (must be specified in the config file)\n\n        --in-memory\n            Do not store the text index on disk (will have to rebuild every time)\n\n        --indexes\n            print out the indexes that would be used (do not perform the search)\n\n    -j, --threads \u003cthreads\u003e\n            The approximate number of threads to use. A value of 0 (which is the default) will\n            choose the thread count using heuristics.\n\n        --json\n            Print the results as json\n\n    -l, --files-with-matches\n            Print out the files that match the search (not the matching lines).\n\n    -L, --follow\n            Follow symbolic links\n\n        --language \u003clanguage\u003e\n            The language to use for parsing files\n\n        --limit \u003climit\u003e\n            Maximum number of files to return\n\n        --no-follow\n            Don't follow symbolic links (overrides --follow)\n\n        --no-hidden\n            Ignore hidden files and directories (overrides --hidden)\n\n        --no-ignore\n            Don't respect .gitignore files\n\n        --no-memory\n            Force the index to be saved to disk (overrides --in-memory)\n\n        --no-update\n            Do not update the index before performing the query\n\n        --oglob \u003coglob\u003e...\n            Only search files that match this glob. Files that do not match any of these globs will\n            be ignored.\n\n        --rebuild\n            Force rebuild the index before searching\n\n        --threshold \u003cthreshold\u003e\n            Minimum score threshold for results\n\n    -u, --update\n            Update the index before searching (the default)\n\n    -V, --version\n            Print version information\n```\n\n## Config\n\nThe config file is located at `${XDG_CONFIG_HOME}/pore.toml` (default\n`$HOME/.config/pore.toml`). An example can be found at\n[pore.example.toml](https://github.com/stevearc/pore/blob/master/pore-bin/pore.example.toml).\nThe format is:\n\n```toml\n# These are the global arguments that are used by default\nlimit = 10\n\n# You can add an index with different customizations.\n# These are used by passing --index=NAME\n[index-NAME]\n    oglob = \"*.md,*.rst,*.txt\"\n\n# You can add additional customizations for a specific directory\n[local-myproject]\n    # Be sure to specify the path\n    path = \"/path/to/myproject\"\n\n    # These options will override the global ones\n    language = \"Arabic\"\n\n    # Local projects can specify their own indexes.\n    # They are also used by passing --index=OTHER_INDEX\n    [local-myproject.OTHER_INDEX]\n        limit = 20\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstevearc%2Fpore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstevearc%2Fpore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstevearc%2Fpore/lists"}