Import from Evernote

@akos0215 Hi! Thank you for your initiative! But I have the problem of converting, it gives me an error. Attaching the log file. What am I doing wrong?2020-10-29T04_24_33_757Z-debug.zip (1.0 KB)

1 Like

Hi @smiling_lion!
Thanks for giving the converter a try. Did you install the dependencies?

1 Like

Yes, sure. All as in the script manual.

Here is the command line log

C:\WINDOWS\system32>d:

D:>cd yarle-master

D:\yarle-master>npm i

up to date, audited 518 packages in 5s

10 vulnerabilities (9 low, 1 critical)

To address issues that do not require attention, run:
npm audit fix

To address all issues (including breaking changes), run:
npm audit fix --force

Run npm audit for details.

D:\yarle-master>npm run build

[email protected] build
tsc --project ./src/tsconfig.json

D:\yarle-master>npm run start ā€“ --enexSource=evernote.enex --outputDir=./out --include-metadata --zettelkasten --plaintext-notes-only --outputFormat=ObsidianMD

[email protected] start
node --max-old-space-size=1024 ./dist/dropTheRope.js ā€œā€“enexSource=evernote.enexā€ ā€œā€“outputDir=./outā€ ā€œā€“include-metadataā€ ā€œā€“zettelkastenā€ ā€œā€“plaintext-notes-onlyā€ ā€œā€“outputFormat=ObsidianMDā€

D:\yarle-master\node_modules\bindings\bindings.js:135
throw err;
^

Error: Could not locate the bindings file. Tried:
ā†’ D:\yarle-master\node_modules\node-expat\build\node_expat.node
ā†’ D:\yarle-master\node_modules\node-expat\build\Debug\node_expat.node
ā†’ D:\yarle-master\node_modules\node-expat\build\Release\node_expat.node
ā†’ D:\yarle-master\node_modules\node-expat\out\Debug\node_expat.node
ā†’ D:\yarle-master\node_modules\node-expat\Debug\node_expat.node
ā†’ D:\yarle-master\node_modules\node-expat\out\Release\node_expat.node
ā†’ D:\yarle-master\node_modules\node-expat\Release\node_expat.node
ā†’ D:\yarle-master\node_modules\node-expat\build\default\node_expat.node
ā†’ D:\yarle-master\node_modules\node-expat\compiled\15.0.1\win32\x64\node_expat.node
ā†’ D:\yarle-master\node_modules\node-expat\addon-build\release\install-root\node_expat.node
ā†’ D:\yarle-master\node_modules\node-expat\addon-build\debug\install-root\node_expat.node
ā†’ D:\yarle-master\node_modules\node-expat\addon-build\default\install-root\node_expat.node
ā†’ D:\yarle-master\node_modules\node-expat\lib\binding\node-v88-win32-x64\node_expat.node
at bindings (D:\yarle-master\node_modules\bindings\bindings.js:126:9)
at Object. (D:\yarle-master\node_modules\node-expat\lib\node-expat.js:4:32)
at Module._compile (node:internal/modules/cjs/loader:1083:30)
at Object.Module._extensionsā€¦js (node:internal/modules/cjs/loader:1112:10)
at Module.load (node:internal/modules/cjs/loader:948:32)
at Function.Module._load (node:internal/modules/cjs/loader:789:14)
at Module.require (node:internal/modules/cjs/loader:972:19)
at require (node:internal/modules/cjs/helpers:88:18)
at Object. (D:\yarle-master\node_modules\xml-stream\lib\xml-stream.js:2:22)
at Module._compile (node:internal/modules/cjs/loader:1083:30) {
tries: [
ā€˜D:\yarle-master\node_modules\node-expat\build\node_expat.nodeā€™,
ā€˜D:\yarle-master\node_modules\node-expat\build\Debug\node_expat.nodeā€™,
ā€˜D:\yarle-master\node_modules\node-expat\build\Release\node_expat.nodeā€™,
ā€˜D:\yarle-master\node_modules\node-expat\out\Debug\node_expat.nodeā€™,
ā€˜D:\yarle-master\node_modules\node-expat\Debug\node_expat.nodeā€™,
ā€˜D:\yarle-master\node_modules\node-expat\out\Release\node_expat.nodeā€™,
ā€˜D:\yarle-master\node_modules\node-expat\Release\node_expat.nodeā€™,
ā€˜D:\yarle-master\node_modules\node-expat\build\default\node_expat.nodeā€™,
ā€˜D:\yarle-master\node_modules\node-expat\compiled\15.0.1\win32\x64\node_expat.nodeā€™,
ā€˜D:\yarle-master\node_modules\node-expat\addon-build\release\install-root\node_expat.nodeā€™,
ā€˜D:\yarle-master\node_modules\node-expat\addon-build\debug\install-root\node_expat.nodeā€™,
ā€˜D:\yarle-master\node_modules\node-expat\addon-build\default\install-root\node_expat.nodeā€™,
ā€˜D:\yarle-master\node_modules\node-expat\lib\binding\node-v88-win32-x64\node_expat.nodeā€™
]
}
npm ERR! code 1
npm ERR! path D:\yarle-master
npm ERR! command failed
npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c ā€œnode --max-old-space-size=1024 ./dist/dropTheRope.js ā€œā€“enexSource=evernote.enexā€ ā€œā€“outputDir=./outā€ ā€œā€“include-metadataā€ ā€œā€“zettelkastenā€ ā€œā€“plaintext-notes-onlyā€ ā€œā€“outputFormat=ObsidianMDā€ā€

npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\ergol\AppData\Local\npm-cache_logs\2020-10-30T00_01_36_104Z-debug.log

D:\yarle-master>npm run start ā€“ --enexSource=GeneralNotes.enex --outputDir=./out --include-metadata --zettelkasten --plaintext-notes-only --outputFormat=ObsidianMDnpm run start ā€“ --enexSource=GeneralNotes.enex --outputDir=./out --include-metadata --zettelkasten --plaintext-notes-only --outputFormat=ObsidianMD

Hi - I have the same problem on Mac (OS 10.15.6; Node.js 14.15; Xcode 12.1).

I could share the debug file if helpful.

Thanks
M

Hi!

According to this article: javascript - When I require('node-expat'), throw Error: Could not locate the bindings file - Stack Overflow
It looks like that there was some problem occurred during the installation of node-expat.
As it is suggested in this link, please remove node_modules folder and install the dependencies again by npm i

1 Like

@smiling_lion, @mlemaire together with @matti we improved Yarle in aspect of installation and setup and released a new version 3.1.1 . No install needed anymore, you can give it a try! And any feedbacks are welcome!

3 Likes

What magic is this?

Notes processed: 358
Conversion finished: 358 succeeded, 0 skipped, 0 failed. Total notes: 358

To me, as a non-coder, this really is magic.

4 Likes

Iā€™m glad you find it cool! :slight_smile:

Is it possible to specify explicit paths to the emex files? I ran npm i -g yarle-evernote-to-md but things are hanging for me when I execute yarle. Iā€™m not sure if this is because it canā€™t find the emex file or something else.

1 Like

Hi @hskiba!
You can specify the location of your enex file(s) in the config fileā€™s enexSource property. Pls check https://github.com/akosbalasko/yarle for details.

About the hanging: could you please send the commands you typed, and their outputs? Thank you!

1 Like

Thanks for the reply! Below is an example of what Iā€™m running. Running this just hangs.

I tried a different approach and was able to get things to run by running the following.

npm install
npm run build --if-present
npm start

One thing Iā€™m noticing is that tags and metadata do not appear to be in the converted files. I did check my enex files and the information is in there. Am I missing a step here?

Thanks again!

1 Like

@akos0215 I posted my experience using your wonderful tool over here:

I want to alert you to a couple of bugs I found and also give some feedback. Iā€™m on MacOS 10.15.7 and used the no-install npx method.

Template path bug

I kept getting an error that my template file couldnā€™t be found. The error showed that yarle was looking for my template deep inside the .npm directory:
'/Users/dsteinbock/.npm/_npx/47104/lib/node_modules/yarle-evernote-to-md/dist/../ds-template.md'

My workaround was to back out of that directory with the following path in my config file: "templateFile": "../../../../../../ds-template.md",

It would be great if it just worked with absolute paths instead. Same for the enex source file, which I had to specify as "/../../test2.enex" - which is just confusing.

Location block bug

When a note has no location metadata attached, yarle outputs the template text when it should just skip outputting location:

---
evernote-notebook: test2
created-at: 2020-03-01T12:10:28-08:00
modified-at: 2020-12-09T13:03:55-08:00
{location-block}location: {location}{end-location-block}
tags: #test #test2
---

Feedback

Please donā€™t convert the filenames to lowercase. In Obsidian, since we use filenames directly in note text as links, the letter case is meaningful. So converting to lowercase is a loss of data.

5 Likes

Hi @dsteinbock!
Wow, thank you for these great feedbacks, Iā€™ll fix the things you mentioned of course!

2 Likes

Awesome, thank you!

I just submitted these as Issues on your repository for easier tracking: #115, #114, #117.

2 Likes

Dear Akos0215,

I wondered if you could please add a get start note with Yarle for folks like me that are not developers. I was unable to use and set up Yarle.

Many thanks for your help.

Best wishes,
Fernando

1 Like

I read about Obsidian today on Exploding Topics for the first time. Iā€™m a long time Evernote user and as a markdown advocate, I was very excited reading about Obsidian.

Please, could you tell me the current working status of this plugin as Iā€™d be interested in pulling all my stuff into Obsidian and having a look?

Thanks!

Hi @boardtc!

Currently Iā€™m not planning to embed Yarle into Obsidian as a plugin. It is a standalone tool that anyone can use freely, so you can give it a try if you wish: https://github.com/akosbalasko/yarle
If you have any questions or problemns with the tool, you can reach me there in the Issues or in the Discussion page.
See you there!

3 Likes

Hello @akos0215,

Iā€™m trying to run Yarle on Windows 10. I run it with the follwoing command:
npx -p yarle-evernote-to-md@latest yarle --configFile ā€œconfig.jsonā€
This is in the directory where the config.json lies. To make sure I have everything correct, I tried the config with ā€œ.\config.jsonā€, "config.json, and without the ā€œā€ as well, in case I got the syntax confused. I also tried the full file path.

Every time, I get an error that reads, roughly translated as ā€œthe system canā€™t find the inputed pathā€.

Can you advise on a possible fix for that?

Hi @Keppler ,

I released a desktop versions of Yarle with a graphical user interface which eliminates configurational, platform-dependent and other commandline problems. i tried to implement a straight-forward solution to configure and use Yarle easier than before. Please give it a try.

cheers,
akos

2 Likes

This is really nice, I will give it a spin.

1 Like