Comments (8)
I've taken the liberty of asking Reddit for help on this matter:
https://www.reddit.com/r/vim/comments/9ilrr5/help_wanted_a_better_wiki_experience_within_vim/
from wiki.vim.
For me, the showstopper with vimwiki is the use of Vimscript for too complicated stuff. Lua should be much faster. 😯
from wiki.vim.
For me, there are no speed related issues at all with this plugin. That is, I have a quite large personal wiki, and the only thing that could probably be optimized is the part that generates graphs (e.g. backlinks and stuff like that). But this is not a day-to-day feature, and so I don't mind that it takes ~1-2 seconds the few times I do it.
Note also that although vimscript is slow, well written vimscript code is usually not so slow. It may become slow e.g. when we want to parse thousands of files or when you operate on very large arrays, especially if you don't use array operations (i.e. if you use for
loops).
from wiki.vim.
Not quite finished, but I've started. There are still parts that should probably be delegated to other plugins.
from wiki.vim.
I suggest that the code snippet text object moves to the wiki syntax plugin. Although for markdown, such things already exist: https://github.com/pocke/vim-textobj-markdown This could be combined with something like https://github.com/kassio/neoterm & it's <Plug>(neoterm-repl-send)
.
There's no harm I can see from having the useful text objects carefully grouped though. But full code evaluation might become a maintenance burden that's already taken care of elsewhere.
Folding is handled quite nicely by plasticboy/vim-markdown, even offering multiple styles. It might be that some this is best served by the existing markdown/vim ecosystem.
from wiki.vim.
Thanks for the input. I generally agree and will attempt to make some progress in not too long!
from wiki.vim.
I suggest that the code snippet text object moves to the wiki syntax plugin.
Done.
Folding is already moved to wiki-ft.vim
. I think things are quite barebones right now, but I would appreciate new issues/updates if there are more suggestions to things that should be separated due to filetype plugin conflicts.
from wiki.vim.
This is OK for now, I'll rather focus on other parts. I would not mind to decouple more parts later if it makes sense.
from wiki.vim.
Related Issues (20)
- citekey: link to BibDesk (in wiki.vim too) [feature request] HOT 27
- Feature Request: Auto-Copy Text for WikiLinkFollow HOT 10
- Default keybinds not loading when attempting to use `adoc` HOT 3
- How can I avoid affecting certain default templates of wiki.vim HOT 3
- Possible to use one prefix to delimit a line of tags? HOT 3
- WikITocGenerate for more filetypes HOT 3
- WikiJournalNext / WikiJournalPrev navigate out of journal folder HOT 7
- Backlinks don't update immediately HOT 16
- WikiExport: cmd should use double quote under windows HOT 18
- How can g:wiki_export be configured to support HTML, docx, and PDF? HOT 4
- Using custom resolver breaks WikiJournalNext/WikiJournalPrev HOT 10
- Disabling default mappings might be broken HOT 2
- Provide dictionaries containing default mappings HOT 6
- Enhancement request for WikiJournalIndex: reverse order and update HOT 3
- Is it possible for wiki-link-types to support jumping to Vim help? HOT 7
- WikiTags can't work under gvim 9.1 or neovim 0.10 + win 10 pro HOT 19
- Infinite loop on template rendering if function starts at index 0 in template file HOT 1
- HTML text objects are overwritten by text objects for link texts HOT 3
- WikiLinkAdd in visual mode HOT 3
- Add completion source for `:WikiOpen`
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from wiki.vim.