ahmedash95/deep-symbols

0.0.4 2024-04-22 20:42 UTC

This package is auto-updated.

Last update: 2024-09-22 21:28:52 UTC


README

一个简单的 neovim 插件,用于显示具有继承成员的文档符号。

问题

当前的 LSP 文档符号 不考虑继承成员。这是我之前在 PHPStorm 中使用过的功能,它大大简化了代码导航。当我转向 Neovim 时,我非常怀念这个功能,经过一番寻找和搜索后,我找不到任何好的替代方案。因此,我决定自己制作一个。

项目范围应该是并且始终是小的,仅专注于 PHP,因为它是我的主要语言。它将仅用于服务未来的 PHP 版本。

先决条件

预览

假设在你的项目中你有 2 个模型 Admin.php 和 User.php

class User
{
    public function getName() {
        return 'John';
    }
}

class Admin extends User
{
    public function getAdminRole() {
        return 'supervisor';
    }
}

使用此插件,它会显示你当前所在类中的所有成员和继承成员。

demo.mov

安装

首先,你需要从 composer 全局安装 deep-symbol

composer global require ahmedash95/deep-symbols

请确保你的全局 composer 目录位于 PATH 环境变量中。简单地将此目录添加到你的 ~/.bash_profile(或 ~/.bashrc)中,如下所示

export PATH=~/.composer/vendor/bin:$PATH

安装完成后,你可以通过打开新的终端会话并输入以下命令来验证其是否工作

$ deep-symbols

插件

使用 vim-plug

Plug 'ahmedash95/deep-symbols'

使用 packer.nvim

use 'ahmedash95/deep-symbols'

用法

你可以使用以下命令运行它

:lua require("deepsymbols").get_symbols()

-- or mapping

vim.keymap.set('n', '<leader>o', ':lua require("deepsymbols").get_symbols()<CR>')