{"id":25949864,"url":"https://github.com/vigo/textmate2-golang","last_synced_at":"2026-04-02T13:31:36.847Z","repository":{"id":280096665,"uuid":"940766988","full_name":"vigo/textmate2-golang","owner":"vigo","description":"Golang bundle for TextMate2 - If you’re still using TextMate 2 in 2025 and developing with Go, this TextMate bundle will be a game-changer for you! 🚀","archived":false,"fork":false,"pushed_at":"2026-03-25T17:27:58.000Z","size":19916,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-03-26T18:24:50.976Z","etag":null,"topics":["golang","textmate","textmate-bundle"],"latest_commit_sha":null,"homepage":"","language":"Ruby","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/vigo.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":"Support/.golangci.yml","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"vigo","polar":"vigo","patreon":"vigoo"}},"created_at":"2025-02-28T18:50:54.000Z","updated_at":"2026-03-25T17:28:01.000Z","dependencies_parsed_at":"2025-10-05T09:32:57.859Z","dependency_job_id":null,"html_url":"https://github.com/vigo/textmate2-golang","commit_stats":null,"previous_names":["vigo/textmate2-golang"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/vigo/textmate2-golang","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vigo%2Ftextmate2-golang","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vigo%2Ftextmate2-golang/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vigo%2Ftextmate2-golang/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vigo%2Ftextmate2-golang/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vigo","download_url":"https://codeload.github.com/vigo/textmate2-golang/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vigo%2Ftextmate2-golang/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31307132,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-02T12:59:32.332Z","status":"ssl_error","status_checked_at":"2026-04-02T12:54:48.875Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":["golang","textmate","textmate-bundle"],"created_at":"2025-03-04T12:29:43.252Z","updated_at":"2026-04-02T13:31:36.841Z","avatar_url":"https://github.com/vigo.png","language":"Ruby","funding_links":["https://github.com/sponsors/vigo","https://polar.sh/vigo","https://patreon.com/vigoo"],"categories":[],"sub_categories":[],"readme":"![Version](https://img.shields.io/badge/version-0.1.5-orange.svg?style=for-the-badge)\n![TextMate](https://img.shields.io/badge/textmate-2.0.23-green.svg?style=for-the-badge)\n![macOS](https://img.shields.io/badge/macos-sonoma-blue.svg?style=for-the-badge)\n![macOS](https://img.shields.io/badge/macos-sequoia-blue.svg?style=for-the-badge)\n![M3](https://img.shields.io/badge/apple-M3-black.svg?style=for-the-badge)\n![M4](https://img.shields.io/badge/apple-M4-black.svg?style=for-the-badge)\n![Powered by Rake](https://img.shields.io/badge/powered_by-rake-blue?logo=ruby\u0026style=for-the-badge)\n\n# TextMate2 Golang Bundle\n\nIf you’re still using [TextMate 2][textmate2] in 2025 and developing with\n[Go][golang], this TextMate bundle will be a game-changer for you! 🚀\n\n![Demo](Screens/demo.gif)\n\n---\n\n## Installation\n\nYou need `go` installation:\n\n```bash\nbrew install go golangci-lint\n```\n\nCheck if your `go` installation is ok?\n\n```bash\n$ go version\ngo version go1.24.0 darwin/arm64\n```\n\nNow clone this repo:\n\n```bash\ncd ~/Library/Application\\ Support/TextMate/Bundles/\ngit clone git@github.com:vigo/textmate2-golang.git TextMate2-Golang.tmbundle\n```\n\nAfter clone, the bundle should normally appear in the pull-down menu,\nmeaning the installation is complete. If it doesn’t appear, restart TextMate.\n\nYou need to set `TM_GO` and `TM_GOPATH` TextMate variables:\n\n```bash\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"$(command -v go)\\\"; name = \\\"TM_GO\\\"; }\"\n\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"$(go env GOPATH)\\\"; name = \\\"TM_GOPATH\\\"; }\"\n```\n\nYou need to set `PATH` manually from `TextMate \u003e Settings \u003e Variables`:\n\n    PATH    \"${TM_GOPATH}/bin:/opt/homebrew/bin:${PATH}\"\n\nYou can also set manually from your global or project based `.tm_properties`\nfile, I prefer this way:\n\n    TM_GO=/path/to/go/libexec/bin/go  # result of command -v go\n    TM_GOPATH=/path/to/go             # result of go env GOPATH\n    PATH=\"${TM_GOPATH}/bin:/opt/homebrew/bin:${PATH}\"\n\n\u003e It’s not possible to execute shell command in `.tm_properties` therefore\nyou need to set values by your hand!\n\nIf you are an old/aged developer like me :) you can set bigger fonts via:\n\n```bash\ndefaults write com.macromates.TextMate NSToolTipsFontSize 24\n```\n\nYou need to install go related tools, all are optional:\n\n- `goimports`: Auto adds required imports.\n- `gofumpt`: Shows `gofmt` errors but stricter.\n- `golines`: Breaks long lines even long comments.\n- `shadow`: Checks variable shadowing.\n- `fieldalignment`: Auto fixes struct field alignments.\n- `golangci-lint`: Fastest linter for Go!\n\n```bash\ngo install golang.org/x/tools/cmd/goimports@latest\ngo install mvdan.cc/gofumpt@latest\ngo install github.com/golangci/golines@latest\ngo install golang.org/x/tools/go/analysis/passes/shadow/cmd/shadow@latest\ngo install golang.org/x/tools/go/analysis/passes/fieldalignment/cmd/fieldalignment@latest\n```\n\nYou can install tools according to your feature toggles with using\n\u003ckbd\u003e⌥\u003c/kbd\u003e + \u003ckbd\u003eI\u003c/kbd\u003e (Option + I).\n\n---\n\n## Usage\n\nOpen your go projects and hit **Save**\n\n### Monorepo / Sub-directory Support\n\nIf your `go.mod` is not in the project root (e.g. in a monorepo), set the\n`TM_GO_PROJECT_ROOT` variable in your project's `.tm_properties` file:\n\n    TM_GO_PROJECT_ROOT=backend\n\nFor a project structure like this:\n\n    .\n    ├── backend\n    │   ├── go.mod\n    │   ├── main.go\n    │   └── ...\n    ├── frontend\n    │   └── ...\n    └── .tm_properties\n\nThe bundle will look for `go.mod`, run `go vet`, `golangci-lint`, and all\nother tools from the `backend/` directory instead of the project root.\n\nIf `TM_GO_PROJECT_ROOT` is not set, the bundle uses `TM_PROJECT_DIRECTORY`\nas before (backward compatible).\n\n![Success](Screens/success.png)\n\n![Errors](Screens/errors.png)\n\n---\n\n## TODO\n\n- [X] `goimports`\n- [X] `gofumpt`\n- [X] `golines`\n- [X] `go vet`\n- [X] `shadow`\n- [X] `fieldalignment`\n- [X] `golangci-lint`\n- [ ] `gopls` LSP\n- [X] Go to error line\n- [ ] Lots of snippets\n- [X] Go tools updater script\n\n---\n\n## TextMate Variables\n\n| Variable | Default Value | Description |\n|:---------|:--------------|:------------|\n| `ENABLE_LOGGING` |  | Set this for bundle development purposes. |\n| `LOG_LEVEL` | `\"DEBUG\"` | Set this for bundle development purposes. |\n| `TM_GOLANG_HIDE_TOOL_INFO_ON_SUCCESS` | | Toggle tool information on success message. |\n| `TM_GOLANG_TOOLTIP_LINE_LENGTH` | `\"100\"` | Length of tool tip window |\n| `TM_GOLANG_TOOLTIP_LEFT_PADDING` | `\"2\"` | Left char padding of tool tip window |\n| `TM_GOLANG_TOOLTIP_BORDER_CHAR` | `\"-\"` | Line char of tool tip window |\n| `TM_GO_PROJECT_ROOT` | | Relative path to Go project root from `TM_PROJECT_DIRECTORY`. Useful for monorepos. |\n| `TM_GO` |  | Path to your `go` binary (e.g: `/opt/homebrew/opt/go/libexec/bin/go` )  |\n| `TM_GOPATH` |  | Your `GOPATH` from `go env GOPATH` (e.g: `/Users/vigo/.local/go` find the value via `go env GOPATH` )  |\n| `TM_GOLANG_DISABLE` |  | Disable bundle |\n| `TM_GOLANG_DISABLE_GOIMPORTS` |  | Disable `goimports` auto fixes. |\n| `TM_GOLANG_DISABLE_GOFUMPT` |  | Disable `gofumpt` checks. |\n| `TM_GOLANG_DISABLE_GOLINES` |  | Disable `golines` fixes. |\n| `TM_GOLANG_DISABLE_GOVET` |  | Disable `go vet` checks. |\n| `TM_GOLANG_DISABLE_GOSHADOW` |  | Disable `go vet` with `shadow` checks. |\n| `TM_GOLANG_DISABLE_FIELDALIGNMENT` |  | Disable `fieldalignment` auto fixes. |\n| `TM_GOLANG_DISABLE_GOLANGCI_LINTER` |  | Disable `golangci-lint` checks. |\n| `TM_GOIMPORTS_BINARY` | | Optional, set if you have different installation. |\n| `TM_GOFUMPT_BINARY` | | Optional, set if you have different installation. |\n| `TM_GOLINES_BINARY` | | Optional, set if you have different installation. |\n| `TM_GOSHADOW_BINARY` | | Optional, set if you have different installation. |\n| `TM_GOLANGCI_LINTER_BINARY` | | Optional, set if you have different installation. |\n| `TM_GOFIELDALIGNMENT_BINARY` | | Optional, set if you have different installation. |\n| `TM_GOLINES_MAX_LEN` | `\"100\"` | Maximum line length for `golines` |\n| `TM_GOLINES_TAB_LEN` | `\"4\"` | Length of TAB for `golines` |\n| `TM_GOLINES_SHORTEN_COMMENTS` | | Enable shorten comments too! |\n| `GOLANGCI_LINTER_OPTIONS` | | By pass linter config file, disable all and use only given options. |\n| `TM_GO_PROJECT_ROOT` | | Set the go project directory if it’s needed. |\n\nTo set your TextMate variables, go to `TextMate \u003e Settings \u003e Variables` and\nset the values. Some variables only need to have any value assigned in order\nto be activated. Such as:\n\n    TM_GOLANG_DISABLE                   1\n    TM_GOLANG_DISABLE_GOIMPORTS         1\n    TM_GOLANG_DISABLE_GOFUMPT           1\n    TM_GOLANG_DISABLE_GOLINES           1\n    TM_GOLANG_DISABLE_GOVET             1\n    TM_GOLANG_DISABLE_GOSHADOW          1\n    TM_GOLANG_DISABLE_FIELDALIGNMENT    1\n    TM_GOIMPORTS_BINARY                 /path/to/goimports\n    TM_GOFUMPT_BINARY                   /path/to/gofumpt\n    TM_GOLINES_BINARY                   /path/to/golines\n    TM_GOSHADOW_BINARY                  /path/to/shadow\n    TM_GOFIELDALIGNMENT_BINARY          /path/to/fieldalignment\n    TM_GOLANGCI_LINTER_BINARY           /path/to/golangci-lint\n    TM_GOLINES_MAX_LEN                  120\n    TM_GOLINES_TAB_LEN                  2\n    TM_GOLINES_SHORTEN_COMMENTS         1\n\nTo disable this bundle, set `TM_GOLANG_DISABLE` from `TextMate \u003e Settings \u003e Variables` \nor from `.tm_properties` (local or global)\n\n    TM_GOLANG_DISABLE=1\n\nTo set/toggle features from `.tm_properties`:\n\n    # development only\n    ENABLE_LOGGING=1\n    LOG_LEVEL=DEBUG         # possible values are\n                            # DEBUG, INFO, WARN, ERROR, FATAL\n    # disable feature(s)\n    # TM_GOLANG_DISABLE_GOIMPORTS=1\n    # TM_GOLANG_DISABLE_GOFUMPT=1\n    # TM_GOLANG_DISABLE_GOLINES=1\n    # TM_GOLANG_DISABLE_GOVET=1\n    # TM_GOLANG_DISABLE_GOSHADOW=1\n    # TM_GOLANG_DISABLE_FIELDALIGNMENT=1\n    # TM_GOLANG_DISABLE_GOLANGCI_LINTER=1\n    \n    # set go project root for monorepo support\n    # TM_GO_PROJECT_ROOT=backend\n\n    # custom params\n    # TM_GOLINES_MAX_LEN=120\n    # TM_GOLINES_TAB_LEN=2\n    # TM_GOLINES_SHORTEN_COMMENTS=1\n    \n    # if you have custom binaries to set\n    # TM_GOIMPORTS_BINARY=/path/to/goimports\n    # TM_GOFUMPT_BINARY=/path/to/gofumpt\n    # TM_GOLINES_BINARY=/path/to/golines\n    # TM_GOSHADOW_BINARY=/path/to/shadow\n    # TM_GOFIELDALIGNMENT_BINARY=/path/to/fieldalignment\n    # TM_GOLANGCI_LINTER_BINARY=/path/to/golangci-lint\n\nor with `defaults` command:\n\n```bash\n# disable bundle! nothing will work...\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"1\\\"; name = \\\"TM_GOLANG_DISABLE\\\"; }\"\n\n# example: enable logging\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"1\\\"; name = \\\"ENABLE_LOGGING\\\"; }\"\n\n# example: set log level\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"ERROR\\\"; name = \\\"LOG_LEVEL\\\"; }\"\n\n# disable goimports\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"1\\\"; name = \\\"TM_GOLANG_DISABLE_GOIMPORTS\\\"; }\"\n\n# disable gofumpt\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"1\\\"; name = \\\"TM_GOLANG_DISABLE_GOFUMPT\\\"; }\"\n\n# disable golines\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"1\\\"; name = \\\"TM_GOLANG_DISABLE_GOLINES\\\"; }\"\n\n# disable govet\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"1\\\"; name = \\\"TM_GOLANG_DISABLE_GOVET\\\"; }\"\n\n# disable shadow\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"1\\\"; name = \\\"TM_GOLANG_DISABLE_GOSHADOW\\\"; }\"\n\n# disable fieldalignment\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"1\\\"; name = \\\"TM_GOLANG_DISABLE_FIELDALIGNMENT\\\"; }\"\n\n# disable golangci-lint\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"1\\\"; name = \\\"TM_GOLANG_DISABLE_GOLANGCI_LINTER\\\"; }\"\n\n# set golines max line length\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"120\\\"; name = \\\"TM_GOLINES_MAX_LEN\\\"; }\"\n\n# set golines tab length\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"2\\\"; name = \\\"TM_GOLINES_TAB_LEN\\\"; }\"\n\n# enable golines for comments too!\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"1\\\"; name = \\\"TM_GOLINES_SHORTEN_COMMENTS\\\"; }\"\n\n# example: disable all golangci-lint checkers and use given options,\n# only check: errcheck and gosimple errors.\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"-E errcheck -E gosimple\\\"; name = \\\"GOLANGCI_LINTER_OPTIONS\\\"; }\"\n\n# set custom path for goimports\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"/path/to/goimports\\\"; name = \\\"TM_GOIMPORTS_BINARY\\\"; }\"\n\n# set custom path for gofumpt\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"/path/to/gofumpt\\\"; name = \\\"TM_GOFUMPT_BINARY\\\"; }\"\n\n# set custom path for golines\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"/path/to/golines\\\"; name = \\\"TM_GOLINES_BINARY\\\"; }\"\n\n# set custom path for shadow\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"/path/to/shadow\\\"; name = \\\"TM_GOSHADOW_BINARY\\\"; }\"\n\n# set custom path for fieldalignment\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"/path/to/fieldalignment\\\"; name = \\\"TM_GOFIELDALIGNMENT_BINARY\\\"; }\"\n\n# set custom path for golangci-lint\ndefaults write com.macromates.TextMate environmentVariables \\\n    -array-add \"{enabled = 1; value = \\\"/path/to/golangci-lint\\\"; name = \\\"TM_GOLANGCI_LINTER_BINARY\\\"; }\"\n```\n\n---\n\n## Hot Keys and Snippets\n\n### Hot Keys\n\n| Hot Keys | Description |\n|:---------|:------------|\n| \u003ckbd\u003e⌥\u003c/kbd\u003e + \u003ckbd\u003eI\u003c/kbd\u003e | Install go tools. \u003csmall\u003e(option + I)\u003c/small\u003e |\n| \u003ckbd\u003e⌥\u003c/kbd\u003e + \u003ckbd\u003eG\u003c/kbd\u003e | Go to error marked line/column. \u003csmall\u003e(option + G)\u003c/small\u003e |\n| \u003ckbd\u003e⌥\u003c/kbd\u003e + \u003ckbd\u003eR\u003c/kbd\u003e | Fix imports, formatting w/o saving file. \u003csmall\u003e(option + R)\u003c/small\u003e |\n| \u003ckbd\u003e⌥\u003c/kbd\u003e + \u003ckbd\u003eC\u003c/kbd\u003e | Create `.golangci.yml` file under project root. \u003csmall\u003e(option + C)\u003c/small\u003e |\n\n### Snippets\n\n| \u003ckbd\u003e⇥\u003c/kbd\u003e Triggers | Description |\n|:----------------|:------------|\n| `temp` + \u003ckbd\u003e⇥\u003c/kbd\u003e | Create `main` package template |\n| `fps` + \u003ckbd\u003e⇥\u003c/kbd\u003e | fmt.Printf, fmt.Scanf, fmt.Sprintf |\n| `prl` + \u003ckbd\u003e⇥\u003c/kbd\u003e | fmt.Println |\n| `prf` + \u003ckbd\u003e⇥\u003c/kbd\u003e | fmt.Printf helpers |\n| `spr` + \u003ckbd\u003e⇥\u003c/kbd\u003e | fmt.Sprintf helpers |\n| `fpr` + \u003ckbd\u003e⇥\u003c/kbd\u003e | fmt.Fprintf |\n| `erf` + \u003ckbd\u003e⇥\u003c/kbd\u003e | fmt.Errorf |\n| `log` + \u003ckbd\u003e⇥\u003c/kbd\u003e | log helpers |\n| `ctp` + \u003ckbd\u003e⇥\u003c/kbd\u003e | Compile time proof |\n| `ifer` + \u003ckbd\u003e⇥\u003c/kbd\u003e | `if err:= ...; err != nil` |\n| `vok` + \u003ckbd\u003e⇥\u003c/kbd\u003e | `val, ok := ...; ok {` |\n| `st` + \u003ckbd\u003e⇥\u003c/kbd\u003e | `struct` helpers |\n| `for` + \u003ckbd\u003e⇥\u003c/kbd\u003e | `for` helpers |\n\n---\n\n## Bug Report\n\nPlease set/enable the logger via setting `ENABLE_LOGGING=1`. Logs are written to\nthe `/tmp/textmate-golang.log` file. You can `tail` while running via;\n`tail -f /tmp/textmate-golang.log` in another Terminal tab. You can see\nlive what’s going on. Please provide the log information for bug reporting.\n\nAfter you fix the source code (next run) bundle removes those files if there\nis no error. According to you bug report, you can `tail` or copy/paste the\ncontents of error file to issue.\n\nAlso, while running bundle script (*which is TextMate’s default ruby 1.8.7*),\nif error occurs, TextMate pops up an alert window. Please add that screen shot\nor try to copy error text from modal dialog.\n\nLogger output should look like this:\n\n    [2025-03-01 17:03:59][TM-GOLANG][WARN][storage.rb-\u003eget_storage]: storage.get not found for 0F742219-9517-454F-93FE-9EEE602B426B (/tmp/textmate-golang-0F742219-9517-454F-93FE-9EEE602B426B.error)\n    [2025-03-01 17:03:59][TM-GOLANG][INFO][golang.rb-\u003erun_document_did_save]: did save\n    [2025-03-01 17:03:59][TM-GOLANG][INFO][golang.rb-\u003erun_document_did_save]: enabled_checkers: [true, true, true, true, true]\n    [2025-03-01 17:04:33][TM-GOLANG][WARN][storage.rb-\u003edestroy_storage]: storage.destroy not found for E2A58F4B-9845-4BD9-A231-CCC60D63D87B - (/tmp/textmate-golang-E2A58F4B-9845-4BD9-A231-CCC60D63D87B.error)\n    [2025-03-01 17:04:33][TM-GOLANG][WARN][storage.rb-\u003edestroy_storage]: storage.destroy not found for E2A58F4B-9845-4BD9-A231-CCC60D63D87B - (/tmp/textmate-golang-E2A58F4B-9845-4BD9-A231-CCC60D63D87B.goto)\n    [2025-03-01 17:04:33][TM-GOLANG][INFO][golang.rb-\u003erun_document_will_save]: will save\n    [2025-03-01 17:04:33][TM-GOLANG][WARN][storage.rb-\u003eget_storage]: storage.get not found for E2A58F4B-9845-4BD9-A231-CCC60D63D87B (/tmp/textmate-golang-E2A58F4B-9845-4BD9-A231-CCC60D63D87B.error)\n    [2025-03-01 17:04:33][TM-GOLANG][INFO][golang.rb-\u003erun_document_did_save]: did save\n    [2025-03-01 17:04:33][TM-GOLANG][INFO][golang.rb-\u003erun_document_did_save]: enabled_checkers: [true, true, true, true, true]\n    [2025-03-01 17:07:18][TM-GOLANG][WARN][storage.rb-\u003edestroy_storage]: storage.destroy not found for 77744A4B-FF5A-4226-B979-094B86F4C74D - (/tmp/textmate-golang-77744A4B-FF5A-4226-B979-094B86F4C74D.error)\n\nKeep in mind that when logging is enabled, there may be some performance\ndegradation due to *file I/O* operations.\n\nIf you are still using TextMate like me, I eagerly await your **comments**, **bug\nreports**, and **feature requests**.\n\n---\n\n## Change Log\n\nYou can read the whole story [here][changelog].\n\n---\n\n## Contributor(s)\n\n* [Uğur \"vigo\" Özyılmazel](https://github.com/vigo) - Creator, maintainer\n\n---\n\n## Contribute\n\nAll PR’s are welcome!\n\n1. `fork` (https://github.com/vigo/textmate2-golang/fork)\n1. Create your `branch` (`git checkout -b my-features`)\n1. `commit` yours (`git commit -am 'implement new features'`)\n1. `push` your `branch` (`git push origin my-features`)\n1. Than create a new **Pull Request**!\n\nThis project is intended to be a safe, welcoming space for collaboration, and\ncontributors are expected to adhere to the [code of conduct][coc].\n\n---\n\n## License\n\nThis project is licensed under MIT\n\n---\n\n[textmate2]: https://github.com/textmate/textmate\n[golang]: https://go.dev/\n[changelog]: https://github.com/vigo/textmate2-golang/blob/main/CHANGELOG.md\n[coc]: https://github.com/vigo/textmate2-golang/blob/main/CODE_OF_CONDUCT.md","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvigo%2Ftextmate2-golang","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvigo%2Ftextmate2-golang","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvigo%2Ftextmate2-golang/lists"}