unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#51183: lagrange: fribidi and harfbuzz dependencies?
@ 2021-10-13 15:22 Christopher Howard
  2021-10-13 22:56 ` Liliana Marie Prikler
  2021-10-17 19:14 ` Efraim Flashner
  0 siblings, 2 replies; 6+ messages in thread
From: Christopher Howard @ 2021-10-13 15:22 UTC (permalink / raw)
  To: 51183

Hi, I like the lagrange gemini client, but I have struggled with some
font display issues since I do a publishing with mixed English and
Hebrew words. Lagrange does display Hebrew unicode characters, if you
switch to the selectable "Tinos" font in the preferences, but on my
system, the Hebrew script is displayed in the wrong direction (left-to-
right, instead of right-to-left).

According to the Lagrange github README, Lagrange should be able to
utilize the fribidi and harfbuzz software to properly display these
sorts of scripts, but it does not seem to be doing this in Guix, even
though these packages are available.

I attempted running lagrange inside "guix environment --ad-hoc fribidi
harfbuzz" but the scripts are still displaying backwards, suggesting
that something needs to be modified in the package definition itself to
utilize this software.

Here is a simple gemini test page (contain just a single Hebrew word):

gemini://gem.librehacker.com/gemlog/your-word/test.gmi

On my system, it displays the letters as "bet resh alef" from left to
right, rather than from right to left.

https://en.wikipedia.org/wiki/Hebrew_alphabet#Alphabet

-- 
Christopher Howard
Gemini capsule: gemini://gem.librehacker.com
Web version: https://portal.mozz.us/gemini/gem.librehacker.com






^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#51183: lagrange: fribidi and harfbuzz dependencies?
  2021-10-13 15:22 bug#51183: lagrange: fribidi and harfbuzz dependencies? Christopher Howard
@ 2021-10-13 22:56 ` Liliana Marie Prikler
  2021-10-13 23:40   ` Christopher Howard
  2021-10-17 19:14 ` Efraim Flashner
  1 sibling, 1 reply; 6+ messages in thread
From: Liliana Marie Prikler @ 2021-10-13 22:56 UTC (permalink / raw)
  To: Christopher Howard, 51183

Hi,

Am Mittwoch, den 13.10.2021, 07:22 -0800 schrieb Christopher Howard:
> [...]
> 
> According to the Lagrange github README, Lagrange should be able to
> utilize the fribidi and harfbuzz software to properly display these
> sorts of scripts, but it does not seem to be doing this in Guix, even
> though these packages are available.
> 
> I attempted running lagrange inside "guix environment --ad-hoc
> fribidi harfbuzz" 
That's not how any of this works.  Even if Lagrange were to mystically
pick up packages from your environment, which more likely than not it
doesn't, you would still have to include it in said environment for it
to make a difference.

> but the scripts are still displaying backwards, suggesting that
> something needs to be modified in the package definition itself to
> utilize this software.
I suggest trying a variant of lagrange that has harfbuzz to verify that
it indeed does make a difference.  You can construct one by editing
Guix source or by using the following with the right (use-modules ...)
clause on top:

(package
  (inherit lagrange)
  (inputs 
   `(("harfbuzz" ,harfbuzz)
     ,@(package-inputs lagrange))))

Alternatively, someone else might try given the file you've provided,
just putting this out there if you want to experiment on your own :)

Regards,
Liliana





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#51183: lagrange: fribidi and harfbuzz dependencies?
  2021-10-13 22:56 ` Liliana Marie Prikler
@ 2021-10-13 23:40   ` Christopher Howard
  2021-10-14  6:55     ` Liliana Marie Prikler
  0 siblings, 1 reply; 6+ messages in thread
From: Christopher Howard @ 2021-10-13 23:40 UTC (permalink / raw)
  To: Liliana Marie Prikler, 51183

Hello, the following did NOT work:

```
(use-modules (guix packages))
(use-modules (gnu packages web-browsers))
(use-modules (gnu packages gtk))
(use-modules (gnu packages fribidi))

(packages->manifest
 (list
  (package
   (inherit lagrange)
   (inputs 
    `(("harfbuzz" ,harfbuzz)
      ("fribidi" , fribidi)
      ,@(package-inputs lagrange))))))
```

The package does build, but the problem remains with the script being
displayed in the wrong direction.

I'm am greatly curious if there are more configure time options that
need to be set in relation to this. This paragraph indicates there are
related configure options:

https://github.com/skyjake/lagrange#unicode-text-rendering





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#51183: lagrange: fribidi and harfbuzz dependencies?
  2021-10-13 23:40   ` Christopher Howard
@ 2021-10-14  6:55     ` Liliana Marie Prikler
  2021-10-14 10:39       ` Bengt Richter
  0 siblings, 1 reply; 6+ messages in thread
From: Liliana Marie Prikler @ 2021-10-14  6:55 UTC (permalink / raw)
  To: Christopher Howard, 51183

Hi,

Am Mittwoch, den 13.10.2021, 15:40 -0800 schrieb Christopher Howard:
> Hello, the following did NOT work:
> 
> ```
> (use-modules (guix packages))
> (use-modules (gnu packages web-browsers))
> (use-modules (gnu packages gtk))
> (use-modules (gnu packages fribidi))
> 
> (packages->manifest
>  (list
>   (package
>    (inherit lagrange)
>    (inputs 
>     `(("harfbuzz" ,harfbuzz)
>       ("fribidi" , fribidi)
>       ,@(package-inputs lagrange))))))
> ```
> 
> The package does build, but the problem remains with the script being
> displayed in the wrong direction.
> 
> I'm am greatly curious if there are more configure time options that
> need to be set in relation to this. This paragraph indicates there
> are related configure options:
> 
> https://github.com/skyjake/lagrange#unicode-text-rendering
By default, Lagrange should have ENABLE_FRIBIDI and ENABLE_HARFBUZZ be
ON, whereas ENABLE_FRIBIDI_BUILD and ENABLE_HARFBUZZ_MINIMAL are set
OFF, just as the script states.  It would seem to be a bug elsewhere
then.

Try to check the build log to see whether or not harfbuzz and fribidi
respectively get correctly detected by CMake.  It ought to use pkg-
config to do so, but I don't trust CMake on a fundamental level.  If it
does, there might be a problem with how Lagrange uses them?





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#51183: lagrange: fribidi and harfbuzz dependencies?
  2021-10-14  6:55     ` Liliana Marie Prikler
@ 2021-10-14 10:39       ` Bengt Richter
  0 siblings, 0 replies; 6+ messages in thread
From: Bengt Richter @ 2021-10-14 10:39 UTC (permalink / raw)
  To: Liliana Marie Prikler; +Cc: Christopher Howard, 51183

On +2021-10-14 08:55:49 +0200, Liliana Marie Prikler wrote:
> Hi,
> 
> Am Mittwoch, den 13.10.2021, 15:40 -0800 schrieb Christopher Howard:
> > Hello, the following did NOT work:
> > 
> > ```
> > (use-modules (guix packages))
> > (use-modules (gnu packages web-browsers))
> > (use-modules (gnu packages gtk))
> > (use-modules (gnu packages fribidi))
> > 
> > (packages->manifest
> >  (list
> >   (package
> >    (inherit lagrange)
> >    (inputs 
> >     `(("harfbuzz" ,harfbuzz)
> >       ("fribidi" , fribidi)
> >       ,@(package-inputs lagrange))))))
> > ```
> > 
> > The package does build, but the problem remains with the script being
> > displayed in the wrong direction.
> > 
> > I'm am greatly curious if there are more configure time options that
> > need to be set in relation to this. This paragraph indicates there
> > are related configure options:
> > 
> > https://github.com/skyjake/lagrange#unicode-text-rendering
> By default, Lagrange should have ENABLE_FRIBIDI and ENABLE_HARFBUZZ be
> ON, whereas ENABLE_FRIBIDI_BUILD and ENABLE_HARFBUZZ_MINIMAL are set
> OFF, just as the script states.  It would seem to be a bug elsewhere
> then.
> 
> Try to check the build log to see whether or not harfbuzz and fribidi
> respectively get correctly detected by CMake.  It ought to use pkg-
> config to do so, but I don't trust CMake on a fundamental level.  If it
> does, there might be a problem with how Lagrange uses them?
> 
> 
> 
>

  Is something possibly dependent on GNU extended functionality,
  that putting
    #define _GNU_SOURCE 1
  in a header file could enable?
 
  Also, if there are local files in the same directory as the Makefile,
  could  -I. in the right rule be needed to trigger compiles?

  ... a couple things that caused me hiccups before, maybe too obvious for others.
  
-- 
Regards,
Bengt Richter




^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#51183: lagrange: fribidi and harfbuzz dependencies?
  2021-10-13 15:22 bug#51183: lagrange: fribidi and harfbuzz dependencies? Christopher Howard
  2021-10-13 22:56 ` Liliana Marie Prikler
@ 2021-10-17 19:14 ` Efraim Flashner
  1 sibling, 0 replies; 6+ messages in thread
From: Efraim Flashner @ 2021-10-17 19:14 UTC (permalink / raw)
  To: Christopher Howard; +Cc: 51183

[-- Attachment #1: Type: text/plain, Size: 1815 bytes --]

On Wed, Oct 13, 2021 at 07:22:18AM -0800, Christopher Howard wrote:
> Hi, I like the lagrange gemini client, but I have struggled with some
> font display issues since I do a publishing with mixed English and
> Hebrew words. Lagrange does display Hebrew unicode characters, if you
> switch to the selectable "Tinos" font in the preferences, but on my
> system, the Hebrew script is displayed in the wrong direction (left-to-
> right, instead of right-to-left).
> 
> According to the Lagrange github README, Lagrange should be able to
> utilize the fribidi and harfbuzz software to properly display these
> sorts of scripts, but it does not seem to be doing this in Guix, even
> though these packages are available.
> 
> I attempted running lagrange inside "guix environment --ad-hoc fribidi
> harfbuzz" but the scripts are still displaying backwards, suggesting
> that something needs to be modified in the package definition itself to
> utilize this software.
> 
> Here is a simple gemini test page (contain just a single Hebrew word):
> 
> gemini://gem.librehacker.com/gemlog/your-word/test.gmi
> 
> On my system, it displays the letters as "bet resh alef" from left to
> right, rather than from right to left.
> 
> https://en.wikipedia.org/wiki/Hebrew_alphabet#Alphabet
> 

This is something that I've noticed too for years but never got around
to trying to fix. I actually find that mutt displays Hebrew backwards
for me too, as does translate-shell.

I've updated lagrange from 1.5.2 to 1.7.2 and I didn't see any
improvement in how it displays ברא vs ארב.

-- 
Efraim Flashner   <efraim@flashner.co.il>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-10-17 19:16 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-13 15:22 bug#51183: lagrange: fribidi and harfbuzz dependencies? Christopher Howard
2021-10-13 22:56 ` Liliana Marie Prikler
2021-10-13 23:40   ` Christopher Howard
2021-10-14  6:55     ` Liliana Marie Prikler
2021-10-14 10:39       ` Bengt Richter
2021-10-17 19:14 ` Efraim Flashner

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).