انجمنهای فارسی اوبونتو
کمک و پشتیبانی => برنامهسازی => نویسنده: علی ۵۰۰ در 29 اسفند 1391، 05:38 بظ
-
به نام خداوند بخشنده مهربان
سلام
می خواستم بدونم چطور ترمینالی میشه ساخت که در محیط کاملا متنی لینوکس بشه فارسی تایپ یا حتی دستور وارد کنیم؟ :)
-
باید کتابخانه FriBiDi رو با ترمینال یکپارچه کنید : http://fribidi.org (میدونید این fribidi رو یکی از بچه های ایرانی ساخته؟ به اسم بهداد اسفهبد (http://behdad.org) ) .
-
من این و از طریق مخزن نصب کردم ولی چیزی ندیدم. چطوری ازش باید استفاده کرد؟ 8)
-
من این و از طریق مخزن نصب کردم ولی چیزی ندیدم. چطوری ازش باید استفاده کرد؟ 8)
echo سلام | fribidi
-
با اجازه درستش اینه
echo سلام | fribidi
-
می خواستم بدونم چطور ترمینالی میشه ساخت که در محیط کاملا متنی لینوکس بشه فارسی تایپ
konsole این قابلیت رو داره
حتی دستور وارد کنیم؟ :)
با alias شاید بشه
-
ممنون ولی منظورم ترمینال بدون محیط ایکس بود.
کسی بلده جواب بده؟ 8)
-
کسی میدونه حروف اینگلیسی رو چطور وارد ترمینال بدون محیط ایکس کردن؟
-
حروف انگلیسی جزء اسکی (ASCII) هست و به صورت پیش فرض BIOS میتونه ازش استفاده کنه. ربطی هم به سیستم عامل نداره. به ماشین بستگی داره. مثلا شما میتونی ماشینی بسازی که به صورت پیشفرض کاراکترهای فارسی رو ساپورت کنه ;) توی اون محیط، معمولا کارا رو Interrupt های BIOS انجام میدن (البته در حالت flat) البته این خیلی سطح پایین هست ولی در سطوح بالاتر مشکلی معمولا نیست مثلا اگه شما بخوای یه LFS بسازی، چون لینوکس (کرنل) UNICODE ساپورت میکنه شما میتونی توی اونجا هم فارسی بنویسی.
امیدوارم درست گفته باشم.
-
باید bicon رو نصب و اجرا کنی
-
چطور میشه برای بایوس حروف فارسی رو تعریف کرد؟
-
چطور میشه برای بایوس حروف فارسی رو تعریف کرد؟
???
-
BIOS یه برنامهی ثابت هست و قابل تغییر نیست. در مورد اینکه شما توی برنامههات از چه کاراکتری استفاده
مکنید هم دخالتی نداره. کلا کارش چیز دیگریست. در محیط ترمینال که میشه فارسی نوشت. ترمینال گنوم مثلا...
بدون اجرا شدن محیط گرافیکی هم (مثلا وقتی به یک VPS وصل میشید) باز مشکلی با فارسی نویسی نیست. چون به هر
حال دارید از یه ترمینال کلاینت مثل گنوم بهش وصل میشید.
اما اینکه کلا فقط با ترمینال بیاید بالا (که واقعا نمیدونم برای چی ممکنه همچین چیزی بخواید) اطلاعی از اینکه
بشه فارسی نوشت ندارم. قدیم ها توی داس مشد فارسی نوشت که اون با برنامه های مخصوصی بود که براش نوشته بودن.
الآن چون دیگه کسی به اون روش از ترمینال استفاده نمیکنه فکر نمیکنم همچین چیزی نیاز باشه...
-
sudo apt-get install libfribidi-bin
همونطوری که گفتم بعد نصب :
echo سلام | fribidi
یا مثلا قصد داری یک تکه متن فارسی رو در ترمینال چاپ کنی :
cat /path/to/file | fribidi
-
اگه بخوام از fribidi توی یک برنامه ی C استفاده کنم باید چه کار کنم؟
-
اگه بخوام از fribidi توی یک برنامه ی C استفاده کنم باید چه کار کنم؟
اطلاعی ندارم.
-
در تکمیل صحبتهای آقای قادری عرض کنم که هر کاراکتر یک عدد متناظر داره که اخیرا Unicode استاندارد شده ولی قبلا ASCII استاندارد بود. توی BIOS هم همین ASCII رو میشناسه. یعنی یه سری کاراکتر رو متناظر میکنه با یه سری عدد. مثلا عدد ۶۵ متناظر با کاراکتر a هست (اگه اشتباه نکنم). حالا این عددا به چه درد میخوره؟
کیبورد موقعی که یه دکمش فشرده میشه یک یا چند بایت میفرسته به سیستم عامل (بستگی داره دکمه های کنترلی {ALT و ALTGR و CTRL و SHIFT و META} رو بگیرید یا نه). از اینجا به بعدش رو دو قسمت میکنم.
۱. قدیم: فقط ASCII بوده و صفحات همگی خط فرمانی بودن. هر کاراکتر توی یه عرض ثابت چاپ میشده روی مانیتور. مثلا اگه ۲۰ تا i مینوشتن و توی خط پایینش ۲۰ تا m، ایندوتا یه عرض رو اشغال میکردن. اون عددی که از کیبورد گرفته میشده میرفته به سیستم عامل و بر اساس اون یه آرایه مثلا ۷*۱۵ از پیکسل ها رو یه تعدادیش رو روشن میکرده. که مثلا خروجیش میشده حرف a
(http://www.codeproject.com/KB/recipes/476142/basicBoundry.png)
(البته توی عکس بالا ابعاد کاراکترها فرق دارن)
۲. جدید: حالا Unicode اومده و صفحات هم از حالت خط فرمانی در اومدن. حالا اون عددی که از کیبورد گرفته میشه، طبق فونتی که توسط سیستم عامل استفاده میشه، تبدیل میشه به یه آرایه چند*چند که ابعادش متغیره. (دقیقا مثل عکس بالا). حالا اگه من ۲۰ تا i بنویسم عرض کمتری رو اشغال میکنه تا اینکه من ۲۰ تا m بنویسم. (البته بعضی فونتها مثل monospace و... کاراکترهای با عرض یکسان تولید میکنن)
حالا این همه چرت گفتم که به چی برسم؟ اینکه شما میبینی توی مثلا ترمینال میشه فارسی نوشت به خاطر اینه که از فونت استفاده شده. اگه شما میخوای توی ترمینال سیستم عاملی که نوشتی بتونی فارسی بنویسی ۲ تا راه داری.
۱. مثل راه اول رو بری ولی مثلا عدد ۶۵ رو متناظر کنی با مثلا حرف «ب».
۲. طبق استاندارد پیش بری ولی حداقل یه فونت تعریف کرده باشی برای نمایش کاراکترهای فارسی.
امیدوارم جایی اشتباه نگفته باشم.