Giter Site home page Giter Site logo

Completion is broken about vim-fish HOT 1 OPEN

dag avatar dag commented on July 16, 2024
Completion is broken

from vim-fish.

Comments (1)

MaxGyver83 avatar MaxGyver83 commented on July 16, 2024

Meanwhile I know this issue has nothing to do with vim-mucomplete. This is how to reproduce:

Create a file named ~/.vim/fish-test.vim:

set nocompatible
set runtimepath=$VIMRUNTIME
set runtimepath+=~/.vim/pack/plugins/start/vim-fish
set omnifunc=fish#Complete

Run vim -u ~/.vim/fish-test.vim /tmp/test.fish. Switch to insert mode and type "te. Press Ctrl-x Ctrl-o for autocompletion. This causes the error from my initial post.

I found a similar issue in another plugin:
kristijanhusak/vim-js-file-import#31

Apparently, it has to do with doubles quotes in fish. This patch doesn't fix this issue but at least it occurs less often:

diff --git a/autoload/fish.vim b/autoload/fish.vim
index 2c4d894..199e155 100644
--- a/autoload/fish.vim
+++ b/autoload/fish.vim
@@ -48,9 +48,10 @@ function! fish#Complete(findstart, base)
         if empty(a:base)
             return []
         endif
+        let l:base = substitute(a:base, '"', "'", "")
         let l:results = []
         let l:completions =
-                    \ system('fish -c "complete -C'.shellescape(a:base).'"')
+                    \ system('fish -c "complete -C'.shellescape(l:base).'"')
         let l:cmd = substitute(a:base, '\v\S+$', '', '')
         for l:line in split(l:completions, '\n')
             let l:tokens = split(l:line, '\t')

from vim-fish.

Related Issues (20)

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.