GNU bug report logs - #55250
[PATCH] Add Ukrainian tutorial

Previous Next

Package: emacs;

Reported by: Denys Nykula <vegan <at> libre.net.ua>

Date: Tue, 3 May 2022 19:59:02 UTC

Severity: wishlist

Tags: moreinfo, patch

Fixed in version 29.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 55250 in the body.
You can then email your comments to 55250 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#55250; Package emacs. (Tue, 03 May 2022 19:59:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Denys Nykula <vegan <at> libre.net.ua>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Tue, 03 May 2022 19:59:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Denys Nykula <vegan <at> libre.net.ua>
To: bug-gnu-emacs <at> gnu.org
Subject: [PATCH] Add Ukrainian tutorial
Date: Tue, 03 May 2022 22:34:09 +0300
[Message part 1 (text/plain, inline)]
Hello.  I translated the Emacs tutorial to Ukrainian.

My translation has an additional section about installing and enabling
a known good version of reverse-im from MELPA using eww and shell-
command.  That package makes all the default English bindings available
when writing long Cyrillic texts, such as this translation.

In lisp/language/cyrillic.el, using which I added the translation to
the menu, I see two sections about Ukrainian, both mentioning the koi8-
u layout.  I have not seen anyone using that layout directly for over a
decade, as all new text here is UTF-8.  But I am not familiar with the
codebase so I did not touch anything besides linking the tutorial.

The 
[0001-Add-Ukrainian-tutorial.patch (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55250; Package emacs. (Wed, 04 May 2022 06:18:01 GMT) Full text and rfc822 format available.

Message #8 received at 55250 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Denys Nykula <vegan <at> libre.net.ua>
Cc: 55250 <at> debbugs.gnu.org
Subject: Re: bug#55250: [PATCH] Add Ukrainian tutorial
Date: Wed, 04 May 2022 09:17:43 +0300
> From: Denys Nykula <vegan <at> libre.net.ua>
> Date: Tue, 03 May 2022 22:34:09 +0300
> 
> Hello.  I translated the Emacs tutorial to Ukrainian.

Thank you very much for this contribution, and for your interest in
Emacs.

> My translation has an additional section about installing and enabling
> a known good version of reverse-im from MELPA using eww and shell-
> command.  That package makes all the default English bindings available
> when writing long Cyrillic texts, such as this translation.

This should not be in a tutorial.  The translations of the tutorial
should be strictly translations, with no additional material specific
to the target language.  And AFAUI from your short description, the
reverse-im package is useful in very specific jobs, not in general for
using Emacs in the Ukrainian language environment, so it is not
appropriate for the tutorial in any case.

Moreover, we generally refrain from advertising MELPA regardless,
because that collection doesn't distinguish between Free and non-Free
software packages it hosts.  So for us to advertise that package,
someone should submit it to either GNU ELPA or non-GNU ELPA; then we
can think where in the Emacs documentation to mention it.

So please remove that addition from the tutorial translation.

> In lisp/language/cyrillic.el, using which I added the translation to
> the menu, I see two sections about Ukrainian, both mentioning the koi8-
> u layout.  I have not seen anyone using that layout directly for over a
> decade, as all new text here is UTF-8.  But I am not familiar with the
> codebase so I did not touch anything besides linking the tutorial.

Thanks.  KOI8-U is mentioned there as the preferred encoding.  I
understand you are saying this is obsolete, and Ukrainian users
nowadays mostly use UTF-8 instead?  Does it mean most Ukrainian Emacs
users are forced to customize their Emacs to prefer UTF-8?  Would it
be possible for you to ask on some relevant forum whether indeed this
is the case, so we have some more substantial basis for the decision
to switch our defaults?

What about input methods? do you have any information regarding modern
input methods used for Ukrainian when the keyboard doesn't support the
Ukrainian characters directly?  Is the input method we set up by
default in the Ukrainian language environment appropriate?

> * etc/tutorials/TUTORIAL.uk: Create the translation.
> * lisp/language/cyrillic.el: Link "Emacs Tutorial"
> to the translation if the system is Ukrainian.
> * etc/tutorials/TUTORIAL.translators: Attribute my work.

Thanks.  This addition of a new translation should be called out in
etc/NEWS, as we have done for other added translations.

> diff --git a/lisp/language/cyrillic.el b/lisp/language/cyrillic.el
> index 4576373..9eaf00a 100644
> --- a/lisp/language/cyrillic.el
> +++ b/lisp/language/cyrillic.el
> @@ -131,7 +131,8 @@ 'koi8-u
>    :mime-charset 'koi8-u)
>  
>  (set-language-info-alist
> - "Ukrainian" '((charset koi8-u)
> + "Ukrainian" '((tutorial . "TUTORIAL.uk")
> +	       (charset koi8-u)
>  	       (coding-system koi8-u)
>  	       (coding-priority koi8-u)
>  	       (nonascii-translation . koi8-u)

As you see in other language-related settings, language-info-alist can
include what we call "sample text", which is actually the greeting in
the language from the etc/HELLO file.  Would you like to add a
Ukrainian greeting, both to the above setting of language-info-alist
and to etc/HELLO?

Finally, to be able to accept your contribution of this size, we'll
need you to assign the copyright for your work to the FSF.  If you are
willing to do that, I will send you the form to fill and the
instructions to go with it, to start your legal paperwork rolling.

Thanks again for working on this.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55250; Package emacs. (Wed, 04 May 2022 20:17:01 GMT) Full text and rfc822 format available.

Message #11 received at 55250 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Denys Nykula <vegan <at> libre.net.ua>
Cc: 55250 <at> debbugs.gnu.org
Subject: Re: bug#55250: [PATCH] Add Ukrainian tutorial
Date: Wed, 04 May 2022 23:16:06 +0300
> Date: Wed, 04 May 2022 23:05:14 +0300
> From: Denys Nykula <vegan <at> libre.net.ua>
> Cc: 55250 <at> debbugs.gnu.org
> 
> > Finally, to be able to accept your contribution of this size, we'll
> > need you to assign the copyright for your work to the FSF.  If you are
> > willing to do that, I will send you the form to fill and the
> > instructions to go with it, to start your legal paperwork rolling.
> 
> Yes, I am willing to assign copyright to the FSF.  Is that possible
> without a reachable physical postal address?

Thanks, form sent off-list.

I will reply to the other points you raise tomorrow.  Thanks again for
working on this.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55250; Package emacs. (Wed, 04 May 2022 20:47:01 GMT) Full text and rfc822 format available.

Message #14 received at 55250 <at> debbugs.gnu.org (full text, mbox):

From: Denys Nykula <vegan <at> libre.net.ua>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 55250 <at> debbugs.gnu.org
Subject: Re: bug#55250: [PATCH] Add Ukrainian tutorial
Date: Wed, 04 May 2022 23:05:14 +0300
[Message part 1 (text/plain, inline)]
Hello Eli, thanks for your review. Sending another version.

> Moreover, we generally refrain from advertising MELPA regardless,
> because that collection doesn't distinguish between Free and non-Free
> software packages it hosts.  So for us to advertise that package,
> someone should submit it to either GNU ELPA or non-GNU ELPA; then we
> can think where in the Emacs documentation to mention it.

As a co-translator of the GNU philosophical articles, I understand the
importance of promoting free services only from within the app.  I can
ask the authors of the extension if they could contribute their
extension to ELPA.

> KOI8-U is mentioned there as the preferred encoding.  I
> understand you are saying this is obsolete, and Ukrainian users
> nowadays mostly use UTF-8 instead?  Does it mean most Ukrainian Emacs
> users are forced to customize their Emacs to prefer UTF-8?  Would it
> be possible for you to ask on some relevant forum whether indeed this
> is the case, so we have some more substantial basis for the decision
> to switch our defaults?

The common Ukrainian Emacs use scenario is: install a GNU/Linux
distribution with GNOME, KDE or XFCE (setting up the uk_UA.UTF-8
locale and adding the uk xkb layout to the system-wide input method
switcher by default), add GNU Emacs and try to edit text.

Other than installing reverse-im and/or learning to toggle the input
method, no further changes have been needed to become minimally
productive; from what I see, the new files Emacs creates are UTF-8
with default settings, because my language is not in the
locale-preferred-coding-systems exception variable.

However, the Debian wiki translator writes that sort-lines uses a
wrong alphabet by default, so he has to pipe to an external sort:
https://linux.org.ua/index.php?topic=11793.0 -- I think that has
something to do with the default preferences.  Admittedly, I do not
have much experience with Emacs internals so please glance at that
topic using machine translation and suggest what documentation and
code I or somebody else could read to help people fix that.

> What about input methods? do you have any information regarding modern
> input methods used for Ukrainian when the keyboard doesn't support the
> Ukrainian characters directly?  Is the input method we set up by
> default in the Ukrainian language environment appropriate?

I do not know of anyone typing Cyrillic text on non-Cyrillic
keyboards.  But people do need Latin commands on Cyrillic keyboards.
For example, they type C-v to go past the first screen of the
tutorial.  That fails, so I have to explicitly instruct them to switch
their system keyboard layout to Latin.  No other desktop application
requires this, so without that explanation people conclude that their
Emacs is broken or that they are too stupid to learn it.

> The translations of the tutorial
> should be strictly translations, with no additional material specific
> to the target language.

I removed the section about reverse-im, however the reason why I had
included it remains...  I will argue that the goal of using a text
editor in a country is mainly editing texts in the language of that
country, so if the tutorial does not mention how to edit texts in the
non-Latin alphabet of the language, few people in that country end up
completing learning the editor and using it in practice.

Note: the majority of the tutorial translations have so far been to
Latin-alphabet languages, and the minority translators might simply
fear to state that a lack for locale-specific instructions in our
tutorials undermines the popularization of Emacs in our communities,
giving the Latin-alphabet majority an unfair edge.

The .de tutorial dedicates two custom screens to German Latin.
Why cannot .uk add half a custom screen on Cyrillic?

> AFAUI from your short description, the reverse-im
> package is useful in very specific jobs, not in general for
> using Emacs in the Ukrainian language environment, so it is not
> appropriate for the tutorial in any case.

Using the C-\ input method toggle instead requires one to change their
system-wide keyboard layout to Latin every time they switch from other
apps such as the Firefox web browser.  Or to reconfigure our systems
to not have a system-wide keyboard layout but to switch our layouts
every time we open a new window.

To a user from a Latin-keyboard country, that might seem a minor
inconvenience.  However, it is a form of institutionalized
discrimination, since no users from any Latin-keyboard countries,
including our Polish and Slovak neighbors, have to do anything
additional every time they switch windows.  For them, Alt-Tab between
other tools and Emacs is seamless; for us it requires further action,
accumulating wasted time and increasing strain.

Reverse-im nicely removes this barrier, so having such a tool from the
beginning would help every new desktop Emacs user with a Cyrillic
keyboard, especially casual users, not the specific job niche.

> As you see in other language-related settings, language-info-alist can
> include what we call "sample text", which is actually the greeting in
> the language from the etc/HELLO file.  Would you like to add a
> Ukrainian greeting, both to the above setting of language-info-alist
> and to etc/HELLO?

Somebody added a one-word first-person greeting translation to
etc/HELLO nineteen years ago.  It is correct so I did not touch that
file.  For the sample text, I added the modern one, popular with the
refugees, diaspora and resistance.  I added a line to etc/NEWS, too.

> Finally, to be able to accept your contribution of this size, we'll
> need you to assign the copyright for your work to the FSF.  If you are
> willing to do that, I will send you the form to fill and the
> instructions to go with it, to start your legal paperwork rolling.

Yes, I am willing to assign copyright to the FSF.  Is that possible
without a reachable physical postal address?
[0001-Add-Ukrainian-tutorial-v2.patch (text/x-diff, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55250; Package emacs. (Wed, 04 May 2022 22:50:02 GMT) Full text and rfc822 format available.

Message #17 received at 55250 <at> debbugs.gnu.org (full text, mbox):

From: Richard Stallman <rms <at> gnu.org>
To: Denys Nykula <vegan <at> libre.net.ua>
Cc: 55250 <at> debbugs.gnu.org
Subject: Re: Add Ukrainian tutorial
Date: Wed, 04 May 2022 18:49:49 -0400
[[[ To any NSA and FBI agents reading my email: please consider    ]]]
[[[ whether defending the US Constitution against all enemies,     ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

  > Hello.  I translated the Emacs tutorial to Ukrainian.

Thank you.

  > My translation has an additional section about installing and enabling
  > a known good version of reverse-im from MELPA using eww and shell-
  > command.

Thank you, but we don't want to add that.  We don't mention MELPA at
all, because it recommends some nonfree software.

In any case, it doesn't make sense to add material in a translation
that is not in the master of the tutorial.  That would cause confusion
in maintenance.




-- 
Dr Richard Stallman (https://stallman.org)
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)






Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55250; Package emacs. (Sat, 07 May 2022 23:09:02 GMT) Full text and rfc822 format available.

Message #20 received at 55250 <at> debbugs.gnu.org (full text, mbox):

From: Richard Stallman <rms <at> gnu.org>
To: Denys Nykula <vegan <at> libre.net.ua>
Cc: eliz <at> gnu.org, 55250 <at> debbugs.gnu.org
Subject: Re: Add Ukrainian tutorial
Date: Sat, 07 May 2022 19:07:54 -0400
[[[ To any NSA and FBI agents reading my email: please consider    ]]]
[[[ whether defending the US Constitution against all enemies,     ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

  > I removed the section about reverse-im, however the reason why I had
  > included it remains...  I will argue that the goal of using a text
  > editor in a country is mainly editing texts in the language of that
  > country, so if the tutorial does not mention how to edit texts in the
  > non-Latin alphabet of the language, few people in that country end up
  > completing learning the editor and using it in practice.

Is the reverse-im support included in the Emacs release now?
We support input methods for many languages, and we can add more.

-- 
Dr Richard Stallman (https://stallman.org)
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)






Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55250; Package emacs. (Sun, 08 May 2022 05:21:01 GMT) Full text and rfc822 format available.

Message #23 received at 55250 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: rms <at> gnu.org
Cc: 55250 <at> debbugs.gnu.org, vegan <at> libre.net.ua
Subject: Re: Add Ukrainian tutorial
Date: Sun, 08 May 2022 08:20:30 +0300
> From: Richard Stallman <rms <at> gnu.org>
> Cc: eliz <at> gnu.org, 55250 <at> debbugs.gnu.org
> Date: Sat, 07 May 2022 19:07:54 -0400
> 
> Is the reverse-im support included in the Emacs release now?

No.




Severity set to 'wishlist' from 'normal' Request was from Stefan Kangas <stefan <at> marxist.se> to control <at> debbugs.gnu.org. (Wed, 08 Jun 2022 01:26:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55250; Package emacs. (Sat, 11 Jun 2022 11:08:01 GMT) Full text and rfc822 format available.

Message #28 received at 55250 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Denys Nykula <vegan <at> libre.net.ua>
Cc: 55250 <at> debbugs.gnu.org
Subject: Re: bug#55250: [PATCH] Add Ukrainian tutorial
Date: Sat, 11 Jun 2022 14:07:30 +0300
> Date: Wed, 04 May 2022 23:05:14 +0300
> From: Denys Nykula <vegan <at> libre.net.ua>
> Cc: 55250 <at> debbugs.gnu.org
> 
> Hello Eli, thanks for your review. Sending another version.

Thanks.

Your legal paperwork is now complete, so we can proceed to installing
these changes.  To this end, could you please submit an updated patch,
per all the review comments, rebased on the current master branch?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55250; Package emacs. (Tue, 06 Sep 2022 11:04:02 GMT) Full text and rfc822 format available.

Message #31 received at 55250 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 55250 <at> debbugs.gnu.org, Denys Nykula <vegan <at> libre.net.ua>
Subject: Re: bug#55250: [PATCH] Add Ukrainian tutorial
Date: Tue, 06 Sep 2022 13:03:08 +0200
Eli Zaretskii <eliz <at> gnu.org> writes:

> Your legal paperwork is now complete, so we can proceed to installing
> these changes.  To this end, could you please submit an updated patch,
> per all the review comments, rebased on the current master branch?

This was three months ago.  Denys, do you have an updated patch?




Added tag(s) moreinfo. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Tue, 06 Sep 2022 11:04:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55250; Package emacs. (Tue, 04 Oct 2022 12:19:02 GMT) Full text and rfc822 format available.

Message #36 received at 55250 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Denys Nykula <vegan <at> libre.net.ua>, 55250 <at> debbugs.gnu.org
Subject: Re: bug#55250: [PATCH] Add Ukrainian tutorial
Date: Tue, 04 Oct 2022 14:18:38 +0200
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

>> Your legal paperwork is now complete, so we can proceed to installing
>> these changes.  To this end, could you please submit an updated patch,
>> per all the review comments, rebased on the current master branch?
>
> This was three months ago.  Denys, do you have an updated patch?

I'm guessing that it's quite likely that Denys has more important things
to deal with now than doing an Emacs tutorial, so I've pushed the
tutorial to Emacs 29.

If there are further issues here, they can be dealt with separately.

Thanks, Denys, for the translation.





bug marked as fixed in version 29.1, send any further explanations to 55250 <at> debbugs.gnu.org and Denys Nykula <vegan <at> libre.net.ua> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Tue, 04 Oct 2022 12:19:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 02 Nov 2022 11:24:06 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 169 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.