Humans-of-Julia / BibParser.jl

Parser for bibliographic formats, including BibTeX, in pure Julia
MIT License
13 stars 5 forks source link

BibTex string parser changes string content. #22

Closed LazyScholar closed 3 years ago

LazyScholar commented 3 years ago

Parsing BibTex authors fields changes the parsed text sometimes.

E.g.:

@Article{2015Nguyen,
  author    = {Vinh Phu Nguyen and Cosmin Anitescu and St{\'{e}}phane P.A. Bordas and Timon Rabczuk},
  journal   = {Mathematics and Computers in Simulation},
  title     = {Isogeometric analysis: An overview and computer implementation aspects},
  year      = {2015},
  month     = {nov},
  pages     = {89--116},
  volume    = {117},
  doi       = {10.1016/j.matcom.2015.05.008},
  publisher = {Elsevier {BV}},
}

will result in the strings of the authors mutated to:

julia> test["2015Nguyen"].authors
4-element Vector{BibInternal.Name}:
 BibInternal.Name("", "Nguyen", "", "Vinh", " Phu")
 BibInternal.Name("", "Anitescu", "", "Cosmin", "")
 BibInternal.Name("", "Bordas", "", "St\\'{e}}}phane", " P.A.")
 BibInternal.Name("", "Rabczuk", "", "Timon", "")

I had not yet the opportunity to determine the location of the mutation. The unbalanced curly braces make the string cleaning quite difficult.


Related to https://github.com/ali-ramadhan/DocumenterCitations.jl/issues/11 & https://github.com/Humans-of-Julia/Bibliography.jl/issues/9


Unrelated to the issue: How do you plan to bring in CSL support? I had a look at it and there are already some non Julia projects. Do you aim for a Julia-only implementation? Will you create a own repository for the CSL module (as it will be a quite big task) or do you plan to implement only a subset here in BibParser.jl?


I kinda would try to implement CSL in a own repository as i am job hunting and it would be a good portfolio project .