Git Product home page Git Product logo

Comments (7)

uga-rosa avatar uga-rosa commented on May 29, 2024 1

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.

uga-rosa avatar uga-rosa commented on May 29, 2024 1

Fix in bf07422.

  • /app/Providers/RouteServiceProvider.php

image

By setting ddu-ui-ff-param-displayTree can be displayed in a tree structure.

image

from ddu-source-lsp.

hal-ito avatar hal-ito commented on May 29, 2024 1

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.

uga-rosa avatar uga-rosa commented on May 29, 2024

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.

hal-ito avatar hal-ito commented on May 29, 2024

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:

  1. Open a PHP file.
  2. Type Space-l-l key combo.
  3. Select intelephense (php) and type i and o to install lsp.
  4. Type Space-s key combo.
  5. You can see only class name and namespace in the symbol list.

If you don't mind help me?

from ddu-source-lsp.

uga-rosa avatar uga-rosa commented on May 29, 2024

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.

hal-ito avatar hal-ito commented on May 29, 2024

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.

  1. Install Docker desktop.
  2. 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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.