Comments (7)
OK, I understand the cause. I can fix it, but I need to think a bit about how to display it (parent-child relationship between symbols).
from ddu-source-lsp.
Fix in bf07422.
- /app/Providers/RouteServiceProvider.php
By setting ddu-ui-ff-param-displayTree
can be displayed in a tree structure.
from ddu-source-lsp.
Thank you so much. It works excellent!
I can stop using many other tools. I'll be free from Ctags by your nice support.
from ddu-source-lsp.
I have never written php.
So please tell me the minimum vimrc that stands alone and steps needed to reproduce the issue.
from ddu-source-lsp.
Thank you for the nice support.
This is minimum init.vim.
let mapleader = " "
let s:dein_dir = expand($HOME . '/.cache/dein')
let s:dein_repo_dir = s:dein_dir . '/repos/github.com/Shougo/dein.vim'
" auto install
if !isdirectory(s:dein_repo_dir)
call system('git clone https://github.com/Shougo/dein.vim ' . shellescape(s:dein_repo_dir))
endif
let &runtimepath = s:dein_repo_dir .",". &runtimepath
if dein#load_state(s:dein_dir)
call dein#begin(s:dein_dir)
call dein#add(s:dein_repo_dir)
call dein#add('vim-denops/denops.vim') " deno
call dein#add('prabirshrestha/vim-lsp')
call dein#add('mattn/vim-lsp-settings')
call dein#add('Shougo/ddu.vim')
call dein#add('Shougo/ddu-ui-ff')
call dein#add('Shougo/ddu-source-file')
call dein#add('Shougo/ddu-source-file_rec')
call dein#add('shun/ddu-source-rg')
call dein#add('shun/ddu-source-buffer')
call dein#add('Shougo/ddu-source-line')
call dein#add('Shougo/ddu-source-register')
call dein#add('uga-rosa/ddu-source-lsp')
call dein#add('yuki-yano/ddu-filter-fzf')
call dein#add('Shougo/ddu-kind-file')
call dein#add('Shougo/ddu-kind-word')
call dein#add('ryota2357/ddu-column-icon_filename')
call dein#add('Shougo/ddu-commands.vim')
call dein#end()
call dein#save_state()
endif
if dein#check_install()
call dein#install()
endif
"===================================
" Lsp Settings
"===================================
nnoremap <Leader>ll :LspManageServers<CR>
nnoremap <Leader>LL :LspInstallServer<CR>
nnoremap ]d :LspNextDiagnostic<CR>
nnoremap [d :LspPreviousDiagnostic<CR>
nnoremap ]e :LspNextError<CR>
nnoremap [e :LspPreviousError<CR>
"===================================
" Ddu
"===================================
let line = &lines - 4
let column = &columns - 4
let win_border = 'rounded'
let win_height = float2nr(line * 0.8)
let win_width = float2nr(column * 0.8)
let win_col = float2nr((column - win_width) / 2)
let win_row = float2nr(win_height / 2)
let preview_height = line - win_height - 1
let preview_width = win_width
let preview_col = win_col
let preview_row = float2nr(preview_height / 2)
call ddu#custom#patch_global({
\ 'ui': 'ff',
\ 'uiParams': {
\ 'ff': {
\ 'ignoreEmpty': v:true,
\ 'split': 'floating',
\ 'startAutoAction': v:true,
\ 'autoAction': { 'name': 'preview', 'delay': 0, },
\ 'prompt': '> ',
\ 'startFilter': v:true,
\ 'filterSplitDirection': 'floating',
\ 'filterFloatingPosition': 'bottom',
\ 'floatingBorder': win_border,
\ 'winHeight': win_height,
\ 'winWidth': win_width,
\ 'winRow': win_row,
\ 'winCol': win_col,
\ 'previewFloating': v:true,
\ 'previewFloatingBorder': win_border,
\ 'previewHeight': preview_height,
\ 'previewWidth': preview_width,
\ 'previewRow': preview_row,
\ 'previewCol': preview_col,
\ },
\ },
\ 'sourceOptions': {
\ '_': {
\ 'matchers': ['matcher_fzf'],
\ 'sorters': ['sorter_fzf'],
\ 'ignoreCase': v:true,
\ },
\ 'file': {
\ 'columns': ['icon_filename'],
\ },
\ 'line': {
\ 'sorters': [],
\ },
\ },
\ 'filterParams': {
\ 'matcher_fzf': {
\ 'highlightMatched': 'Search',
\ },
\ },
\ 'kindOptions': {
\ 'file': {
\ 'defaultAction': 'open',
\ },
\ 'word': {
\ 'defaultAction': 'append',
\ },
\ 'lsp': {
\ 'defaultAction': 'open',
\ },
\ 'lsp_codeAction': {
\ 'defaultAction': 'apply',
\ },
\ },
\ 'actionOptions': {
\ 'narrow': {
\ 'quit': v:true,
\ },
\ },
\})
call ddu#custom#patch_local('file_rec', {
\ 'sources': [{
\ 'name':'file_rec',
\ 'params': {
\ 'ignoredDirectories': ['.git', 'var', 'node_modules', ]
\ },
\ }],
\})
call ddu#custom#patch_local('filer', {
\ 'ui': 'filer',
\ 'sources': [
\ {'name': 'file', 'params': {}},
\ ],
\ 'resume': v:true,
\ })
call ddu#custom#patch_local('grep', {
\ 'sourceParams' : {
\ 'rg' : {
\ 'args': ['--column', '--no-heading', '--color', 'never', '-i'],
\ },
\ },
\ 'uiParams': {
\ 'ff': {
\ 'startFilter': v:false,
\ }
\ },
\ 'resume': v:true,
\ })
call ddu#custom#patch_local('lsp_documentSymbol', {
\ 'sources': [{
\ 'name':'lsp_documentSymbol',
\ 'params': {
\ 'clientName': 'vim-lsp',
\ },
\ }],
\ 'sourceOptions': {
\ 'lsp': {
\ 'volatile': v:true,
\ },
\ },
\ 'uiParams': {
\ 'ff': {
\ 'ignoreEmpty': v:false,
\ },
\ },
\})
call ddu#custom#patch_local('lsp_definition', {
\ 'sources': [{
\ 'name':'lsp_definition',
\ 'params': {
\ 'clientName': 'vim-lsp',
\ },
\ }],
\ 'uiParams': {
\ 'ff': {
\ 'immediateAction': 'open',
\ },
\ },
\})
nnoremap <Leader>b <Cmd>Ddu buffer -ui-param-ff-startFilter=v:false<CR>
nnoremap <Leader>o <Cmd>Ddu line<CR>
nnoremap <Leader>r <Cmd>Ddu register -ui-param-ff-startFilter=v:false<CR>
nnoremap <Leader>f <Cmd>Ddu -name=file_rec<CR>
nnoremap <Leader>e <Cmd>Ddu -name=filer<CR>
nnoremap <Leader>g <Cmd>Ddu rg -name=grep -source-param-rg-input='`'Pattern: '->input('<cword>'->expand())`'<CR>
nnoremap <C-g> <Cmd>Ddu -name=grep<CR>
nnoremap <C-n> <Cmd>call ddu#ui#multi_actions(['cursorNext', 'itemAction'], 'grep')<CR>
nnoremap <C-p> <Cmd>call ddu#ui#multi_actions(['cursorPrevious', 'itemAction'], 'grep')<CR>
nnoremap <Leader>ls <Cmd>Ddu -name=lsp_documentSymbol<CR>
nnoremap <Leader>lj <Cmd>Ddu -name=lsp_definition<CR>
"--------------------
" FF
"--------------------
autocmd FileType ddu-ff call s:ddu_ff_settings()
function! s:ddu_ff_settings() abort
nnoremap <buffer><silent> <CR> <Cmd>call ddu#ui#do_action('itemAction')<CR>
nnoremap <buffer><silent> s <Cmd>call ddu#ui#do_action('toggleSelectItem')<CR>
nnoremap <buffer><silent> i <Cmd>call ddu#ui#do_action('openFilterWindow')<CR>
nnoremap <buffer><silent> q <Cmd>call ddu#ui#do_action('quit')<CR>
nnoremap <buffer><silent> <C-g> <Cmd>call ddu#ui#do_action('quit')<CR>
endfunction
autocmd FileType ddu-ff-filter call s:ddu_filter_my_settings()
function! s:ddu_filter_my_settings() abort
inoremap <buffer> <C-n> <Nop>
inoremap <buffer> <C-p> <Nop>
nnoremap <buffer> <CR> :q<CR>
nnoremap <buffer> q :q<CR>
inoremap <buffer> <CR> <ESC>:q<CR>
inoremap <buffer> jj <ESC>:q<CR>
inoremap <buffer> jk <ESC>:q<CR>
inoremap <buffer> kj <ESC>:q<CR>
inoremap <buffer> kk <ESC>:q<CR>
endfunction
This is steps to reproduce the issue. berow:
- Open a PHP file.
- Type
Space-l-l
key combo. - Select
intelephense (php)
and typei
ando
to install lsp. - Type
Space-s
key combo. - You can see only class name and namespace in the symbol list.
If you don't mind help me?
from ddu-source-lsp.
Thanks. It would be great if you could also give me the proper php source code, or even a github repo.
It is possible that this is a spec of intelephense, so I need to check what happens in other environments such as VSCode and coc.nvim. I'll do some research and see what I can find out.
from ddu-source-lsp.
Thank you.
I'm writing sources for the private products only.
So if you can, you would to use Laravel framework sample project.
This is the steps for create a sample project by MacOS.
- Install Docker desktop.
- Run
curl -s "https://laravel.build/example-app" | bash
by terminal.
If you use other OS, you can see the steps for each OSs by below URL. See "Laravel & Docker" section.
https://readouble.com/laravel/10.x/en/installation.html
For example, You can use below files for reproduce the issue.
- /vendor/laravel/framework/src/Illuminate/Support/ServiceProvider.php
- /app/Providers/RouteServiceProvider.php
from ddu-source-lsp.
Related Issues (12)
- duplicated tag
- TODO: CodeAction
- Feature Request: Add `previewCmds` params HOT 3
- deno ls does not attach to `deno:` virtual buffer (nvim-lsp)
- Print error when it is not under LSP files
- Preview action with fails at code action result is empty.
- Cannot gether candidate by lsp_definition with vim-lsp HOT 1
- Using lsp_definition source on a file with bracketed strings like [foo] in the path, I cannot get results HOT 2
- Highlighting Breaks When Setting Multi-byte Characters as Icons in converter_lsp_diagnostic
- Bugs: documentSymbol items via expandItem does not work HOT 2
- TODO: Type Hierarchy
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ddu-source-lsp.