أداة CLI ، وصندوق الصدأ ، و Lua Rock ، و Python Module ، ووحدة JavaScript ، و Neovim Plugin ، و Sile Package لإلقاء سلاسل إلى حالة العنوان (وحالات أخرى) وفقًا لأدلة نمط محددة في الطول بما في ذلك الدعم التركي.
وُلد هذا المشروع من الإحباط مع المؤلفين والمحررين الذين يتركون جميع ألقاب CAPS في مصادر التخفيض. لا توجد أدوات ، يمكن أن أجدها مدعومة بشكل صحيح في الأسلاك المغطاة باللقب (والتي تكون أكثر تنوعًا لأغراض التنضيد). كانت المشكلة صعبة بشكل مضاعف لأن معظم عملي متاخم للتركية ، وحتى أقل من الأدوات المتاحة ولديها مشكلات خاصة مع تحويلات الحالة. يمكن للعديد من الأدوات التعامل مع الكلمات المفردة ، وبعض الأدوات الخاصة المبرمج تتعامل مع الرموز المعرفية التي تعيد القاس ، ومع ذلك يمكن لعدد قليل من الأدوات الأخرى التعامل مع الأوتار الإنجليزية . ولكن يبدو أن هناك شيئًا ما كان موجودًا لتغيير حالة النثر التركي.
تتوفر أيضًا CLI الافتراضية إلى TitleCase و English ، ولكن تتوفر أيضًا خيارات حالة الحالات العلوية والعليا والجملة. تحتوي واجهات برمجة تطبيقات مكتبة الصدأ ، لوا ، بيثون ، وجافا سكريبت على وظائف خاصة بكل عملية. حيثما كان ذلك ممكنًا ، فإن واجهات برمجة التطبيقات الافتراضية حاليًا لقواعد اللغة الإنجليزية و (للغة الإنجليزية) دليل Gruber Style ، ولكن البعض الآخر متاح.
يتبع النمط التركي إرشادات معهد اللغة التركية.
بالنسبة للغة الإنجليزية ، تُعرف ثلاثة أدلة على النمط: أسوشيتيد برس (AP) ، وشيكاغو كتيب الأناقة (CMOS) ، وجون جروبر الجريئة (Gruber). أسلوب Gruber هو الأكثر اكتمالا إلى حد بعيد ، ويتم تنفيذه بواسطة Titlecase Crate. يتولى نمط CMOS عددًا من أجزاء الكلام ولكن لديه قضايا متعلقة بالعلامات. نمط AP لا ينفذ إلى حد كبير.
المساهمات موضع ترحيب لدعم دليل أفضل أو لغات أخرى.
استخدام CLI بسيط جدا. قد تكون الإدخال إما وسيطات قذيفة أو stdin. يمكن للحجج التحكم في الخيارات المختلفة. للحصول على معلومات الاستخدام الكاملة ، تحقق decasify --help أو man decasify .
$ decasify -l tr ILIK SU VE İTEN RÜZGARLAR
Ilık Su ve İten Rüzgarlar
$ echo ILIK SU VE İTEN RÜZGARLAR | decasify -l tr
Ilık Su ve İten Rüzgarlar
$ echo foo BAR AND baz: an alter ego | decasify -l en -s gruber
Foo BAR and Baz: An Alter Ego للتثبيت ، تحقق أولاً من التوزيع الخاص بك للحصول على الحزم ، على سبيل المثال بالنسبة لـ Arch Linux ، فقط تثبيت عبر pacman -S decasify أو لـ Homebrew عبر brew install decasify .
خلاف ذلك للعديد من المنصات ، يمكنك تشغيلها مباشرة أو تثبيتها على قذيفة باستخدام رقائق NIX:
$ nix run github:alerque/decasify للقيام بتثبيت كامل من المصدر ، احصل على Tarball المرفقة بأحدث الإصدار أو استخدام GIT لاستنساخ المستودع. لا تستخدم ملفات "المصدر" zip/tar.gz المرتبطة من الإصدارات ، انتقل إلى ملف مصدر tar.zst . إذا كنت تستخدم GIT إغلاق ، فلا يتم تشغيله أولاً ./bootstrap.sh بعد الخروج. هذا ليس مطلوبًا في تصوير كرات القطران. بعد ذلك ، تكوين وتثبيت مع:
$ ./configure
$ make
$ sudo make install لاحظ أن التثبيت من المصدر له ميزة تضمين صفحة الرجل وإكمال شل. تنطبق جميع خيارات Autotools المعتادة ، انظر --help للحصول على التفاصيل. من المحتمل أن يكون الخيار الأكثر استخدامًا خاصة بالنسبة إلى الحزم الوزينة --prefix /usr لتغيير موقع التثبيت من /usr/local .
بالطبع يمكن أيضًا تثبيت الثنائي العاري مباشرة مع البضائع:
$ cargo install --features cli decasify في ملف Cargo.toml الخاص بك.
[ dependencies ]
decasify = " 0.8 "ثم استخدم وظائف وأنواع الصندوق في مشروعك شيء من هذا القبيل:
use decasify :: titlecase ;
use decasify :: { Locale , StyleGuide } ;
fn demo ( ) {
let input = "ILIK SU VE İTEN RÜZGARLAR" ;
let output = titlecase ( input , Locale :: TR , StyleGuide :: LanguageDefault ) ;
eprintln ! { "{output}" } ;
let input = "title with a twist: a colon" ;
let output = titlecase ( input , Locale :: EN , StyleGuide :: DaringFireball ) ;
eprintln ! { "{output}" } ;
} تعتمد على Luarock في مشروعك أو التثبيت مع luarocks install decasify :
dependencies = {
" decasify "
}ثم استيراد واستخدام الوظائف المقدمة:
local decasify = require ( " decasify " )
local input = " ILIK SU VE İTEN RÜZGARLAR "
local output = decasify . titlecase ( input , " tr " )
print ( output )
input = " title with a twist: a colon "
output = decasify . titlecase ( input , " en " , " gruber " )
print ( output ) تعتمد على وحدة Python في مشروعك أو تثبيت مع pip install decasify :
[ project ]
dependencies = [
" decasify "
]ثم استيراد واستخدام الوظائف المقدمة وفئات الكتابة:
from decasify import *
input = "ILIK SU VE İTEN RÜZGARLAR"
output = titlecase ( input , Locale . TR )
print ( output )
input = "title with a twist: a colon"
output = titlecase ( input , Locale . EN , StyleGuide . DaringFireball )
print ( output ) تعتمد على وحدة JavaScript المستندة إلى WASM في مشروعك مع npm add decasify :
ثم استيراد واستخدام الوظائف والفئات المقدمة:
import { titlecase , uppercase , lowercase , Locale , StyleGuide } from 'decasify' ;
var input = "ILIK SU VE İTEN RÜZGARLAR"
var output = titlecase ( input , Locale . TR )
console . log ( output )
var input = "title with a twist: a colon"
var output = titlecase ( input , Locale . EN , StyleGuide . DaringFireball )
console . log ( output ) باستخدام Rocks.nvim ، ببساطة تشغيل :Rocks install decasify.nvim .
باستخدام lazy.nvim ، ما عليك سوى إضافة { "alerque/decasify" }
باستخدام مديري المكونات الإضافية الآخرين الذين لا يكتشفون التبعيات تلقائيًا ، ستحتاج إلى تحديد التبعية و/أو التأكد يدويًا من أن Lua Rock for Decasify متاح ، ثم استخدم هذا المستودع كمكون إضافي ومع ذلك يتولى مدير البرنامج المساعد الخاص بك ذلك.
-- for packer.nvim
use {
" alerque/decasify " ,
rocks = { " decasify " },
} باستخدام No Plugin Manager ، تأكد من تثبيت Decasify Rock لتطابق إصدار Lua Neovim معه ، ثم نسخ plugin/decasify.lua إلى أي مكان هو دليل البرنامج المساعد للمستخدم.
أمر جديد :Decasify متاحًا (مع الأفلام الفرعية الاختيارية لحالات أخرى غير حالة العنوان) التي تحول الخط الحالي أو أي نطاق من الخطوط. يمكن تغيير دليل الحالة الافتراضية والمحلية والأناقة (قبل التحميل أو بعده) مع المتغيرات المحلية العالمية أو العازلة:
-- Set the default target case globally
vim . g . decasify_case = " title "
-- Change the locale for the current buffer
vim . b . decasify_locale = " tr "
-- Change the default style guide globally
vim . g . decasify_style = " gruber " يعمل Sile Typesetter على الاستفادة من Luarocks لإدارة حزم الطرف الثالث. يمكن تثبيت DeCasify.sile Rock مع luarocks install decasify.sile . عادةً ما ترغب في ضبط إصدار LUA لمطابقة تثبيت Sile الخاص بك ، ربما مع luarocks --lua $(sile -q <<< SILE.lua_version) install decasify.sile . بالإضافة إلى ذلك ، يمكنك استخدام --local للتثبيت على حساب المستخدم الخاص بك بدلاً من جذر النظام ، أو --tree lua_modules لتثبيت محليًا داخل مشروع واحد. يستخدم تحميله في مستند Sile المعتاد use[module=package.decasify] (انظر الملاحظات في دليل Sile حول إعداد مسارات الحزمة إذا قمت بتثبيت عبر --local ). بمجرد تحميل الحزمة ، تكشف الحزمة عن وظيفة decasify{} التي يمكن أن تأخذ أي مجموعة من إعدادات case locale style وتطبق التحول المناسب على المحتوى. بشكل افتراضي ، سيتتبع لغة محتوى المستند.