From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marcin Borkowski Subject: How to make a non-GPL Org-mode exporter? Date: Mon, 27 Jul 2015 14:10:27 +0200 Message-ID: <87pp3dvm18.fsf@mbork.pl> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:58005) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZJhEw-0007tz-LF for emacs-orgmode@gnu.org; Mon, 27 Jul 2015 08:10:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZJhEr-0002Hx-NG for emacs-orgmode@gnu.org; Mon, 27 Jul 2015 08:10:42 -0400 Received: from mail.mojserwer.eu ([2a01:5e00:2:52::8]:43713) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZJhEr-0002Gd-GZ for emacs-orgmode@gnu.org; Mon, 27 Jul 2015 08:10:37 -0400 Received: from localhost (localhost [127.0.0.1]) by mail.mojserwer.eu (Postfix) with ESMTP id 751E08F2003 for ; Mon, 27 Jul 2015 14:10:33 +0200 (CEST) Received: from mail.mojserwer.eu ([127.0.0.1]) by localhost (mail.mojserwer.eu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 0TEXpKw3Jkib for ; Mon, 27 Jul 2015 14:10:31 +0200 (CEST) Received: from localhost (unknown [109.232.24.146]) by mail.mojserwer.eu (Postfix) with ESMTPSA id 189298F2002 for ; Mon, 27 Jul 2015 14:10:31 +0200 (CEST) List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Org-Mode mailing list Hi all, after a short discussion in a recent thread, I have a serious technical question. Assume that (for some reason) I want to write an Org-mode exporter which won't be GPL'd. (Use-case: having written a few custom exporters, I'm writing a tutorial on them, and I consider publishing a *tutorial* with GPL'd code a Bad Thing=E2=84=A2. (The idea of a programming tutorial is = that other people can or even should reuse the code in the tutorial, right? And I see no reason to impose GPL on them.)) How do I do that? Is that even possible? Also, is it possible to get an actual answer to this question without spending money on lawyers? The manual says: ,---- | Your two entry points are respectively =E2=80=98org-export-define-backe= nd=E2=80=99 and | =E2=80=98org-export-define-derived-backend=E2=80=99. To grok these fun= ctions, you | should first have a look at =E2=80=98ox-latex.el=E2=80=99 (for how to d= efine a new | back-end from scratch) and =E2=80=98ox-beamer.el=E2=80=99 (for how to d= erive a new | back-end from an existing one. `---- So basically you are expected to use existing GPL'd code to learn to write new exporters. Also, the overall structure of the exporters is extremally similar. For instance, the :menu-entry argument of org-export-define-backend is almost the same for all exporters (and it should be, in order not to break usability!). Should I follow such conventions, in order to satisfy users, or should I deliberately break it, in order to satisfy lawyers? Also, the names of functions (like `org-latex-export-as-latex' vs `org-latex-export-to-latex') are similar across exporters. Should I use this convention, too, in order to satisfy fellow programmers, or should I deliberately break it, in order to satisfy lawyers? Also, the docstrings of many transcoders are similar. How am I supposed to write a docstring which is at the same time more or less comprehensive and different enough from the existing ones, so that I don't end up in jail? (<--- this is actually a joke. I hope so at least...) And so on. Please refrain from comments about my stupidity or stupidity of the so-called IP law. And please understand that if I'm sounding a bit angry in this email, it's because I'm *very* angry about this whole lawyer mafia restricting my freedom (again). (Note: I'm all for restricting people's freedom when there are important reasons for that. I just consider this situation not to be one of these.) Best, --=20 Marcin Borkowski http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski Faculty of Mathematics and Computer Science Adam Mickiewicz University