apiaryio / drafter

API Blueprint Parser (C++)
https://apiblueprint.org/
MIT License
301 stars 54 forks source link

Support tabs and CRLF line endings #628

Open abtris opened 11 years ago

abtris commented 11 years ago

@zdne opened apiaryio/snowcrash#29

abtris commented 10 years ago

@netmilk commented

+1 Apiary users are often facing this issue:

message: Cannot parse blueprint code 
description: The use of tab(s) '\\t' in source data isn't currently 
supported, please contact makers 
code: 2
abtris commented 10 years ago

@zzen commented

+1

abtris commented 10 years ago

@zdne commented

To fix this issues a moderate modification to https://github.com/apiaryio/sundown is needed.

Consider using Hoedown contributing to hoedown/hoedown#22 and hoedown/hoedown#28 instead

abtris commented 9 years ago

@pksunkara commented

Can we make a hack for this by expanding all \t before parsing?

abtris commented 9 years ago

@zdne commented

This won't not help as then you would need to recalculate the source maps (in order to display any possible warning / errors). Doing so (recalculating) is the core problem here and solving it would bring the solution for this issue (and thus it wouldn't be a hack)

abtris commented 9 years ago

@ze-phyr-us commented

+1 for tabs! Any ETA on this?

abtris commented 9 years ago

@zdne commented

@ze-phyr-us so far there wasn't too much of push on this one (read no concrete plans yet). Introducing this will most likely mean migration to Hoedown or CommonMark parser.

abtris commented 8 years ago

@defaltd commented

Pinging for update @zdne

abtris commented 8 years ago

@zdne commented

Hey @Stephn-R,
you are the first one to ask for this in a long time. I am afraid the status hasn't changed since https://github.com/apiaryio/snowcrash/issues/29#issuecomment-96465592 we might migrate the parser but no ETA just yet.

abtris commented 8 years ago

@defaltd commented

So lets rise this baby back from the dead :skull: :zap:

abtris commented 8 years ago

@jacquesfu commented

So what's a workaround? I have codeblocks with tabs to show examples... will the codeblocks have to be converted to spaces I guess?

abtris commented 8 years ago

@ze-phyr-us commented

@jacquesfu I'm just piping my blueprints through sed 's/ / /g' before feeding them to snowcrash.

Edit: GH screws up the formatting, but obviously that was s/<tab>/<4 spaces>/g

abtris commented 8 years ago

@zdne commented

Hey guys, may I just ask you where you need the tabs? Is it the mock server or testing? I presume it is really about the content of payloads and not necessarily the blueprint itself, correct?

abtris commented 8 years ago

@defaltd commented

Alright so the way I was able to resolve this was if I targeted the affected files and ran a python method for stripping out carriage returns >> \r

abtris commented 8 years ago

@ze-phyr-us commented

@zdne Coding standards. When the entire project uses tabs rather than spaces, I want my documentation consistent with that.

abtris commented 8 years ago

@defaltd commented

Agreed but this discussion is about the way line endings are formed by your IDE/System

abtris commented 8 years ago

@lippea commented

This is not big problem, but quite annoying. We also have problem that I removed all \t \r, committed to git, but others still have problem with \r after downloading the code again.

abtris commented 8 years ago

@BigBlueHat commented

I just hit this issue because Windows. :confounded: It's obviously possible to route around, but it's an unfortunate complication when trying to use API Blueprint docs with dredd, etc.

Remove pain. Win hearts and minds. :smile:

:+1: to fixing this soon.

abtris commented 7 years ago

@tobeorla commented

I hope CRLF gets supported or converted when necessary

abtris commented 7 years ago

@jch254 commented

+1!!!

abtris commented 7 years ago

@honzajavorek commented

This is an important pre-requisite for https://github.com/apiaryio/dredd/issues/204.

abtris commented 7 years ago

@vnenkpet commented

+1

abtris commented 7 years ago

@lippea commented

It was annoying, but not blocking issue. I ended up by replacing with notepad++ and check into github with .gitattributes: *.apib text eol=lf