zerobase / enml2md

Evernote to Markdown Converter
MIT License
34 stars 4 forks source link

Fatal error in ../deps/v8/src/handles.h, line 48 #4

Open palica opened 9 years ago

palica commented 9 years ago

Hi,

I am trying to convert my Evernote notes and I get this error:

Fatal error in ../deps/v8/src/handles.h, line 48

CHECK(location_ != NULL) failed

==== C stack trace ===============================

1: V8Fatal 2: v8::String::NewFromUtf8(v8::Isolate, char const, v8::String::NewStringType, int) 3: node::StringBytes::Encode(v8::Isolate, char const_, unsigned long, node::encoding) 4: void node::Buffer::StringSlice<(node::encoding)1>(v8::FunctionCallbackInfov8::Value const&) 5: v8::internal::FunctionCallbackArguments::Call(void (*)(v8::FunctionCallbackInfov8::Value const&)) 6: ?? 7: ?? Illegal instruction

could you please help me? What am I doing wrong? after successful install also the test were OK. npm test

enml2md@0.1.0 test /home/user/tmp/enml2md grunt test

Local Npm module "grunt-cli" not found. Is it installed?

Running "clean:lib" (clean) task Cleaning lib...OK

Running "clean:test" (clean) task ..... //// SNIP //// .....

26 passing (124ms)

Done, without errors.

zerobase commented 9 years ago

With my Mac (10.9.5), everything goes well:

git clone https://github.com/zerobase/enml2md.git
cd enml2md
npm install
npm test
node bin/enml2md.js src/test/fixtures/note.enex ~/tmp/enml2md

Can you try node bin/enml2md.js src/test/fixtures/note.enex ~/tmp/enml2md and, if it fails, give me the output? Otherwise, can you give me your ENML file or its part that produces the same error?

palica commented 9 years ago

npm test

enml2md@0.1.0 test /root/tmp/enml2md grunt test

Local Npm module "grunt-cli" not found. Is it installed?

Running "clean:lib" (clean) task Cleaning lib...OK

Running "clean:test" (clean) task Cleaning test...OK

Running "coffee:lib" (coffee) task File lib/Attachment.js created. File lib/Attachment.js.map created. File lib/EvernoteExport.js created. File lib/EvernoteExport.js.map created. File lib/Note.js created. File lib/Note.js.map created. File lib/Parser.js created. File lib/Parser.js.map created. File lib/enml2md.js created. File lib/enml2md.js.map created.

Running "coffee:test" (coffee) task File test/AttachmentTest.js created. File test/AttachmentTest.js.map created. File test/EvernoteExportTest.js created. File test/EvernoteExportTest.js.map created. File test/NoteTest.js created. File test/NoteTest.js.map created. File test/TestConfig.js created. File test/TestConfig.js.map created.

Running "copy:fixtures" (copy) task Created 1 directories, copied 9 files

Running "simplemocha:all" (simplemocha) task

Attachment

setFileName(fileName)

  ✓ sets @fileName
#exportFileName()
  ✓ returns "{{hash}}/{{filename}}" with filename
  ✓ returns "{{hash}}.{{extension}}" without filename

EvernoteExport(enml_filename)

export(directory, cbDone)

  ✓ creates an export directory
  ✓ creates exported files
  ✓ creates an attachment direcotry
  ✓ creates attachment files
  ✓ creates attachment files without <file-name>
  ✓ can be called without a callback
#each(cbEach, cbEnd)
  ✓ sets total @count at cbEnd()
  ✓ calls cbEach(note)
  ✓ can be called without cbEach()
  ✓ can be called without both beEach() and cbEnd()

Note without resources .parse() ✓ returns a note object.

filename(extension)

    ✓ escapes title string.
  @title
    ✓ is a title string.
  @created
    ✓ is a Date object.
  @updated
    ✓ is a Date object.
  @tags
    ✓ is an array of string.
  @content
    ✓ is a Markdown string.
with an image attachment
  @content
    ✓ is ok.
  @attachments
    ✓ are loaded.
with two attachments
  @content
    ✓ is ok.
  @attachments
    ✓ are loaded.
with multiple <en-media> tag for a single <resource>
  @attachments
    ✓ are loaded.
with <en-media></en-media> tag
  @attachments
    ✓ are loaded.

26 passing (130ms)

Done, without errors.

cat /tmp/enml2md/a\ single\ note\ fixture\ test\ \ 1.md Title: a single note fixture/test: 1 Tag: markdown evernote

fixture content

the enex file is a complete export of my evernote. i will have to create smaller files without personal data and check if they produce errors and send those, that will take some time.

thanks for reply.

pavol

On Wed, Mar 11, 2015 at 9:05 AM, Hideto Ishibashi notifications@github.com wrote:

With my Mac (10.9.5), everything goes well:

git clone https://github.com/zerobase/enml2md.git cd enml2md npm install npm test node bin/enml2md.js src/test/fixtures/note.enex ~/tmp/enml2md

Can you try node bin/enml2md.js src/test/fixtures/note.enex ~/tmp/enml2md and, if it fails, give me the output? Otherwise, can you give me your ENML file or its part that produces the same error?

— Reply to this email directly or view it on GitHub https://github.com/zerobase/enml2md/issues/4#issuecomment-78219959.

palica commented 9 years ago

OK, so I have finally exported the notes from Evernote. And this is what I get when converting a smaller set of notes. /tmp/enml2md/node_modules/html2markdown/markdown_html_parser.js:139 throw "Parse Error: " + html; ^ Parse Error: et, např. mīlle et nōngentī.

Chcete-li zjistit, jak se napíše římsky nějaké konkrétní číslo, zadejte ho pomocí arabských číslic do políčka a klikněte na Převést.

Skloňování

U základních číslovek se skloňuje jenom ūnus, duo, trēs. Dále pak stovky a tisíce. Ostatní základní číslovky jsou nesklonné.

ūnus, -a, -um
Má zájmenné skloňování.
U pomnožných substantiv se užívá plurálových tvarů, kupříkladu: ūnī fāstī (jeden kalendář), ūnae litterae (jeden dopis), ūna castra (jeden tábor).
duo, -ae, -o
Má skloňování se zbytky duálu. Podle duo se skloňuje také ambo (oba).
trēs, tria
Má skloňování podle adjektiv 3. deklinace v plurálu.
Určeníūnus, -a, -um (sg.)duo, duae, duo (pl.)trēs, tria (pl.)
Pádm.f.n.m.f.n.m.+f.n.
nominativūnusūnaūnumduoduaeduotrēstria
genitivūnīusūnīusūnīusduōrumduārumduōrumtriumtrium
dativūnīūnīūnīduōbusduābusduōbustribustribus
akuzativūnumūnamūnumduōs (duo)duāsduotrēstria
ablativūnōūnāūnōduōbusduābusduōbustribustribus

Stovky a tisíce se skloňují pouze v plurálu, v singuláru mají pro každý pád tvary centum a mīlle. Stovky, počínaje 200, se skloňují jako adjektiva 1. a 2. deklinace. Tisíce, počínaje 2000, se skloňují podle 3. deklinace jako mare.

Následuje-li počítaný předmět po číslovce mīlia (pl.), stojí vždy v genitivu, tj. číslovka se chová jako substantivum, a proto řídí pád počítaného předmětu. V ostatních případech se naopak číslovka řídí pádem počítaného předmětu, tj. chová se jako adjektivum.

Závisí-li číselný výraz na adjektivech longus, lātus, altus nebo na výrazech extendī či patēre in longitūdinem (latitūdinem, altitūdinem), stojí v akuzativu (tzv. akuzativ rozsahu).
Příklad: agger longum pedēs trecentōs (val dlouhý 300 stop)

Závisí-li číselný výraz na substantivu, stojí v genitivu. Pokud by se tedy z předešlého příkladu vypustilo longum, rozvíjel by číselný výraz přímo substantivum agger, a musel by být proto v genitivu. Takto:
agger trecentōrum pedum (třísetstopý val)

Řadové číslovky se skloňují jako adjektiva 1. a 2. deklinace. Výrazy pro číslovku 18. a vyšší končí sufixem -ēsimus,-a,-um.

zerobase commented 9 years ago

Perhaps your note file (.enex) is an invalid XML or contains an invalid HTML content. In the case, a bug belongs to Evernote. Otherwise, html2markdown.

The exception you wrote was thrown from html2markdown, a third-party module. Maybe it's better to report the issue to the author of html2markdown.

https://github.com/alexgorbatchev/html2markdown

It's just a thought but this could be a workaround: Open your note file (.enex) with your editor and make sure it doesn't contain any wrong characters in UTF-8, then save it as UTF-8 with or without BOM and retry conversion with enml2md.