Planet Arabeyes

April 21, 2014

Ayman Hourieh

Linkedin Amazon Authors StackOverflow Mathematics.StackExchange

by Ayman at April 21, 2014 11:45 PM

April 16, 2014

Isam Bayazidi

Will you miss your password?

Companies are conspiring to kill the password. Bill Gates predicts its death will come soon. Smartphones and soon tablets equipped with fingerprint and eyeball scanners are the answer. With recent internet security flaws, everyone is asked to change their passwords, and in many sites, it is getting more and more impossible to come up with memorable password. Your password now must be more than 8 characters, with upper case, lower case, numerals, and special characters. Good luck remembering it next time you login. The “Forget Password” became one of the most important features of sites with the complexity of passwords.

Although security experts warn against it, many people still use names that are special to them, significant dates or someone, or favorite things (TV, Movie, object, etc..) to help them remember. Few bother to use password managers and random password generators and have passwords like yQLttMZ1jm!QA3.

But reading the news I couldn’t help remembering my early password choices, and how I choose words that are linked with a memory I wanted to keep, or an object I was attached to. Back then “Remember Me” feature wasn’t there, and you will have to enter the password daily, or perhaps hourly if you are using command line as I did.

Will passwords be missed? or everyone is waiting for it’s death along with ATM Pin codes?

by Isam at April 16, 2014 08:10 AM

March 15, 2013

Khaled Hosny

XeTeX ported to HarfBuzz (and more)

XeTeX is an modern extension of TeX typesetting engine that supports Unicode, modern font technologies (OpenType and Graphite, plus AAT on Mac OS X) and many other goodies for multilingual and complex script typesetting.

XeTeX was written and maintained by Jonathan Kew, but lately he had less time for maintaining it. Last year I started to partially maintain XeTeX, supported by TUG, originally intending to mainly look after issues in OpenType math support, and my first release was 0.9998 (for TeX Live 2012) with fixes to some long standing OpenType math issues.

Late last year, after giving up on my attempt to port LibreOffice to HarfBuzz, I decided to port XeTeX instead. Both LibreOffice (and OpenOffice before it) and XeTeX were using the ICU LayoutEngine library to do OpenType layout, but it is no longer being maintained for quite sometime now, with bugs and even regressions left unfixed, not to mention support for new features. XeTeX was even used a locally patched version of it to handle many features not supported upstream. HarfBuzz, on the other hand, is an actively maintained, feature rich library with a versatile API and a very cooperative developers (I got at least a couple new API calls for my XeTeX needs, not to mention regular bug fixes), and is used by many high profile free software projects (though it lacks documentation, but hey, who needs documentation, one can always read the code or ask on the mailing list :)). The HarfBuzz port went smooth and in a few weeks we had a new version of XeTeX no longer using a patched ICU library (we still use ICU for other stuff like input encodings, bidirectional algorithm and locale sensetive line breaking), followed by a few months of bug fixes, re-factoring and code removal, so we ended up with more functionality and less code (yay).

XeTeX also supports Graphite font technology, but it was using the first generation Graphite engine, but in the meantime a new faster and more robust engine has been developed. While working on the HarfBuzz port, Martin Hosken (Graphite developer) approached me about upgrading XeTeX to the new library, and since HarfBuzz already have a Graphite2 backend I found it would be easier to use it, so I did just that, and ported our other uses of the old Graphite API (line breaking, querying font features etc.) to directly use the new Graphite2 API, with big help from Martin and other Graphite hackers.

Few months earlier to all this, Jiang Jiang started porting XeTeX on Mac from the long deprecated ATS/ATSUI font APIs (which Apple didn’t even provide on their 64-bit systems) to the new Core Text ones, and I kept bothering him asking when the port will be finished so he finished it, probably just to get rid of me. Since I didn’t have a Mac machine (not being a fan of Apple), I couldn’t do much work on the Mac code except remotely which boiled down to just making sure that XeTeX keeps building on Mac. After knowing about the long awaited Core Text port, TUG offered to buy me a Mac machine through the MacTeX fund so that I can maintain XeTeX on Mac, I wasn’t very enthusiastic about idea at the beginning (naturally), but after all XeTeX started on Mac and has a large user base there and, like it or not, I have to support them, so I sold out and acquired a so-called “MacBook Pro” laptop with a so-called “Retina” display (which I’m not using to write this blog post).

So at last I have a TeX engine that can showcase all features of Amiri font (time to find something serious to typeset).

So this week a beta version of XeTeX 0.99991 series have been released including the HarfBuzz, Graphite2 and Core Text ports and many other bug fixes (check the release notes).

Sources can be downloaded from SourceForge page, users of TeX Live can install binaries for several platforms from TLContrib repository, and final versions should be included in the upcoming TeX Live 2013 release.


  1. XeTeX version numbers are asymptotic to 1 (just like TeX version numbers being asymptotic to π), so the next stable version will not be 1.0 but rather 0.99991 :)  

by خالد at March 15, 2013 04:35 AM

February 17, 2013

Mohammed Sameer

Reverse engineered libomap3camd header file for N9 and N950

A short introduction about N9 camera stack:
Camera stack for N9 is built on top of V4L2 subdev and media controller interfaces.

read more

by msameer at February 17, 2013 04:46 PM

December 31, 2012

Khaled Hosny

إصدارة جديدة من الخط الأميري

إصدارة أخيرة من الخط الأميري قبل نهاية عام ٢٠١٢ :). تشتمل هذه الإصدارة على الكثير من التحسينات على تموضع التشكيل، و التآلف، و أشكال الحروف، إلى آخره من التحسينات المعتادة. و يمكن تنزيلها من المكان المعتاد.

لكن أهم ما في هذه الإصدارة هو إضافة خط جديد إلى المجموعة، ”أميري قرآن“؛ خط منفصل لتنضيد النصوص القرآنية، و هو فرع من خط أميري العادي مع بعض الإعدادات و الخصائص المبدئية المُطوعة لتناسب تنضيد النص القرآني لكن لا تناسب النصوص العادية. فمثلا ارتفاع السطر أكبر من الخط العادي ليستوعب علامات الوقف، و الهمزة على واو أو ياء إذا كانت مكسورة تأتي تحتهما، و بعض التراكيب التي يتداخل فيها التشكيل عندما تُشكّل كل الحروف أزيلت. و لتقليل حجم الخط (مفيد عند استخدامه عبر الوب) أزيلت أي محارف غير مستخدمة في النصوص القرآنية.

by خالد at December 31, 2012 04:37 PM

May 31, 2012

Khaled Hosny

May 22, 2012

Khaled Hosny

الخط الأميري ٠٫١٠٢

إصدارة جديدة من الخط الأميري:

أميري 0٫102 (2012-05-22)

  • المحارف الجديدة:

    • أكبر تغيير في هذه الإصدارة هو إضافة دعم نظام الكتابة اللاتيني مبنيًا على خط Crimson يغطي خرائط محارف لاتيني-0 إلى 9 بالإضافة إلى الحروف المستعملة في أنظامة رومنة العربية الشائعة (باستثناء الأبجدية الصوتية الصوتية) و العديد من علامات الترقيم الشائعة الأخرى.
    • باء مع ٧ صغيرة سفلية (U+08A0).
    • علامة البسملة (U+FDFD).
  • تحسينات:

    • شكل جديد للهاء المفتوحة المتبوعة بالياء النهائية.
    • شكل جديد للفاء المتوسطة المتبوعة بالياء النهائية.            
    • شكل جديد للهاء المعقودة المتبوعة بالياء الراجعة.                                     
    • شكل جديد محسن ومفتوح لهمزة الوصل.
    • شدة وسكون قرآني وعادي أكبر وأوضح.
    • علامة صلى الله عليه وسلم أكبر وأوضح.
    • تحسين تموضع نقاط عائلة الباء البادئة.
    • تحسين تموضع نقاط الباء المسبوقة بكاف ومتبوعة بألف أو لام.
    • تحسين تموضع الألف الخنجرية على الحروف العادية.
    • ألف مدة نهائية أوسع لتفادي تعارض المدة مع الحرف التالي.
    • تحسين شكل الكاف المتبوعة بميم ولام، أو ألف، على الشاشة في الأحجام الصغيرة.
    • تحسين الكاف المتبوعة بلام ثم ميم نهائية.
    • تفادي التصاق الباء البادئة أو المتوسطة بنقاط الحرف التالي.
    • تحسين موضع اتصال الصاد المتوسطة والنهائية.
  • التآلف:

    • جدول تآلف أحسن أداء يستخدم التموضع السياقي.
    • تقليل تآلف الدال أو الراء مع الكاف لتفادي التصاق النقاط.
    • زيادة تباعد الراء عن الياء البادئة.
    • جعل التآلف عبر الفاصل المجازي يعمل في محرك ميكروسوفت.
  • إصلاح العلات: #1347860، #3471042، #3475146، #3509875

  • متفرقات:

    • تكرار خاصية 'locl' في 'ccmp' للتحايل على المحركات التي لا تدعم الأولى.
    • ملفات EOT أصغر مضغوطة بتقنية MTX.
  • تحسينات أخرى متنوعة هنا وهناك.

by خالد at May 22, 2012 06:40 AM

Amiri font v0.102

Another Amiri font release:

Amiri 0.102 (2012-05-22)

  • New glyphs:

    • The largest feature of this release is adding Latin script support based on Crimson font, covering latin-0 to 9 code pages as well as all characters used in common Arabic romanisation schemes (not including IPA) and other common punctuation characters.
    • Beh with small v below (U+08A0).
    • Basmala symbol (U+FDFD).
  • Fixes:

    • New contextual shape for final open heh-yaa combination.
    • New contextual shape for final faa-yaa combination.
    • New contextual shape for knotted heh-yaa baree.                           
    • New, improved and more open hmaza wasl.
    • Larger and more readable shadda, regular and Qur'anic sukun.
    • Larger and more readable Sallallahou Alayhe Wasallam symbol (U+FDFA).
    • Improved dot placement of initial baa-like glyphs.
    • Improved dot placement of kaf-baa-alef combination.
    • Improved placement of dagger alef on regular glyphs.
    • Wider final alef with madda to avoid clash between madda and next glyphs.
    • Improved kaf-meem-alef, kaf-alef combinations at smaller sizes on screen.
    • Improve kaf-lam-final meem.
    • Avoid initial/medial kaf clash with next glyph's dots.
    • Improved medial and final sad connecting part.
  • Kerning:

    • More efficient kerning feature using contextual positioning
    • Reduce dal/raa-kaf kerning to avoid dot clash
    • More positive kerning for raa-intial yaa.
    • Make kerning across ZWNJ work with Uniscribe.
  • Bug fixes: #1347860, #3471042, #3475146, #3509875

  • Misc.:

    • Duplicate 'locl' in 'ccmp' to work around engines not supporting the former.
    • Smaller, MTX compressed EOT files.
  • Many other subtle improvements here and there.

by خالد at May 22, 2012 06:34 AM

March 11, 2012

Mohammed Sameer

Justin TV without flash!

Justin TV is a streaming service that uses the broken flash concept in order to allow you to view channels.

Unfortunately it's the only source of Arabic movies, series and shows.

I wrote a GStreamer source that retrieves the channel information and uses libRTMP to connect to the Justin streaming server. The rest is handled by GStreamer ;-)

If you want to watch http://www.justin.tv/ammartv for example, you simply do

gst-launch-0.10 playbin uri=jtv://ammartv

The 2nd plugin is a Totem plugin that indirectly utilizes the GStreamer source.
Given a language code (ar or en or ...), it will download the list of channels in that language and shows them in Totem's side panel. One can then easily double click on a channel and simply watch it. I originally wanted to do the Totem plugin in python but the inability to do asynchronous callback based HTTP requests prevented me :-(

Be warned that the code is of course a bit buggy and needs a lot of cleanups, it's been years since I coded anything in Gtk and that Justin might find out and either block the source somehow or even change the protocol but let's wait until that happens ;-)

read more

by msameer at March 11, 2012 03:18 PM

December 27, 2011

Khaled Hosny

Amiri font v0.101

Another Amiri font release in less than month (release early, release often ;). The main feature of this release is brand new bold and bold slanted fonts, so now we cover the four common styles, though more work on polishing them still needed. Check News file for more detailed changes of this release (Arabic, English)

http://www.khaledhosny.org/image/view/187/_original?.png

by خالد at December 27, 2011 10:23 PM

December 04, 2011

Khaled Hosny

الخط الأميري ٠٫١٠٠

إصدارة جديدة من الخط الأميري مع قفزة جديدة في رقم الإصدارة لتوضيح الانتقال من مرحلة ألفا إلى مرحلة بيتا :) (أرقام إصداراتي لامنطقية، لكن هكذا الحياة). لا طاقة بي لعرض عينة أو غيره من الأشياء الجذابة :p، لذا سأكتفي بوضع ملاحظات الإصدارة كما هي:

أميري 0٫100 (2011-12-04)، بيتا جاما دلتا

  • تمثل هذه الإصدارة محطة هامة في تطوير الخط إذ يغطى الآن كل المحارف العربية في الإصدار السادس من يونيكود، كما نضُج الخط بشكل كبير وصار من الممكن الاعتماد عليه في أغلب الأغراض الطباعية.

  • الخطوط الجديدة:

    • أضيفت نسخة مائلة تميل إلى اليسار وليس إلى اليمين، بحيث تماشي اتجاه الكتابة العربية.
  • المحارف الجديدة:

    • العلامات الضامة (U+0600-0603).
    • فاصلة التاريخ، أردو (U+060D).
    • علامة بيت الشعر، أردو (U+060E).
    • علامات التبجيل (U+0610-0614).
    • هاء دو چشمی، أردو (U+06BE and U+06FF).
    • ياء بڑی، أردو (U+06D2 and U+06D3).
    • أربع أحجام للكشيدة.
  • تحسينات:

    • إصلاح مشكلة الكشيدة في إنديزاين.
    • إمالة رقم أربعة الأردي ليصبح مقبولا أكثر.
    • إصلاح اختفاء نقطة الخاء المتوسطة إذا سبقتها كاف أو لام، كما في "كخا".
    • تقليل ارتفاع اللام البادئة المتبوعة بحاء وميم متوسطتين -كما في "لحمد"- لتماثل أطوال اللامات الأخرى.
    • عين فنجانية وحاء مغلقة إذا تبعت العين أو الحاء بكاف.
    • خفض الواو الصغيرة بعد الهاء.
    • توسيع الواو الصغيرة والألف النهائية إذا وضع عليها مدة.
    • توسيع جوانب الحروف المنقوطة ولمهموزة لئلا تلامس ما جاورها.
    • المزيد من التنويعات العريضة من الحروف لتفادي تلامس علامات الشكل عند التشكيل الكامل.
    • راء ثعبانية إذا سبقت الراء بعين بالراء، كما في "غر".
    • شكل جديد للألف النهائية التي تسبقها كشيدة، كما في "عمـان".
    • شكل جديد للياء النهائية المسبوقة بهاء مفتوحة،كما في "نهى".
    • تغيير شكل الكاف النهائية والمتوسطة إلى شكل جديد أفضل لا يلامس مع ما جاورهما من الحروف.
    • تغيير شكل الواو النهائية إلى شكل أقرب للتصميم الأصلي.
    • جعل خفض نقاط الباء المسبوقة بواو أو راء اختياري، ونقلها إلى المجموعة التجميلية 01.
    • جعل الشكل الخاص للميم المتوسطة المتبوعة بألف اختياري، ونقلها إلى المجموعة التجميلية 02.
    • عرض كل الأرقام موحد الآن.
    • أخذت الأرقام المغربية وعلامات الترقيم المشتركة من خط Crimson Text.
    • تغيير المسافات بين السطور قليلا بحيث تناسب الآن النصوص العادية.
    • المزيد من التحسينات المتنوعة هنا وهناك.

by خالد at December 04, 2011 03:21 PM

Amiri font v0.100

Yet another Amiri font release with yet another jump in version number, this time to mark the move from alpha stage to beta stage :) (my versioning scheme makes no sense, but so is life). Too lazy and too tired for screenshots and other fancy stuff :p, so here is the release notes:

Amiri 0.100 (2011-12-04), beta gamma delta

  • This release marks another important developmental milestone, with Arabic and Arabic Supplement blocks in Unicode 6.0 being fully covered (which means essentially any Arabic character in Unicode can now be presented with Amiri). Also the font has now matured to great extent and is usable for most of typesetting tasks.

  • New styles:

    • Add a slanted style that slants to the left and no to right, to follow Arabic writing direction.
  • New glyphs:

    • Subtending marks (U+0600-0603).
    • Arabic date separator (U+060D).
    • Arabic poetic verse sign (U+060E).
    • Honorific marks (U+0610-0614).
    • Dochashmi Heh (U+06BE and U+06FF).
    • Bari Yaa (U+06D2 and U+06D3).
    • 4 sizes of Kashida.
  • Fixes:

    • Fix issue with Kashida breaking word shaping in InDesign.
    • Slant Urdu digit four to look more acceptable.
    • Fix disappearance of media Khaa dot when preceded by Kaf, as in كخا.
    • Decrease the hight of initial Lam when followed by Haa and Meem, as in لحمد, to match other Lam glyphs.
    • Finjani Ayn and closed Haa when followed by Kaf.
    • Lower small Waw after final Heh.
    • Widen small Waw and final Alef when a Madda mark is applied to them.
    • Increase side bearings of many dotted glyphs no avoid clash with their neighbours.
    • More wider forms of glyphs to avoid mark clash when fully vowelled.
    • New contextual shape for initial Ain followed by Raa, as in غر.
    • New contextual shape for final Alef preceded by Kashida, as in عمـان.
    • New contextual shape for final Yaa when followed by open Heh, as in نهى.
    • New redrawn initial and medial Kaf that do not clash with their neighbours.
    • New redrawn final Waw that is more faithful to the original design.
    • Disable, by default, lowering Baa dots when preceded by Raa or Waw, moved to stylistic set 01.
    • Disable, by default, contextual form of medial Meem when followed by Alef, moved to stylistic set 02.
    • Digits are now tabular, removed tnum feature.
    • Common punctuation and European digits are now from Crimson Text.
    • Change the default interline spacing to fit better for regular text.
    • Many more smaller fixes here and there.

by خالد at December 04, 2011 03:20 PM

November 27, 2011

Mohammed Sameer

خبرتي في التصويت خارج مصر

توجهت اليوم الي السفاره المصرية في هلسنكي لتسليمهم المظروف المحتوي علي بطاقات الاقتراع الخاصة بي
طبعا كان ممكن تتبعت بالبريد لكن المشكله هي:
اولا وصلتنا تعليمات التصويت من السفاره متاخرا

read more

by msameer at November 27, 2011 10:08 PM

November 10, 2011

Mohammed Sameer

N9/N950 camera with zoom during video recording!

If you are using PR 1.1 then you can simply enable zoom during video recording.

Just create a file /etc/camera.conf and add the following lines:

[debug]
recording-zoom = true

restart camera, enjoy and send postcards to the Harmattan camera team :)

I hope someone will create an Ovi store app for that ;)

read more

by msameer at November 10, 2011 12:17 PM

November 02, 2011

Mohammed Sameer

Increase the font size of the N9 conversation view.

If you care about the readability more than you care about the eye candy then that's for you ;-)

1) You need to enable developer mode and ssh to the N9.

2) # mkdir -p /usr/share/themes/blanco/meegotouch/libmessagingwidgets0/style/

3) # vi /usr/share/themes/blanco/meegotouch/libmessagingwidgets0/style/libmessagingwidgets0.css

4) Insert the following lines:

BubbleItem MLabelStyle#BubbleItemMessageIncoming {
font: $FONT_FAMILY 32px;
}

BubbleItem MLabelStyle#BubbleItemMessageOutgoing {
font: $FONT_FAMILY 32px;
}

BubbleItem MLabelStyle#BubbleTimeStampLabelOutgoing {
font: $FONT_FAMILY light 32px;
}

BubbleItem MLabelStyle#BubbleTimeStampLabelIncoming {
font: $FONT_FAMILY light 32px;
}

5) # su - user
6) $ killall -KILL messaging-ui
7) Enjoy :-)

read more

by msameer at November 02, 2011 10:42 PM

September 22, 2011

Khaled Hosny

الخط الأميري ٠٫٠١٦

إصدارة جديدة أخرى من الخط الأميري، هذه المرة مع دعم مكتمل -نوعا- ما للرسم القرآني، وهي آخر ميزة مهمة كانت تنقص الخط، وربما بعد إصدارتين أو أقل يدخل الخط إلى مرحلة بيتا تمهيدا للإصدارة النهائية.

أول سورة البقرة وهذه ملاحظات الإصدار الكاملة:

أميري 0٫016 (2011-09-22)، بداية النهاية

  • تحتوي هذه الإصدارة على دعم كامل للقرآن الكريم، وهي محطة هامة أخرى في تطوير
  • هذا الخط. لكن يبقى الكثير من العمل لتحسين التفاعل بين الحروف وخاصة تموضع
  • علامات الشكل في النصوص تامة التشكيل مثل القرآن.

  • المحارف الجديدة:

    • كل علامات الضبط القرآني في يونيكود 6٫0.
    • باقي علامات التشكيل العربية في يونيكود 6٫0.
    • علامة الجذر (U+221A) مع تنويعة معكوسة للاستخدام العربي، بالإضافة إلى الجذور العربية الأخرى (U+0606, U+0607).
    • علامة نصف القطر (U+0608).
    • رمز العملة الأفغانية (U+060B).
    • علامة "مصرع" الأردية (U+060F).
    • تنويعة من الميم الأولية إذا تبعت بهاء متوسطة كما في "مها".
  • التآلف:

    • انخفض عدد أزواج التآلف من 411240 إلى 55850 مع الحصول على نفس النتيجة.
  • تحسينات:

    • تحسينات عامة على علامات الترقيم، وضبط لتباعد الأقواس مع تسميك الأقواس المجعدة لتتماشى أكثر مع باقي الخط.
    • أصبح عرض المسافة 600 وحدة.
    • أصلح إدراج الكشائد في أماكن خطأ عند مساواة الفقرات.
    • أضيفت تنويعات عريضة من بعض الحروف لتفادي تلامس علامات الشكل عند التشكيل الكامل.
    • ضبط موضع السطر السفلي ليكون أخفض من أغلب الحروف النازلة عن السطر.
    • إصلاحات عديدة على تموضع علامات التشكيل.
    • فصلت الحلقة أسفل الياء الكشميرية عن جسم الحرف لتتبع أسلوب الكتابة الكشميري.

by خالد at September 22, 2011 10:46 PM

Amiri font v0.016

Yet another developmental release of Amiri font, this time featuring a, more or less, complete Quranic support, which fixes the last major issue with the font, and I think it is only a couple of more alpha releases before it is ready to enter beta stage.

The start of Baqara chapter Here is the full release notes:

Amiri 0.016 (2011-09-22), Beginning of the End

  • This release features full Quranic support, another major developmental milestone, more work still needed in refining glyph interaction specially mark positioning in fully vocalised text such as Quran.

  • New glyphs:

    • All Quranic annotation marks in Unicode 6.0.
    • All other Arabic vowel marks in Unicode 6.0.
    • Radical (U+221A) including a RTL variant, and other Arabic radicals (U+0606, U+0607).
    • Arabic ray (U+0608).
    • Afghani sign (U+060B).
    • Arabic sign Misra (U+060F).
    • New contextual shape for initial meem followed by medial heh, as in مها.
  • Kerning:

    • Decreased the number of kerning pairs from 411240 to 55850 while retaining the same functionality.
  • Fixes:

    • General cleanup of punctuation marks, fixing spacing of brackets and making curly brackets more bolder to fit wit the rest of the font.
    • Made the space glyph 600 units wide.
    • Fixed erroneous tatweel (kashida) insertion in full justification.
    • Wider forms of some glyphs to avoid mark clash in full vowelisation.
    • Underline position is now lower than most glyphs with descendants.
    • Various mark positioning fixes.
    • Separate the ring of Kashmiri yeh from the body of base glyph, following Kashmiri orthographic traditions.

by خالد at September 22, 2011 10:33 PM