Re: [NTG-context] Hyphentation/Linebreak after x characters inside \WORD?

2020-04-23 Thread Rik Kabel


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  
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.
___
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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___


Re: [NTG-context] Hyphentation/Linebreak after x characters inside \WORD?

2020-04-23 Thread Benjamin Buchmuller
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  
> 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

___
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://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___