{"id":15021352,"url":"https://github.com/ahmedash95/deep-symbols","last_synced_at":"2026-03-02T01:33:44.915Z","repository":{"id":59712608,"uuid":"538189710","full_name":"ahmedash95/deep-symbols","owner":"ahmedash95","description":"LSP document symbols improved","archived":false,"fork":false,"pushed_at":"2024-07-26T09:17:59.000Z","size":73557,"stargazers_count":9,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-14T01:22:00.208Z","etag":null,"topics":["lsp","neovim","phpactor"],"latest_commit_sha":null,"homepage":"","language":"PHP","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/ahmedash95.png","metadata":{"files":{"readme":"readme.md","changelog":"CHANGELOG.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-09-18T17:40:32.000Z","updated_at":"2025-08-05T19:44:23.000Z","dependencies_parsed_at":"2022-09-20T12:44:29.435Z","dependency_job_id":null,"html_url":"https://github.com/ahmedash95/deep-symbols","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/ahmedash95/deep-symbols","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ahmedash95%2Fdeep-symbols","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ahmedash95%2Fdeep-symbols/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ahmedash95%2Fdeep-symbols/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ahmedash95%2Fdeep-symbols/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ahmedash95","download_url":"https://codeload.github.com/ahmedash95/deep-symbols/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ahmedash95%2Fdeep-symbols/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29989046,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-01T22:42:38.399Z","status":"ssl_error","status_checked_at":"2026-03-01T22:41:51.863Z","response_time":124,"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":["lsp","neovim","phpactor"],"created_at":"2024-09-24T19:56:29.257Z","updated_at":"2026-03-02T01:33:44.900Z","avatar_url":"https://github.com/ahmedash95.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Document Symbols Improved\n\nA simple neovim plugin to display document symbols with inherited members.\n\n# Problem\nThe current [LSP document symbols](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocument_documentSymbol) does not consider inherted members. which is something I used to have with [PHPStorm](https://www.jetbrains.com/phpstorm/promo/?source=ahmedash95.github.io) and had saved me alot navigating the code. and as I'm moving to Neovim. I missed that feature and after some looking and searching I could not find any good replacement. so I decided to make it myself. \n\nthe project scope should and always will be small. focusing only on PHP as it's my primary language. and would just change to serve future versions of PHP. \n\n\n## Prerequisites\n- Neovim\n- [FZFLua](https://github.com/ibhagwan/fzf-lua)\n- PHP\n- Composer\n\n## Preview\nLet's say in your project you have 2 models Admin.php and User.php\n```php\nclass User\n{\n    public function getName() {\n        return 'John';\n    }\n}\n\nclass Admin extends User\n{\n    public function getAdminRole() {\n        return 'supervisor';\n    }\n}\n```\nWith this plugin, it would show you all the members and inherited members of the class you are currently in.\n\nhttps://user-images.githubusercontent.com/8272048/191131151-9f9af98b-298b-44ab-8cdf-1e3696350642.mov\n\n### Install\n\nFirst you need to install deep-symbol globally from your composer\n\n```\ncomposer global require ahmedash95/deep-symbols\n```\n\nMake sure that your global composer directory is inside of your PATH environment variable. Simply add this directory to your PATH in your ~/.bash_profile (or ~/.bashrc) like this:\n```\nexport PATH=~/.composer/vendor/bin:$PATH\n```\n\nonce installed you can verifiy if its working by opening a new terminal session and type \n```\n$ deep-symbols\n```\n\n### Plugin\n\nUsing vim-plug\n```vim\nPlug 'ahmedash95/deep-symbols'\n```\n\nUsing packer.nvim\n```lua\nuse 'ahmedash95/deep-symbols'\n```\n\n### Usage\n\nyou can run it with the command\n```\n:lua require(\"deepsymbols\").get_symbols()\n\n-- or mapping\n\nvim.keymap.set('n', '\u003cleader\u003eo', ':lua require(\"deepsymbols\").get_symbols()\u003cCR\u003e')\n```\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fahmedash95%2Fdeep-symbols","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fahmedash95%2Fdeep-symbols","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fahmedash95%2Fdeep-symbols/lists"}