ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Pablo Rodriguez <oinos@gmx.es>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: underscore hyphenation
Date: Thu, 11 Dec 2014 18:15:36 +0100	[thread overview]
Message-ID: <5489D138.9030305@gmx.es> (raw)
In-Reply-To: <5488C1F0.5040206@wxs.nl>

On 12/10/2014 10:58 PM, Hans Hagen wrote:
> On 12/10/2014 9:03 PM, Pablo Rodriguez wrote:
>> Hans,
>>
>> the sample below hyphenates right what comes before \TexC in the
>> paragraph. Also the contents of \TexC are hyphenated right.
>>
>> But hyphen is removed from standard text after the last \TexC command in
>> the paragraph.
> 
> Fixed, thanks for noticing, it had to do with picking up the right 
> settings after a change in alternative (we operate on several axis: 
> language, glyph and hyphenation properties).

Many thanks for having fixed it, Hans.


Pablo



>> \startluacode
>>
>>      function document.addfunnyhyphen(tfmdata)
>>          local underscore = utf.byte("_")
>>          local char       = tfmdata.characters[underscore]
>>          tfmdata.characters[0xFE000]   = {
>>              width    = 0,
>>              height   = 0,
>>              depth    = 0,
>>              commands = {
>>                  { "right", -char.width },
>>                  { "down", char.depth },
>>                  { "slot", 1, underscore },
>>              }
>>          }
>>      end
>>
>> utilities.sequencers.appendaction("aftercopyingcharacters","after","document.addfunnyhyphen")
>>
>> \stopluacode
>>
>> \definefontfamily[mainface][serif][GaramondNo8]
>> \definefontfamily[mainface][mono][Mechanica]
>> \setupbodyfont[mainface, 14pt]
>>
>> \definetype
>>        [TeXcode]
>>        [option=TEX,
>>         compact=absolute,
>>         lines=hyphenated]
>>
>> \definehyphenationfeatures
>>        [whatever]
>>        [righthyphenchar="FE000]
>>
>> \setuphyphenation[method=traditional]
>> \sethyphenationfeatures[strict]
>>
>> \unexpanded\def\TexC#1%
>>        {\dontleavehmode\begingroup
>>         \sethyphenationfeatures[whatever]%
>>         \normalexpanded{\TeXcode{\letterbackslash#1}}%
>>         \endgroup}
>>
>> \starttext
>>          \hsize\zeropoint
>>          newlargewordwithhyphen
>>          \TexC{definebodyfont}
>>          newlargewordwithnohyphen
>> \stoptext
>>
> 
> 


-- 
http://www.ousia.tk
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________

      reply	other threads:[~2014-12-11 17:15 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-10 20:03 Pablo Rodriguez
2014-12-10 21:58 ` Hans Hagen
2014-12-11 17:15   ` Pablo Rodriguez [this message]

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

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

  git send-email \
    --in-reply-to=5489D138.9030305@gmx.es \
    --to=oinos@gmx.es \
    --cc=ntg-context@ntg.nl \
    /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.
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 NNTP newsgroup(s).