6

I'm using MiKTeX 2.9 on windows7. When compiling with pdflatex, I get the following warning from Babel (which is discussed elsewhere

No hyphenation patterns were loaded for the language):

Package babel Warning: No hyphenation patterns were loaded for
(babel)                the language `German'
(babel)                I will use the patterns loaded for \language=0 instead.

The suggestions elsewhere (and in the MiKTeX manual) say to use MiKTeX Options (mo.exe, I assume), to update the language.

When I use mo.exe, I navigate to the language tab and click on the language I want.

The response I get is: "This language is not yet available"

Warning screenshot

Screenshot added by Infowanna

Above is a screenshot from my system. Languages which are not present do not have check marks in their corresponding buttons. When I click on a button - any button, I get the message box.

I assume that the screenshot below (from Speravir) shows how this dialog normally functions:

Warning screenshot
Screenshot added by Speravir

How do I make a language available?

First, I attempted updating my "language.dat" file. But then, I noticed this gets updated (silently) whenever I update the fndb via mo.exe. The update simply overwrites any edits with an empty file. So, editing the file is pointless (and something I know I shouldn't be doing since it's under the texmf directory tree).

Second, following Ulrike's suggestion in a comment below, I've reviewed the file 'languages.dat' in the miktex config directory. (The first line says "Do not edit" - there's no clue on how it gets generated, or how to edit.) The languages I want at this moment (english, german, french) do not have an 'exclude' attribute. In fact, the entries are as follows:

[english]
attributes=
...
[french]
attributes=
...
[german]
attributes=

all other languages have:

attributes=exclude

Does a different attribute tell mo.exe to enable the button for a language? How do I set it?

infowanna
  • 583
  • 4
  • 16
  • 2
    Check if you have the packages miktex-hyph-german and hyph-utf8 installed. (I can't reproduce the problem, but a missing package is be the first thing which comes to my mind in such cases). – Ulrike Fischer Nov 21 '12 at 15:55
  • As far as I know, MiKTeX 2.9 enables by default all known languages on installation. I suspect that at format creation time a wrong language.dat file is read in. – egreg Nov 21 '12 at 16:24
  • @Ulrike - yes the packages are there – infowanna Nov 23 '12 at 14:23
  • @egreg - I believe I may have simply unchecked the 50 or 60 languages that were enabled - and now cannot re-enable languages since the list was "emptied" – infowanna Nov 23 '12 at 14:24
  • Interestingly, what I see is that if I run mo.exe, language.dat is not updated, whereas, if I run mo-admin.exe, language.dat gets "blanked out" - which means to me that there's another list somewhere to tell mo-admin.exe how to update language.dat. It seems somewhat redundant from my current point of view, but maybe someone knows why and where the list could be? – infowanna Nov 23 '12 at 14:26
  • Actually, since I'm using the portable version of 2.9 I wonder if I should even be using the "admin" version? – infowanna Nov 23 '12 at 14:27
  • Sorry, but I'm no expert in MiKTeX. Maybe @UlrikeFischer can give a pointer. – egreg Nov 23 '12 at 14:28
  • Your log shows German (with a capital G). Shouldn't it be german ? – yo' Nov 23 '12 at 18:01
  • Added an image. Happened not with the portable version. – Speravir Nov 24 '12 at 00:58
  • @tohecz - thanks for the 'heads up' - this must have changed when formatting the question. – infowanna Nov 29 '12 at 09:57
  • @Speravir - thanks for the image, it prompted me to look around and find how I can upload an image - stupid me, it's right there in the edit window! – infowanna Nov 29 '12 at 09:58
  • I've removed my extraneous comments which were 'off subject' from discussion of the mo.exe dialog. The fundemental problem, as discussed in the link above, in my situation, is resolved by using Ulrike's solution to a different problem - see below. – infowanna Nov 29 '12 at 10:03
  • @infowanna: My screenshot shows the same message, that’s why I included it. The reason is, that for the two languages ibycus and lao the hyphenation files defined in language.ini are absent. – Speravir Nov 29 '12 at 18:42
  • Maybe my answer at a similar question is helpful. – Twonky Jan 31 '20 at 13:15

1 Answers1

5

I found an entry in the official MikTeX Bug list (via source forge), originally from Ulrike Fischer. So people should click on Ulrike's comment to give her her due.

Miktex 2.9, win xp, installed as single user.

In miktex-settings in the language tab there are no "New, edit, remove" buttons. I see only the list of languages.

Later in the discussion forum for MiKTeX user “Tethered.Sun” wrote:

I managed to find a workaround: I located the language.dat file, rewritten the
relevant row in it, and ran initexmf --dump. Updating the format files from
the graphical interface would do no good since it always replaced my manual
insertions with the default (and ineditable) settings of the graphical
interface.

Using the command line program initexmf does the job of adding the desired hyphenation patterns. As of this writing, the bug reported above remains outstanding.

So I'll use the command line tools in place of the gui.

Speravir
  • 19,491
infowanna
  • 583
  • 4
  • 16
  • 1
    From your problem description I wouldn't have thought that this bug is relevant. For me it sounds more as if there is a problem with the configuration of the portable miktex. (But I'm not sure that I really understand what you actually want to achieve. Why is your document trying to load the language "German" (with a large G). And which language are you trying to activate in miktex settings?) – Ulrike Fischer Nov 23 '12 at 15:12
  • I would like to use either german or ngerman (as well as english and possibly french). When I go to mo.exe and look at the "Languages tab" no language is checked. I attempt to check "german" and get a messagebox with the message: "This language is not yet available." So I'm left with the situation that it's not selected and I can't add it to select it. Do you know how to upload an image here? Perhaps the screen shot would help? – infowanna Nov 23 '12 at 16:11
  • 1
    This is certainly not the same problem as in my bug report. I don't have any difficulty to check or uncheck languages, I only can't edit the language definitions (e.g. to use another driver for the hyphenations). Try to locate languages.ini in the UserConfig-tree in the folder \miktex\config and remove the exclude attribute there (make a backup of the file first). – Ulrike Fischer Nov 23 '12 at 16:29
  • Infowanna, in future please include the source links, compare my edit. – Speravir Nov 24 '12 at 00:50
  • @Ulrike - Thanks a lot. I reviewed the file you mentioned. The desired languages do not contain an 'exclude' attribute. In fact, they don't contain any attribute. Could that be the problem? Is there a list of attributes that can be used? The first line in the file is 'DO NOT EDIT' - how is that file edited? – infowanna Nov 29 '12 at 10:07
  • @Speravir - thanks for the reminder. I can see it's much more helpful to include the links. – infowanna Nov 29 '12 at 10:08
  • @infowanna: The local language.ini often contains only a language name and the attribute line. You can find other possible line by checking the language.ini in the main miktex tree (but it is possible that the main language.ini is defect and that this is the source of your problem). Regarding the editing: Simply dare to ignore the "Don't edit" (but make a backup first). And don't confuse language.ini with language.dat. The second is generated by miktex from the ini's. – Ulrike Fischer Nov 29 '12 at 11:03