Giter Club home page Giter Club logo

dendron's People

Contributors

5h1ru avatar allcontributors[bot] avatar benhsm avatar bs avatar dendron-bot avatar dependabot[bot] avatar eleweek avatar github-actions[bot] avatar github-user-23 avatar harshita-mindfire avatar hayata-suenaga avatar hfellerhoff avatar hikchoi avatar hkievet avatar hydrosquall avatar jonathanyeung avatar kevinslin avatar kpathakota avatar l2dy avatar lsernau avatar lukecarrier avatar namjul avatar nickolay-kondratyev avatar nikitavoloboev avatar scriptautomate avatar seedublancaster avatar seriousbug avatar tma66 avatar tyler-dot-earth avatar viztor avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dendron's Issues

Seeds v0

Seeds v0

Goal

Make it easy for people to publish and find high quality notes for any topic they care about

Details

Dendron lets anyone publish an online version of the notes inside their Dendron vault. The Dendron Website is an example of a published vault.

Dendron seeds is a project to to curate notes from existing open source material. This means re-mixing existing open source content into public references. For example, og-aws is a fantastic resource for AWS. TLDR is a great reference for CLI. The former is only available as a README, the latter via the console. It should be easy to take the content from these sites and publish them as public Dendron vaults. The information in these vaults can also be enriched from other sources. In this way, Dendron can help build the highest quality, most up to date, information for any respective domain that people care about.

Tasks

  • establish basic seed framework
  • use seeds for CLI
  • create 3 seeds in 3 different verticals #wip

Next

  • use seeds from within the dendron extension
  • automatically keep seeded vaults up to date
  • create index of high quality seeds

Links

Deep hierarchies and wiki links

I am not sure if this is a bug or a feature request. It concerns the interaction between Dendron and the wiki links feature of Markdown Notes.

Describe the bug
Scaling of hierarchies when combined with wiki links becomes quickly unworkable.

To Reproduce
Steps to reproduce the behavior:

  1. Create a vault with a hierarchy of files going a few levels deep.
  2. Attempt to set a wiki link between two files

Expected behavior
Being able to select a file from the popup.

Screenshots
You end up with something like this. You can't see the target file title.
image

Desktop (please complete the following information):

  • OS: Win10
  • Browser: Chome
  • Version: 83

Additional context
Why go so many levels deep? Because you want to set custom keys in the individual files' frontmatter. Should the file titles be shorter and make use of the frontmatter's title key?

Additional issues:

  • What about spaces? Are they allowed or not? If not, use a hyphen or an underscore?
  • What about titles with non-latin character sets? Allowed or not?
  • Small inconvenience: when an option is selected from the wiki links popup, it gets inserted with the ".md" extension. However if you then attempt to navigate there, Dendron looks for "xxx.md.md" and proposes to create it.

Given Dendron's current roadmap which is the safest way forward? Use only latin, hyphenated, short file titles?

Note refactoring support

Context

Support automatically renaming files and links.

Proposal

  • create > Dendron: Refactor Hierarchy Command
  • algo
    • take regex as an input that includes a match pattern and replace pattern
    • gather all files that match regex and rename match to replace
    • gather all files with backlinks to renamed files and update links

Example

  • original file structure
.
├── pro.foo.md
├── pro.foo.child.md
├── pro.foo.child.grandchild.mmd
└── bar.foo.md  # has link to [[pro.foo]]
  • after running > Dendron: Refactor Hierarchy with s/^pro//
.
├── foo.md
├── foo.child.md
├── foo.child.grandchild.mmd
└── bar.foo.md  # has link to [[foo]]

Didn't work in fresh installed VSCode in Windows10 - v0.3.21

When I installed in Windows10 and tried to run Dendron: initialize workspace I got the following error:

Command 'Dendron: Initialize Workspace' resulted in an error (command 'dendron.initWS' not found)

open '/tmp/dendron-dev.log' at Object.openSync (fs.js:447:3) at Object.func (electron/js2c/asar.js:140:31) at Object.func [as openSync] (electron/js2c/asar.js:140:31) at u (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:277:14975) at new c (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:277:15518) at Y (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:11:103292) at Function.J.destination (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:277:12746) at Object.t.createLogger (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:289:1838) at Object.<anonymous> (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:277:40786) at n (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:1:186) at Object.<anonymous> (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:277:37957) at n (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:1:186) at Object.<anonymous> (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:289:26096) at n (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:1:186) at Object.<anonymous> (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:11:92725) at n (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:1:186) at Object.<anonymous> (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:277:25295) at Object.<anonymous> (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:277:37699) at n (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:1:186) at Object.<anonymous> (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:277:70858) at n (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:1:186) at c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:1:985 at Object.<anonymous> (c:\Users\me\.vscode\extensions\dendron.dendron-0.3.21\dist\extension.js:1:996) at Module.o._compile (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\loader.js:15:956) at Object.Module._extensions..js (internal/modules/cjs/loader.js:937:10) at Module.load (internal/modules/cjs/loader.js:780:32) at Module._load (internal/modules/cjs/loader.js:693:12) at Module._load (electron/js2c/asar.js:717:26) at Function.Module._load (electron/js2c/asar.js:717:26) at Function.t._load (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:974:348) at Function.i._load (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:943:839) at Function.n._load (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:940:198) at Module.require (internal/modules/cjs/loader.js:820:19) at require (internal/modules/cjs/helpers.js:68:18) at Function.s [as __$__nodeRequire] (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\loader.js:33:205) at h._loadCommonJSModule (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:945:34) at h._doActivateExtension (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:835:599) at h._activateExtension (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:834:692) at Object.actualActivateExtension (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:832:453) at h._activateExtension (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:601:405) at c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:601:83 at Array.map (<anonymous>) at h._activateExtensions (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:601:71) at h._activateExtensions (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:601:140) at h.activateByEvent (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:598:546) at h._activateByEvent (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:833:300) at h._handleEagerExtensions (c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:838:218) at c:\Users\me\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:841:872 at processTicksAndRejections (internal/process/task_queues.js:85:5)

Standalone Vaults

Goal

Support activating Dendron features without being in a workspace.

Context

Dendron currently requires a dedicated VSCode workspace in order to work. This is inconvenient for the following cases:

  • user has an existing project and doesn't want to open another workspace
  • user has an existing project and wants to use dendron on docs in existing workspace
  • user wants to use dendron functionality (eg. insert note) in non-dendron files

Multi-Vault Support

Multi Vault Support

Goals

Users should be able to initialize their workspace with multiple workspaces

Details

This enables many use cases like keeping a private local only vault and a synced dropbox vault.

Tasks

  • writeup design
  • collect feedback
  • implement

Links

Support publishing a vault

Context

Be able to publish a vault as a github page

Proposal

  • use a modified version of the just-the-docs jekyll theme to support publishing a vault with limited lookup support

Adding front matter after the fact

Is your feature request related to a problem? Please describe.
I usually create new pages as placeholder links and then navigate to them but then I'm sad that there's no front matter (even though I don't use the front matter yet).

Describe the solution you'd like
Ideally when I navigate to the page via dendron, the front matter will be added for me.

Describe alternatives you've considered
I would accept just having a shortcut to add the front matter (so I might be missing a simple way to do this).

Additional context
Add any other context or screenshots about the feature request here.

Better markdown-preview Button UI

Context

Currently, there's two markdown preview button's that show up when focusing on a markdown file: one is the default built in by vscode, the other is from Dendron. Currently, there's no way to hide the button from vscode. We have an open issue to vs-code about this here

Research and Prior Work

  • override window.registerCustomEditorProvider
    • vscode builtin markdown is created using a CustomEditor
    • blocked: can't register multiple custom providers with same type
  • use window.on*|workspace.on* method to figure out when default markdown preview launches
    • blocked: custom editor doesn't show up in window.on* or workspace.on* methods
  • use vscode-custom-css to override css
    • hacky and will cause vscode to complain that vscode is corrupted

Proposal

  • research additional means to resolve button ui issue

Note template declarations in schema

Is your feature request related to a problem? Please describe.
Not related to a problem really, but it can be formulated from that perspective anyhow. Something like this: When I create a new note that is of a certain type I'd like to do that with a structure for that type.

Describe the solution you'd like
I'd like to be able to specify templates in the {name}.schema.yml files so that the templates can be picked up and used when creating new notes of that certain type.

Describe alternatives you've considered
Not considered any alternatives.

Additional context
This could be used also for what you call scratch files and journal files. So that scratch files and journal files would be normal types described in schemas but with predefined templates. Maybe something similar is already in use, but I haven't studied dendron enough to know! =)

Sidenote: interesting project!

Wiki link navigation

Describe the bug
Navigate to wiki links fails.

To Reproduce
Steps to reproduce the behavior:

  1. Select one of the available options in the wiki links popup.
  2. It gets inserted with the ".md" extension.
  3. Attempt to navigate to the referenced file.
  4. Dendron looks for file "xxx.md.md", fails to find it and offers to create it.

Expected behavior
Navigate to the referenced file.

Desktop (please complete the following information):

  • OS: Win10
  • Browser: Chrome
  • Version: 83

adding journal after manually deleting link will cause error

To add backlinks to the current note, dendron will check if the file has a link field in the frontmatter and add it if it doesn't exist. Because dendron doesn't track file changes, if the link field gets deleted or modified, Dendron will throw an error.

Dendron needs to track file changes and be able to sync engine representation of a note with the actual file as it changes

Support moving cursor to end

Context

Instead of highlighting the current document path with lookup, the cursor should be set to the end so the user can navigate without needing to use a direction button

Proposal

Not sure if this is supported in any public vscode API. need to research best way of accomplishing this

Command to clean Dendron workspace

Context

Dendron is flexible in how it ingest notes. If a note doesn't have frontmatter for example, Dendron will happily index it and leave it alone. This could cause trouble down the line IE style if we are too flexible in the sort of formats we accept.

Proposal

Dendron: Tune Up command that will go through the workspace and fix all note discrepancies. In the beginning, this will be adding front matter to files that do not have it.

Related

#44

Vaults keep their original path

Describe the bug
Vaults seem to keep their original path.

To Reproduce
Steps to reproduce the behavior:

  1. At PC1 create a dendron workspace containing a default vault.
  2. Create a github repository and upload the vault you just created.
  3. Clone the repository at PC2.
  4. Attempt to open the vault's files.

Expected behavior
See the vault's contents.

Screenshots
I get an error message: "Unable to resolve workspace folder".

image

Desktop

  • OS: Win10
  • Browser: Chrome
  • Version: 83

Design Backlink Support

Context

When creating new notes in Dendron, it's useful to automatically create backlinks between the newly created note and the original note. This issue is to propose and gather feedback on auto backlinking newly created notes.

Scope

There are multiple points at which Dendron can create a backlink. A few examples below:

  • during Lookup when creating a new note
  • when using [[wiki-links]] to go to a note that does not exist
  • when creating a journal note
  • when creating a scratch note

Backlink Creation

Backlinks can be created in a few different ways and in a few different places:

  • How
      1. manually copying a link (link copied to clipboard)
      1. add a link to the frontmatter
      1. add a link to the end of the document in a special # Links section
      1. add a link to the current position in the document
  • Where
    • A. adding a link to the domain of the current hierarchy
    • B. adding a link to the current note
    • C. adding a link to a entirely new domain

Proposal

Note that numbers and letters will be used as abbreviations. eg: (2, A) = automatically add link to the frontmatter to the domain of the current hierarchy

loookup

  • default: nothing
  • configurable override:
    • (1)
    • (2, [A|B|C])
    • (3, [A|B|C])

wiki-links

  • default: nothing (a link is already created by nature of having a wiki-link in the original note)
  • configurable override:
    • (1)
    • (2, [A|C])
    • (3, [A|C])

journal note

  • default: (1)
  • configurable override:
    • (2, [A|B|C])
    • (3, [A|B|C])

scratch note

  • default:
    • if text is selected, turn text into a link
    • otherwise, (4, B)
  • configurable override:
    • (2, [A|B|C])
    • (3, [A|B|C])

Test on Windows

Dendron has not been rigorously tested on a windows machine. Need to test installation sequence here

Option to store frontmatter separate from note

Some users, especially with existing notes, would like it if dendron didn't add frontmatter to the note itself. Support alternative mode where Dendron wrote file metadata in a separate file instead

How to use dendron with current workspace

Hello!

I use a single workspace in vscode for all of my projects. How would I get dendron to work with that? Would have to add the dedron settings to settings.json? If so, what would it be?

Thanks!

LocalFile Pod should handle symlinks

Context

LocalFile pod does not deal with symlinks

Proposal

  • configuration:
    • localFilePod.symlinks: follow|ignore, default: (ignore)
  • feature: treat symlinks according to config

Cache Engine Results

Dendron re-indexes all vaults on every run. Smarter solution is to cache results and incrementally update

Support for multi-level schemas

Is your feature request related to a problem? Please describe.
I attempted to set up a two-level schema like so:
image
and got the error message displayed above. The message goes away if the second level is removed.

Describe the solution you'd like
Support for multi-level schemas.

better configuration for new journal

Context

  • currently, journals are created with the following hierarchy {domain}.journal.{Y-MM-DD-HHmmss} by default and added to the links section of the current note. This should be configurable, ideally on a per-domain basis.

Proposal

  • new configs:
    • dendron.journalDateFormat, default: Y-MM-DD-HHmmss
    • dendron.journalName, default: journal
    • dendron.journalBacklinkBehavior, default: add

New journal note fails

Describe the bug
Journal notes don't seem to work.

To Reproduce
Steps to reproduce the behavior:

  1. Open a note
  2. Enter the command "Dendron: New Journal Note"

Expected behavior
Open the journal note.

Screenshots
I get this:
image

Desktop (please complete the following information):

  • OS: Win10
  • Browser: Chrome
  • Version: 84

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.