From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nicolas Goaziou Subject: Re: Org mode export to Groff MM. Feature Freeze Date: Thu, 19 Jul 2012 17:33:36 +0200 Message-ID: <878vefbwa7.fsf@gmail.com> References: <87a9yy664p.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([208.118.235.92]:57433) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Srsms-0002Ov-Fl for emacs-orgmode@gnu.org; Thu, 19 Jul 2012 11:37:14 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Srsmo-0001vc-An for emacs-orgmode@gnu.org; Thu, 19 Jul 2012 11:37:10 -0400 Received: from mail-wi0-f169.google.com ([209.85.212.169]:42951) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Srsmo-0001vV-1x for emacs-orgmode@gnu.org; Thu, 19 Jul 2012 11:37:06 -0400 Received: by wibhm2 with SMTP id hm2so4938489wib.0 for ; Thu, 19 Jul 2012 08:37:04 -0700 (PDT) In-Reply-To: (Luis Anaya's message of "Tue, 17 Jul 2012 20:04:03 -0400") 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: Luis Anaya Cc: emacs-orgmode@gnu.org Hello, It sure looks interesting. Here are a few comment about org-e-man.el. 1. Please do not leave trailing parenthesis (i.e at line 228). 2. You can remove every `declare-function'. You only need to (require 'org-export) in the file header, actually. 3. You can remove `org-e-man-babel-language-alist' variable and `org-e-man--guess-babel-language' function since they are specific to the "babel" LaTeX package. 4. For the same reason, you can remove `org-e-man--guess-inputenc' ("inputenc" LaTeX package). 5. Do you really need something as complicated as `org-e-man-classes'? It is a chore to use in `e-latex' but is tolerated since it allows for much configurability, but in a man exporter, I doubt it is worth introducing it. Indeed, I don't think there are much packages and section configurations to play with. 6. You shouldn't ignore drawers. Simply return their contents with no additional syntax. I.e. (defun org-e-man-drawer (drawer contents info) "Blah..." contents) In that case, you can safely remove unused `org-e-man-format-drawer-function' variable. 7. Something is wrong in `org-e-man-entity'. There is no `:man' format for entities. You can choose among `:latex', `ascii', `:html', `:latin1' or `:utf-8'. 8. Since there is no image support in man, you can remove unused variables `org-e-man-image-default-option', `org-e-man-default-figure-position', `org-e-man-inline-image-rules'. 9. `org-e-man--make-option-string' looks unused too. You may remove it. 10. Line 1743: (if (not (null attr-item))...) => (if attr-item ...) 11. I think that you can hard-code text markup macros and remove `org-e-man-text-markup-alist'. It will simplify code in `org-e-man--text-markup'. 12. Optionally, `org-e-man-headline' can probably be simplified a lot too. I imagine that someone using the man exporter doesn't expect much configuration for headlines. 13. In `org-e-man-plain-list', it looks like you can simply return contents (as for drawers) and remove everything else. Same for special blocks. Just return contents. By the way (format "%s" contents) is exactly `contents' since this argument is always a string. 14. In general, try to remove as much unused stuff as possible. Thank you for your work, Regards, -- Nicolas Goaziou