diff options
author | Norbert Preining <norbert@preining.info> | 2023-02-26 03:02:12 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2023-02-26 03:02:12 +0000 |
commit | e7ae872926eddb0de09ecfe1c578e0680033955a (patch) | |
tree | 01717465b5b26d3b2ccaea9889c720a840e0a16c /language/korean/pmhanguljamo/tex/pmhanguljamo-frkim.code.tex | |
parent | 81a9d839224eef4c2bd9bf68410b4049c61cdb14 (diff) |
CTAN sync 202302260302
Diffstat (limited to 'language/korean/pmhanguljamo/tex/pmhanguljamo-frkim.code.tex')
-rw-r--r-- | language/korean/pmhanguljamo/tex/pmhanguljamo-frkim.code.tex | 46 |
1 files changed, 42 insertions, 4 deletions
diff --git a/language/korean/pmhanguljamo/tex/pmhanguljamo-frkim.code.tex b/language/korean/pmhanguljamo/tex/pmhanguljamo-frkim.code.tex index 4896ee994f..9b3283659f 100644 --- a/language/korean/pmhanguljamo/tex/pmhanguljamo-frkim.code.tex +++ b/language/korean/pmhanguljamo/tex/pmhanguljamo-frkim.code.tex @@ -1,5 +1,6 @@ %% code part of frkim -%% v0.6 +%% v1.0.1 (\AddRule) +%% \char_set_catcode_other:N \@ \clist_const:Nn \c_hgvow_clist { a, e, o, u, y, i, @, * } @@ -89,6 +90,10 @@ \cs_new:Npn \_process_word:n #1 { \tl_set:Nn \l_aword_tl { #1 } + \bool_if:NT \opt_zeroisx_bool + { + \regex_replace_all:nnN { ' } { \c{rq} } \l_aword_tl + } \clear_all_var: \tl_map_function:NN \l_aword_tl \_main_fn:n %%% 마지막에 끝난 조건에 따라 @@ -229,6 +234,7 @@ s = \char"1109, S = \char"110A, x = \char"110B, + q = \char"110B, j = \char"110C, J = \char"110D, c = \char"110E, @@ -331,6 +337,26 @@ sb = \char"11EA, } +\prop_new:N \l_usercho_prop +\prop_new:N \l_userjung_prop +\prop_new:N \l_userjong_prop + +\NewDocumentCommand \AddRule { m m } +{ + \clist_set:Nn \l_tmpa_clist { #2 } + \clist_map_inline:Nn \l_tmpa_clist + { + \_split_userrule_keyval:w ##1 \q_stop + \prop_put:cVx { l_user #1 _prop } \l_tmpkey_tl {\exp_not:N \char"\l_tmpval_tl} + } +} + +\cs_new:Npn \_split_userrule_keyval:w #1 = #2 \q_stop +{ + \tl_set:Nn \l_tmpkey_tl { #1 } + \tl_set:Nn \l_tmpval_tl { #2 } +} + \cs_new:Nn \build_syl: { \bool_if:NF \opt_zeroisx_bool @@ -339,18 +365,30 @@ } \tl_if_empty:NF \g_cho_tl { - \prop_get:NVNT \c_frkcho_prop \g_cho_tl \l_tmpone_tl + \prop_get:NVNTF \c_frkcho_prop \g_cho_tl \l_tmpone_tl { \tl_use:N \l_tmpone_tl } + { + \prop_get:NVNT \l_usercho_prop \g_cho_tl \l_tmpone_tl + { \tl_use:N \l_tmpone_tl } + } } \tl_if_empty:NF \g_jun_tl { - \prop_get:NVNT \c_frkjung_prop \g_jun_tl \l_tmptwo_tl + \prop_get:NVNTF \c_frkjung_prop \g_jun_tl \l_tmptwo_tl { \tl_use:N \l_tmptwo_tl } + { + \prop_get:NVNT \l_userjung_prop \g_jun_tl \l_tmptwo_tl + { \tl_use:N \l_tmptwo_tl } + } } \tl_if_empty:NF \g_jon_tl { - \prop_get:NVNT \c_frkjong_prop \g_jon_tl \l_tmpthr_tl + \prop_get:NVNTF \c_frkjong_prop \g_jon_tl \l_tmpthr_tl { \tl_use:N \l_tmpthr_tl } + { + \prop_get:NVNT \l_userjong_prop \g_jon_tl \l_tmpthr_tl + { \tl_use:N \l_tmpthr_tl } + } } %%%%>>>> |