هادی صفری
هادی صفری
خواندن ۳ دقیقه·۴ سال پیش

نوشتن متن فارسی در کانفلوئنس

فارسی نوشتن در کانفلوئنس دردسرهای خود را دارد و استفاده از این ویکی تحت وب را برای شرکت‌های ایرانی دشوار می‌سازد. در این نوشته راه‌حل‌هایی برای تسهیل نگارش دوزبانه و راست‌به‌چپ در این ابزار ارائه می‌شود.


کانفلوئنس (Confluence) یک ویکی مبتنی بر وب است که شرکت استرالیایی اتلسین (Atlassian)، سازندهٔ جیرا (Jira)، از سال ۲۰۰۲ توسعه داده است. این ابزار برای مستندسازی پروژه‌های نرم‌افزاری استفاده می‌شود؛ اما مسائل خاص زبان‌های فارسی و عربی و نوشتار راست‌به‌چپ (RTL)، چالش‌هایی بر سر راه استفاده از آن در شرکت‌های ایرانی ایجاد کرده است.

افزودن ماکروی راست به چپ

برای نوشتن متن‌های فارسی راست به چپ، ابتدا یک ماکروی جدید تعریف می‌کنیم.

برای این کار: (بر اساس روش https://jira.atlassian.com/browse/CONFSERVER-1373)

  1. به بخش مدیریت (Administration) کانفلوئنس بروید.
  2. از بخش پیکربندی (Configuration) وارد صفحهٔ ماکروهای کاربر (User Macros) شوید.
  3. یک ماکروی جدید با گزینهٔ Create a User Macro ایجاد کنید.
  4. ماکروی راست به چپ را بسازید:
  • برای Macro Name از rtl-section استفاده کنید.
  • برای Macro Title از RTL Section استفاده کنید.
  • می‌توانید برای تصویر از این تصویر استفاده کنید.
  • برای نوع Macro Body Processing از Rendered استفاده کنید و این کد را به عنوان تمپلیت وارد کنید:
## @noparamsa workaround for writing Right to Left texts <div style=&quotdirection: rtl; unicode-bidi: inherit;&quot>${body}</div>

افزودن متن راست‌به‌چپ به نوشته‌ها

برای نوشتن متون راست‌به‌چپ در بین نوشته‌های دیگر از ماکروی راست به چپ استفاده می‌کنیم:

  1. هنگام ویرایش متن روی گزینهٔ افزودن محتوای بیشتر (Insert more content) کلیک کنید و ماکروهای بیشتر (Other macros) را برگزینید.
  2. بخش راست‌به‌چپ (RTL Section) را جست‌وجو و انتخاب کنید.
  3. درج (Insert) را انتخاب کنید.
  4. متن راست‌به‌چپ فارسی را وارد کنید.

متن چپ‌به‌راست در میان بخش راست‌به‌چپ

برای نوشتن متون چپ‌به‌راست در میانهٔ یک بخش راست‌به‌چپ، یک ماکروی چپ‌به‌راست همانند ماکروی راست‌به‌چپ تعریف می‌کنیم.

  • برای Macro Name از ltr-section استفاده کنید.
  • برای Macro Title از LTR Section استفاده کنید.
  • می‌توانید برای تصویر از این تصویر استفاده کنید.
  • برای نوع Macro Body Processing از Rendered استفاده کنید و این کد را به عنوان تمپلیت وارد کنید:
## @noparamsa workaround for writing Right to Left texts <div style=&quotdirection: ltr; unicode-bidi: inherit;&quot>${body}</div>

حالا می‌توانیم درون یک بخش راست‌به‌چپ، یک بخش چپ‌به‌راست تعریف کنیم.

بهبود ظاهر و حل برخی مشکلات

نمایش صحیح در محیط ویرایش

هرچند متون نوشته‌شده در بخش‌های راست‌به‌چپ درست نمایش داده خواهند شد، اما این ماکروها در زمان ویرایش کار نخواهند کرد. این مسأله نوشتن را دشوار می‌کند. برای حل این مشکل:

  1. به بخش مدیریت (Administration) کانفلوئنس بروید.
  2. از بخش ظاهر و حس (Look and Feel) وارد صفحهٔ برگهٔ سبْک (Stylesheet) شوید.
  3. روی ویرایش (Edit) کلیک کنید تا قوانین CSS جدید اضافه کنید.
  4. خطوط زیر را اضافه کنید و تغییرات را با دکمهٔ Save ذخیره کنید.
table.wysiwyg-macro[data-macro-name=&quotrtl-section&quot] { direction: rtl; text-align: justify; } table.wysiwyg-macro[data-macro-name=&quotltr-section&quot] { direction: ltr; text-align: initial; }

استفاده از قلم‌های بهتر

قلم‌های پیش‌فرض کانفلوئنس برای زبان فارسی چندان مناسب نیستند و باید به دنبال فونت‌های جایگزین بود. می‌توان با تغییراتی اندک و استفاده از قلمی مانند وزیر، ظاهر صفحات را بهبود داد. برای این کار:

  1. به بخش مدیریت (Administration) کانفلوئنس بروید.
  2. از بخش ظاهر و حس (Look and Feel) وارد صفحهٔ برگهٔ سبْک (Stylesheet) شوید.
  3. روی ویرایش (Edit) کلیک کنید تا قوانین CSS جدید اضافه کنید.
  4. خطوط زیر را اضافه کنید و تغییرات را با دکمهٔ Save ذخیره کنید.
@font-face { font-family: Vazir; src: url('https://cdn.jsdelivr.net/gh/rastikerdar/vazir-font@v26.0.2/dist/Vazir.ttf') format('truetype'); } @font-face { font-family: &quotVazir Code" src: url('https://cdn.rawgit.com/rastikerdar/vazir-code-font/v1.1.2/dist/Vazir-Code.ttf') format('truetype'); } #title-text, .wiki-content { font-family: Vazir; } .wiki-content { text-align: justify; text-indent: 1em; } code { font-family: &quotVazir Code" background: rgba(0,0,0,0.03); border: 1px solid #dfe1e5; border-radius: 3px; padding: 1px 6px; }
confluencertlویکی فارسیبومی‌سازی نرم‌افزارatlassian
تحلیل‌گر شبکه‌های اجتماعی | کارشناسی ارشد مهندسی نرم‌افزار دانشگاه تهران | دانشجوی دکتری سیاست‌گذاری علم و فناوری دانشگاه تربیت مدرس | hadisafari.ir
شاید از این پست‌ها خوشتان بیاید