Comments (5)
Thanks for the in-depth explanation.
Ive had troubles linking files across systems, or getting them to work in visualization scripts like this. Also. it allows for easier auto-completion in a terminal hel
-> hello-world.md
. Furthermore, the daily note seems to be written as yyyy-mm-dd
. Nevertheless, it might be smart to wait for this to get some votes. For me, this is more of a nice-to-have
About the wikilinks: Ive totally missed the features. I am terribly sorry about that. [Sidenote: On the other hand, that might also be a sign that the README could be better structured. There are lots of rather small flashy gifs sandwiched in bullet points. It gets better for Notes and Images preview, but in the end it becomes smaller again. And the gifs demonstrating everything in a glaring bright theme doesn't help either, if you are watching them in the middle of the night inside VSC with a dark theme on.]
Let me end with a big thank you for developing this awesome extension and feel free to prioritize and work on anything you want. You are doing great!
(Sidenote: I absolutely would love to contribute (as this extension absolutely fills my needs), but first I got to start on my thesis.. Luckily I will need to learn JS/TS for it, so maybe there is hope π)
from memo.
Spent some time reading and reflecting on this tonight, after trying to find reference to Github's rendering of [[WikiLinks]] (in repo markdown files) based on slugs. Without any mention in the Github Flavored Markdown Spec, I finally found this commit by an old friend :).
I'd suggest maintaining the current Memo behavior, that isβ differentiating between notes, spaced or dashed.
@svsool, I agree that converting to and from a typed name would likely introduce complexity-inconsistency down the road, not to mention the fact that it's a surprising behavior. It also seems that most implementations have or plan to move to supporting the literal filename, spaced or dashed (including Foam).
from memo.
I support this request as well. The worry that you wouldn't be able to use both Hello World and Hello-World doesn't seem like a problem if every file is slugified with dashes, which makes it more compatible as Annegrim has pointed out. Perhaps a solution would be to automatically change an entry for [[Hello World]] into [[Hello-World|Hello World]]?
from memo.
Hi,
Thanks for the feature request.
It would be great if you can explain not only "what" you would like, but also "why" you would like this.
At the moment I am forced to create it as
hello world.md
, which makes linking to a file path more difficult ->hello%20world.md
.
Linking to a file from where? Memo provides autocomplete as well as any descent terminal or file explorer provides autocomplete for file paths, so I'm not sure what exactly is difficult in your case.
At this point, I have an opinion that slugification will make links design fragile. Let me explain one case. For instance, you have two files with dashes and without dashes in the name:
hello world.md // with space
hello-world.md // with dash
Now any user decides to use links autocomplete and autocomplete will give results as mentioned above. Still, the problem which I can foresee is that as soon as the user picks any of hello world.md
with space or hello-world.md
with dash clicking on such link will always bring user to hello-world.md
leaving hello world.md
file unreachable via links, and this kind of ambiguous cases I would like to keep out of Memo's design. I can anticipate problems for automatic links synchronization feature and certain ambiguous cases against slugified / normal filenames.
Memo's link is a filename when created to the filesystem and simply text when not. This logic also makes automatic links synchronization easier. If you would like filenames with dashes and preview without dashes, you can use labels (links with piping); for example, hello-world|hello world
should give you expected results. Another way to solve this problem is by showing links without dashes (pre-processing) in preview and keeping dashes as part of the links in the text editor and filenames. However, it's not going to work if user wants to see both dashes and spaces in preview without introducing some escaping logic, which makes links more complex.
Also I would like to write the wiki-link with piping: This is a common [[greeting|Hello World]], which would link to hello-world.md.
You can already write wiki-link with piping in Memo, except that you suggested leading labels and Memo uses trailing labels as described in Wikipedia. Example of a link with label in Memo [[my note|My Note Label]]
it will refer user to the file my note.md
and show it as My Note Label
in the preview vs suggested [[My Note Label|my note]]
. Obsidian also uses trailing labels and its users, so it will be easier for them to switch.
In general switching between trailing / leading labels in wiki-links can be implemented in Memo under configuration flag, but I would like to see if it gains a critical mass of 20 upvotes π under this or your comment, if so I might consider implementing it in the future. Also, feel free to contribute.
Currently I'm going to focus on some other features such as image pasting from clipboard, links rename via RenameProvider
, html -> markdown copy and possibility to open links to common types in the default app.
from memo.
I re-visited this issue one more time and went through the discussion and opinions, and I agree that differentiating between spaced and dashed links makes sense for keeping links design unambiguous.
Closing this issue in favor of maintaining the current Memo behavior.
Thank everyone for the discussion!
from memo.
Related Issues (20)
- Reference header name with code HOT 1
- New notes capture links to old notes with same name HOT 2
- Backlinks in Preview HOT 3
- Not all extensions are open with default app
- Link to .ts / .tsx /.js files & links inside them also
- markdown.experimental.updateLinksOnFileMove.enabled HOT 4
- Daily notes don't automatically create in a Journal or Daily Notes folder HOT 1
- Request for adding to HacktoberFest Topic HOT 1
- Better logging for commands in general HOT 4
- Feature Request: Checklist / Todo / Tasks HOT 3
- A solution compatible with Markdown Extended
- CMD+Enter keyboard shortcut HOT 1
- Feature Request: Sort Backlinks Sidebar
- YAML Preamble is displayed in on-hover preview, not in built-in preview
- Daily Notes Folder Configuration HOT 1
- Add tag function?
- Completion Sort Order: Frequency/Recency
- Incompatible with Markdown Preview Enhanced
- Feature: Support links in format Page#Section
- Support for native markdown links []() HOT 1
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 memo.