اسکریپت inetfire

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

دیروز اینترنت قطع شده بود، ساده‌ترین کاری که یک کاربر لینوکس در این حالت انجام می‌ده، استفاده از دستور ping هستش. من هم این دستور رو اجرا کردم و منتظر تغییر در خروجی این دستور بودم که با خودم فکر کردم خب چه کاریه؟ ما این همه شل اسکریپت بلدیم یه چیزی بنویسیم که کاربردی‌تر و جذاب‌تر باشه.

اسکریپت inetfire یک شل اسکریپت (shell script) است که با دریافت یک وقفه‌ی زمانی بر حسب ثانیه به عنوان آرگومان، بررسی می‌کند که امکان دسترسی به اینترنت وجود دارد یا خیر. در صورتی که اینترنت موجود نبود به اندازه‌ی همان وقفه زمانی منتظر می‌ماند و این چرخه را تا زمانی که اینترنت در دسترس قرار گیرد تکرار می‌کند. پس از اینکه اینترنت در دسترس قرار گرفت به کمک ابزار zenity یک پیام هشدار نمایش می‌دهد که اعلان می‌کند اینترنت در دسترس است.

این اسکریپت دو آرگومان اختیاری دیگری نیز (علاوه بر مدت زمان وقفه) می‌پذیرد:

  • تعداد پکت‌ها: معرف تعداد بسته‌هایی است که ابزار پینگ برای بررسی در دسترس بودن اینترنت باید ارسال نماید. تعداد این پکت‌ها نباید از مقدار زمان وقفه بر حسب ثانیه کمتر باشه. چون هر بسته در یک ثانیه ارسال می‌شود. تعداد پکت‌های پیش فرض ۱ عدد است.
  • آدرس IP: معرف آدرس IP نودی است که دسترسی به آن ملاک دسترسی به اینترنت است. به صورت پیش‌فرض آدرس ۴٫۲٫۲٫۴ در نظر گرفته شده است.

ساختار این اسکریپت بسیار ساده‌ است، بخشی که باعث شده من این اسکریپت را در اینجا قرار بدم، سوای مفید بودن خود اسکریپت بخش بررسی صحت پارامتر IP می‌باشد. باید اعتراف کنم من به دلیل کمبود وقت این بخش را از اینجا برداشتم؛ مطمئنم شما با مطالعه‌ی راهنمای regex (اولین پست همین وبلاگ) به راحتی می‌توانید مکانیزم آن را درک کنید و یا regex خودتان را بسازید و جایگزین آن کنید چون این اسکریپت با مجوز GNU GPL v.3 منتشر می‌شود. 🙂

inetfire script, internet notifier script
inetfire, internet notifier script

دوستانی که با شل اسکریپت و نحوه‌ی استفاده از آن آشنایی ندارند، کافی است این فایل را از حالت فشرده خارج کنید و با دستور زیر آن را در سیستم خود نصب کنید:

sudo cp inetfire /usr/bin/

برای استفاده از آن هم کافی است راهنمای آن را فراخوانی کنید:


inetfire --help

بسیار خب. امیدوارم این اسکریپت مفید واقع بشه.

inetfire - internet notifier shell script

"1061" مرتبه دانلود شده

راست-به-چپ نویسی برای همیشه!

آیا درج کاراکترهای LTRM و RTLM برای نوشتن هر متنی در دو جهت (راست به چپ و چپ به راست) کافی است؟

– خیر! برای یادگیری دو کاراکتر جدید یونیکد آماده هستین؟
این دو کاراکتر را مدیون دوست خوبمون آقای «سجاد احمدی» هستیم که مسئله‌ی «زیرنویس‌ها» را مطرح کرد:

خب یک سوال.
برای زیرنویس فیلم‌ها که به فرمت معمول ‏srt هستن، معمولا کل خط چپ به راست در نظر گرفته میشه.
اگه واژه انگلیسی میان جمله بیاد نوشته به هم می‌ریزه مثلا:
اینجا KLKB است.ما به کمک احتیاج داریم
ولی اونچه که موقع پخش نشان داده میشه اینه:
است.ما به کمک احتیاج داریم ‏KLKB اینجا
در واقع تمام واژه های فارسی بعد از واژه انگلیسی اول میاد بعد واژه انگلیسی میاد و بعد واژه های فارسی قبل از انگلیسی.این به تعداد واژه های انگلیسی داخل جمله تعمیم هم پیدا می کنه.
چه راه حلی برای این مشکل پیشنهاد می‌کنی؟

در متون زیرنویس متن به صورت پیش‌فرض چپ به راست در نظر گرفته می‌شود و همین باعث بروز این مشکل است؛ راه حل این مشکل در دو کاراکتر LRE و RLE نهفته است:

اول اینکه این متون می‌بایست با انکدینگ unicode ذخیره شوند، در غیر اینصورت تلاشتان بی‌فایده خواهد بود. در مرحله‌ی بعد، می‌بایست پیش از شروع جمله کاراکتر Right-to-Left Embedding درج شود و سپس شروع به نوشتن جمله‌ نمایید. این روش در اکثر پخش کننده‌های ویدیویی بدون اشکال نمایش داده می‌شود.

right-to-left subtitle shows correctly with unicode encoding and rle character in the beginning
right-to-left subtitle

سوال: چطور کاراکتر Right-to-Left Embedding  و Left-to-Right Embedding را درج کنیم؟

 کاراکتر در صفحه کلید استاندارد فارسی  در صفحه کلید ویندوز
 Left-to-Right Embedding ‪ alt + [  ؟؟
 Right-to-Left Embedding ‪ alt + ]  ؟؟

*‌ توجه دارین که این کلید‌ها در صفحه کلید فارسی استاندارد (لینوکس) عمل خواهند کرد.
** منظور از alt کلید alt سمت راست صفحه کلید است. (درود بر شاهین آزاد به خاطر تذکر این مطلب)
*** متاسفانه هنوز کلید‌های معادل این کاراکترها را در صفحه‌ کلید ویندوز پیدا نکرده‌ام.

این کاراکترها چند جای دیگر هم به کار می‌آیند:

  • در فروم‌ها یا کادرهای متنی‌ای که امکان راست به چپ نویسی در آن‌ها وجود ندارد (مثل فروم kmplayer)
  • در کلاینت‌های twitter و Identica یا کلاینت‌های IRC و…

فراموش نکنید با تمرین و تجربه نحوه‌ی درج این کاراکترها را یاد بگیرید تا قدرت فارسی نویسی‌مان را باز هم بهبود داده باشیم.

کاربر ویندوز! نرم افزار صفحه کلید استاندارد فارسی حاصل تلاش احسان اخگری منتظر دانلود شماست 😉

ویدیو آموزش درج کاراکترهای LTR و RTL

در پست قبل راجه به نحوه‌ی درج چند کاراکتر مفید مطلبی مطرح کردم، عده‌ای از دوستان (که همیشه به من و به این وبلاگ لطف داشتند و دارند) به من اطلاع دادند که ظاهرا توضیحات کافی نبوده است. به همین مناسبت تصمیم گرفتم در یک ویدیو نحوه‌ی درج کاراکترهای LTR و RTL را آموزش بدهم.
البته من تلاش کردم حجم این ویدیو بالا نرود تا کاربرانی که به اینترنت پرسرعت دسترسی ندارند، به زحمت نیافتند و این خود یکی از دلایلی بود که در این ویدیو به آموزش درج سایر کاراکترها نپرداختم. حجم این ویدیو حدود ۴.۷ مگابایت شده است. امیدوارم که مفید واقع شود.

حجم ویدیو: ۴٫۷MB

insert LTR and LRTL characters

"1222" مرتبه دانلود شده

چند کاراکتر برای بهبود فارسی‌ نویسی در لینوکس و ویندوز

مواردی که قصد دارم مطرح کنم به شما کاربر فارسی‌ زبان کمک می‌کند؛ البته نه اینکه دردسر کمتری با تایپ متون ترکیبی فارسی-انگلیسی داشته باشید، ولی نتیجه‌ی کارتان شکیل‌تر و خواننده‌ پسند‌تر خواهد بود. ترفند‌های مورد نظر من شامل این موارد می‌شود:

  • درج نیم‌فاصله
  • درج کاراکتر left to right mark
  • درج کاراکتر right to left mark
  • درج کاراکتر کشیــــــــده یا (همان تطویل)

توجه: درج کارکترهای نیم فاصله، ltr mark و rtl mark بدون نصب هیچ نرم افزار اضافه‌ای بر روی سیستم شما چه ویندوز باشد چه لینوکس، امکان‌پذیر است. 🙂

نیم‌فاصله: از نظر ماهیتی، جزئی از زبان فارسی است. به کلماتی مثل «می‌شود»، «دست‌های نقره‌ای» و «فارسی‌نویسی» توجه کنید. بین «می‌» و «شود» یک نیم‌فاصله وجود دارد، همچنین بین «دست» و «های» و «نقره» و «ای».

این دو نوشته را مقایسه کنید:

«اصل مزیت نیم‌فاصله این است که خوانایی متن را بالا می‌برد. عموما کاربران نمی‌دانند استفاده از نیم‌فاصله چقدر می تواند خواندن متن را آسان کند.»

«اصل مزیت نیم‌فاصله این است که خوانایی متن را بالا می‌برد. عموما کاربران نمی‌دانند استفاده از نیم‌فاصله چقدر می‌تواند خواندن متن را آسان کند.»

به انتهای خطوط توجه کردید؟ «می‌شود» یک کلمه است، به همین دلیل نمی‌بایست از یک کاراکتر فاصله برای جدا کردن دو بخش آن کلمه استفاده شود. در واقع فاصله برای جدا کردن کلمات استفاده می‌شود. در این موارد می‌بایست از «نیم‌فاصله» کمک بگیریم.

اما بعضی کاربران این موضوع را می‌دانند ولی نمی‌توانند «نیم‌فاصله» را روی صفحه کلید پیدا کنند. اگر چنین است این مقاله را انتها دنبال کنید تا شما را با نحوه‌ی درج این کاراکتر در ویندوز و لینوکس آشنا کنم.

مورد دوم در مورد درج کاراکتر ltr است. ممکن است به عباراتی شبیه این در متون ترکیبی انگلیسی-فارسی برخورد کرده باشید:

این کشور USA (united states of america) نام داشت که می‌بایست USA (united states of america)‎ تایپ می‌شد.

یا new? در حالیکه new?‎ مد نظرتان بوده است.

این نوشته‌ها به خاطر درج نشدن کاراکتر Left to Right Mark که یک کاراکتر در استاندارد یونیکد است به این روز افتاده‌اند. این کاراکتر در واقع به مفسر متن اعلام می‌کند که آنچه تایپ شده می‌بایست به صورت چپ-به-راست نمایش داده شود.

و کاراکتر دیگری نیز وجود دارد که خواهر همین کاراکتر است: Right to Left Mark، این کاراکتر به مفسر متن می‌گوید آنچه تایپ شده می‌بایست به صورت راست-به-چپ نمایش داده شود.

این کاراکتر به جملاتی مثل this، that و the other کمک می‌کند و آن‌ها را به شکل this،‏ that و the other نمایش می‌دهد.

گاهی ممکن است بخواهید کلمه‌ای را به صورت طـــــــولانــــــــــــــــــــــــــی  بنویسید. کارکتر «کشیده» در صورتی که به طور صحیح استفاده شود، می‌تواند به خواناتر شدن متن نیز کمک کند.

اما چطور این کاراکترها را درج کنیم؟  با کمک جدول زیر کلید‌های مناسب را پیدا کنید:

کاراکتر/  سیستم عامل در ویندوز در لینوکس
نیم‌فاصله ctrl + shift + 2 shift + space
Left to Right Mark ctrl + shift + 3 alt + (‎
Right to Left Mark ctrl + shift + 4 alt + )‎
کشیده (تطویل) shift + j shift + -‎

هشدار: پیش از امتحان کردن این کلید‌ها لازم به یادآوری است که صفحه کلید می‌بایست در حالت فارسی باشد. در حالت انگلیسی این کارکترها درج نخواهند شد و در نتیجه تغییری مشاهده نخواهید کرد.

هشدار۲: منظور از alt در اینجا دکمه alt سمت راست صفحه کلید است. (با تشکر از دوست خوبم، شاهین آزاد که این مطلب را تذکر دادن)

در ابتدا استفاده از این کاراکترها آسان به نظر نمی‌رسد، ولی با کمی تمرین و پشتکار به آن‌ها مسلط خواهید شد. وجود مهارت درج این کاراکترها به شما اجازه می‌دهد تا بتوانید در هر ویراستار متنی‌ (که از یونیکد پشتیبانی کند)، بدون نگرانی متن دلخواهتان را بنویسید. من با کمک این ابزارها می‌توانم از google docs استفاده کنم و هیچ مشکلی با libreOffice یا سایر بسته‌های اداری نداشته باشم.

در مورد کارکاکتر LTRM و RTLM در ویکی پدیا بیشتر بخوانید…

در اینجا لازم می‌دانم از دوست خوبم جناب آقای نبی کرمعلی زاده، از پیشکسوتان عرصه‌ی IT، برنامه‌نویس خبره و مدیر عامل شرکت جهان وب بخاطر معرفی کردن ترکیب کلید‌های مربوط به درج کاراکترها در محیط ویندوز تشکر و قدردانی کنم.

برای نوشتن این مقاله از این منابع نیز کمک گرفتم:

Free Online Unicode Character Map

Web Design Group

DecodeUnicode.org

پانوشت۱: کاربران ویندوز می‌توانند با نصب کردن نرم افزار صفحه کلید استاندارد فارسی که با تلاش آقای احسان اخگری نوشته شده است، از صفحه کلید استاندارد فارسی استفاده کرده و کاراکترها را مشابه آنچه در لینوکس وجود دارد درج نمایند؛ با تشکر از دوست خوبم آقای علی موسوی بخاطر معرفی این لینک مفید.

جستجو در متون غیرانگلیسی (فارسی) به کمک regex

این پست در واقع پاسخی به کامنت دوست خوبم آقا حسین هستش؛

جستجوی متون غیرانگلیسی به کمک regluar expression یا عبارات با قاعده امکانپذیر هست. فقط به کمی دقت نیاز دارد. در یک کلام با کمک داشتن کد کاراکتری حروف می‌توانیم هر متنی را در هر زبانی با کمک عبارات باقاعده بررسی کرده و در صورت نیاز تغییر بدهیم.

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

  • نوشته‌هایی با انکدینگ WINDOWS-ARABIC-1256 (یا به روایتی ISO-8859-6)، وب‌ سایت‌های فارسی اواخر دهه نود و اوایل قرن بیست و یکم از چنین فرمتی برای نمایش متون فارسی استفاده می‌کردند.
  • نوشته‌هایی با فرمت UTF-8 یا (unicode) که بعد از مطرح شدن استاندارد یونیکد بوجود آمدند و در حال حاضر اکثر وب سایت‌های فارسی نوشته‌های خود را در این فرمت ارائه می‌کنند..
  • نوشته‌هایی با فرمت UTF-16 یا (unicode 16) که نسل بعدی استاندارد فوق هستن و زبان‌های بیشتری پشتیبانی می‌کند. من در گوشی موبایلم (p990i) در قسمت مربوط به پیامک (اس.ام.اس سابق)، به این نوع متن برخوردم.

چطور بفهمیم متنی که در اختیار داریم، جزو کدوم دسته است؟

راه ساده‌ای برای این کار وجود دارد؛ کافی است فایل متنی خود را با مرورگر فایرفاکس باز کنید و از منوی View زیر منوی Character encoding و زیر منوی More Encodings انکدینگ‌ها را تست کنید. هر زمان که متن به درستی نمایش داده شد، انکدینگ مناسب را یافته‌اید.

firefox encoding screenshot
firefox encoding

پس از شناسایی انکدینگ مناسب، می‌بایست جدول کاراکتری مربوط به آن انکدینگ را پیدا کنید. برای اینکار می‌توانید از گوگل کمک بگیرید (جدول نمونه انکدینگ‌های فوق در پانویس۲ آمده است)

حالا بعنوان مثال فرض کنید متنی با انکدینگ UTF-8 داریم که حاوی کلماتی مثل انشاء، املاء و اشیاء و مانند اینهاست و می‌خواهیم همه‌ی این همزه‌های عربی را از انتهای این کلمات (یا هر جای دیگری که باشند) پاک کنیم تا موجبات خشنودی فرهنگستان زبان فارسی فراهم شود.

برای UTF-8، این لینک همه کاراکترها را به همراه کد هگزادسیمال نمایش می‌دهد.با مراجعه به جدول کاراکتر‌ی در این لینک و انتخاب گزینه‌ی Arabic از کادر وسط صفحه، متوجه می‌شویم در ردیف کاراکتر همزه چنین آمده:

ARABIC LETTER HAMZA d8 a1 ء U+0621

قسمت‌هایی که برای کار ما اهمیت دارد دو ستون وسط است و به خصوص ستونی که در آن نوشته شده d8 a1 این کد هگزادسیمال کاراکتر همزه است. حالا کافی است به کمک regex و یک ابزار مناسب، این کاراکتر را در متن یافته و آن را حذف نماییم. برای اجرای این عملیات من از ابزار sed کمک می‌گیرم:

sed -e "s/\xd8\xa1//g" old-text.txt > updated-text.txt

ذکر این نکته ضروری است که استاندارد UTF-8 از دو بایت فضا برای نمایش کاراکتر‌ها استفاده می‌کند در حالیکه استاندارد اسکی (بخوانید: ASCII) از یک بایت فضا برای ذخیره کاراکترها کمک می‌گیرد. درست به همین دلیل است که در اینجا از دو نشان x\ کمک گرفتیم که هر یک بخشی از کد هگزادسیمال کاراکتر همزه را اعلان می‌کنند.

نکته‌ای که در اینجا لازم می‌دانم مطرح کنم این موضوع است که در مثال‌های جایگزینی می‌توانید با خیال راحت کاراکتر‌ها را بنویسید چرا که در خروجی به همان ترتیبی که شما ذکر کردید نمایش داده خواهند شد.

اجازه بدهید با یک مثال این موضوع را بررسی کنیم، فرض کنید در متنی می‌خواهم کلمه‌ی «رضا» را با «رضا جان»جایگزین کنم. با دستور sed چنین خواهم نوشت:

sed -e "s/\xd8\xb1\xd8\xb6\xd8\xa7/\xd8\xb1\xd8\xb6\xd8\xa7 \xd8\xac\xd8\xa7\xd7\x86/g" reza.txt > reza-jan.txt

با دیدن این مثال‌ها، بیش از پیش از وجود ادیتور‌های امروزی سپاسگزار می‌شویم! ولی این فقط یک مثال ساده بود، سناریو‌های پیچیده‌تری می‌توانند وجود داشته باشند که ما را دست به دامان همین ابزارهای قدیمی و پرقدرت می‌کند.

این مثال‌ها همگی در انکدینگ UTF-8 بوده است ولی در استفاده از این الگو محدودیتی وجود ندارد. می‌توانید این کارکرد با اندکینگ‌های دیگر نیز تست کنید. (البته من تست نکردم ولی منطق امر می‌گوید می‌بایست به همین خوبی جواب بدهد)

پانویس ۱-  خواندن کد‌هایی که باید در ترمینال اجرا شوند، آسان نیست. من به یک syntax highlighter مناسب برای وردپرس احتیاج دارم ولی متاسفانه هنوز موفق نشدم گزینه‌ی مناسبی برای این کار پیدا کنم. 🙁

پانویس۲ – بعضی از این لینک‌ها مرجع این مقاله بوده‌اند و بعضی دیگر در رابطه با این مقاله هستند که دیدنشان خالی از لطف نیست.

http://www.regular-expressions.info/unicode8bit.html

http://www.utf8-chartable.de/unicode-utf8-table.pl?start=1536, UTF-8 character tables

http://en.wikipedia.org/wiki/ISO/IEC_8859-6, WINDOWS-ARABIC-1265 character table

http://www.unicode.org/charts/, UTF-16 character tables

shopt، ابزاری برای سفارشی سازی شل

چند بار پیش آمده که در تایپ یک مسیر اشتباه کرده باشید و آرزو کنید ای کاش bash به حدی هوشمند بود که اشتباهات تایپی کوچک شما را نادیده می‌گرفت؟چند بار پیش آمده که دستور cd را برای تغییر مسیر جاری از قلم انداخته‌اید؟ چند بار پس از خروج از یک شل پروسه‌هایی از خود به جا گذاشته‌اید و آرزو کردید ای کاش با بسته شدن شل همه پروسه‌های اجرا شده در آن هم بسته می‌شد؟

– هیچ بار؟

بسیار خب حتی اگر هیچ بار چنین شرایطی برای شما پیش نیامده باشد، آشنایی با دستور shopt می‌تواند شما را با لیستی از گزینه‌ها آشنا کند که هر یک به نحوی بر عملکرد bash اثر می‌گذارند و یا می‌توانند به شما در نوشتن شل اسکریپت‌هایی بهتر کمک کند. حالا علاقه مند شدین؟

این مقاله که در ۵ صفحه نگاشته شده، می‌تواند شروع خوبی برای ملاقات shopt باشد. در اینجا از دوست خوبم آقای «ابوالفضل امیدی» مدرس لینوکس و کارشناس امور امنیتی فضای سایبر به خاطر معرفی این دستور تشکر و قدردانی می‌کنم.

حجم دانلود: ۹۹ کیلوبایت

shopt

"1914" مرتبه دانلود شده

لینک اصلاح شد.

ساخت فهرست در Open Office.org writer

در این مقاله قصد دارم نحوه‌ی اضافه کردن فهرست به یک فایل نوشتاری که با نرم افزار writer از بسته‌ی اداری OpenOffice.org تولید شده آموزش بدم. فهرستی که ایجاد خواهد شد، یک فهرست اتوماتیک بوده و در صورتیکه بعدا تغییری در فایل ایجاد شود، با چند کلیک ساده به روز (update) می‌شود. همچنین کاربر می‌تواند با کلیک کردن روی هر عنوان روی فهرست به صفحه‌ی مورد نظر هدایت شود.

برای شروع لازم است مطالب نوشته شده به طور مناسبی فرمت بندی شده باشد. به این ترتیب که style مناسبی به عناوین هر بخش داده شده باشد.

styled header in writer

همچنین فرض می‌کنم هنوز شماره‌ی صفحات به سند اضافه نشده است. پس با این راهنما خواهیم داشت:

  • یک فهرست اتوماتیک که کاربر با کلیک روی هر عنوان، به صفحه‌ی مربوطه هدایت می‌شود.
  • شماره‌ی صفحات در قسمت‌های اولیه‌ی سند، از متن اصلی مجزا خواهد بود.

بسیار خب، مراحل زیر می‌بایست اجرا شوند:

۱٫  یک سند جدید ایجاد شود.

۲٫ از منوی Format گزینه‌ی Styles and Formatting انتخاب شود. در پنجره‌ی باز شده‌ی گزینه‌ی Page Styles انتخاب شود.

Styles and Formatting window

۳٫  حال در فضای خالی راست کلیک می‌کنم و گزینه‌ی …New را انتخاب می‌کنم. در پنجره‌ی باز شده، نام preface را وارد کرده و کادر Next Style را به preface تغییر می‌دهم و سپس OK را می‌زنم.

*‌ شما می‌توانید هر نامی که دوست داشته باشید به page style خود بدهید، همچنین می‌توانید پارامتر‌های این style را در سایر سربرگ‌های این پنجره تغییر دهید.

Page Style window ۴٫  حال در کادر Style and Formatting روی preface دوبار کلیک می‌کنم تا فعال شود.

۵٫ در سند چندین بار enter می‌زنم تا کمی فضای خالی برای بخش مقدماتی سند فراهم شود (شما می‌توانید اطلاعات مقدماتی سندتان را وارد کنید). من یک صفحه و نیم فضای خالی ایجاد می‌کنم.

حال می‌بایست بخش دوم سند که همان محتویات اصلی بوده است را بسازم. چون لازم است شماره‌ی صفحات این قسمت از بخش مقدماتی جدا باشد، این مراحل را دنبال می‌کنم.

۱٫  از منوی Insert گزینه‌ی …Manual Break را انتخاب می‌کنم. در پنجره‌ی Insert Break گزینه‌ی Page break و از کادر Style گزینه‌ی default را انتخاب می‌کنم. سپس کادر Change page number را مارک دار می‌کنم و دکمه‌ی OK را کلیک می‌کنم.

Insert Break window

برای اضافه کردن شماره‌ی صفحه کافیست شماره‌ی صفحه را به page style مورد نظرتان اضافه کنید.

برای اضافه کردن فهرست، این مراحل را دنبال می‌کنم:

۱٫  کراسر را در ابتدای خطی در قسمت مقدماتی سند قرار می‌دهم.

۲٫  از منوی Insert، زیرمنوی Indexed and Tables و سپس گزینه‌ی …Indexes and Tables را انتخاب می‌کنم. در کادر Insert Index/Table در کادر Title عنوان فهرست را «فهرست» می‌نویسم و چک باکس کنار عبارت protect against manual changes را برمی‌دارم. به این ترتیب فهرست پس از تولید شدن، قابل ویرایش خواهد بود (فهرست معمولا به فرمت «چپ به راست» تولید می‌شود که لازم است آن را پس از تولید «راست به چپ» کرد.)

۳٫  حالا برای اینکه با کلیک روی هر عنوان فهرست به صفحه‌ی مورد نظر هدایت شویم، به سربرگ Entries وارد می‌شوم. در این پنجره کراسر ماوس را قبل از #E قرار می‌دهم و دکمه‌ی hyperlink را می‌زنم…

Insert index/tables - entries

حالا کارسر ماوس را پس از # قرار می‌دهم و یکبار دیگر دکمه‌ی hyperlink را کلیک می‌کنم.

Insert Index/Tables - Entries

به این ترتیب برای عناوینی که style آن‌ها header 1 بوده  لینک ساخته می‌شود (level 1). برای اینکه سایر عناوین فهرست به طور کامل از این ویژگی برخوردار شود، لازم است از کادر Level در سمت چپ این  پنجره، سایر level ها انتخاب شود و مراحل بالا برای آن‌ها نیز اجرا شود. (نیازی نیست برای هر ده level این کار را تکرار کنید، این عملیات را با توجه به header هایی که در متن به کار برده‌اید انجام دهید. مثلا اگر در سند عناوینی با style ‌سطح header 3 داشته باشیم، کافی است مراحل فوق را تا level 3 انجام دهیم.). پس از پایان کار، دکمه‌ی OK را کلیک می‌کنم تا فهرست ساخته شود.

منابع:

OpenOffice.org wiki:

آموزش سریع عبارت‌های باقاعده (regular expression)

روزی دوست خوبم آقای نبی کرمعلی زاده سناریویی مطرح کرد که لازم بود دو خط از یک فایل متنی با یک الگوی خاص تطبیق داده می‌شد. در نگاه اول مشخص بود که باید از ابزار sed، پرل یا awk استفاده کرد ولی در واقع همه‌ی این ابزارها با کمک یک موجودیت قادر به انجام دادن کار بودند: regular expression

پس از کمی جستجو در اینترنت متوجه شدم که هیچ راهنمای فارسی برای regular expression (که من فارسی آن را «عبارت‌ باقاعده» ترجمه کردم) وجود ندارد*. پس تصمیم گرفتم آنچه یاد می‌گیرم برای کمک به مخاطبانی که ممکن است به آن نیاز پیدا کنند بنویسم. مقاله‌ای که در اینجا عرضه می‌شود، حاصل این تلاش من است. لطفا در صورتیکه در مطالعه‌ی این مقاله به اشکال یا ایرادی نگارشی یا غلط تایپی برخورد کردید، به من اطلاع دهید تا ضمن اضافه شدن اسمتان در بخش مشارکت‌کنندگان به بهبود این اثر کمکی شده باشد.

*- البته بعد از خاتمه‌ی نگارش این مقاله متوجه شدم که کتابی در این زمینه قبلا نوشته شده است.

————————————

نسخه‌ی ۱.۱ این راهنما پس از ویرایش نسخه‌ی ۱.۰ برای دانلود آماده است؛

حجم: ۱۹۵.۷ کیلوبایت

quick regular expression guide Persian (farsi) language

"29655" مرتبه دانلود شده