emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Nick Dokos <nicholas.dokos@hp.com>
To: "Thomas S. Dye" <tsd@tsdye.com>
Cc: nicholas.dokos@hp.com, Org Mode <emacs-orgmode@gnu.org>,
	rpgoldman@sift.info
Subject: Re: Request for suggestions including source code
Date: Wed, 04 May 2011 17:44:41 -0400	[thread overview]
Message-ID: <6167.1304545481@alphaville.americas.hpqcorp.net> (raw)
In-Reply-To: Message from "Thomas S. Dye" <tsd@tsdye.com> of "Wed, 04 May 2011 11:13:06 -1000." <3B495FCF-216C-4B81-BC13-DC74B8C401B9@tsdye.com>

Thomas S. Dye <tsd@tsdye.com> wrote:

> Aloha Robert,
> 
> Have a look at the listings and minted packages.  You can specify font size on a per-document or per-language basis.  I believe listings has an option to wrap long lines (don't remember this for minted, though). 
> 
> The instructions here might be helpful:
> 
> http://orgmode.org/worg/org-tutorials/org-latex-export.html#sec-12_2
> 
> hth,
> Tom
> 
> On May 4, 2011, at 10:53 AM, Robert Goldman wrote:
> 
>     I have a document that has big chunks of included source code.
>     Unfortunately, when this is typeset in LaTeX, it typically blows past
>     the right margin.  I find it quite difficult to determine how many
>     characters I get in a monospace line in LaTeX, and it seems like LaTeX
>     won't give me enough to fit in plausible blocks of source code.
>    
>     Does anyone have a solution to this?  Any way to tell org-mode to shrink
>     the fontsize when exporting code examples to LaTeX?  More condensed font
>     to use for typewriter when exporting to LaTeX?  Other tricks of the trade?
>    
>     Seems like many would have encountered this problem.
>    
>     Many thanks,
>     r
> 
> 

Tom provides the practical answers, I go for the frivolous ones :-) : the following
latex program will give you the text width of the page:

--8<---------------cut here---------------start------------->8---
\documentclass{article}

\begin{document}
\the\textwidth
\end{document}

%%% Local Variables: 
%%% mode: latex
%%% TeX-master: t
%%% End: 
--8<---------------cut here---------------end--------------->8---

I get 345.0pt (but you can use geometry.sty to change it).

Let's say we want to use cmtt10 (at its design size of 10pt, i.e. not scaled up
or down). The character sizes of this font can be obtained from the TFM file. An
easy way to get them in human-readable form is to use tftopl:

tftopl /usr/share/texmf-texlive/fonts/tfm/public/cm/cmtt10.tfm | grep CHARWD

will give you the character widths as fractions of the design size. Since this
is a fixed-width font, all widths are the same:

   (CHARWD R 0.524996)

So the width of each character in points is:

   0.524996 * design size = 5.24996pt

and you can accommodate

   floor(345.0 / 5.24996) = 65

characters per line.

So there you have it: a frivolous exercise, almost completely OT for the
list and an almost useless answer[fn:1].

Nick

Footnotes:

[fn:1] I know: I have no life -- but I rather enjoyed it...

  reply	other threads:[~2011-05-04 21:44 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-04 20:53 Request for suggestions including source code Robert Goldman
2011-05-04 21:13 ` Thomas S. Dye
2011-05-04 21:44   ` Nick Dokos [this message]
2011-05-04 22:01     ` Robert Goldman
2011-05-04 23:10       ` Nick Dokos
2011-05-05  0:11         ` Robert Goldman
2011-05-04 21:59   ` Robert Goldman
2011-05-04 22:23     ` Thomas S. Dye
2011-05-04 22:29       ` Robert Goldman
2011-05-04 22:49         ` brian powell
2011-05-05 17:07         ` Eric Schulte

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6167.1304545481@alphaville.americas.hpqcorp.net \
    --to=nicholas.dokos@hp.com \
    --cc=emacs-orgmode@gnu.org \
    --cc=rpgoldman@sift.info \
    --cc=tsd@tsdye.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).