<!doctype html>
<html lang="ar">
<head>
  <meta charset="utf-8">
  <title>لؤلؤة</title>
  <!--<meta name="description" content="">-->
  <meta name="viewport" content="width=device-width, initial-scale=1">

	<link href="https://fonts.googleapis.com/css?family=IBM+Plex+Mono|IBM+Plex+Sans:100,400&display=swap" rel="stylesheet">
	<link rel="stylesheet" href="https://unpkg.com/purecss@1.0.1/build/pure-min.css" integrity="sha384-oAOxQR6DkCoMliIh8yFnu25d7Eq/PHS21PClpwjOTeU2jRSq11vu66rf90/cZr47" crossorigin="anonymous">
	<link rel="stylesheet" href="https://unpkg.com/purecss@1.0.1/build/grids-responsive-min.css">
	<script src="https://cdn.pydata.org/bokeh/release/bokeh-1.3.4.min.js"></script>
	<link rel="stylesheet" href="style.css">
</head>
<body>

<div class="title-card pure-g">
	<div class="pure-u-1 pure-u-lg-1-3">
	<div class="lbox">
		<h1 class="title"><img class="logo" src="lulua-logo.svg"></h1>
		<div class="pure-g flexreverse">
			<div class="pure-u-1 pure-u-sm-1-2">
				<!--<h2 class="subtitle">لوحة مفاتيح العربية المريحة</h1>-->
			</div>
			<div class="pure-u-1 pure-u-sm-1-2">
				<h2 class="subtitle" lang="en">Ergonomic Arabic Keyboard Layout</h1>
			</div>
		</div>
	</div>
	</div>
	<div class="pure-u-1 pure-u-lg-2-3">
	<div class="lbox">
		<div class="layout">
			<img src="ar-lulua.svg" alt="لؤلؤة">
		</div>
	</div>
	</div>
</div>

<div class="pure-g flexreverse">
	<div class="pure-u-1 pure-u-md-1-2">
	</div>
	<div class="pure-u-1 pure-u-md-1-2" lang="en">
	<div class="lbox">
		<p>This is work in progress and contributions are welcome. Head over to
		<a href="https://github.com/PromyLOPh/lulua">GitHub</a> to see where
		you can help.</a></p>
	</div>
	</div>
</div>

<div class="pure-g flexreverse">
	<div class="pure-u-1 pure-u-md-1-2">
	</div>
	<div class="pure-u-1 pure-u-md-1-2" lang="en">
	<div class="lbox">
		<h2>Goals</h2>
		<ul>
			<li>Ergonomic typing of unvocalized and vocalized text with 10 fingers</li>
			<li>Modern Standard Arabic and Quranic Arabic</li>
			<li>Localized numbers (European/Arabic-Indic)</li>
			<li>Usable as primary or secondary keyboard</li>
			<li>Compose-based</li>
			<li>Support for Markdown, RST, Wikitext and similar markup</li>
		</ul>

		<p>Other languages using the Arabic alphabet (regional dialects, Urdu,
		Persian) are explicitly not supported.</p>
	</div>
	</div>
</div>

<div class="pure-g flexreverse">
	<div class="pure-u-1 pure-u-md-1-2">
	</div>
	<div class="pure-u-1 pure-u-md-1-2" lang="en">
	<div class="lbox">
		<h2>Usage</h2>
		<dl>
			<dt>Linux</dt>
			<dd>Run: <code>xmodmap <a href="ar-lulua.xmodmap">ar-lulua.xmodmap</a></code></dd>
		</dl>
	</div>
	</div>
</div>

<div class="indepth-card">
<div class="pure-g flexreverse">
	<div class="pure-u-1 pure-u-md-1-2">
	</div>
	<div class="pure-u-1 pure-u-md-1-2" lang="en">
	<div class="lbox">
		<h1>Learn more</h1>
	</div>
	</div>
</div>
</div>

<section>
<div class="pure-g flexreverse">
	<div class="pure-u-1 pure-u-md-1-2">
	<div class="lbox">
		<h2>الأبجدية العربية</h2>
	</div>
	</div>
	<div class="pure-u-1 pure-u-md-1-2" lang="en">
	<div class="lbox">
		<h2>The Arabic Alphabet</h2>
		<p>
		There are 28 letters in the Arabic alphabet, plus quite a few extra
		symbols required for proper text input, like the hamza in its different
		shapes <bdo dir="ltr" lang="ar">أ إ آ ء ئ ؤ</bdo>, ta marbutah <bdo
		dir="ltr" lang="ar">ة</bdo>, alif maqsurah <bdo dir="ltr"
		lang="ar">ى</bdo> and various diacritics for vowelized texts.
		<!-- -->
		Since the usability of a keyboard layout depends on the text entered
		it is necessary to study letter and letter combination frequencies first.
		<!-- -->
		The corpus used for the following analysis consists of
		</p>

		include(`corpus.html')

		<p>
		The plot below shows <bdo dir="ltr" lang="ar">ا ل ي م و ن</bdo> can be
		considered the most frequently used letters in the Arabic language.
		<!-- -->
		Together they account for more than 55% of all letters in the corpus.
		</p>
	</div>
	</div>
</div>

<figure id="letterfreq">
<div class="lbox" lang="en">
	<div id="letterfreq-div"></div>
</div>
<figcaption class="pure-g flexreverse">
	<div class="pure-u-1 pure-u-md-1-2">
	</div>
	<div class="pure-u-1 pure-u-md-1-2" lang="en">
	<div class="lbox">
		<p>Arabic letter frequency distribution</p>
	</div>
	</div>
</figcaption>
</figure>
</section>

<section>
<div class="pure-g flexreverse">
	<div class="pure-u-1 pure-u-md-1-2">
	</div>
	<div class="pure-u-1 pure-u-md-1-2" lang="en">
	<div class="lbox">
		<h2>Layout properties</h2>

		<p>Below are statistics for the proposed layout.</p>
	</div>
	</div>
</div>

<figure id="ar-lulua-heat">
<div class="lbox" lang="en">
	<img src="ar-lulua-heat.svg">
	include(`ar-lulua-fingerhand.html')
</div>
</figure>

<section class="layoutgallery">
	<div class="pure-g flexreverse">
		<div class="pure-u-1 pure-u-md-1-2">
		</div>
		<div class="pure-u-1 pure-u-md-1-2" lang="en">
		<div class="lbox">
			<h2>Related work</h2>
		</div>
		</div>
	</div>

	<figure id="ar-asmo663">
	<div class="lbox">
		<img src="ar-asmo663-heat.svg">
		include(`ar-asmo663-fingerhand.html')
	</div>
	<figcaption class="pure-g flexreverse">
		<div class="pure-u-1 pure-u-md-1-2">
		</div>
		<div class="pure-u-1 pure-u-md-1-2" lang="en">
		<div class="lbox">
			<p>
			Trying to unify existing layouts, the Arab Standardization and
			Meterology Organization (ASMO), now part of
			<a href="https://www.aidmo.org/">AIDMO</a>, published an Arabic
			keyboard layout in 1987 as
			<a href="https://www.aidmo.org/smcacc/ar/index.php?option=com_sobi2&Itemid=2&limitstart=2150">standard 663</a>.
			<!-- -->
			This, however, turned out to be a failure, due to lack of adoption by
			the typewriter industry.
			</p>
		</div>
		</div>
	</figcaption>
	</figure>

	<figure id="ar-linux">
	<div class="lbox">
		<img src="ar-linux-heat.svg">
		include(`ar-linux-fingerhand.html')
	</div>
	<figcaption class="pure-g flexreverse">
		<div class="pure-u-1 pure-u-md-1-2">
		</div>
		<div class="pure-u-1 pure-u-md-1-2" lang="en">
		<div class="lbox">
			<p>
			Instead we’re currently using this layout (on Linux), which is
			similar, but not quite the same.
			<!-- -->
			Most notably this layout arranges letters by their visual similarity.
			<!-- -->
			Thus it allocates suboptimal or even awkward positions to frequently
			used letters like <bdo dir="ltr" lang="ar">ا ل</bdo> and
			<bdo dir="ltr" lang="ar">ذ</bdo>.
			</p>
		</div>
		</div>
	</figcaption>
	</figure>

	<figure id="ar-malas">
	<div class="lbox">
		<img src="ar-malas-heat.svg">
		include(`ar-malas-fingerhand.html')
	</div>
	<figcaption class="pure-g flexreverse">
		<div class="pure-u-1 pure-u-md-1-2">
		</div>
		<div class="pure-u-1 pure-u-md-1-2" lang="en">
		<div class="lbox">
			<p>
			The work by Malas et al. (2008),
			<a href="https://pdfs.semanticscholar.org/1bf8/74dcaa7f21c2cc3c6c5e526b61a9ee352bba.pdf">Toward Optimal Arabic Keyboard Layout Using Genetic Algorithm</a>,
			presents an alternative layout generated by a genetic algorithm.
			<!-- -->
			They used a snapshot of the Arabic Wikipedia probably from around 2008 and
			optimized for typing speed only, claiming 35% faster typing compared
			to the <a href="#ar-linux">currently used layouts</a>.
			<!-- -->
			However the decision to put <bdo dir="ltr" lang="ar">ي</bdo> in the top
			row seems odd.
			<!-- -->
			Assigning the same left index finger to <bdo dir="ltr" lang="ar">ا
			ي و</bdo>, which are three of the most frequent letters, heavily
			strains this particular finger.
			</p>
		</div>
		</div>
	</figcaption>
	</figure>

	<figure id="ar-osman">
	<div class="lbox">
		<img src="ar-osman-heat.svg">
		include(`ar-osman-fingerhand.html')
	</div>
	<figcaption class="pure-g flexreverse">
		<div class="pure-u-1 pure-u-md-1-2">
		</div>
		<div class="pure-u-1 pure-u-md-1-2" lang="en">
		<div class="lbox">
			<p>
			In 2015 patent
			<a href="https://patents.google.com/patent/US9041657B2/en">9,041,657 B2</a>
			was filed in the US, presenting yet another computer-generated layout.
			<!-- -->
			Its genetic algorithm was seeded with just 54 Arabic e-books consisting
			of 7 million characters in total.
			<!-- -->
			Overall it claims to be 9% faster than default layouts.
			<!-- -->
			This layout rips off most of the standard layout’s second layer,
			but amusingly fails to include a question mark, while it does
			provide <em>three</em> single-quote marks ’ and <em>two</em> Arabic
			semicolon <bdo dir="ltr" lang="ar">؛</bdo>.
			<!-- -->
			Additionally it places <bdo dir="ltr" lang="ar">ي</bdo> in an even
			worse position than Malas’ layout.
			</p>
		</div>
		</div>
	</figcaption>
	</figure>

	<figure>
	<div class="lbox">
		<img src="ar-khorshid-heat.svg">
		include(`ar-khorshid-fingerhand.html')
	</div>
	<figcaption class="pure-g flexreverse">
		<div class="pure-u-1 pure-u-md-1-2">
		</div>
		<div class="pure-u-1 pure-u-md-1-2" lang="en">
		<div class="lbox">
			<p>
			In the paper
			<a href="https://www.researchgate.net/publication/264837659_A_new_optimal_Arabic_keyboard_layout_using_genetic_algorithm">A new optimal Arabic keyboard layout using genetic algorithm</a>
			Khorshid et al. present yet another
			layout.
			<!-- -->
			They claim a 36% improvement over the standard keyboard based on
			their criteria for ergonomic layouts.
			<!-- -->
			However in their layout from figure 8 the letters <bdo dir="ltr"
			lang="ar">ل ب ر</bdo> are in suboptimal positions.
			<!-- -->
			Also it seems their algorithm favors the bottom row instead of the
			easier to use top row.
			</p>
		</div>
		</div>
	</figcaption>
	</figure>

	<figure>
	<div class="lbox">
		<img src="ar-phonetic-heat.svg">
		include(`ar-phonetic-fingerhand.html')
	</div>
	<figcaption class="pure-g flexreverse">
		<div class="pure-u-1 pure-u-md-1-2">
		</div>
		<div class="pure-u-1 pure-u-md-1-2" lang="en">
		<div class="lbox">
			<p>
			The <a href="http://arabic.omaralzabir.com/home">Arabic Phonetic Keyboard</a>
			simply maps the QWERTY layout to Arabic letters, based on their sound.
			Thus Q becomes <bdo dir="ltr" lang="ar">ق</bdo>, Y becomes <bdo dir="ltr" lang="ar">ي</bdo> and so on.
			It claims to be optimized for writing vowelized texts, especially
			Quranic Arabic, and thus includes quite a few combining characters and
			special symbols.
			Although it claims to make frequently used letters easily available –
			based on the work of Intellaren – it makes no effort to arrange letters
			according to their usage frequency.
			</p>
		</div>
		</div>
	</figcaption>
	</figure>

	<div class="pure-g flexreverse">
		<div class="pure-u-1 pure-u-md-1-2">
		</div>
		<div class="pure-u-1 pure-u-md-1-2" lang="en">
		<div class="lbox">
			<p>
			While technically speaking not a layout but alternative input
			method, <a href="http://www.intellaren.com/intellark">Intellark</a> by
			Intellaren is worth mentioning.
			<!-- -->
			It is based on repeatedly pressing the same button to modifiy the
			current character.
			<!-- -->
			For example pressing A on the QWERTY keyboard cycles through the
			alternatives <bdo dir="ltr" lang="ar">ا أ إ آ</bdo> and <bdo dir="ltr" lang="ar">ء</bdo>.
			<!-- -->
			Obviously this is slow, error-prone and violates Dvorak’s guidelines
			for keyboard layout designs.
			</p>
		</div>
		</div>
	</div>
</section>



</div>
<script>
fetch('letterfreq.json')
    .then(function(response) { return response.json(); })
    .then(function(item) { Bokeh.embed.embed_item(item, 'letterfreq-div'); })
</script>

</body>
</html>