all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#21574: po-mode mishandles ASCII files
@ 2015-09-27 20:01 Paul Eggert
  2015-09-27 23:55 ` Glenn Morris
  2015-09-28 10:18 ` Eli Zaretskii
  0 siblings, 2 replies; 8+ messages in thread
From: Paul Eggert @ 2015-09-27 20:01 UTC (permalink / raw)
  To: 21574

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

Emacs's po-mode mishandles .po files that specify charset=us-ascii.  To 
reproduce the problem on Fedora, run 'LC_ALL=cs_CZ.iso88592 emacs -Q fr.po' with 
fr.po being the attached file (taken from Texinfo 6.0), and type '# C-x 8 RET 
161 RET RET C-x C-s'.  The file will be saved with the line '#š' prepended, in 
Latin-2 encoding, even though the file declares its encoding to be 
charset=us-ascii.  If I visit the modified file again with 
'LC_ALL=fr_FR.iso88591 emacs -Q fr.po' I will see a first line of '#¹'.  This 
example is merely of a bad comment, but I suppose this could lead to a bad 
translation.

It's only a minor problem, as .po files should be using UTF-8 nowadays instead 
of US-ASCII.  I'm reporting it only because I suppose the bug could be more 
general than just po-mode.

[-- Attachment #2: fr.po --]
[-- Type: text/x-gettext-translation, Size: 24261 bytes --]

# French translations of resulting document strings.
# Copyright (C) 2013 Free Software Foundation, Inc.
# This file is distributed under the same license as the texinfo package.
# Patrice Dumas <pertusus@free.fr>, 2003.
# Jean-Charles Malahieude <lilyfan@orange.fr>, 2013-2015.
#
msgid ""
msgstr ""
"Project-Id-Version: texinfo_document 5.9.93\n"
"Report-Msgid-Bugs-To: bug-texinfo@gnu.org\n"
"POT-Creation-Date: 2015-06-26 13:52+0100\n"
"PO-Revision-Date: 2015-06-07 12:20+0200\n"
"Last-Translator: Jean-Charles Malahieude <lilyfan@orange.fr>\n"
"Language-Team: French <traduc@traduc.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=us-ascii\n"
"Content-Transfer-Encoding: 8bit\n"

#: tp/Texinfo/Common.pm:714 tp/Texinfo/Common.pm:719
msgid "Function"
msgstr "Fonction"

#: tp/Texinfo/Common.pm:715
msgid "Macro"
msgstr "Macro"

#: tp/Texinfo/Common.pm:716
msgid "Special Form"
msgstr "Forme Sp@'eciale"

#: tp/Texinfo/Common.pm:717 tp/Texinfo/Common.pm:720
msgid "Variable"
msgstr "Variable"

#: tp/Texinfo/Common.pm:718
msgid "User Option"
msgstr "Option de l'utilisateur"

#: tp/Texinfo/Common.pm:721 tp/Texinfo/Common.pm:722
msgid "Instance Variable"
msgstr "Variable d'instance"

#: tp/Texinfo/Common.pm:723 tp/Texinfo/Common.pm:724
msgid "Method"
msgstr "M@'ethode"

#: tp/Texinfo/Common.pm:1196
#, perl-brace-format
msgid "{category} on {class}"
msgstr "{category} de {class}"

#: tp/Texinfo/Common.pm:1203
#, perl-brace-format
msgid "{category} of {class}"
msgstr "{category} de {class}"

#: tp/Texinfo/Common.pm:1220
#, perl-brace-format
msgid "{month} {day}, {year}"
msgstr "le {day} {month} {year}"

#: tp/Texinfo/Common.pm:1251 tp/Texinfo/Convert/Plaintext.pm:1112
#: tp/Texinfo/Convert/HTML.pm:515
#, perl-brace-format
msgid "Appendix {number} {section_title}"
msgstr "Appendice {number} {section_title}"

#: tp/Texinfo/Common.pm:1255 tp/Texinfo/Convert/Plaintext.pm:1117
#: tp/Texinfo/Convert/HTML.pm:521
#, perl-brace-format
msgid "{number} {section_title}"
msgstr "{number} {section_title}"

#: tp/Texinfo/Common.pm:1390
#, perl-brace-format
msgid "{float_type} {float_number}: "
msgstr "{float_type} {float_number}@ : "

#: tp/Texinfo/Common.pm:1394
#, perl-brace-format
msgid "{float_type}: "
msgstr "{float_type}@ : "

#: tp/Texinfo/Common.pm:1399
#, perl-brace-format
msgid "{float_type} {float_number}\n"
msgstr "{float_type} {float_number}\n"

#: tp/Texinfo/Common.pm:1403
#, perl-brace-format
msgid "{float_type}\n"
msgstr "{float_type}\n"

#: tp/Texinfo/Common.pm:1409
#, perl-brace-format
msgid "{float_number}: "
msgstr "{float_number}@ : "

#: tp/Texinfo/Common.pm:1412
#, perl-brace-format
msgid "{float_number}\n"
msgstr "{float_number}\n"

#: tp/Texinfo/Parser.pm:2981
#, perl-brace-format
msgid "{name} on {class}"
msgstr "{name} de {class}"

#: tp/Texinfo/Parser.pm:2990
#, perl-brace-format
msgid "{name} of {class}"
msgstr "{name} de {class}"

#: tp/Texinfo/Convert/Converter.pm:110
msgid "error@arrow{}"
msgstr "erreur@arrow{}"

#: tp/Texinfo/Convert/Converter.pm:956
msgid "January"
msgstr "janvier"

#: tp/Texinfo/Convert/Converter.pm:957
msgid "February"
msgstr "f@'evrier"

#: tp/Texinfo/Convert/Converter.pm:958
msgid "March"
msgstr "mars"

#: tp/Texinfo/Convert/Converter.pm:959
msgid "April"
msgstr "avril"

#: tp/Texinfo/Convert/Converter.pm:960
msgid "May"
msgstr "mai"

#: tp/Texinfo/Convert/Converter.pm:961
msgid "June"
msgstr "juin"

#: tp/Texinfo/Convert/Converter.pm:962
msgid "July"
msgstr "juillet"

#: tp/Texinfo/Convert/Converter.pm:963
msgid "August"
msgstr "ao@^ut"

#: tp/Texinfo/Convert/Converter.pm:964
msgid "September"
msgstr "septembre"

#: tp/Texinfo/Convert/Converter.pm:965
msgid "October"
msgstr "octobre"

#: tp/Texinfo/Convert/Converter.pm:966
msgid "November"
msgstr "novembre"

#: tp/Texinfo/Convert/Converter.pm:967
msgid "December"
msgstr "d@'ecembre"

#: tp/Texinfo/Convert/Converter.pm:1018
#, perl-brace-format
msgid "{float_type} {float_number}"
msgstr "{float_type} {float_number}"

#: tp/Texinfo/Convert/Converter.pm:1022
#, perl-brace-format
msgid "{float_type}"
msgstr "{float_type}"

#: tp/Texinfo/Convert/Converter.pm:1026
#, perl-brace-format
msgid "{float_number}"
msgstr "{float_number}"

#: tp/Texinfo/Convert/DocBook.pm:825
#, perl-brace-format
msgid "See Info file @file{{myfile}}, node @samp{{mynode}}"
msgstr "Voir le fichier Info @file{{myfile}}, n@oe{}ud @samp{{mynode}}"

#: tp/Texinfo/Convert/DocBook.pm:830
#, perl-brace-format
msgid "See node @samp{{mynode}}"
msgstr "Voir le n@oe{}ud @samp{{mynode}}"

#: tp/Texinfo/Convert/DocBook.pm:834
#, perl-brace-format
msgid "See Info file @file{{myfile}}"
msgstr "Voir le fichier Info @file{{myfile}}"

#: tp/Texinfo/Convert/DocBook.pm:874
#, perl-brace-format
msgid "section ``{section_name}'' in @cite{{book}}"
msgstr "voir la section `{section_name}' dans @cite{{book}}"

#: tp/Texinfo/Convert/DocBook.pm:879
#, perl-brace-format
msgid "See section ``{section_name}'' in @cite{{book}}"
msgstr "voir la section `{section_name}' dans @cite{{book}}"

#: tp/Texinfo/Convert/DocBook.pm:884
#, perl-brace-format
msgid "see section ``{section_name}'' in @cite{{book}}"
msgstr "voir la section `{section_name}' dans @cite{{book}}"

#: tp/Texinfo/Convert/DocBook.pm:891 tp/Texinfo/Convert/HTML.pm:3287
#, perl-brace-format
msgid "@cite{{book}}"
msgstr "@cite{{book}}"

#: tp/Texinfo/Convert/DocBook.pm:895 tp/Texinfo/Convert/HTML.pm:3264
#, perl-brace-format
msgid "See @cite{{book}}"
msgstr "Voir @cite{{book}}"

#: tp/Texinfo/Convert/DocBook.pm:899 tp/Texinfo/Convert/HTML.pm:3241
#, perl-brace-format
msgid "see @cite{{book}}"
msgstr "voir @cite{{book}}"

#: tp/Texinfo/Convert/DocBook.pm:914
#, perl-brace-format
msgid "{title_ref}"
msgstr "{title_ref}"

#: tp/Texinfo/Convert/DocBook.pm:919
#, perl-brace-format
msgid "See {title_ref}"
msgstr "Voir {title_ref}"

#: tp/Texinfo/Convert/DocBook.pm:924
#, perl-brace-format
msgid "see {title_ref}"
msgstr "voir {title_ref}"

#: tp/Texinfo/Convert/DocBook.pm:1061 tp/Texinfo/Convert/Plaintext.pm:2204
#, perl-brace-format
msgid "{abbr_or_acronym} ({explanation})"
msgstr "{abbr_or_acronym} ({explanation})"

#: tp/Texinfo/Convert/DocBook.pm:1222 tp/Texinfo/Convert/Plaintext.pm:2390
#: tp/Texinfo/Convert/HTML.pm:3593
#, perl-brace-format
msgid "@b{{quotation_arg}:} "
msgstr "@b{{quotation_arg}@ :} "

#: tp/Texinfo/Convert/Plaintext.pm:1344
msgid "(outside of any node)"
msgstr "(en dehors de tout n@oe{}ud)"

#: tp/Texinfo/Convert/Plaintext.pm:1961
#, perl-brace-format
msgid "{name} @url{{email}}"
msgstr "{name} @url{{email}}"

#: tp/Texinfo/Convert/Plaintext.pm:1964
#, perl-brace-format
msgid "@url{{email}}"
msgstr "@url{{email}}"

#: tp/Texinfo/Convert/Plaintext.pm:1986
#, perl-brace-format
msgid "{text} ({url})"
msgstr "{text} ({url})"

#: tp/Texinfo/Convert/Plaintext.pm:1991
#, perl-brace-format
msgid "@t{<{url}>}"
msgstr "@t{<{url}>}"

#: tp/Texinfo/Convert/Plaintext.pm:2315 tp/Texinfo/Convert/HTML.pm:1439
#, perl-brace-format
msgid "@{No value for `{value}'@}"
msgstr "@{Aucune valeur pour `{value}'@}"

#: tp/Texinfo/Convert/Plaintext.pm:2839
#, perl-brace-format
msgid "@tie{ }-- {category}: {name} {arguments}"
msgstr "@tie{ }-- {category}@ : {name} {arguments}"

#: tp/Texinfo/Convert/Plaintext.pm:2844
#, perl-brace-format
msgid "@tie{ }-- {category}: {name}"
msgstr "@tie{ }-- {category}@ : {name}"

#: tp/Texinfo/Convert/Plaintext.pm:2857
#, perl-brace-format
msgid "@tie{ }-- {category}:@*{type}@*{name} {arguments}"
msgstr "@tie{ }-- {category}@ :@*{type}@*{name} {arguments}"

#: tp/Texinfo/Convert/Plaintext.pm:2860
#, perl-brace-format
msgid "@tie{ }-- {category}: {type} {name} {arguments}"
msgstr "@tie{ }-- {category}@ : {type} {name} {arguments}"

#: tp/Texinfo/Convert/Plaintext.pm:2869
#, perl-brace-format
msgid "@tie{ }-- {category}:@*{type}@*{name}"
msgstr "@tie{ }-- {category}@ :@*{type}@*{name}"

#: tp/Texinfo/Convert/Plaintext.pm:2872
#, perl-brace-format
msgid "@tie{ }-- {category}: {type} {name}"
msgstr "@tie{ }-- {category}@ : {type} {name}"

#: tp/Texinfo/Convert/Plaintext.pm:2880
#, perl-brace-format
msgid "@tie{ }-- {category} of {class}: {name} {arguments}"
msgstr "@tie{ }-- {category} de {class}@ : {name} {arguments}"

#: tp/Texinfo/Convert/Plaintext.pm:2886
#, perl-brace-format
msgid "@tie{ }-- {category} of {class}: {name}"
msgstr "@tie{ }-- {category} de {class}@ : {name}"

#: tp/Texinfo/Convert/Plaintext.pm:2895
#, perl-brace-format
msgid "@tie{ }-- {category} on {class}: {name} {arguments}"
msgstr "@tie{ }-- {category} de {class}@ : {name} {arguments}"

#: tp/Texinfo/Convert/Plaintext.pm:2901
#, perl-brace-format
msgid "@tie{ }-- {category} on {class}: {name}"
msgstr "@tie{ }-- {category} de {class}@ : {name}"

#: tp/Texinfo/Convert/Plaintext.pm:2916
#, perl-brace-format
msgid "@tie{ }-- {category} on {class}:@*{type}@*{name} {arguments}"
msgstr "@tie{ }-- {category} de {class}@ :@*{type}@*{name} {arguments}"

#: tp/Texinfo/Convert/Plaintext.pm:2920
#, perl-brace-format
msgid "@tie{ }-- {category} on {class}: {type} {name} {arguments}"
msgstr "@tie{ }-- {category} de {class}@ : {type} {name} {arguments}"

#: tp/Texinfo/Convert/Plaintext.pm:2931
#, perl-brace-format
msgid "@tie{ }-- {category} on {class}:@*{type}@*{name}"
msgstr "@tie{ }-- {category} de {class}@ :@*{type}@*{name}"

#: tp/Texinfo/Convert/Plaintext.pm:2935
#, perl-brace-format
msgid "@tie{ }-- {category} on {class}: {type} {name}"
msgstr "@tie{ }-- {category} de {class}@ : {type} {name}"

#: tp/Texinfo/Convert/Plaintext.pm:2949
#, perl-brace-format
msgid "@tie{ }-- {category} of {class}:@*{type}@*{name} {arguments}"
msgstr "@tie{ }-- {category} de {class}@ :@*{type}@*{name} {arguments}"

#: tp/Texinfo/Convert/Plaintext.pm:2953
#, perl-brace-format
msgid "@tie{ }-- {category} of {class}: {type} {name} {arguments}"
msgstr "@tie{ }-- {category} de {class}@ : {type} {name} {arguments}"

#: tp/Texinfo/Convert/Plaintext.pm:2964
#, perl-brace-format
msgid "@tie{ }-- {category} of {class}:@*{type}@*{name}"
msgstr "@tie{ }-- {category} de {class}@ :@*{type}@*{name}"

#: tp/Texinfo/Convert/Plaintext.pm:2968
#, perl-brace-format
msgid "@tie{ }-- {category} of {class}: {type} {name}"
msgstr "@tie{ }-- {category} de {class}@ : {type} {name}"

#: tp/Texinfo/Convert/Plaintext.pm:3279 tp/Texinfo/Convert/HTML.pm:2853
#, perl-brace-format
msgid "@center --- @emph{{author}}\n"
msgstr "@center --- @emph{{author}}\n"

#: tp/Texinfo/Convert/HTML.pm:732 tp/Texinfo/Convert/HTML.pm:788
msgid "Top"
msgstr "Racine"

#: tp/Texinfo/Convert/HTML.pm:733 tp/Texinfo/Convert/HTML.pm:789
msgid "Contents"
msgstr "Table des mati@`eres"

#: tp/Texinfo/Convert/HTML.pm:734 tp/Texinfo/Convert/HTML.pm:790
msgid "Overview"
msgstr "Vue d'ensemble"

#: tp/Texinfo/Convert/HTML.pm:735 tp/Texinfo/Convert/HTML.pm:766
#: tp/Texinfo/Convert/HTML.pm:791
msgid "Index"
msgstr "Index"

#: tp/Texinfo/Convert/HTML.pm:737
msgid "current"
msgstr "courante"

#: tp/Texinfo/Convert/HTML.pm:740 tp/Texinfo/Convert/HTML.pm:796
msgid "Prev"
msgstr "Pr@'ec@'edent"

#: tp/Texinfo/Convert/HTML.pm:741
msgid " Up "
msgstr "Plus haut"

#: tp/Texinfo/Convert/HTML.pm:742 tp/Texinfo/Convert/HTML.pm:746
#: tp/Texinfo/Convert/HTML.pm:798
msgid "Next"
msgstr "Suivant"

#: tp/Texinfo/Convert/HTML.pm:744 tp/Texinfo/Convert/HTML.pm:797
msgid "Up"
msgstr "Monter"

#: tp/Texinfo/Convert/HTML.pm:748
msgid "Previous"
msgstr "Pr@'ec@'edent"

#: tp/Texinfo/Convert/HTML.pm:749
msgid "Forward node"
msgstr "Prochain n@oe{}ud"

#: tp/Texinfo/Convert/HTML.pm:750
msgid "Back node"
msgstr "N@oe{}ud en arri@`ere"

#: tp/Texinfo/Convert/HTML.pm:756
msgid "Next file"
msgstr "Fichier suivant"

#: tp/Texinfo/Convert/HTML.pm:757
msgid "Previous file"
msgstr "Fichier pr@'ec@'edent"

#: tp/Texinfo/Convert/HTML.pm:763
msgid "Cover (top) of document"
msgstr "Couverture (top) du document"

#: tp/Texinfo/Convert/HTML.pm:764
msgid "Table of contents"
msgstr "Table des mati@`eres"

#: tp/Texinfo/Convert/HTML.pm:765
msgid "Short table of contents"
msgstr "R@'esum@'e du contenu"

#: tp/Texinfo/Convert/HTML.pm:767
msgid "Current section"
msgstr "Section actuelle"

#: tp/Texinfo/Convert/HTML.pm:768
msgid "Previous section in reading order"
msgstr "Section pr@'ec@'edente dans l'ordre de lecture"

#: tp/Texinfo/Convert/HTML.pm:769
msgid "Beginning of this chapter or previous chapter"
msgstr "D@'ebut de ce chapitre ou chapitre pr@'ec@'edent"

#: tp/Texinfo/Convert/HTML.pm:770
msgid "Previous section on same level"
msgstr "Section pr@'ec@'edente au m@^eme niveau"

#: tp/Texinfo/Convert/HTML.pm:771
msgid "Up section"
msgstr "Section sup@'erieure"

#: tp/Texinfo/Convert/HTML.pm:772
msgid "Next section on same level"
msgstr "Section suivante au m@^eme niveau"

#: tp/Texinfo/Convert/HTML.pm:773
msgid "Up node"
msgstr "N@oe{}ud au dessus"

#: tp/Texinfo/Convert/HTML.pm:774
msgid "Next node"
msgstr "N@oe{}ud suivant"

#: tp/Texinfo/Convert/HTML.pm:775
msgid "Previous node"
msgstr "N@oe{}ud pr@'ec@'edent"

#: tp/Texinfo/Convert/HTML.pm:776
msgid "Next node in node reading order"
msgstr "N@oe{}ud suivante dans l'ordre de lecture"

#: tp/Texinfo/Convert/HTML.pm:777
msgid "Previous node in node reading order"
msgstr "N@oe{}ud pr@'ec@'edent dans l'ordre de lecture"

#: tp/Texinfo/Convert/HTML.pm:778
msgid "Next section in reading order"
msgstr "Section suivante dans l'ordre de lecture"

#: tp/Texinfo/Convert/HTML.pm:779
msgid "Next chapter"
msgstr "Chapitre suivant"

#: tp/Texinfo/Convert/HTML.pm:780
msgid "About (help)"
msgstr "A propos (page d'aide)"

#: tp/Texinfo/Convert/HTML.pm:781
msgid "First section in reading order"
msgstr "Premi@`e section dans l'ordre de lecture"

#: tp/Texinfo/Convert/HTML.pm:782
msgid "Last section in reading order"
msgstr "Derni@`ere section dans l'ordre de lecture"

#: tp/Texinfo/Convert/HTML.pm:783
msgid "Forward section in next file"
msgstr "Section du fichier suivant"

#: tp/Texinfo/Convert/HTML.pm:784
msgid "Back section in previous file"
msgstr "Section du fichier pr@'ec@'edent"

#: tp/Texinfo/Convert/HTML.pm:793
msgid "This"
msgstr "Ici"

#: tp/Texinfo/Convert/HTML.pm:794
msgid "Back"
msgstr "Arri@`ere"

#: tp/Texinfo/Convert/HTML.pm:795
msgid "FastBack"
msgstr "RetourRapide"

#: tp/Texinfo/Convert/HTML.pm:799
msgid "NodeUp"
msgstr "N@oe{}udMonter"

#: tp/Texinfo/Convert/HTML.pm:800
msgid "NodeNext"
msgstr "N@oe{}udSuivant"

#: tp/Texinfo/Convert/HTML.pm:801
msgid "NodePrev"
msgstr "N@oe{}udPr@'ec@'edent"

#: tp/Texinfo/Convert/HTML.pm:802
msgid "NodeForward"
msgstr "ProchainN@oe{}ud"

#: tp/Texinfo/Convert/HTML.pm:803
msgid "NodeBack"
msgstr "N@oe{}udArri@`ere"

#: tp/Texinfo/Convert/HTML.pm:804
msgid "Forward"
msgstr "Avant"

#: tp/Texinfo/Convert/HTML.pm:805
msgid "FastForward"
msgstr "AvanceRapide"

#: tp/Texinfo/Convert/HTML.pm:806
msgid "About"
msgstr "A propos"

#: tp/Texinfo/Convert/HTML.pm:807
msgid "First"
msgstr "Premier"

#: tp/Texinfo/Convert/HTML.pm:808
msgid "Last"
msgstr "Dernier"

#: tp/Texinfo/Convert/HTML.pm:809
msgid "NextFile"
msgstr "FichierSuivant"

#: tp/Texinfo/Convert/HTML.pm:810
msgid "PrevFile"
msgstr "FichierPr@'ec@'edent"

#: tp/Texinfo/Convert/HTML.pm:814
msgid "About This Document"
msgstr "A propos de ce document"

#: tp/Texinfo/Convert/HTML.pm:815
msgid "Table of Contents"
msgstr "Table des mati@`eres"

#: tp/Texinfo/Convert/HTML.pm:816
msgid "Short Table of Contents"
msgstr "R@'esum@'e du contenu"

#: tp/Texinfo/Convert/HTML.pm:817
msgid "Footnotes"
msgstr "Notes de bas de page"

#: tp/Texinfo/Convert/HTML.pm:1505
#, perl-brace-format
msgid "{explained_string} ({explanation})"
msgstr "{explained_string} ({explanation})"

#: tp/Texinfo/Convert/HTML.pm:3152
#, perl-brace-format
msgid "see section {reference_name}"
msgstr "voir la section {reference_name}"

#: tp/Texinfo/Convert/HTML.pm:3155
#, perl-brace-format
msgid "see {reference_name}"
msgstr "voir {reference_name}"

#: tp/Texinfo/Convert/HTML.pm:3160
#, perl-brace-format
msgid "See section {reference_name}"
msgstr "Voir la section {reference_name}"

#: tp/Texinfo/Convert/HTML.pm:3163
#, perl-brace-format
msgid "See {reference_name}"
msgstr "Voir {reference_name}"

#: tp/Texinfo/Convert/HTML.pm:3167
#, perl-brace-format
msgid "{reference_name}"
msgstr "{reference_name}"

#: tp/Texinfo/Convert/HTML.pm:3229
#, perl-brace-format
msgid "see {reference} in @cite{{book}}"
msgstr "voir {reference} dans @cite{{book}}"

#: tp/Texinfo/Convert/HTML.pm:3233
#, perl-brace-format
msgid "see @cite{{book_reference}}"
msgstr "voir @cite{{book_reference}}"

#: tp/Texinfo/Convert/HTML.pm:3237
#, perl-brace-format
msgid "see `{section}' in @cite{{book}}"
msgstr "voir `{section}' dans @cite{{book}}"

#: tp/Texinfo/Convert/HTML.pm:3244
#, perl-brace-format
msgid "see {reference}"
msgstr "voir {reference}"

#: tp/Texinfo/Convert/HTML.pm:3247
#, perl-brace-format
msgid "see `{section}'"
msgstr "voir `{section}'"

#: tp/Texinfo/Convert/HTML.pm:3252
#, perl-brace-format
msgid "See {reference} in @cite{{book}}"
msgstr "Voir {reference} dans @cite{{book}}"

#: tp/Texinfo/Convert/HTML.pm:3256
#, perl-brace-format
msgid "See @cite{{book_reference}}"
msgstr "Voir @cite{{book_reference}}"

#: tp/Texinfo/Convert/HTML.pm:3260
#, perl-brace-format
msgid "See `{section}' in @cite{{book}}"
msgstr "Voir `{section}' dans @cite{{book}}"

#: tp/Texinfo/Convert/HTML.pm:3267
#, perl-brace-format
msgid "See {reference}"
msgstr "Voir {reference}"

#: tp/Texinfo/Convert/HTML.pm:3270
#, perl-brace-format
msgid "See `{section}'"
msgstr "Voir `{section}'"

#: tp/Texinfo/Convert/HTML.pm:3275
#, perl-brace-format
msgid "{reference} in @cite{{book}}"
msgstr "{reference} dans @cite{{book}}"

#: tp/Texinfo/Convert/HTML.pm:3279
#, perl-brace-format
msgid "@cite{{book_reference}}"
msgstr "@cite{{book_reference}}"

#: tp/Texinfo/Convert/HTML.pm:3283
#, perl-brace-format
msgid "`{section}' in @cite{{book}}"
msgstr "`{section}' dans @cite{{book}}"

#: tp/Texinfo/Convert/HTML.pm:3290
#, perl-brace-format
msgid "{reference}"
msgstr "{reference}"

#: tp/Texinfo/Convert/HTML.pm:3293
#, perl-brace-format
msgid "`{section}'"
msgstr "`{section}'"

#: tp/Texinfo/Convert/HTML.pm:3406
msgid "Jump to"
msgstr "Aller @`a"

#: tp/Texinfo/Convert/HTML.pm:3414
msgid "Index Entry"
msgstr "Entr@'ee d'index"

#: tp/Texinfo/Convert/HTML.pm:3416
msgid "Section"
msgstr "Section"

#: tp/Texinfo/Convert/HTML.pm:4035
#, perl-brace-format
msgid "{category}: @strong{{name}} @emph{{arguments}}"
msgstr "{category}@ : @strong{{name}} @emph{{arguments}}"

#: tp/Texinfo/Convert/HTML.pm:4040
#, perl-brace-format
msgid "{category}: @strong{{name}}"
msgstr "{category}@ : @strong{{name}}"

#: tp/Texinfo/Convert/HTML.pm:4057
#, perl-brace-format
msgid "{category}:@* @emph{{type}}@* @strong{{name}} @emph{{arguments}}"
msgstr "{category}@ :@* @emph{{type}}@* @strong{{name}} @emph{{arguments}}"

#: tp/Texinfo/Convert/HTML.pm:4061
#, perl-brace-format
msgid "{category}: @emph{{type}} @strong{{name}} @emph{{arguments}}"
msgstr "{category}@ : @emph{{type}} @strong{{name}} @emph{{arguments}}"

#: tp/Texinfo/Convert/HTML.pm:4070
#, perl-brace-format
msgid "{category}:@* @emph{{type}}@* @strong{{name}}"
msgstr "{category}@ :@* @emph{{type}}@* @strong{{name}}"

#: tp/Texinfo/Convert/HTML.pm:4073
#, perl-brace-format
msgid "{category}: @emph{{type}} @strong{{name}}"
msgstr "{category}@ : @emph{{type}} @strong{{name}}"

#: tp/Texinfo/Convert/HTML.pm:4081
#, perl-brace-format
msgid "{category} of {class}: @strong{{name}} @emph{{arguments}}"
msgstr "{category} de {class}@ : @strong{{name}} @emph{{arguments}}"

#: tp/Texinfo/Convert/HTML.pm:4087
#, perl-brace-format
msgid "{category} of {class}: @strong{{name}}"
msgstr "{category} de {class}@ : @strong{{name}}"

#: tp/Texinfo/Convert/HTML.pm:4096
#, perl-brace-format
msgid "{category} on {class}: @strong{{name}} @emph{{arguments}}"
msgstr "{category} de {class}@ : @strong{{name}} @emph{{arguments}}"

#: tp/Texinfo/Convert/HTML.pm:4102
#, perl-brace-format
msgid "{category} on {class}: @strong{{name}}"
msgstr "{category} de {class}@ : @strong{{name}}"

#: tp/Texinfo/Convert/HTML.pm:4117
#, perl-brace-format
msgid ""
"{category} on {class}:@* @emph{{type}}@* @strong{{name}} @emph{{arguments}}"
msgstr ""
"{category} de {class}@ :@* @emph{{type}}@* @strong{{name}} @emph{{arguments}}"

#: tp/Texinfo/Convert/HTML.pm:4121
#, perl-brace-format
msgid "{category} on {class}: @emph{{type}} @strong{{name}} @emph{{arguments}}"
msgstr ""
"{category} de {class}@ : @emph{{type}} @strong{{name}} @emph{{arguments}}"

#: tp/Texinfo/Convert/HTML.pm:4132
#, perl-brace-format
msgid "{category} on {class}:@* @emph{{type}}@* @strong{{name}}"
msgstr "{category} de {class}@ :@* @emph{{type}}@* @strong{{name}}"

#: tp/Texinfo/Convert/HTML.pm:4136
#, perl-brace-format
msgid "{category} on {class}: @emph{{type}} @strong{{name}}"
msgstr "{category} de {class}@ : @emph{{type}} @strong{{name}}"

#: tp/Texinfo/Convert/HTML.pm:4150
#, perl-brace-format
msgid ""
"{category} of {class}:@* @emph{{type}}@* @strong{{name}} @emph{{arguments}}"
msgstr ""
"{category} de {class}@ :@* @emph{{type}}@* @strong{{name}} @emph{{arguments}}"

#: tp/Texinfo/Convert/HTML.pm:4154
#, perl-brace-format
msgid "{category} of {class}: @emph{{type}} @strong{{name}} @emph{{arguments}}"
msgstr ""
"{category} de {class}@ : @emph{{type}} @strong{{name}} @emph{{arguments}}"

#: tp/Texinfo/Convert/HTML.pm:4165
#, perl-brace-format
msgid "{category} of {class}:@* @emph{{type}}@* @strong{{name}}"
msgstr "{category} de {class}@ :@* @emph{{type}}@* @strong{{name}}"

#: tp/Texinfo/Convert/HTML.pm:4169
#, perl-brace-format
msgid "{category} of {class}: @emph{{type}} @strong{{name}}"
msgstr "{category} de {class}@ : @emph{{type}} @strong{{name}}"

#: tp/Texinfo/Convert/HTML.pm:6096
#, perl-brace-format
msgid ""
"This document was generated on @emph{@today{}} using "
"@uref{{program_homepage}, @emph{{program}}}."
msgstr ""
"Ce document a @'et@'e g@'en@'er@'e @emph{@today{}} en utilisant "
"@uref{{program_homepage}, @emph{{program}}}"

#: tp/Texinfo/Convert/HTML.pm:6101
msgid "This document was generated on @emph{@today{}}."
msgstr "Ce document a @'et@'e g@'en@'er@'e le @emph{@today{}}."

#: tp/Texinfo/Convert/HTML.pm:6140
#, perl-brace-format
msgid "{title}: {element_text}"
msgstr "{title}@ : {element_text}"

#: tp/Texinfo/Convert/HTML.pm:6284
#, perl-brace-format
msgid "The node you are looking for is at {href}."
msgstr "Le n@oe{}ud que vous recherchez est ici@ : {href}."

#: tp/Texinfo/Convert/HTML.pm:6353
msgid "  The buttons in the navigation panels have the following meaning:"
msgstr ""
"  Les boutons du panneau de navigation ont la signification suivante@ :"

#: tp/Texinfo/Convert/HTML.pm:6359
msgid "Button"
msgstr "Bouton"

#: tp/Texinfo/Convert/HTML.pm:6360
msgid "Name"
msgstr "Nom"

#: tp/Texinfo/Convert/HTML.pm:6361
msgid "Go to"
msgstr "Aller @`a"

#: tp/Texinfo/Convert/HTML.pm:6362
msgid "From 1.2.3 go to"
msgstr "Depuis 1.2.3 aller @`a"

#: tp/Texinfo/Convert/HTML.pm:6388
msgid ""
"  where the @strong{ Example } assumes that the current position is at "
"@strong{ Subsubsection One-Two-Three } of a document of the following "
"structure:"
msgstr ""
"  Dans cet exemple on est @`a @strong{ Sous-sous-section un-deux-trois } "
"dans un document dont la structure est@ :"

#: tp/Texinfo/Convert/HTML.pm:6398
msgid "Section One"
msgstr "Section un"

#: tp/Texinfo/Convert/HTML.pm:6400
msgid "Subsection One-One"
msgstr "Sous-section un-un"

#: tp/Texinfo/Convert/HTML.pm:6407
msgid "Subsection One-Two"
msgstr "Sous-section un-deux"

#: tp/Texinfo/Convert/HTML.pm:6409
msgid "Subsubsection One-Two-One"
msgstr "Sous-sous-section un-deux-un"

#: tp/Texinfo/Convert/HTML.pm:6410
msgid "Subsubsection One-Two-Two"
msgstr "Sous-sous-section un-deux-deux"

#: tp/Texinfo/Convert/HTML.pm:6411
msgid "Subsubsection One-Two-Three"
msgstr "Sous-sous-section un-deux-trois"

#: tp/Texinfo/Convert/HTML.pm:6413
msgid "Current Position"
msgstr "Position actuelle"

#: tp/Texinfo/Convert/HTML.pm:6414
msgid "Subsubsection One-Two-Four"
msgstr "Sous-sous-section un-deux-quatre"

#: tp/Texinfo/Convert/HTML.pm:6417
msgid "Subsection One-Three"
msgstr "Sous-section un-trois"

#: tp/Texinfo/Convert/HTML.pm:6424
msgid "Subsection One-Four"
msgstr "Sous-section un-quatre"

#: tp/Texinfo/Convert/HTML.pm:6828
msgid "Untitled Document"
msgstr "Document sans titre"

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

* bug#21574: po-mode mishandles ASCII files
  2015-09-27 20:01 bug#21574: po-mode mishandles ASCII files Paul Eggert
@ 2015-09-27 23:55 ` Glenn Morris
  2015-09-27 23:56   ` Glenn Morris
  2015-09-28 10:18 ` Eli Zaretskii
  1 sibling, 1 reply; 8+ messages in thread
From: Glenn Morris @ 2015-09-27 23:55 UTC (permalink / raw)
  To: Paul Eggert; +Cc: 21574

Paul Eggert wrote:

> Emacs's po-mode 

Not part of Emacs?






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

* bug#21574: po-mode mishandles ASCII files
  2015-09-27 23:55 ` Glenn Morris
@ 2015-09-27 23:56   ` Glenn Morris
  2015-09-27 23:58     ` Glenn Morris
  0 siblings, 1 reply; 8+ messages in thread
From: Glenn Morris @ 2015-09-27 23:56 UTC (permalink / raw)
  To: Paul Eggert; +Cc: 21574

Glenn Morris wrote:

>> Emacs's po-mode 
>
> Not part of Emacs?

Blah, ignore me.





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

* bug#21574: po-mode mishandles ASCII files
  2015-09-27 23:56   ` Glenn Morris
@ 2015-09-27 23:58     ` Glenn Morris
  2015-09-28  2:20       ` Paul Eggert
  0 siblings, 1 reply; 8+ messages in thread
From: Glenn Morris @ 2015-09-27 23:58 UTC (permalink / raw)
  To: Paul Eggert; +Cc: 21574

Glenn Morris wrote:

>>> Emacs's po-mode 
>>
>> Not part of Emacs?
>
> Blah, ignore me.

Or not.
Are you talking about po.el or po-mode.el?
.po files open in fundamental-mode for me.





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

* bug#21574: po-mode mishandles ASCII files
  2015-09-27 23:58     ` Glenn Morris
@ 2015-09-28  2:20       ` Paul Eggert
  2015-09-28  6:43         ` Eli Zaretskii
  0 siblings, 1 reply; 8+ messages in thread
From: Paul Eggert @ 2015-09-28  2:20 UTC (permalink / raw)
  To: Glenn Morris; +Cc: 21574

Glenn Morris wrote:
> Or not.
> Are you talking about po.el or po-mode.el?
> .po files open in fundamental-mode for me.

Sorry, I meant whatever happens when you visit a .po file without doing anything 
special.  I thought Emacs dumped you into po-mode, but now I see that it's 
fundamental mode.  I'll retitle the bug report accordingly.





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

* bug#21574: po-mode mishandles ASCII files
  2015-09-28  2:20       ` Paul Eggert
@ 2015-09-28  6:43         ` Eli Zaretskii
  0 siblings, 0 replies; 8+ messages in thread
From: Eli Zaretskii @ 2015-09-28  6:43 UTC (permalink / raw)
  To: Paul Eggert; +Cc: 21574

> From: Paul Eggert <eggert@cs.ucla.edu>
> Date: Sun, 27 Sep 2015 19:20:35 -0700
> Cc: 21574@debbugs.gnu.org
> 
> Glenn Morris wrote:
> > Or not.
> > Are you talking about po.el or po-mode.el?
> > .po files open in fundamental-mode for me.
> 
> Sorry, I meant whatever happens when you visit a .po file without doing anything 
> special.  I thought Emacs dumped you into po-mode

In the old discussion I mentioned yesterday, we decided that the full
po-mode was too large and not really necessary to include in core, so
we only included the part that helps decoding the file's contents
correctly.

Perhaps we should revisit that old decision and include the full
po-mode now.





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

* bug#21574: po-mode mishandles ASCII files
  2015-09-27 20:01 bug#21574: po-mode mishandles ASCII files Paul Eggert
  2015-09-27 23:55 ` Glenn Morris
@ 2015-09-28 10:18 ` Eli Zaretskii
  2015-09-28 14:55   ` Paul Eggert
  1 sibling, 1 reply; 8+ messages in thread
From: Eli Zaretskii @ 2015-09-28 10:18 UTC (permalink / raw)
  To: Paul Eggert; +Cc: 21574

> From: Paul Eggert <eggert@cs.ucla.edu>
> Date: Sun, 27 Sep 2015 13:01:22 -0700
> 
> Emacs's po-mode mishandles .po files that specify charset=us-ascii.  To 
> reproduce the problem on Fedora, run 'LC_ALL=cs_CZ.iso88592 emacs -Q fr.po' with 
> fr.po being the attached file (taken from Texinfo 6.0), and type '# C-x 8 RET 
> 161 RET RET C-x C-s'.  The file will be saved with the line '#š' prepended, in 
> Latin-2 encoding, even though the file declares its encoding to be 
> charset=us-ascii.

I think what you see is a side effect of a feature: when a character
is added that can be safely encoded by the default value of
buffer-file-coding-system, Emacs silently saves the file in that
encoding.  This feature was added in response to user requests not to
bother them with annoying requests to select an encoding when all they
did was add some non-ASCII text native to their locale to a file that
was previously ASCII-only.

What we need in this particular case, I think, is some code in po.el
that would function similarly to what we already do when the file has
a coding cookie, and the user adds characters that cannot be saved
with the encoding stated by the cookie.

Btw, do we have a similar problem in other files that have entries in
file-coding-system-alist, like XML files or LaTeX files?





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

* bug#21574: po-mode mishandles ASCII files
  2015-09-28 10:18 ` Eli Zaretskii
@ 2015-09-28 14:55   ` Paul Eggert
  0 siblings, 0 replies; 8+ messages in thread
From: Paul Eggert @ 2015-09-28 14:55 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 21574

On 09/28/2015 03:18 AM, Eli Zaretskii wrote:
> do we have a similar problem in other files that have entries in
> file-coding-system-alist, like XML files or LaTeX files?

Not with XML, because xml-find-file-coding-system only tries 
detect-coding-region.

But there is a problem with LaTeX.  For example, if I visit a file like 
this:

   \usepackage[ascii]{inputenc}
   hello

The default coding system for saving the buffer is us-ascii-unix, which 
is correct (and is better than what we get with .po files). But if I 
then insert a non-ASCII character, say á, and type C-x C-s, Emacs 
changes the coding system to utf-8-unix without asking and saves the 
file.  If I then revisit the file I get garbage: the á is decoded as two 
bytes and I see \303\241 on the screen.





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

end of thread, other threads:[~2015-09-28 14:55 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-27 20:01 bug#21574: po-mode mishandles ASCII files Paul Eggert
2015-09-27 23:55 ` Glenn Morris
2015-09-27 23:56   ` Glenn Morris
2015-09-27 23:58     ` Glenn Morris
2015-09-28  2:20       ` Paul Eggert
2015-09-28  6:43         ` Eli Zaretskii
2015-09-28 10:18 ` Eli Zaretskii
2015-09-28 14:55   ` Paul Eggert

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.