{"id":27306521,"url":"https://github.com/pseyfert/zsh-gtest-completion","last_synced_at":"2026-02-14T15:02:22.310Z","repository":{"id":72263906,"uuid":"174425323","full_name":"pseyfert/zsh-gtest-completion","owner":"pseyfert","description":"zsh tab completion for Google Test","archived":false,"fork":false,"pushed_at":"2023-06-27T20:19:29.000Z","size":6,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-09-07T04:39:04.182Z","etag":null,"topics":["googletest","zsh-completion","zsh-completions"],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pseyfert.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,"zenodo":null}},"created_at":"2019-03-07T21:48:44.000Z","updated_at":"2021-11-26T20:22:52.000Z","dependencies_parsed_at":"2023-09-17T01:50:15.462Z","dependency_job_id":null,"html_url":"https://github.com/pseyfert/zsh-gtest-completion","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pseyfert/zsh-gtest-completion","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pseyfert%2Fzsh-gtest-completion","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pseyfert%2Fzsh-gtest-completion/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pseyfert%2Fzsh-gtest-completion/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pseyfert%2Fzsh-gtest-completion/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pseyfert","download_url":"https://codeload.github.com/pseyfert/zsh-gtest-completion/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pseyfert%2Fzsh-gtest-completion/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29447768,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-14T14:10:32.461Z","status":"ssl_error","status_checked_at":"2026-02-14T14:09:49.945Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["googletest","zsh-completion","zsh-completions"],"created_at":"2025-04-12T04:00:11.737Z","updated_at":"2026-02-14T15:02:22.285Z","avatar_url":"https://github.com/pseyfert.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# zsh gtest completion\n\nZsh tabcompletion definition for executables built with [gtest](https://github.com/google/googletest/).\n\n## Installation\n\nPut the `_gtest` file into a directory in your `$fpath`.\n\nI leave it up to you / your operating system / plugin management system / zshrc\nconfiguration to figure out how to best do this. This may be adding the\nrepository's path to `$fpath` or `$FPATH`, copy or symlink the completion file\ninto an existing direcotry in the `fpath`. In any case the last change to the\nvalue of `fpath` should happen before `compinit` gets called. I suggest to\npersistify this and nor repeat once per project / test binary / testing\nsession.\n\n## Usage\n\nSuppose the build system has produced a binary called `my_test_executable` in the directory `builddir/tests/`.\n\nSetup\n```\ncompdef _gtest my_test_executable\n```\n\nCompletion\n```\n./builddir/tests/my_test_executable --⇥\noption:\n--gtest_also_run_disabled_tests  -- Run all disabled tests too.\n--gtest_break_on_failure         -- Turn assertion failures into debugger break-points.\n--gtest_catch_exceptions         -- Do not report exceptions as test failures. Instead, allow them to crash the program or throw a pop-up (on Windows).\n--gtest_color                    -- Enable/disable colored output.\n--gtest_death_test_style         -- Set the default death test style.\n--gtest_filter                   -- Filter tests to run by positive and negative patterns.\n--gtest_list_tests               -- List the names of all tests instead of running them.\n--gtest_output                   -- Generate a JSON or XML report\n--gtest_print_time               -- Print elapsed test time\n--gtest_random_seed              -- Random number seed to use for shuffling test orders\n--gtest_repeat                   -- Run the tests repeatedly; use a negative count to repeat forever.\n--gtest_shuffle                  -- Randomize tests' orders on every iteration.\n--gtest_stream_result_to         -- Stream test results to the given server.\n--gtest_throw_on_failure         -- Turn assertion failures into C++ exceptions for use by an external test framework.\n--help                           -- Print usage message and exit.\n```\n\nIn my experience it suffices to manually call `compdef` once per test binary\nand once per debugging session.  A per-project setup that doesn't need to be\nrepeated per session/shell launch wasn't necessary for me. If you have\nper-project `setup.zsh` files, a persistent compdef setup might be better\nsuited for you.\n\n## Notes\n\nI'm using settings such as\n\n```\nzstyle ':completion:*:descriptions' format $'%{\\e[0;33m%}%d:%{\\e[0m%}'\nzstyle ':completion:*:messages' format $'%{\\e[0;31m%}%d%{\\e[0m%}'\n```\n\nAbsence of `messages` or `description` printing may lead to a different\nprintout of the completion than what I intended.\n\n## License\n\nThis completion is under the [BSD 3-Clause License](LICENSE), just like the gtest framework.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpseyfert%2Fzsh-gtest-completion","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpseyfert%2Fzsh-gtest-completion","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpseyfert%2Fzsh-gtest-completion/lists"}