انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید




نویسنده موضوع: لطفا برای برطرف شدن باگ zwnj یا همون فاصله مجازی در qt5 رأی بدید  (دفعات بازدید: 6133 بار)

0 کاربر و 5 مهمان درحال مشاهده موضوع.

آفلاین علی ۵۰۰

  • Hero Member
  • *
  • ارسال: 775
  • جنسیت : پسر
سلام
بچه‌ها لطفاً به لینک‌های زیر برید و رأی بدید تا این مشکل هرچه سریع‌تر برطرف بشه. از اونجایی که اوبونتو هم در یونیتی ۸ به‌زودی بر روی qt5/qml خواهد رفت، این باگ اهمیت بیشتری پیدا می‌کنه. لطفاً به هر دو لینک زیر رأی بدید. ( در ضمن این باگ در qt4 وجود نداره بلکه فعلاً ( یعنی در زمان نگارش این پست ) در qt5 وجود داره ).
لطفاً سریع‌تر اینکار رو انجام بدید تا این باگ در زمان انتشار qt 5.8 برطرف بشه.
پیش‌نیاز: https://bugreports.qt.io/browse/QTBUG-50746
باگ اصلی: https://bugreports.qt.io/browse/QTBUG-42074
« آخرین ویرایش: 11 مهر 1395، 02:56 ب‌ظ توسط علی ۵۰۰ »

آفلاین ابراهیم مشهدی تفرشی

  • Sr. Member
  • *
  • ارسال: 336
  • جنسیت : پسر
  • همیشه یک راه بهتر هست.
من رفتم که رأی بدم ولی جایی برای رأی دادن نداشت. لطفا راهنمایی کنید.

در ضمن اگر ممکن هست یه رأی هم به تقویم شمسی توی Qt5/KDE5 نیست سابقا توی Qt4/KDE4 بود خیلی عالی بود.

در ضمن من الآن دارم توی arch-linux از
KDE Plasma 5.7.5
KDE Framewoks 5.26.0
QT 5.7.0

استفاده می‌کند همونطور که می‌بینید راحت دارم فاصله مجازی رو می‌نویسم با شیف و سپیس اگر منظورتون از فاصله مجازی همین بود
« آخرین ویرایش: 06 مهر 1395، 11:44 ق‌ظ توسط ابراهیم مشهدی تفرشی »
ET

آفلاین علی ۵۰۰

  • Hero Member
  • *
  • ارسال: 775
  • جنسیت : پسر
من رفتم که رأی بدم ولی جایی برای رأی دادن نداشت. لطفا راهنمایی کنید.

در ضمن اگر ممکن هست یه رأی هم به تقویم شمسی توی Qt5/KDE5 نیست سابقا توی Qt4/KDE4 بود خیلی عالی بود.

در ضمن من الآن دارم توی arch-linux از
KDE Plasma 5.7.5
KDE Framewoks 5.26.0
QT 5.7.0

استفاده می‌کند همونطور که می‌بینید راحت دارم فاصله مجازی رو می‌نویسم با شیف و سپیس اگر منظورتون از فاصله مجازی همین بود
سلام
برای رأی دادن باید توی اون سایت عضو بشید سپس بر روی لینک‌هایی که در بالا گذاشتم کلیک کنید و از پنل راست بر رو Vote for this issue کلیک کنید.
عضو شدن درون سایتش هم آسونه.
شما الان دارین فاصله مجازی رو درون مرورگرتون تایپ می‌کنید. برای مثال درون kate یا سایر نرم‌افزارهایی که از qt5 استفاده می‌کنند ببینید می‌تونید تایپ کنید یا خیر.
در رابطه با تقویم شمسی فکر کنم نیاز باشه که این رو به گروه kde و unity 8 بگیم.
حدس می‌زنم Qt5 از تقویم شمسی (جلالی) پشتیبانی می‌کنه. (پیوند: https://wiki.qt.io/Locale_Support_in_Qt_5)
« آخرین ویرایش: 06 مهر 1395، 12:21 ب‌ظ توسط علی ۵۰۰ »

آفلاین ابراهیم مشهدی تفرشی

  • Sr. Member
  • *
  • ارسال: 336
  • جنسیت : پسر
  • همیشه یک راه بهتر هست.
من که رفتم رأی دادم
حق با شما بود رفتم توی Kate امتحان کردم نشد

در مورد تقویم شمسی باید بگم که قدیما که از Qt4/KDE4 استفاده میکردیم مثلا Kubuntu 14.04 - و حتی همین الآن برای بعضی از برنامه ها که هنوز به Qt5 مهاجرت نکردند مثل Kmymoney - تقویم شمسی خیلی باحال بود مثلا ماه های سال farvardin , ordibehesht ... بود الآن درسته که بخش ایران رو داره ولی همون ماه های میلادی با خط فارسی ژانویه فوریه ...
اگر به قول شما unity هم مهاجرت کنه به Qt5 اگر تقویم شمسیش مثل قبل درست شه که خیلی خیلی باحال میشه

به هر حال من رأی دادم
خیلی هم ممنون
ET

آفلاین علی ۵۰۰

  • Hero Member
  • *
  • ارسال: 775
  • جنسیت : پسر
بچه‌ها این باگ مهم هستش لطفاً رأی بدید. مثلاً شما الان اگر بخواهید با texworks ، texstudio و ... نویسه (کاراکتر) فاصله مجازی را وارد کنید، نمی‌توانید آن را به صورت مستقیم از روی صفحه‌کلید وارد کنید. (البته با کپی کردن فاصله مجازی می‌شه اون رو وارد کرد) من فکر می‌کنم نویسه فاصله مجازی (zwnj) و اتصال مجازی (zwj) جزء موارد مجاز برای وارد کردن در qt5 نیستن. با رأی دادن شما این امکان وجود داره که زودتر مشکل فاصله مجازی برطرف بشه و نویسه فاصله مجازی جزء موارد مجاز در qt5 بحساب بیاد. (از texworks در لاتک و زی‌پرشین استفاده می‌شه و برای متن فارسی بهتر هستش که این باگ برطرف بشه)
فکر کنم تا دو ماه دیگه نسخه نهایی Qt 5.8 منتشر بشه.
لطفاً رأی بدین. ممنون. :)
« آخرین ویرایش: 06 مهر 1395، 05:28 ب‌ظ توسط علی ۵۰۰ »

آفلاین علی ۵۰۰

  • Hero Member
  • *
  • ارسال: 775
  • جنسیت : پسر
کسایه دیگه هم به این مشکل برخوردن. به تاپیک زیر نگاه کنید
http://forum.ubuntu.ir/index.php/topic,138981.0.html
« آخرین ویرایش: 11 مهر 1395، 05:51 ب‌ظ توسط علی ۵۰۰ »

آفلاین سلمان م.

  • ناظر انجمن
  • *
  • ارسال: 4106
  • جنسیت : پسر
  • GNU Operating System - سیستم عامل گنو
توی انجمن نشانه‌گذاریش کردم به عنوان موضوع مهم.

آفلاین علی ۵۰۰

  • Hero Member
  • *
  • ارسال: 775
  • جنسیت : پسر
سلام
می‌خواهم یک آموزش برای برطرف کردن این مشکل در QTextEdit بدهم.
برای اینکه ما یک QTextEdit داشته باشیم که توانایی درج نویسه فاصلهٔ مجازی ( ZWNJ ) را داشته باشد، می‌توانیم از یک کلاس به اسم MyQTextEdit استفاده کنیم به این صورت که کلاس MyQTextEdit از کلاس QTextEdit ارث‌بری بکند تا ویژگی‌های کلاس QTextEdit به کلاس MyQTextEdit منتقل شود. حالا ما یک کلاس به اسم MyQTextEdit داریم که کاملاً شبیه به QTextEdit هستش. اکنون درون کلاس MyQTextEdit یک تابع بسازید و قابلیت درج فاصلهٔ مجازی را به آن اضافه کنید. بعداً در برنامه اصلی‌تان می‌توانید بجای استفاده مستقیم از QTextEdit از MyQTextEdit استفاده کنید که دارای قابلیت درج نویسهٔ فاصلهٔ مجازی نیز هست.

#include <QApplication>
#include <QKeyEvent>
#include <QTextEdit>

class MyQTextEdit : public QTextEdit
{
public:
    void keyPressEvent(QKeyEvent *e)
    {
        QTextEdit::keyPressEvent(e);
        if( e->key() == 0x200c )
        {
            insertPlainText( QChar(0x200C) );
        }
    }
};

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    MyQTextEdit *edit = new MyQTextEdit();
    edit->show();

    return a.exec();
}

منبع: https://stackoverflow.com/questions/24710704/override-keyboard-map-in-qt-application

نمونه‌ای از خروجی در زیر نمایش داده شده:



اگر می‌خواهید کلاس MyQTextEdit شما هم از فاصلهٔ مجازی ( ZWNJ ) و هم از اتصال مجازی ( ZWJ ) پشتیبانی کند از کد زیر استفاده کنید:

#include <QApplication>
#include <QKeyEvent>
#include <QTextEdit>

class MyQTextEdit : public QTextEdit
{
public:
    void keyPressEvent(QKeyEvent *e)
    {
        QTextEdit::keyPressEvent(e);
        if( e->key() == 0x200c )
        {
            insertPlainText( QChar(0x200C) );
        }
        else if ( e->key() == 0x200D )
        {
            insertPlainText( QChar(0x200D ) );
        }
    }
};

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    MyQTextEdit *edit = new MyQTextEdit();
    edit->setFont( QFont( "Sans Regular", 18));
    edit->show();

    return a.exec();
}

این هم یک نمونه از اجرا: ( با دستور زیر اندازه قلم را افزایش دادم تا در عکس زیر راحت‌تر دیده شود )
edit->setFont( QFont( "Sans Regular", 18));
« آخرین ویرایش: 12 مهر 1395، 12:02 ب‌ظ توسط علی ۵۰۰ »

آفلاین iranano

  • Newbie
  • *
  • ارسال: 7
من بعد از این که تاپیک مربوط به U+200c رو زدم، این اشکال رو ریپورت کرده بودم:
https://bugreports.qt.io/browse/QTBUG-55608

اگه یکیه با ریپورت بالا یکیشون باید حذف بشه.
« آخرین ویرایش: 12 مهر 1395، 12:55 ب‌ظ توسط iranano »

آفلاین علی ۵۰۰

  • Hero Member
  • *
  • ارسال: 775
  • جنسیت : پسر
من بعد از این که تاپیک مربوط به U+200c رو زدم، این اشکال رو ریپورت کرده بودم:
https://bugreports.qt.io/browse/QTBUG-55608

اگه یکیه با ریپورت بالا یکیشون باید حذف بشه.
اگر اشتباه نکنم شما هم همون باگی که در این تاپیک معرفی شده رو گزارش دادید. اگر می‌توانید لطفاً باگ zwj ( اتصال مجازی ) را گزارش بدید.
برای درج اتصال مجازی، در زمانی که صفحه‌کلید بر روی زبان فارسی استاندارد است،  از کلید « ` » ( کلید بالای TAB ) استفاده می‌شود.
برای مثال: ه‍
« آخرین ویرایش: 12 مهر 1395، 03:55 ب‌ظ توسط علی ۵۰۰ »

آفلاین iranano

  • Newbie
  • *
  • ارسال: 7
باگی که ریپورت کرده م کلی‌تره. یعنی در مورد برخی کاراکترها‌ی space هست و بازسازیش رو هم با زبان عربی توضیح داده م و در اوبونتو.

آفلاین ارس

  • Jr. Member
  • *
  • ارسال: 49
  • جنسیت : پسر
فکر نکنم توسعه دهندهای Qt به این زودی های فکری براش بکنند.
برنامه نویس نمی شناسید که بتونه یک patch براش بنویسه؟

آفلاین حامد مصافی

  • Jr. Member
  • *
  • ارسال: 60
فکر نکنم توسعه دهندهای Qt به این زودی های فکری براش بکنند.
برنامه نویس نمی شناسید که بتونه یک patch براش بنویسه؟

خودمون!!!

آفلاین سلمان م.

  • ناظر انجمن
  • *
  • ارسال: 4106
  • جنسیت : پسر
  • GNU Operating System - سیستم عامل گنو
منم ثبت نام‌کردم و رای دادم تا شاید زودتر حل بشه.

آفلاین علی ۵۰۰

  • Hero Member
  • *
  • ارسال: 775
  • جنسیت : پسر
سلام
انگار کار بر روی باگ اصلی شروع شده و این امکان وجود داره که این مشکل در نسخهٔ « 5.8.1 » برطرف بشه.