langsci / langscibook

LaTeX class and additions for typesetting books
34 stars 13 forks source link

clarify modifications of sp-authoryear-comp.cbx and biblatex-sp-unified.bbx #50

Closed timmli closed 7 years ago

timmli commented 7 years ago

It's not yet clear what changes have been made by langsci to the original files. Clarifications should be made by refering to the fork, thus either by \inputing the original files or by parallel modification in the fork.

adamliter commented 7 years ago

Hi, I don't mean to butt in here, but I started poking around a bit because of a problem that the version of langsci on CTAN is causing, and I wanted to raise a few things that are largely related to this open issue you have, so I hope it is okay to do so here.

The problem that led to me poking around here is the fact that langsci is distributing an old version of bibliatex-sp-unified.bbx and sp-authoryear-comp.cbx which breaks with versions of Biblatex 3.5 and newer (cf. https://github.com/semprag/biblatex-sp-unified/issues/23, https://github.com/semprag/biblatex-sp-unified/issues/24). I do have versions of the newest biblatex-sp-unified files in my TEXMFHOME. However, because you've chosen to place these files in tex/xelatex/, these broken versions of the file get picked up before the one in my TEXMFHOME when compiling with XeLaTeX (see, e.g., this answer to Why isn't kpathsea picking up my local version of a file?).

So the first point is that .cbx and .bbx files really should not be going in tex/xelatex. I've never distributed a package myself, so I'm not totally sure how it works, but I think you should be able to distribute the package across different directories of the TeX Directory Structure, correct? The .cbx files should go in tex/latex/biblatex/cbx, and the .bbx files should go in tex/latex/biblatex/bbx. If you fix this, this will not break things for users who might have different versions of the files in their TEXMFHOME that they might wish to use when compiling with XeLaTeX. Currently, the only options are to either move the stuff distributed in langsci out of the way, modify texmf.cnf (probably a bad idea), or not use XeLaTeX.

In addition to putting the bibliography files in the appropriate place, it would probably also be better if you weren't distributing something that has the same name as something that is being maintained by someone else. I know it's unfortunate that the S&P folks have not put this on CTAN so distributing it yourselves is convenient, but I suspect it could lead to more headaches in the long run. Perhaps @fintelkai and @chbrown could be convinced to release biblatex-sp-unified on CTAN. I know the Glossa folks also rely on it (cc: @guidovw).

Anyway, there are a few reasons why it could possibly lead to more headaches in the long run. For example, because you're distributing something with the same name, @fintelkai and @chbrown could conceivably get bug reports about things that they've already fixed but are still broken/buggy in an older version that you're distributing. This would be something that could take a while for an end user to debug and figure out. Relatedly, it would probably also be confusing/misleading for anyone who is trying to help an end user, whether it's in person or someone on TeX.SX. The person providing assistance might also be confused by the fact that there are now effectively two copies of the same files being maintained but that aren't necessarily being kept in sync.

And, related to that last point, I was wondering what's going on with the biblatex-langsci-unified.bbx and langsci-authoryear-comp.cbx symlinks. I see that they're not currently being used in langscibook.cls, but if you do use either of those names to specify the bibstyle or citestyle, you'll end up with both that name and the name of the file to which it is a symlink in the log file. This could complicate debugging unless someone knows to look for this.

Anyway, like I said, I don't mean to butt in here. This is all meant as friendly advice 😸, and I've never distributed a package myself before, so I'm not entirely sure how it works, but it seems like there might be some things that could be improved. At the very least, it would be nice if the biblatex-sp-unified files that you're distributing don't take precedence over my local copies in TEXMFHOME when compiling with XeLaTeX.

adamliter commented 7 years ago

So I just learned that CTAN has a strong preference for submissions where everything is in the same directory. Perhaps a possibility would be to distribute the bibliography stuff as a separate package (it looks like other Biblatex-based packages just put all the .bbx and .cbx files in a single directory underneath tex/latex/biblatex)? Or, if the S&P folks can be convinced to release biblatex-sp-unified to CTAN, then that problem goes away (unless you want to make any modifications to the bibliography, of course, but it doesn't look like langsci currently does that?).

timmli commented 7 years ago

Thanks for butting in ;-) The points you're raising actually pertain to the CTAN version, which has its own repository (https://github.com/langsci/CTAN), of which @Glottotopia is the maintainer. I'm not using the CTAN version of langscibook at all, but your're probably right that the style files should be renamed.

As far as this repository is concerned, the issue is actually closed: we're using the most recent version of biblatex-sp-unified. Modifications are minor and done in our own code only. In case we would apply changes directly, we would reflect this in our fork of biblatex-sp-unified. Until recently, we were using submodules but this turned out to be unpractical for us. Yet we think that this still is transparent enough.

As you mentioned, it would be nice if the maintainers of biblatex-sp-unified would also take care of a CTAN mirror. I'd like to add that it would be also helpful to give some indication of the version in the .bbx and .cls files themselves.

adamliter commented 7 years ago

@timmli Thanks for pointing out that! I'm not sure how I missed that there was a separate CTAN repository ... 😝 Hopefully @Glottotopia sees this, but I'll raise the issue over there, too.

Glottotopia commented 7 years ago

Thanks for raising this. Let me try to see more clearly what all parties are trying to accomplish:

It seems to me that there is no way for this to work in the present setup. For the Langsci skeletons to compile, we need the bib styles available. But if the maintainer does not make them available (read: on CTAN), we are stuck.

Doing some Optimality Theory here: let's look at the rankings of the constraints and how they are violated.

Not a great choice to make.

I would go for the (nominal) violation of "use standards" and rename the files to langsci instead of sp. The files would be identical in 99% of the points in time, 1% being latency in updating. This would lead to two sets of bbx/cbx files being available. As soon as the sp set becomes available, we can drop the langsci version.

Would that be OK?

haspelmath commented 7 years ago

This may not be practical, but given that the Generic Style Rules are so much more explicit about bibstyle than the "Unified Style Sheet" (and at the same time somewhat simpler), could we have our own implementation?

This would be a slight deviation from what SP is doing, but when you look more closely, their implementation also deviates slightly (though in unclear ways) from the "Unified Style Sheet".

Martin

On 25.09.17 11:05, SebastianNordhoff wrote:

Thanks for raising this. Let me try to see more clearly what all parties are trying to accomplish:

  • SP has an implementation of the Unified Style Sheet.
  • SP should be considered the maintainer
  • The SP version is not available on CTAN
  • Langsci wants to use standards
  • Langsci wants all its packages to be available on CTAN so that projects work out-of-the-box

It seems to me that there is no way for this to work in the present setup. For the Langsci skeletons to compile, we need the bib styles available. But if the maintainer does not make them available (read: on CTAN), we are stuck.

Doing some Optimality Theory here: let's look at the rankings of the constraints and how they are violated.

  • violate "SP maintainer": Langsci maintains a package it is not supposed to maintain (currently the case)
  • violate "use standards": Langsci distributes its own styles under a different name
  • violate "out-of-the-box": Langsci projects don't compile without downloading the bib styles from a third party server

Not a great choice to make.

I would go for the (nominal) violation of "use standards" and rename the files to |langsci| instead of |sp|. The files would be identical in 99% of the points in time, 1% being latency in updating. This would lead to two sets of |bbx|/|cbx| files being available. As soon as the |sp| set becomes available, we can drop the |langsci| version.

Would that be OK?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/langsci/latex/issues/50#issuecomment-331821141, or mute the thread https://github.com/notifications/unsubscribe-auth/AFTdqh-UCpIZ3mzqgEoJ1l-d3v-90eXKks5sl2zbgaJpZM4KkNI7.

-- Martin Haspelmath (haspelmath@shh.mpg.de) Max Planck Institute for the Science of Human History Kahlaische Strasse 10
D-07745 Jena & Leipzig University IPF 141199 Nikolaistrasse 6-10 D-04109 Leipzig

fintelkai commented 7 years ago

Hi everyone,

I just looked at the langsci code on CTAN. As far as I can tell the documentclass actually loads the renamed files (biblatex-langsci-unified.bbx, langsci-authoryear-comp.cbx) and so the presence of biblatex-sp-unified.bbx and sp-authoryear-comp.cbx is unnecessary. Since the versions of our files that are in the langsci CTAN distribution are seriously outdated and since they aren't actually used by the package, I think they should be removed. This will then not create issues for users who use the up-to-date github versions of our files.

In the medium term, we will provide our files on CTAN and then langsci can decide whether to build their system on ours (in which case, there should be a better solution than renaming whenever we have a new version) or distribute a bibliographic style that, like now, is a variant of ours.

But for now, the problem is solved by removing the outdated version of our files (which are idle) from the langsci distribution.

fintelkai commented 7 years ago

@haspelmath writes "their implementation also deviates slightly (though in unclear ways) from the Unified Style Sheet". Yes, we deviate and say so explicitly ("An opinionated BibLaTeX implementation"). The documentation (https://github.com/semprag/biblatex-sp-unified/blob/master/doc/DOCUMENTATION.md) attempts to be clear about where we differ from the USS.

Could you please point out where the implementation differs without being clear about it? We'd like to make sure that any such decision is documented.

haspelmath commented 7 years ago

Sorry, I hadn't seen this text earlier. This is indeed very explicit.

Are there any current plans to try and unify S&P style, the Unified Style Sheet (as found on the LSA site), and possibly other styles?

For us, bib style is an annoying cost factor, and it would be great if the discipline could converge on a single style that is as straightforward to understand as the Unified Style Sheet and as technically sound as the BibLaTeX implementation.

On 25.09.17 15:02, Kai von Fintel wrote:

@haspelmath https://github.com/haspelmath writes "their implementation also deviates slightly (though in unclear ways) from the Unified Style Sheet". Yes, we deviate and says so explicitly ("An opinionated BibLaTeX implementation"). The documentation (https://github.com/semprag/biblatex-sp-unified/blob/master/doc/DOCUMENTATION.md) attempts to be clear about where we differ from the USS.

Could you please point out where the implementation differs without being clear about it? We'd like to make sure that any such decision is documented.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/langsci/latex/issues/50#issuecomment-331873607, or mute the thread https://github.com/notifications/unsubscribe-auth/AFTdqqDH6KPOdj0FNsZhDle53MYUGpTwks5sl6RsgaJpZM4KkNI7.

-- Martin Haspelmath (haspelmath@shh.mpg.de) Max Planck Institute for the Science of Human History Kahlaische Strasse 10
D-07745 Jena & Leipzig University IPF 141199 Nikolaistrasse 6-10 D-04109 Leipzig

fintelkai commented 7 years ago

@haspelmath asks "Are there any current plans to try and unify S&P style, the Unified Style Sheet (as found on the LSA site), and possibly other styles?"

I tried to get things going at https://github.com/lx-unified-v2/lx-unified-v2 but I fear none of us seem to have the bandwidth to do this work.

adamliter commented 7 years ago

@Glottotopia That's a good summary of the high-level points that I was raising, but there are also a few lower-level points, which are:

  1. the langsci package on CTAN puts the bibliography files in the wrong location in the TeX Directory Structure; and
  2. as a result of this, when compiling with XeLaTeX, the langsci versions of the biblatex-sp-unified files take precedence over those in a local TEXMFHOME setup, contrary to what a user could expect to happen if the bibliography files that are distributed as part of the langsci package were in the correct location in the TeX Directory Structure

(2) would be fixed by removing the biblatex-sp-unified files from the langsci package, but I think it would be good if (1) could also be fixed. And, it seems like fixing (1) would probably mean distributing multiple packages since CTAN strongly prefers a package with a flat directory structure to be put in one location in the TeX Directory Structure. Alternatively, if @fintelkai and the S&P folks distribute biblatex-sp-unified on CTAN (which it sounds like they will?), then perhaps you could just use that and still only have to distribute one package in order to fix (1).

@fintelkai, @haspelmath: regarding the bibliography style question, why not just use a standard style, like APA? I assume there was a reason for linguists deciding to create their own standard, but I'm not sure what it was, and I'm having a hard time imagining what it could be. APA is relatively well articulated (as far as I know), and it also has a lot of infrastructure built up around it in terms of LaTeX packages and otherwise that we wouldn't have to maintain. But, if there's good reason for having our own bibliography styles, I agree it would be good to standardize it, and I've also tried to contribute to the discussion at https://github.com/lx-unified-v2/lx-unified-v2, but I think @fintelkai is right that most of us probably don't have the bandwidth and this is pretty low priority, even if we do. So I'm not sure what's to be done, and that's what makes me think perhaps it's better to just use an already well-articulated and well-supported standard (e.g., APA).

haspelmath commented 7 years ago

The main reason is cultural diversity, I think -- more or less the same reason why Slovakia wanted to be a separate country from Czechia, i.e. there is no substantive reason.

In fact, it would be best (from a practical point of view) if there were a single style for all fields (not just psychology and related fields). But that is even more difficult to achieve.

Since many linguists would object to changing their habits drastically, I think it's more realistic to hope that they will be willing to change their habits moderately. But even that is very difficult to achieve, because there is no central organization even for linguistics. (So it's not only bandwidth problems -- it's like English orthography, which cannot be reformed because there is no institution that has the authority.)

(And just as an example of the kinds of objections that you'll hear: Some linguists would argue that abbreviating given names, as APA does, is culturally insensitive, because for most Chinese and Korean authors, this is the most important part of their name. So linguists don't abbreviate given names.)

On 25.09.17 17:34, Adam Liter wrote:

@fintelkai https://github.com/fintelkai, @haspelmath https://github.com/haspelmath: regarding the bibliography style question, why not just use a standard style, like APA? I assume there was a reason for linguists deciding to create their own standard, but I'm not sure what it was, and I'm having a hard time imagining what it could be. APA is relatively well articulated (as far as I know), and it also has a lot of infrastructure built up around it in terms of LaTeX packages and otherwise that we wouldn't have to maintain. But, if there's good reason for having our own bibliography styles, I agree it would be good to standardize it, and I've also tried to contribute to the discussion at https://github.com/lx-unified-v2/lx-unified-v2, but I think @fintelkai https://github.com/fintelkai is right that most of us probably don't have the bandwidth and this is pretty low priority, even if we do. So I'm not sure what's to be done, and that's what makes me think perhaps it's better to just use an already well-articulated and well-supported standard (/e.g./, APA).


You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/langsci/latex/issues/50#issuecomment-331919971, or mute the thread https://github.com/notifications/unsubscribe-auth/AFTdqsEZj9-_SM_tQogRpbFz8-4KV2GXks5sl8gFgaJpZM4KkNI7.

-- Martin Haspelmath (haspelmath@shh.mpg.de) Max Planck Institute for the Science of Human History Kahlaische Strasse 10
D-07745 Jena & Leipzig University IPF 141199 Nikolaistrasse 6-10 D-04109 Leipzig

adamliter commented 7 years ago

@haspelmath That's a good point about abbreviating names, but why not just use the APA style, but don't abbreviate names, then?

haspelmath commented 7 years ago

I must admit that one thing that puts me off about APA is the way they monetarize their system. Their style handbook is over 200 pages and needs to be BOUGHT. But given the world they inhabit (science capitalism led by big money), that's not surprising. I'm not saying that this is a substantive argument -- as I said, there are many cultural factors. (And in the linguistics subculture, APA is virtually unknown.)

On 25.09.17 23:07, Adam Liter wrote:

@haspelmath https://github.com/haspelmath That's a good point about abbreviating names, but why not just use the APA style, but don't abbreviate names, then?


You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/langsci/latex/issues/50#issuecomment-332013006, or mute the thread https://github.com/notifications/unsubscribe-auth/AFTdqt8ee9p2014_WOV2GaQIc6BdYEC0ks5smBYDgaJpZM4KkNI7.

-- Martin Haspelmath (haspelmath@shh.mpg.de) Max Planck Institute for the Science of Human History Kahlaische Strasse 10
D-07745 Jena & Leipzig University IPF 141199 Nikolaistrasse 6-10 D-04109 Leipzig

Glottotopia commented 7 years ago

removed the offending files from CTAN

adamliter commented 6 years ago

The day might be coming: https://github.com/semprag/biblatex-sp-unified/issues/42