[NTG-context] Hyphentation/Linebreak after x characters inside \WORD?
Rik Kabel
ConTeXt at rik.users.panix.com
Thu Apr 23 21:46:59 CEST 2020
On 4/23/2020 15:01, Benjamin Buchmuller wrote:
> Sorry, I have just realized that the problem might not be \WORD{} actually, so this one hyphenates:
>
> \define[2]\mycommand{
> \startxrow
> \startxcell o#1 \stopxcell
> \startxcell \tt\WORD #2 \stopxcell
> \stopxrow
> }
>
> Whereas these ones don’t:
>
>
> \define[2]\mycommand{
> \startxrow
> \startxcell o#1 \stopxcell
> \startxcell \tt\WORD #2-3' \stopxcell
> \stopxrow
> }
>
> \define[2]\mycommand{
> \startxrow
> \startxcell o#1 \stopxcell
> \startxcell 5'-\tt\WORD #2 \stopxcell
> \stopxrow
> }
>
> Assuming that this has to do with the presence of “-“ which will be the preferred breakpoint. So, I guess the questions boils down to how to define the second argument of
>
> \definebreakpoint[mybreaks][][nright=12,nleft=12,type=1]
>
> in this case or how to “deactivate” the default \setbreakpoints[compound]?
>
>
>> On 23 Apr 2020, at 20:46, Benjamin Buchmuller <benjamin.buchmuller at gmail.com> wrote:
>>
>> Hi again,
>>
>> I am reading a CSV file into ConTeXt which contains long DNA sequences (>> 40 characters) to place in xtables. So far, this works fine. However, I need to uppercase the entries and need to \tt them. When I do this inside \WORD however, they don’t hyphenate any more.
>>
>> I’m using:
>>
>> \defineseparatedlist
>> [mylist]
>> [
>> separator={,}, quotechar={"},
>> command=\mycommand
>> ]
>>
>> \define[2]\mycommand{
>> \startxrow
>> \startxcell o#1 \stopxcell
>> \startxcell 5’-{\tt\WORD{#2}}-3' \stopxcell
>> \stopxrow
>> }
>>
>> Since I don’t have access to each entry, I cant place hyphenation marks directly. Is there a way to tell ConTeXt to hyphenate after say, 12 characters?
>>
>> Thanks for your help.
>>
>>
>> Benjamin
The following works for me:
\define[2]\mycommanda{
\startxrow
\startxcell o#1 \stopxcell
\startxcell \tt\WORD #2 \stopxcell
\stopxrow
}
\define[2]\mycommandb{
\startxrow
\startxcell o#1 \stopxcell
\startxcell \tt\WORD #2-3' \stopxcell
\stopxrow
}
\define[2]\mycommandc{
\startxrow
\startxcell o#1 \stopxcell
\startxcell 5'-\tt\WORD #2 \stopxcell
\stopxrow
}
\definebreakpoint[mybreaks][][nright=12,nleft=12,type=1]
\setbreakpoints[mybreaks]
\starttext
\setupxtable[width=5cm]
\startxtablex
\mycommanda{A}{lsfkgjfkgshgkhigewhgajkdkfkalhfdklahfkhaakfakfh}
\mycommandb{B}{lsfkgjfkgshgkhigewhgajkdkfkalhfdklahfkhaakfakfh}
\mycommandc{C}{lsfkgjfkgshgkhigewhgajkdkfkalhfdklahfkhaakfakfh}
\stopxtable
\stoptext
Producing:
Indeed, it produces the same when nleft and nright are both set to 1 or
12 or 100, but not when setbreakpoints is removed.
If you are trying to do something else, please provide an MWE.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.ntg.nl/pipermail/ntg-context/attachments/20200423/0a660013/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: nijiabomaaejpjhk.png
Type: image/png
Size: 36876 bytes
Desc: not available
URL: <http://mailman.ntg.nl/pipermail/ntg-context/attachments/20200423/0a660013/attachment-0001.png>
More information about the ntg-context
mailing list