Code Monkey home page Code Monkey logo

Comments (7)

BitR avatar BitR commented on June 19, 2024

If you follow the instructions in the README, you just need to start dcd-server, maybe with the -I argument like -I insert_source_folder_here and if your PATH is set up correctly, YouCompleteMe along with ycmd-dcd will use the dcd-client binary to find suggestions while you type in vim.

from ycmd-dcd.

lilijreey avatar lilijreey commented on June 19, 2024

I use Plug and install Plug 'bsed/vim-dlang' Plug 'vim-scripts/Dutyl' and ycmd-dcd, but
ycmd-dcd can not work. Dutyl work fine.
I run dcd-server -I /snap/dmd/current/import/phobos
removed Dutyl the omifunc is empty.
then the ycmd options is '/usr/bin/python3 /home/god/.vim/plugged/youcompleteme/python/ycm/../../third_party/ycmd/ycmd --port=59959 --options_file=/tmp/tmpn1pz1k60'

from ycmd-dcd.

BitR avatar BitR commented on June 19, 2024

Alright, did you create the symlink (per the README)?
You need a symlink from YouCompleteMe/third_party/ycmd/ycmd/completers/d to your ycmd-dcd directory.
My guess is that you could run: ln -s ~/.vim/plugged/ycmd-dcd ~/.vim/plugged/youcompleteme/third_party/ycmd/ycmd/completers/d

You'd need to restart vim before it works, but YouCompleteMe should now be able to handle .d files.

from ycmd-dcd.

lilijreey avatar lilijreey commented on June 19, 2024

Why need create a symlink?, your README did not told do this.
I follow your solution, first add Plugin 'BitR/ycmd-dcd' in .vimrc and create symlink in~/.vim/plugged/youcompleteme/third_party/ycmd/ycmd/completers/ links to /home/name/.vim/bundle/ycmd-dcd/.
buf the omifunc is empty, can not work...
Ycm config:
image

from ycmd-dcd.

BitR avatar BitR commented on June 19, 2024

Right, well the README states that you should clone into completers/d, in you case if you're using Plug, you'll need to create the symlink.

Anyways, do check that the symlink at ~/.vim/plugged/youcompleteme/third_party/ycmd/ycmd/completers/d resolves to this git repo.

You also need to make sure that you installed YouCompleteMe with python3 (python3 ./install.py inside the YouCompleteMe folder)

I just created a test .vimrc that works - though with vundle (for reference):

filetype off

set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()

Plugin 'gmarik/Vundle.vim'
Plugin 'Valloric/YouCompleteMe'

call vundle#end()
set completeopt=noinsert,menuone,preview

filetype plugin indent on

If you start dcd-server with --loglevel info and then try to use vim on a .d file, do you see any requests being processed in the log?
Also check if you get output if you run this in your shell:

echo 'void test() { int a; a.' > /tmp/dcd-test
dcd-client -c 22 /tmp/dcd-test

from ycmd-dcd.

lilijreey avatar lilijreey commented on June 19, 2024

Tanks a lot, the dcd-server log show 'Getting completeions' but can not get any complete word.
each pass key will trigger dcd-server but can not complete.
The echo 'void test() { int a; a.' > /tmp/dcd-test dcd-client -c 22 /tmp/dcd-test return ok.
How to set dcd-server -I argument?

from ycmd-dcd.

BitR avatar BitR commented on June 19, 2024

Alright, try this then:

echo 'void test() { int a; a. }' > /tmp/dcd-test.d
vim /tmp/dcd-test.d

If you replace the dot after the last a with another dot, you should get completions.
If not, check if there are any errors in /tmp/ycmd_*.log
You should also see '[dcdcompl] DCD completer loaded' in one of the logs.

from ycmd-dcd.

Related Issues (1)

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.