<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>font on
A Scripter's Notes</title><link>https://scripter.co/tags/font/</link><description>Recent content in font
on A Scripter's Notes</description><language>en-us</language><managingEditor>kaushal.modi@gmail.com (Kaushal Modi)</managingEditor><webMaster>kaushal.modi@gmail.com (Kaushal Modi)</webMaster><lastBuildDate>Wed, 22 Apr 2026 08:24:58 -0400</lastBuildDate><generator>Hugo -- gohugo.io</generator><docs>https://validator.w3.org/feed/docs/rss2.html</docs><atom:link href="https://scripter.co/tags/font/index.xml" rel="self" type="application/rss+xml"/><item><title>Gujarati fonts in Emacs</title><link>https://scripter.co/gujarati-fonts-in-emacs/</link><description>&lt;blockquote>Setting a different font for a specific script or language in Emacs.&lt;/blockquote>&lt;div class="ox-hugo-toc toc">
&lt;div class="heading">Table of Contents&lt;/div>
&lt;ul>
&lt;li>&lt;a href="#setting-a-fontset-font">Setting a &amp;ldquo;fontset&amp;rdquo; font&lt;/a>&lt;/li>
&lt;li>&lt;a href="#gujarati-fonts">Gujarati fonts&lt;/a>&lt;/li>
&lt;/ul>
&lt;/div>
&lt;!--endtoc-->
&lt;p>All Emacs versions ship with a nifty &lt;strong>HELLO&lt;/strong> file that you can quickly
open using &lt;code>M-x view-hello-file&lt;/code> or its default binding &lt;code>C-h h&lt;/code>. This
file lists &amp;ldquo;Hello&amp;rdquo; written in dozens of languages to demonstrate some
of the character sets supported by Emacs.&lt;/p>
&lt;p>&lt;a id="figure--hello-buffer">&lt;/a>&lt;/p>
&lt;figure>
&lt;a href="hello.png">
&lt;img src="https://scripter.co/gujarati-fonts-in-emacs/hello.png" alt="Figure 1: &amp;ldquo;Hello&amp;rdquo; buffer in Emacs"/> &lt;/a>&lt;figcaption>
&lt;p>
&lt;span class="figure-number">Figure 1: &lt;/span>&amp;ldquo;Hello&amp;rdquo; buffer in Emacs
&lt;/p>
&lt;/figcaption>&lt;/figure>
&lt;p>Born and raised in the Gujarat state in India, I grew up
speaking the &lt;a href="https://en.wikipedia.org/wiki/Gujarati_language">Gujarati (ગુજરાતી)&lt;/a> language
&lt;span class="sidenote-number">&lt;small class="sidenote">
India officially recognizes &lt;a href="https://en.wikipedia.org/wiki/Languages_of_India">22 languages&lt;/a> (as of &lt;span class="timestamp-wrapper">&lt;span class="timestamp">&amp;lt;2022-06-19 Sun&amp;gt;&lt;/span>&lt;/span>) and
Gujarati is one of them.
&lt;/small>&lt;/span>
and so it&amp;rsquo;s also the language closest to my heart. So I was pleasantly
surprised to see a representation of Gujarati in the &amp;ldquo;Hello&amp;rdquo; buffer!
In the above screenshot, in the &amp;ldquo;South Asia&amp;rdquo; section, the script after
the yellow cursor is Gujarati, and it reads &lt;em>namaste&lt;/em>.&lt;/p>
&lt;h2 id="setting-a-fontset-font">Setting a &amp;ldquo;fontset&amp;rdquo; font&amp;nbsp;&lt;a class="headline-hash no-text-decoration" href="#setting-a-fontset-font">#&lt;/a>&lt;/h2>
&lt;p>It was on &lt;span class="timestamp-wrapper">&lt;span class="timestamp">&amp;lt;2018-08-13 Mon&amp;gt; &lt;/span>&lt;/span> that I discovered the presence of Gujarati
script in that &amp;ldquo;Hello&amp;rdquo; buffer, and the reason I know that exact date
is because I had &lt;a href="https://lists.gnu.org/r/help-gnu-emacs/2018-08/msg00033.html">asked a question&lt;/a> regarding that on the
&lt;em>help-gnu-emacs&lt;/em> mailing list 😃.&lt;/p>
&lt;p>This was the time when Emacs was using the &lt;a href="https://www.nongnu.org/m17n/">m17n&lt;/a> library for
multi-lingual font rendering by default. The question was regarding a
font rendering issue I was seeing. As I learn later in that thread, it
was because I didn&amp;rsquo;t have the m17n database installed on my machine
&lt;span class="sidenote-number">&lt;small class="sidenote">
At least in 2022, the &lt;a href="https://github.com/harfbuzz/harfbuzz">harfbuzz&lt;/a> library is the recommended library for
text shaping and font rendering. Someone please correct me if that&amp;rsquo;s
wrong. In any case, I have switched to using &lt;em>harfbuzz&lt;/em> instead of
&lt;em>m17n&lt;/em> for a while now and haven&amp;rsquo;t found any font-rendering issues
with non-English scripts.
&lt;/small>&lt;/span>
. But it&amp;rsquo;s in that support thread that, thanks to &lt;em>Andy Moreton&lt;/em>, I
learned that you can change the font for the Gujarati script using
&lt;code>set-fontset-font&lt;/code>.&lt;/p>
&lt;p>This applies in general to any script. You can read more details about
this function in &lt;a href="https://www.gnu.org/software/emacs/manual/html_node/emacs/Modifying-Fontsets.html" title="Emacs Lisp: (info &amp;quot;(emacs) Modifying Fontsets&amp;quot;)">Emacs Info: Modifying Fontsets&lt;/a>, but here&amp;rsquo;s the gist:&lt;/p>
&lt;p>&lt;a id="code-snippet--gujarati-set-fontset-font">&lt;/a>&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-emacs-lisp" data-lang="emacs-lisp">&lt;span class="line">&lt;span class="cl">&lt;span class="p">(&lt;/span>&lt;span class="nf">set-fontset-font&lt;/span> &lt;span class="s">&amp;#34;fontset-default&amp;#34;&lt;/span> &lt;span class="ss">&amp;#39;gujarati&lt;/span> &lt;span class="s">&amp;#34;&amp;lt;FONT NAME&amp;gt;&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;div class="src-block-caption">
&lt;span class="src-block-number">&lt;a href="#code-snippet--gujarati-set-fontset-font">Code Snippet 1&lt;/a>:&lt;/span>
Setting default font for Gujarati script using &lt;code>set-fontset-font&lt;/code>
&lt;/div>
&lt;p>That led me down the path of exploring the available Gujarati fonts
out there ..&lt;/p>
&lt;h2 id="gujarati-fonts">Gujarati fonts&amp;nbsp;&lt;a class="headline-hash no-text-decoration" href="#gujarati-fonts">#&lt;/a>&lt;/h2>
&lt;p>After looking around for a bit, I found a wonderful &lt;a href="https://github.com/samyakbhuta/chhapkaam/wiki/%E0%AA%97%E0%AB%81%E0%AA%9C%E0%AA%B0%E0%AA%BE%E0%AA%A4%E0%AB%80-%E0%AA%AF%E0%AB%81%E0%AA%A8%E0%AA%BF%E0%AA%95%E0%AB%8B%E0%AA%A1-%E0%AA%AB%E0%AB%8B%E0%AA%A8%E0%AB%8D%E0%AA%9F-%E0%AA%B8%E0%AB%82%E0%AA%9A%E0%AB%80---List-of-Gujarati-Unicode-Fonts">collection of
Gujarati fonts&lt;/a> in this GitHub repository:
&lt;a href="https://github.com/samyakbhuta/chhapkaam">github.com/samyakbhuta/chhapkaam&lt;/a>
&lt;span class="sidenote-number">&lt;small class="sidenote">
The repo name is &lt;em>chhapkaam&lt;/em> (I
would have spelled it as &lt;em>chhaapkaam&lt;/em>) which is the Gujarati word
છાપકામ, meaning &amp;ldquo;printing&amp;rdquo;.
&lt;/small>&lt;/span>
.&lt;/p>
&lt;p>Below is my further curated list of fonts from the above list:&lt;/p>
&lt;p>&lt;a id="table--gujarati-fonts">&lt;/a>&lt;/p>
&lt;div class="table-caption">
&lt;span class="table-number">&lt;a href="#table--gujarati-fonts">Table 1&lt;/a>:&lt;/span>
Gujarati Fonts
&lt;/div>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Font Name&lt;/th>
&lt;th>&lt;em>Namaste&lt;/em>&lt;/th>
&lt;th>Category&lt;/th>
&lt;th>Homepage&lt;/th>
&lt;th>Download&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;strong>Shruti&lt;/strong>&lt;/td>
&lt;td>&lt;img src="namaste_shruti.png" alt="">&lt;/td>
&lt;td>serif&lt;/td>
&lt;td>&lt;/td>
&lt;td>&lt;a href="https://www.wfonts.com/font/shruti">wfonts.com&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>Mukta Vaani&lt;/strong>&lt;/td>
&lt;td>&lt;img src="namaste_mukta_vaani.png" alt="">&lt;/td>
&lt;td>serif&lt;/td>
&lt;td>&lt;a href="https://ektype.in/scripts/gujarati/mukta-vaani.html">Ek Type &amp;ndash; Mukta Vaani&lt;/a>&lt;/td>
&lt;td>&lt;a href="https://github.com/EkType/Mukta/releases">GitHub&lt;/a>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>Lohit Gujarati&lt;/strong>&lt;/td>
&lt;td>&lt;img src="namaste_lohit.png" alt="">&lt;/td>
&lt;td>sans serif&lt;/td>
&lt;td>&lt;a href="https://pagure.io/lohit">Pagure &amp;ndash; Lohit&lt;/a>&lt;/td>
&lt;td>&lt;a href="https://releases.pagure.org/lohit/">pagure releases&lt;/a>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>To use these fonts, after downloading and installing them on your
system, evaluate &lt;a href="#code-snippet--gujarati-set-fontset-font">Code Snippet 1&lt;/a> above with the
correct &amp;ldquo;FONT NAME&amp;rdquo;. For example, to set the Gujarati text to use the
&lt;em>Shruti&lt;/em> font, evaluate &lt;code class="code-inline language-emacs-lisp">&lt;span class="p">(&lt;/span>&lt;span class="nf">set-fontset-font&lt;/span> &lt;span class="s">&amp;#34;fontset-default&amp;#34;&lt;/span> &lt;span class="ss">&amp;#39;gujarati&lt;/span> &lt;span class="s">&amp;#34;Shruti&amp;#34;&lt;/span>&lt;span class="p">)&lt;/span>&lt;/code>.&lt;/p>
&lt;p>Thanks for reading (વાંચવા બદલ આભાર) 🙏!&lt;/p></description><author>Kaushal.Modi@fakeEmailToMakeValidatorHappy.com (Kaushal Modi)</author><category domain="https://scripter.co/categories/emacs">emacs</category><category domain="https://scripter.co/series/gujarati-in-emacs">Gujarati in Emacs</category><category domain="https://scripter.co/tags/gujarati">gujarati</category><category domain="https://scripter.co/tags/font">font</category><category domain="https://scripter.co/tags/100daystooffload">100DaysToOffload</category><guid>https://scripter.co/gujarati-fonts-in-emacs/</guid><pubDate>Sun, 19 Jun 2022 01:31:00 -0400</pubDate></item></channel></rss>