{"id":13646540,"url":"https://github.com/dougm/go-projectile","last_synced_at":"2025-10-11T08:48:51.024Z","repository":{"id":16466971,"uuid":"19219068","full_name":"dougm/go-projectile","owner":"dougm","description":"Go language related add-ons for Projectile","archived":false,"fork":false,"pushed_at":"2023-08-10T23:56:19.000Z","size":28,"stargazers_count":57,"open_issues_count":7,"forks_count":17,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-02-17T03:44:09.066Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Emacs Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dougm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2014-04-27T22:00:11.000Z","updated_at":"2024-03-24T02:45:26.000Z","dependencies_parsed_at":"2024-06-18T22:45:06.076Z","dependency_job_id":"b1e84c15-fd5e-4c9e-a932-8de376919e6f","html_url":"https://github.com/dougm/go-projectile","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dougm/go-projectile","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dougm%2Fgo-projectile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dougm%2Fgo-projectile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dougm%2Fgo-projectile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dougm%2Fgo-projectile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dougm","download_url":"https://codeload.github.com/dougm/go-projectile/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dougm%2Fgo-projectile/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279006646,"owners_count":26084150,"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","status":"online","status_checked_at":"2025-10-11T02:00:06.511Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2024-08-02T01:02:58.592Z","updated_at":"2025-10-11T08:48:50.979Z","avatar_url":"https://github.com/dougm.png","language":"Emacs Lisp","funding_links":[],"categories":["Emacs Lisp"],"sub_categories":[],"readme":"## Synopsis\n\n**Go Projectile** is a set of Go language related add-ons for\nthe Emacs [Projectile](http://batsov.com/projectile/) mode.\n\n## Configuration\n\n```lisp\n(require 'go-projectile)\n```\n\n## Usage\n\nAfter running `projectile-switch-project` (\u003ckbd\u003eC-c p s\u003c/kbd\u003e) the features of\n`go-projectile` will be (optionally) enabled.\n\n### Managing GOPATH\n\nRather than have a global GOPATH set in your .bashrc or similar, go-projectile\nmakes it easier for each project to have their own GOPATH automatically\nconfigured.  Upon switching to a projectile project, the GOPATH environment\nvariable will be set appropriately, see `go-projectile-switch-gopath`.\nThe `go-projectile-set-gopath` function can also be called directly, without\nusing `projectile-switch-project`.\n\n### Go tools\n\nMost of the Emacs Go packages have hard or soft dependencies on\nprograms installed via `go get`, such as `gocode`, `godef`, etc.\nYou can install the complete set of `go-projectile-tools` using:\n\u003ckbd\u003eM-x go-projectile-install-tools\u003c/kbd\u003e\nAnd update the tools using: \u003ckbd\u003eM-x go-projectile-update-tools\u003c/kbd\u003e\nThese tools are installed within their own GOPATH, configurable via\nthe `go-projectile-tools-path` variable.\n\n### Searching\n\nRun `vc-git-grep` on `*.go` in the `$GOPATH/src/` directory of the\ncurrent buffer using `go-projectile-git-grep` (\u003ckbd\u003eC-c p G\u003c/kbd\u003e).\n\nUseful for use within multi-language projects and/or repositories that\ninclude vendored packages.\n\n### Importing projects\n\nCreate a new projectile project via `go-projectile-get` (\u003ckbd\u003eC-c p N\u003c/kbd\u003e).\nThis function will 'go get' an existing repo and switch to the new project.\n\n### Refactoring\n\nRenaming of Go identifiers is available via `go-rename` (\u003ckbd\u003eC-c p w\u003c/kbd\u003e).\n\nVery basic refactoring is made available via `go-projectile-rewrite` (\u003ckbd\u003eC-c p W\u003c/kbd\u003e).\nIt is just a wrapper around `gofmt -r`, where go-projectile tries to help\ngenerate the rewrite pattern based on the cursor's location.  The rewrite rule\nwill only apply to '*.go' files in the current project, excluding patterns\nlisted in `go-project-files-ignore'.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdougm%2Fgo-projectile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdougm%2Fgo-projectile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdougm%2Fgo-projectile/lists"}