punktde / neos-hyphenation
用于文本连字符分割的 Neos Eel Helper 包
Requires
- neos/neos: *
This package is auto-updated.
Last update: 2024-09-22 20:18:16 UTC
README
本软件包遵循 MIT 许可协议,请参阅 LICENSE 文件。
由于浏览器对自动连字符支持的描述最多是参差不齐,可能产生技术上正确但外观丑陋的结果,因此本软件包提供了一个 Eel Helper,可以以一致和可配置的方式使用软连字符(&:shy;
)对文本进行连字符分割。Eel Helper 调用一个 node.js CLI 应用,该应用使用 Hypher node 模块和 连字符模式文件 进行初始连字符分割。一旦单词被分割,结果将被缓存,并且单词将从缓存中提供,而不是每次出现时都调用 node.js 应用。
安装
安装软件包
composer require punktde/neos-hyphenation
安装 node.js 应用及其依赖项
请确保您已安装 node.js(此应用已在 node.js 8.0.0 及更高版本上进行测试)和 npm。导航到本软件包的 Resources/Private/Library
目录,其中包含 JavaScript 应用,并安装它。请确保 index.js
文件已设置可执行标志
cd Resources/Private/Library
npm install
#if necessary
chmod +x index.js
在您的项目中配置缓存
您可以在 Caches.yaml
文件中指定不同的缓存后端和缓存有效期。首次访问页面将非常慢,但一旦大多数长单词进入缓存,性能将相当不错。
使用方法
本软件包提供了 Eel Helper Hyphenation.hyphenateText(string <text>)
,它接受一个字符串作为参数,并返回该字符串的连字符分割版本。
配置选项
最小单词长度和填充
用户可以在 Settings.yaml
文件中的 PunktDe:Neos:Hyphenation:minimumPadding:
配置最小填充。这是一个应用于单词两端且不能发生连字符分割的偏移量。调整此值以确保文本的外观优美且一致,例如避免在长单词中只有一个音节后进行换行,这可能会显得有些愚蠢。为了节省资源,Eel Helper 只会在单词长度至少是最小填充的两倍时调用连字符分割,因为只有这些单词最初才有资格进行连字符分割。默认值是 4
。
用于连字符分割的语言/模式文件
模式文件可以在 Resources/Private/Library/package.json
文件中指定,或者在 Resources/Private/Library
目录中运行 npm install --save <pattern file package>
。此外,还需要在 index.js
应用程序的第四行中指定
var language = require('<language package name>');
//replace <language package name> with the "name" from the language package's package.json file
之后请在库目录中运行 npm install
。默认语言包是德语。