Code Monkey home page Code Monkey logo

Comments (1)

amadeus avatar amadeus commented on June 20, 2024

I've done a bit more digging, and I think I figured out why performance is so slow on large buffers.

This line:
https://github.com/prabirshrestha/asyncomplete-buffer.vim/blob/master/autoload/asyncomplete/sources/buffer.vim#L56

I think the objects are never equal due to the cursor positions and line numbers getting updated on cursor move.

I am not sure the proper fix here, however It looks like something along the lines of comparing the changedtick would be the correct solution? If this is the case, I would be happy to submit a PR for it, just not sure if that's the right fix.

    if a:event == 'TextChangedI'
        call s:refresh_keyword_incr(a:ctx['typed'])
    else
        if s:last_ctx['changedtick'] == a:ctx['changedtick']
            return
        endif
        let s:last_ctx = a:ctx
        call s:refresh_keywords()
    endif

from asyncomplete-buffer.vim.

Related Issues (13)

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.