On 4/23/2020 17:50, Wolfgang Schuster wrote: > Benjamin Buchmuller schrieb am 23.04.2020 um 23:16: >> Hi Rik, >> >> Thanks for the fast reply! Your example works indeed nicely. However, >> within this solution my problem has shifted now (fully) towards >> breaking after the same number of characters, which seems to work for >> your sample string, but not for the sequences that I need to place. >> >> What I would like to achieve is something like: >> >> 5’-GATTGCTTACTCCTGGTTGG >> TGGGGCTTACATTCTGTCGCCTC >> AAAACTACTAGAGCCGGCATATT >> CTAGAAGGGCCGCCTTCATGTGG >> etc. >> >> (There might be hyphens or not, this is not so much important to me.) >> >> But what I get is currently: >> >> 5'-GATTGCTTACTCCTG- >> GTTGGTGGGGCTTACATTCT- >> GTCGCCTCAAAACTACTA- >> GAGCCGGCATATTCTA- >> GAAGGGCCGCCTTCATGTGGC- >> etc. >> >> Which looks ragged with \tt. Certainly, this is because ConTeXt >> applies the default hyphenation pattern. But I guess, there might be >> no “no language” pattern or is there? Also, I agree, it’s a bit odd >> that nright/nleft seem to make no difference towards the result. > > Hans posted a solution for a similar problem a few years ago [1] > which can be adapted to your problem. > > \startluacode > >      local shared = { >          start  = 1, >          length = 1, >          before = nil, >          after  = nil, >          left   = false, >          right  = false, >      } > >      local all = table.setmetatableindex({ }, function(t,k) >          return shared >      end) > >      languages.hyphenators.traditional.installmethod("dna", >          function(dictionary,word,n) >              return all >          end >      ) > \stopluacode > > \definehyphenationfeatures >   [dna] >   [characters=all, >    alternative=dna] > > \starttext > > \startframedtext[width=6cm,style=mono] >   \sethyphenationfeatures[dna] >   \setuphyphenation[method=traditional] >   GATTGCTTACTCCTGGTTGG% >   TGGGGCTTACATTCTGTCGCCTC% >   AAAACTACTAGAGCCGGCATATT% >   CTAGAAGGGCCGCCTTCATGTGG% > \stopframedtext > > \stoptext > > [1] https://mailman.ntg.nl/pipermail/ntg-context/2017/089106.html > > Wolfgang > And without lua, just two lines of ConTeXt with a bit of TeX: \define[1]\DNA{\handletokens #1\with\DNAspacer} \define[1]\DNAspacer{#1\hskip 2.3pt plus .1pt} \define[2]\mycommandc{     \startxrow     \startxcell o#1 \stopxcell     \startxcell {\tt\WORD{\DNA{5'-#2}}}\stopxcell     \stopxrow     } \starttext \setupxtable[width=5cm] \startxtable \mycommandc{C}{gattgcttactcctggttggtggggcttacattctgtcgcctcaaaactactagagccggcatattctagaagggccgccttcatgtggcctagggcaccatcgcgtacgagggcaaaaaatgagtttaccgctgcgaagtctctacgtcacggccaaccacagtcctgctcccaacgaaatttagacgctgtcgtgaaacctgaattcgaggataagccgcgtcatgaagagtctactg} \stopxtable \stoptext Modify the skip as you see fit. -- Rik