On Tue, Oct 16, 2001 at 11:36:18AM +0200, Jean-Marc Lasgouttes wrote: > > Hello, > > I think that a 1.1.6fix4 release _might_ be useful, especially since I > backported the selection bugfix from 1.2.0 (could somebody confirm > that it works?). Are there some other things that should go in > 1.1.6fix4? Note that I am not implying that this fix version will > actually exist. Let's see what we have to put in there first. >
Hello, I have backported the patches to handle latin3, 4 and 9 to the 1.1.6 branch. I'm sending the patch. It should not disturb much. Adrien
Index: lib/kbd/iso8859-1.cdef =================================================================== RCS file: /cvs/lyx/lyx-devel/lib/kbd/iso8859-1.cdef,v retrieving revision 1.5 diff -u -r1.5 iso8859-1.cdef --- lib/kbd/iso8859-1.cdef 2000/02/17 19:58:57 1.5 +++ lib/kbd/iso8859-1.cdef 2001/10/22 15:59:37 @@ -6,44 +6,44 @@ # Any takers to complete the stuff? # -160 "\nobreakspace" -161 "\textexclamdown" -#162 "\textcent" +160 "\nobreakspace{}" +161 "\textexclamdown{}" +162 "\textcent{}" # with package "eurofont" 163 "\pounds{}" # pound sign -#164 "\textcurrency" -#165 "\textyen" -#166 "\textbrokenbar" +164 "\textcurrency{}" # with package "eurofont" +165 "\textyen{}" # with package "eurofont" +166 "\textbrokenbar{}" # with package "eurofont" 167 "\S{}" # paragraph 168 "\"{}" # umlaut 169 "\copyright{}" -170 "\textordfeminine" +170 "\textordfeminine{}" 171 "\guillemotleft{}" 172 "$\lnot$" 173 "\-{}" -174 "\textregistered" +174 "\textregistered{}" 175 "\={}" -176 "\textdegree" # circle +176 "\textdegree{}" # circle 177 "$\pm$" -178 "$\mathtwosuperios$" +178 "$\mathtwosuperior$" 179 "$\maththreesuperior$" 180 "\'{}" # acute 181 "$\mu$" # micro 182 "\P{}" -183 "$\cdot$" +183 "$\cdot$" # or \textperiodcentered 184 "\c{}" # cedilla 185 "$\mathonesuperior$" -186 "\textordmasculine" +186 "\textordmasculine{}" 187 "\guillemotright{}" -188 "\textonequarter" -189 "\textonehalf" -190 "\textthreequarters" # "0BE -191 "\textquestiondown" # mirrored ? +188 "\textonequarter{}" +189 "\textonehalf{}" +190 "\textthreequarters{}" # "0BE +191 "\textquestiondown{}" # mirrored ? 192 "\`{A}" 193 "\'{A}" 194 "\^{A}" 195 "\~{A}" 196 "\"{A}" -197 "\AA{}" # A with circle +197 "\r{A}" # A with circle 198 "\AE{}" # AE cat'ed together 199 "\c{C}" # C cedilla 200 "\`{E}" @@ -75,7 +75,7 @@ 226 "\^{a}" 227 "\~{a}" 228 "\"{a}" -229 "\aa{}" # a with circle +229 "\r{a}" # a with circle 230 "\ae{}" 231 "\c{c}" # c cedilla 232 "\`{e}" Index: src/lyxrc.C =================================================================== RCS file: /cvs/lyx/lyx-devel/src/lyxrc.C,v retrieving revision 1.78.2.3 diff -u -r1.78.2.3 lyxrc.C --- src/lyxrc.C 2001/05/14 16:44:10 1.78.2.3 +++ src/lyxrc.C 2001/10/22 15:59:41 @@ -1626,10 +1626,16 @@ font_norm_type = ISO_10646_1; else if (font_norm == "iso8859-1") font_norm_type = ISO_8859_1; + else if (font_norm == "iso8859-3") + font_norm_type = ISO_8859_3; + else if (font_norm == "iso8859-4") + font_norm_type = ISO_8859_4; else if (font_norm == "iso8859-6.8x") font_norm_type = ISO_8859_6_8; else if (font_norm == "iso8859-9") font_norm_type = ISO_8859_9; + else if (font_norm == "iso8859-15") + font_norm_type = ISO_8859_15; else font_norm_type = OTHER_ENCODING; } Index: src/lyxrc.h =================================================================== RCS file: /cvs/lyx/lyx-devel/src/lyxrc.h,v retrieving revision 1.43.2.1 diff -u -r1.43.2.1 lyxrc.h --- src/lyxrc.h 2001/05/14 16:44:10 1.43.2.1 +++ src/lyxrc.h 2001/10/22 15:59:42 @@ -249,9 +249,15 @@ /// ISO_8859_1, /// + ISO_8859_3, + /// + ISO_8859_4, + /// ISO_8859_6_8, /// ISO_8859_9, + /// + ISO_8859_15, /// OTHER_ENCODING }; Index: src/paragraph.C =================================================================== RCS file: /cvs/lyx/lyx-devel/src/paragraph.C,v retrieving revision 1.118.2.7 diff -u -r1.118.2.7 paragraph.C --- src/paragraph.C 2001/09/30 22:46:56 1.118.2.7 +++ src/paragraph.C 2001/10/22 15:59:48 @@ -2950,10 +2950,13 @@ case '°': case '±': case '²': case '³': case '×': case '÷': case '¹': case 'ª': case 'º': case '¬': case 'µ': - if (bparams.inputenc == "latin1" || + if ((bparams.inputenc == "latin1" || + bparams.inputenc == "latin9") || (bparams.inputenc == "auto" && - font.language()->encoding()->LatexName() - == "latin1")) { + (font.language()->encoding()->LatexName() + == "latin1" || + font.language()->encoding()->LatexName() + == "latin9"))) { os << "\\ensuremath{" << c << '}'; Index: src/frontends/xforms/FormDocument.C =================================================================== RCS file: /cvs/lyx/lyx-devel/src/frontends/xforms/FormDocument.C,v retrieving revision 1.35 diff -u -r1.35 FormDocument.C --- src/frontends/xforms/FormDocument.C 2001/01/09 20:17:06 1.35 +++ src/frontends/xforms/FormDocument.C 2001/10/22 15:59:51 @@ -210,8 +210,8 @@ // the document language form language_ = build_doc_language(); fl_addto_choice(language_->choice_inputenc, - "default|auto|latin1|latin2|latin5" - "|koi8-r|koi8-u|cp866|cp1251|iso88595"); + "default|auto|latin1|latin2|latin3|latin4|latin5" + "|latin9|koi8-r|koi8-u|cp866|cp1251|iso88595"); // The language is a combo-box and has to be inserted manually obj = language_->choice_language; Index: src/insets/insetquotes.C =================================================================== RCS file: /cvs/lyx/lyx-devel/src/insets/insetquotes.C,v retrieving revision 1.40.2.3 diff -u -r1.40.2.3 insetquotes.C --- src/insets/insetquotes.C 2001/09/12 16:43:36 1.40.2.3 +++ src/insets/insetquotes.C 2001/10/22 15:59:52 @@ -139,19 +139,39 @@ } -string const InsetQuotes::DispString() const +string const InsetQuotes::DispString(Language const * loclang) const { string disp; disp += quote_char[quote_index[side][language]]; if (times == InsetQuotes::DoubleQ) disp += disp; - if (lyxrc.font_norm_type == LyXRC::ISO_8859_1) + if (lyxrc.font_norm_type == LyXRC::ISO_8859_1 + || lyxrc.font_norm_type == LyXRC::ISO_8859_3 + || lyxrc.font_norm_type == LyXRC::ISO_8859_4 + || lyxrc.font_norm_type == LyXRC::ISO_8859_9) { + if (disp == "'") + disp = "´"; + else if (disp == "''") + disp = "´´"; + } + if (lyxrc.font_norm_type == LyXRC::ISO_8859_1 + || lyxrc.font_norm_type == LyXRC::ISO_8859_9 + || lyxrc.font_norm_type == LyXRC::ISO_8859_15) { if (disp == "<<") disp = '«'; else if (disp == ">>") disp = '»'; - + } + + // in french, spaces are added inside double quotes + if (times == InsetQuotes::DoubleQ && prefixIs(loclang->code(), "fr")) { + if (side == InsetQuotes::LeftQ) + disp += " "; + else + disp = " " + disp; + } + return disp; } @@ -170,7 +190,7 @@ int InsetQuotes::width(BufferView *, LyXFont const & font) const { - string text = DispString(); + string text = DispString(font.language()); int w = 0; for (string::size_type i = 0; i < text.length(); ++i) { @@ -198,7 +218,7 @@ void InsetQuotes::draw(BufferView * bv, LyXFont const & font, int baseline, float & x, bool) const { - string text = DispString(); + string text = DispString(font.language()); bv->painter().text(int(x), baseline, text, font); x += width(bv, font); Index: src/insets/insetquotes.h =================================================================== RCS file: /cvs/lyx/lyx-devel/src/insets/insetquotes.h,v retrieving revision 1.29 diff -u -r1.29 insetquotes.h --- src/insets/insetquotes.h 2000/10/10 11:50:42 1.29 +++ src/insets/insetquotes.h 2001/10/22 15:59:52 @@ -115,7 +115,7 @@ /// void ParseString(string const &); /// - string const DispString() const; + string const DispString(Language const *) const; }; #endif
# Character definition file for iso8859-3 character set # # File modified (c)2001 by Adrien Rebollo from : # # Character definition file for iso8859-1 character set # # (c)1996 by Ivan Schreter, [EMAIL PROTECTED] # # Any takers to complete the stuff? # 160 "\nobreakspace{}" #161 "\textexclamdown{}" 161 "\textmalteseH{}" #162 "\textcent{}" # with package "eurofont" 162 "\u{}" 163 "\pounds{}" # pound sign 164 "\textcurrency{}" # with package "eurofont" #165 "\textyen{}" # with package "eurofont" #166 "\textbrokenbar{}" # with package "eurofont" 166 "\^{H}" 167 "\S{}" # paragraph 168 "\"{}" # umlaut #169 "\copyright{}" 169 "\.{I}" #170 "\textordfeminine{}" 170 "\c{S}" #171 "\guillemotleft{}" 171 "\u{G}" #172 "$\lnot$" 172 "\^{J}" 173 "\-{}" #174 "\textregistered{}" #175 "\={}" 175 "\.{Z}" 176 "\textdegree{}" # circle #177 "$\pm$" 177 "\textmalteseh{}" 178 "$\mathtwosuperior$" 179 "$\maththreesuperior$" 180 "\'{}" # acute 181 "$\mu$" # micro #182 "\P{}" 182 "\^{h}" 183 "$\cdot$" # or \textperiodcentered 184 "\c{}" # cedilla #185 "$\mathonesuperior$" 185 "\i{}" #186 "\textordmasculine{}" 186 "\c{s}" #187 "\guillemotright{}" 187 "\u{g}" #188 "\textonequarter{}" 188 "\^{j}" 189 "\textonehalf{}" #190 "\textthreequarters{}" # "0BE #191 "\textquestiondown{}" # mirrored ? 191 "\.{z}" 192 "\`{A}" 193 "\'{A}" 194 "\^{A}" #195 "\~{A}" 196 "\"{A}" #197 "\r{A}" # A with circle 197 "\.{C}" # A with circle #198 "\AE{}" # AE cat'ed together 198 "\^{C}" # AE cat'ed together 199 "\c{C}" # C cedilla 200 "\`{E}" 201 "\'{E}" 202 "\^{E}" 203 "\"{E}" 204 "\`{I}" 205 "\'{I}" 206 "\^{I}" 207 "\"{I}" #208 "\DH{}" 209 "\~{N}" 210 "\`{O}" 211 "\'{O}" 212 "\^{O}" #213 "\~{O}" 213 "\.{G}" 214 "\"{O}" 215 "$\times$" #216 "\O{}" 216 "\^{G}" 217 "\`{U}" 218 "\'{U}" 219 "\^{U}" 220 "\"{U}" #221 "\'{Y}" 221 "\u{U}" #222 "\TH{}" 222 "\^{S}" 223 "\ss{}" # German sharp S 224 "\`{a}" 225 "\'{a}" 226 "\^{a}" #227 "\~{a}" 228 "\"{a}" #229 "\r{a}" # a with circle 229 "\.{c}" #230 "\ae{}" 230 "\^{c}" 231 "\c{c}" # c cedilla 232 "\`{e}" 233 "\'{e}" 234 "\^{e}" 235 "\"{e}" 236 "\`{\i}" 237 "\'{\i}" 238 "\^{\i}" 239 "\"{\i}" #240 "\dh{}" 241 "\~{n}" 242 "\`{o}" 243 "\'{o}" 244 "\^{o}" #245 "\~{o}" 245 "\.{g}" 246 "\"{o}" 247 "$\div$" #248 "\o{}" 248 "\^{g}" 249 "\`{u}" 250 "\'{u}" 251 "\^{u}" 252 "\"{u}" #253 "\'{y}" 253 "\u{u}" #254 "\th{}" 254 "\^{s}" #255 "\"{y}" 255 "\.{}"
# Character definition file for iso8859-4 character set # # File modified (c)2001 by Adrien Rebollo from : # # Character definition file for iso8859-1 character set # # (c)1996 by Ivan Schreter, [EMAIL PROTECTED] # # Any takers to complete the stuff? # 160 "\nobreakspace{}" #161 "\textexclamdown{}" 161 "\k{A}" #162 "\textcent{}" # with package "eurofont" 162 "\textkra{}" #163 "\pounds{}" # pound sign 163 "\c{R}" 164 "\textcurrency{}" # with package "eurofont" #165 "\textyen{}" # with package "eurofont" 165 "\~{I}" #166 "\textbrokenbar{}" # with package "eurofont" 166 "\c{L}" 167 "\S{}" # paragraph 168 "\"{}" # umlaut #169 "\copyright{}" 169 "\v{S}" #170 "\textordfeminine{}" 170 "\={E}" #171 "\guillemotleft{}" 171 "\c{G}" #172 "$\lnot$" 172 "\textTstroke" 173 "\-{}" #174 "\textregistered{}" 174 "\v{Z}" 175 "\={}" 176 "\textdegree{}" # circle #177 "$\pm$" 177 "\k{a}" #178 "$\mathtwosuperior$" 178 "\k{}" #179 "$\maththreesuperior$" 179 "\c{r}" 180 "\'{}" # acute #181 "$\mu$" 181 "\~{i}" #182 "\P{}" 182 "\c{l}" #183 "$\cdot$" 183 "\v{}" 184 "\c{}" # cedilla #185 "$\mathonesuperior$" 185 "\v{s}" #186 "\textordmasculine{}" 186 "\={e}" #187 "\guillemotright{}" 187 "\c{g}" #188 "\textonequarter{}" 188 "\texttstroke{}" #189 "\textonehalf{}" 189 "\NG{}" #190 "\textthreequarters{}" 190 "\v{z}" #191 "\textquestiondown{}" 191 "\ng{}" #192 "\`{A}" 192 "\={A}" 193 "\'{A}" 194 "\^{A}" 195 "\~{A}" 196 "\"{A}" 197 "\r{A}" # A with circle 198 "\AE{}" # AE cat'ed together #199 "\c{C}" 199 "\k{I}" #200 "\`{E}" 200 "\v{C}" 201 "\'{E}" #202 "\^{E}" 202 "\k{E}" 203 "\"{E}" #204 "\`{I}" 204 "\.{E}" 205 "\'{I}" 206 "\^{I}" #207 "\"{I}" 207 "\={I}" #208 "\DH{}" 208 "\DJ{}" #209 "\~{N}" 209 "\c{N}" #210 "\`{O}" 210 "\={O}" #211 "\'{O}" 211 "\c{K}" 212 "\^{O}" 213 "\~{O}" 214 "\"{O}" 215 "$\times$" 216 "\O{}" #217 "\`{U}" 217 "\k{U}" 218 "\'{U}" 219 "\^{U}" 220 "\"{U}" #221 "\'{Y}" 221 "\~{U}" #222 "\TH{}" 222 "\={U}" 223 "\ss{}" # German sharp S #224 "\`{a}" 224 "\={a}" 225 "\'{a}" 226 "\^{a}" 227 "\~{a}" 228 "\"{a}" 229 "\r{a}" # a with circle 230 "\ae{}" #231 "\c{c}" 231 "\k{i}" #232 "\`{e}" 232 "\v{c}" 233 "\'{e}" #234 "\^{e}" 234 "\k{e}" 235 "\"{e}" #236 "\`{\i}" 236 "\.{\e}" 237 "\'{\i}" 238 "\^{\i}" #239 "\"{\i}" 239 "\={\i}" #240 "\dh{}" 240 "\dj{}" #241 "\~{n}" 241 "\c{n}" #242 "\`{o}" 242 "\={o}" #243 "\'{o}" 243 "\c{k}" 244 "\^{o}" 245 "\~{o}" 246 "\"{o}" 247 "$\div$" 248 "\o{}" #249 "\`{u}" 249 "\k{u}" 250 "\'{u}" 251 "\^{u}" 252 "\"{u}" #253 "\'{y}" 253 "\~{u}" #254 "\th{}" 254 "\={u}" #255 "\"{y}" 255 "\.{}"
# # Character definition file for iso8859-15 character set # Modified (c)2001 by Adrien Rebollo, [EMAIL PROTECTED] # From : # # "Character definition file for iso8859-1 character set" # # (c)1996 by Ivan Schreter, [EMAIL PROTECTED] # # Any takers to complete the stuff? # 160 "\nobreakspace{}" 161 "\textexclamdown{}" 162 "\textcent{}" # with package "eurofont" 163 "\pounds{}" # pound sign #164 "\textcurrency{}" # with package "eurofont" 164 "\texteuro{}" # with package "eurofont" 165 "\textyen{}" # with package "eurofont" #166 "\textbrokenbar{}" # with package "eurofont" 166 "\v{S}" 167 "\S{}" # paragraph #168 "\"{}" # umlaut 168 "\v{s}" 169 "\copyright{}" 170 "\textordfeminine{}" 171 "\guillemotleft{}" 172 "$\lnot$" 173 "\-{}" 174 "\textregistered{}" 175 "\={}" 176 "\textdegree{}" # circle 177 "$\pm$" 178 "$\mathtwosuperios$" 179 "$\maththreesuperior$" #180 "\'{}" # acute 180 "\v{Z}" 181 "$\mu$" # micro 182 "\P{}" 183 "$\cdot$" #{[ or \textperiodcentered #184 "\c{}" # cedilla # or "\c\ " 184 "\v{z}" 185 "$\mathonesuperior$" 186 "\textordmasculine{}" 187 "\guillemotright{}" #188 "\textonequarter{}" 188 "\OE{}" #189 "\textonehalf{}" 189 "\oe{}" #190 "\textthreequarters{}" # "0BE 190 "\"{Y}" 191 "\textquestiondown{}" # mirrored ? 192 "\`{A}" 193 "\'{A}" 194 "\^{A}" 195 "\~{A}" 196 "\"{A}" 197 "\AA{}" # A with circle # or "\r{A}" 198 "\AE{}" # AE cat'ed together 199 "\c{C}" # C cedilla 200 "\`{E}" 201 "\'{E}" 202 "\^{E}" 203 "\"{E}" 204 "\`{I}" 205 "\'{I}" 206 "\^{I}" 207 "\"{I}" 208 "\DH{}" 209 "\~{N}" 210 "\`{O}" 211 "\'{O}" 212 "\^{O}" 213 "\~{O}" 214 "\"{O}" 215 "$\times$" 216 "\O{}" 217 "\`{U}" 218 "\'{U}" 219 "\^{U}" 220 "\"{U}" 221 "\'{Y}" 222 "\TH{}" 223 "\ss{}" # German sharp S 224 "\`{a}" 225 "\'{a}" 226 "\^{a}" 227 "\~{a}" 228 "\"{a}" 229 "\aa{}" # a with circle # or "\r{a}" 230 "\ae{}" 231 "\c{c}" # c cedilla 232 "\`{e}" 233 "\'{e}" 234 "\^{e}" 235 "\"{e}" 236 "\`{\i}" 237 "\'{\i}" 238 "\^{\i}" 239 "\"{\i}" 240 "\dh{}" 241 "\~{n}" 242 "\`{o}" 243 "\'{o}" 244 "\^{o}" 245 "\~{o}" 246 "\"{o}" 247 "$\div$" 248 "\o{}" 249 "\`{u}" 250 "\'{u}" 251 "\^{u}" 252 "\"{u}" 253 "\'{y}" 254 "\th{}" 255 "\"{y}"