Coder Social home page Coder Social logo

Comments (3)

samgriesemer avatar samgriesemer commented on August 28, 2024

Hi @bybor,

Thanks for taking a look at the plugin and wiki.vim fork. For the features you mentioned:

  • Saving buffer on navigation: this feature has actually already been merged into the original project. Check out the g:wiki_write_on_nav option in the documentation.
  • Link navigation transformations: as far as I'm aware the original plugin cannot do this, so your suggestion is a good one. I'll try to write up a PR soon and see about adding custom link nav transformations to the option set.
  • Optimized backlinks search: this is the primary goal of Vim-roam. I'm currently reworking the backlink system for the plugin and it'll be mostly separate from the wiki.vim implementation, so merging it will likely not match either project scope. In fact at some point vim-roam may be entirely independent of wiki.vim; the backlink processing can be mostly separated from the outer wiki environment.

Hope that helps! I'll update this issue if/when I get those link transformations merged into the original repo.

from vim-roam.

bybor avatar bybor commented on August 28, 2024

Thank you very much for your answer, I appreciate it!

It all makes sense. At some point i thought that it could be possible to use sqlite to index backlinks. Extra dependency is bad, but it's cross-platform and could improve performance. It could also be easily "fetched" as text and updated in a similar manner.

May be one could treat backlinks as a special kind of tags, which is a more universal way of doing it. Since tag can point to a specific location in file it would mimic "link to any block" feature available in Roam Research (AFAIK, have never used).

It will be great if you find it possible to not enforce markdown format, but make vim-roam format-agnostic. But it will be great to see vim-roam growing in the first place. :)

Thank you

from vim-roam.

samgriesemer avatar samgriesemer commented on August 28, 2024

Hey @bybor, finally got around to pushing out an update. Some of the new details in the README on link transformations might be of interest based on your original questions.

It will be great if you find it possible to not enforce markdown format, but make vim-roam format-agnostic.

I agree, although I think the plugin will depend on Pandoc's commonmark parser for the foreseeable future. Commonmark is very general, though, and Vim-roam only currently extracts file components like lists and paragraphs. There's a lot of overlap there with other wiki formats so I expect the hard Markdown requirement could be lifted.

At some point i thought that it could be possible to use sqlite to index backlinks.

sqlite is an interesting direction to consider. Right now the main bottleneck is Pandoc parsing, so I don't imagine performance would be too different from the current Python dictionary cache approach+pickling.

Thanks for your feedback! Hopefully the repo is a little more navigable now.

from vim-roam.

Related Issues (4)

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.