我的方法

我的方法

我想将文本文件的内容拆分成音节(或者我只是想用连字符连接它;我不想涉及像这样的科学/语言上正确的细节:https://tex.stackexchange.com/questions/133859/using-tex-to-split-words-into-syllables)。

所以如果我有这样的文字

音节分割算法

我希望它被分解为

音节分割算法

现在,我知道 (la)tex 能够以某种方式使用命令来执行此\showhyphens{syllable breaking algorithm}操作,该命令会在 tex 日志中给出其结果。但是,我想批量处理此操作,并希望能够将结果与其他文本操作命令连接起来。所以我不想每次必须对文本进行连字符连接时都创建一个 tex 项目并扫描日志。

因此,我的问题是,有没有一种直接的方法来对文本进行连字?比如

hyphenate my-text-file.txt

我也可以采用使用 Latex 基础设施的方法。

我的方法

所以到目前为止,我所做的就是构建我自己的目标文本中出现的可连字符词库。我想,如果能获得“所有”单词的库,这个问题就已经解决了。

text=$1

declare -A hyphens
hyphens=(["serem"]="se+rem" ["serer"]="se+rer" ["Jeder"]="Je+der" ["Gehen"]="Ge+hen" ["berühmten"]="be+rühm+ten" ["Gefühlen"]="Ge+füh+len" ["Leben"]="Le+ben" ["seinen"]="sei+nen" ["zügeln"]="zü+geln" ["lassen"]="las+sen" ["allem"]="al+lem" ["draußen"]="draus+sen" ["seinem"]="sei+nem" ["kalten"]="kal+ten" ["diese"]="die+se" ["gestellt"]="ge+stellt" ["seine"]="sei+ne" ["Gegen"]="Ge+gen" ["nächstes"]="näch+stes" ["Allein"]="Al+lein")
for hyphen in "${!hyphens[@]}"
do
        sed -i "s/$hyphen/${hyphens[$hyphen]}/g" "$text"
done
cat "$text"

相关内容