On 7/7/2017 10:28 PM, josephcanedo@gmail.com wrote:
A probably quick and dirty « solution », which consists in inserting a \discretionary node between each digit using some lua code. There are mostly likely better solutions for this.
"better" depends on how often such a trick is needed \startluacode -- local shared = { -- start = 1, -- length = 1, -- left = false, -- right = false, -- } local shared = { start = 1, length = 1, before = utf.char(0xB7), after = nil, left = false, right = false, } -- languages.hyphenators.traditional.installmethod("sha", -- function(dictionary,word,n) -- local t = { } -- for i=1,#word do -- t[i] = shared -- end -- return t -- end -- ) -- or more efficient when used often: -- local all = { } -- for i=1,512 do -- all[i] = shared -- end -- languages.hyphenators.traditional.installmethod("sha", -- function(dictionary,word,n) -- return all -- end -- ) -- or more obscure: -- local all = table.setmetatableindex({ }, function(t,k) -- t[k] = shared -- return shared -- end) -- -- languages.hyphenators.traditional.installmethod("sha", -- function(dictionary,word,n) -- return all -- end -- ) -- or just (lua is fast enough anyway) local all = table.setmetatableindex({ }, function(t,k) return shared end) languages.hyphenators.traditional.installmethod("sha", function(dictionary,word,n) return all end ) \stopluacode \definehyphenationfeatures [sha] [characters=all, alternative=sha] % \unexpanded\def\sha#1% % {\begingroup % \sethyphenationfeatures[sha]% % #1% % \endgroup} % % \setuphyphenation[method=traditional] \unexpanded\def\sha#1% {\begingroup \sethyphenationfeatures[sha]% \setuphyphenation[method=traditional]% #1% \endgroup} \showframe \starttext \setupalign[tolerant,stretch] \dorecurse {100} {% some sha \sha{8b2f3c087046c3943ace0dc4f958ef2138e58a51b40e% ef6fab6fa1aeb845cc257a410ab1b914bc399b4293f% 31c76fc2c73e5be5ea4d329f9e6820984688efec2} and } \stoptext
\startluacode
function sha(s)
local out = {}
for i = 1, s:len() do
out[#out + 1] = s:sub(i, i)
end
context(table.concat(out, '\\discretionary{_}{}{}'))
end
\stopluacode
\starttext
% \hsize\zeropoint
\hyphenation
%%8b2f3c087046c3943ace0dc4f958ef2138e58a51b40eef6fab6fa1aeb845cc25%
%%7a410ab1b914bc399b4293f31c76fc2c73e5be5ea4d329f9e6820984688efec2
\ctxlua{sha([[8b2f3c087046c3943ace0dc4f958ef2138e58a51b40eef6fab6fa1aeb845cc257a410ab1b914bc399b4293f31c76fc2c73e5be5ea4d329f9e6820984688efec2]])}
\stoptext
*De : *Pablo Rodriguez mailto:oinos@gmx.es *Envoyé le :*jeudi 6 juillet 2017 12:00 *À : *mailing list for ConTeXt users mailto:ntg-context@ntg.nl *Objet :*[NTG-context] how to hyphenate SHA512?
Dear list,
I have the following sample:
\starttext
\hsize\zeropoint
hyphenation
8b2f3c087046c3943ace0dc4f958ef2138e58a51b40eef6fab6fa1aeb845cc25%
7a410ab1b914bc399b4293f31c76fc2c73e5be5ea4d329f9e6820984688efec2
\stoptext
I plan to use underscore hyphenation. How can I get the SHA512 string
hyphenated in any of its points?
Many thanks for your help,
Pablo
--
___________________________________________________________________________________
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
___________________________________________________________________________________
___________________________________________________________________________________ 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 ___________________________________________________________________________________
-- ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------