Package: emacs;
Reported by: cmr.Pent <at> gmail.com
Date: Mon, 9 Nov 2009 19:25:05 UTC
Severity: normal
Found in version 23.4
Done: Juri Linkov <juri <at> jurta.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 4895 in the body.
You can then email your comments to 4895 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
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:bug#4895
; Package emacs
.
(Mon, 09 Nov 2009 19:25:05 GMT) Full text and rfc822 format available.cmr.Pent <at> gmail.com
:Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
(Mon, 09 Nov 2009 19:25:05 GMT) Full text and rfc822 format available.Message #5 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):
From: Andrey Paramonov <pent <at> aparamon.msk.ru> To: bug-gnu-emacs <at> gnu.org Subject: 23.1; Incorrect font selected Date: Mon, 09 Nov 2009 22:19:07 +0300
To reproduce: 0) emacs -Q My .Xresources: emacs*font: DejaVu Sans Mono-11 1) C-x C-f titledefs.dtx (attached) Latin characters are displayed with DejaVu Sans Mono, as expected. Cyrillic characters are not displayed properly. This is Ok yet, because the file is encoded in cp1251. 2) C-x RET r cp1251 RET yes RET Latin characters are displayed with DejaVu Sans Mono, as expected. Cyrillic characters are displayed, but not with DejaVu Sans Mono. Looks like they are displayed with Terminus. 3) C-x RET f utf-8 RET C-x C-w (enter filename) C-x C-f (new filename) All characters are displayed with DejaVu Sans Mono, as expected. On step 2, all characters should be displayed with DejaVu Sans Mono. I'm ready to provide any additional info, Andrey Paramonov In GNU Emacs 23.1.1 (i486-pc-linux-gnu, GTK+ Version 2.16.5) of 2009-09-14 on raven, modified by Debian Windowing system distributor `The X.Org Foundation', version 11.0.10605000 configured using `configure '--build=i486-linux-gnu' '--host=i486-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes' '--enable-locallisppath=/etc/emacs23:/etc/emacs:/usr/local/share/emacs/23.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.1/site-lisp:/usr/share/emacs/site-lisp:/usr/share/emacs/23.1/leim' '--with-x=yes' '--with-x-toolkit=gtk' '--with-toolkit-scroll-bars' 'build_alias=i486-linux-gnu' 'host_alias=i486-linux-gnu' 'CFLAGS=-DDEBIAN -g -O2' 'LDFLAGS=-g' 'CPPFLAGS='' Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: nil value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil value of $LANG: ru_RU.UTF-8 value of $XMODIFIERS: nil locale-coding-system: utf-8-unix default-enable-multibyte-characters: t ===File ~/titledefs.dtx====================== % \begin{macrocode} %<titledefs>\ProvidesFile{titledefs.rtx} %<*titledefs> % \end{macrocode} % % \subsection{Ïîñòîÿííûå ÷àñòè çàãîëîâêîâ, òèòóëüíîãî ëèñòà è òåêñòà} % % \DescribeMacro{\abstractname}\index{Ìàêðîñû!\verb+\abstractname+} % Àííîòàöèÿ % \begin{macrocode} \def\abstractname{\cyr\CYRA\cyrn\cyrn\cyro\cyrt\cyra\cyrc\cyri\cyrya} % \end{macrocode} % \DescribeMacro{\titlepagename}\index{Ìàêðîñû!\verb+\titlepagename+} % Òèòóëüíûé ëèñò % \begin{macrocode} \def\titlepagename{\cyr\CYRT\cyri\cyrt\cyru\cyrl\cyrsftsn\cyrn\cyrery\cyrishrt\ % \cyrl\cyri\cyrs\cyrt} % \end{macrocode} % \DescribeMacro{\keywordsname}\index{Ìàêðîñû!\verb+\keywordsname+} % \DescribeMacro{\keywordssep}\index{Ìàêðîñû!\verb+\keywordssep+} % \DescribeMacro{\keywordslabel}\index{Ìàêðîñû!\verb+\keywordslabel+} % Êëþ÷åâûå ñëîâà % \begin{macrocode} \def\keywordsname{\cyr\CYRK\cyrk\cyryu\cyrch\cyre\cyrv\cyrery\cyre\ % \cyrs\cyrl\cyro\cyrv\cyra} \def\keywordssep{:} \def\keywordslabel{\keywordsname\keywordssep} % \end{macrocode} % \DescribeMacro{\workname}\index{Ìàêðîñû!\verb+\workname+} % Äèññåðòàöèÿ % \begin{macrocode} \def\workname{\cyr\CYRD\cyri\cyrs\cyrs\cyre\cyrr\cyrt\cyra\cyrc\cyri\cyrya} % \end{macrocode} % \DescribeMacro{\approved}\index{Ìàêðîñû!\verb+\approved+} % Äèññåðòàöèÿ äîïóùåíà ê çàùèòå (çàïèñü î äîïóñêå) % \begin{macrocode} \def\approved{\workname\ \cyrd\cyro\cyrp\cyru\cyrshch\cyre\cyrn\cyra\ % \cyrk\ \cyrz\cyra\cyrshch\cyri\cyrt\cyre} % \end{macrocode} % \DescribeMacro{\appos}\index{Ìàêðîñû!\verb+\appos+} % Äîëæíîñòü ëèöà, äîïóñêàþùåãî ê çàùèòå % \begin{macrocode} \def\appos{\cyr\cyrz\cyra\cyrv.\ \cyrk\cyra\cyrf\cyre\cyrd\cyrr\cyro\cyrishrt} % \end{macrocode} % \DescribeMacro{\groupname}\index{Ìàêðîñû!\verb+\groupname+} % ãð. (ãðóïïà) % \begin{macrocode} \def\groupname{\cyr\cyrg\cyrr.} % \end{macrocode} % \DescribeMacro{\topicname}\index{Ìàêðîñû!\verb+\topicname+} % \DescribeMacro{\topicsep}\index{Ìàêðîñû!\verb+\topicsep+} % \DescribeMacro{\topiclabel}\index{Ìàêðîñû!\verb+\topiclabel+} % Òåìà % \begin{macrocode} \def\topicname{\cyr\CYRT\cyre\cyrm\cyra} \def\topicsep{:\ } \def\topiclabel{\topicname\topicsep} % \end{macrocode} % \DescribeMacro{\coursename}\index{Ìàêðîñû!\verb+\coursename+} % \DescribeMacro{\coursesep}\index{Ìàêðîñû!\verb+\coursesep+} % \DescribeMacro{\courselabel}\index{Ìàêðîñû!\verb+\courselabel+} % Íàïðàâëåíèå % \begin{macrocode} \def\coursename{\cyr\CYRN\cyra\cyrp\cyrr\cyra\cyrv\cyrl\cyre\cyrn\cyri\cyre} \def\coursesep{:} \def\courselabel{\coursename\coursesep} % \end{macrocode} % \DescribeMacro{\specname}\index{Ìàêðîñû!\verb+\specname+} % \DescribeMacro{\specsep}\index{Ìàêðîñû!\verb+\specsep+} % \DescribeMacro{\speclabel}\index{Ìàêðîñû!\verb+\speclabel+} % Ñïåöèàëüíîñòü % \begin{macrocode} \def\specname{% \cyr\CYRS\cyrp\cyre\cyrc\cyri\cyra\cyrl\cyrsftsn\cyrn\cyro\cyrs\cyrt\cyrsftsn} \def\specsep{:} \def\speclabel{\specname\specsep} % \end{macrocode} % \DescribeMacro{\masterprogname}\index{Ìàêðîñû!\verb+\masterprogname+} % \DescribeMacro{\masterprogsep}\index{Ìàêðîñû!\verb+\masterprogsep+} % \DescribeMacro{\masterproglabel}\index{Ìàêðîñû!\verb+\masterproglabel+} % Ìàãèñòåðñêàÿ ïðîãðàììà % \begin{macrocode} \def\masterprogname{% \cyr\CYRM\cyra\cyrg\cyri\cyrs\cyrt\cyre\cyrr\cyrs\cyrk\cyra\cyrya\ % \cyrp\cyrr\cyro\cyrg\cyrr\cyra\cyrm\cyrm\cyra} \def\masterprogsep{:} \def\masterproglabel{\masterprogname\masterprogsep} % \end{macrocode} % \DescribeMacro{\studentname}\index{Ìàêðîñû!\verb+\studentname+} % \DescribeMacro{\studentlabel}\index{Ìàêðîñû!\verb+\studentlabel+} % Âûïîëíèë ñòóäåíò % \begin{macrocode} \def\studentname{\cyr\CYRV\cyrery\cyrp\cyro\cyrl\cyrn\cyri\cyrl\ % \cyrs\cyrt\cyru\cyrd\cyre\cyrn\cyrt} \def\studentlabel{\studentname} % \end{macrocode} % \DescribeMacro{\saname}\index{Ìàêðîñû!\verb+\saname+} % \DescribeMacro{\salabel}\index{Ìàêðîñû!\verb+\salabel+} % Íàó÷íûé ðóêîâîäèòåëü (sa -- ñîêð. îò scientific adviser) % \begin{macrocode} \def\saname{\cyr\CYRN\cyra\cyru\cyrch\cyrn\cyrery\cyrishrt\ % \cyrr\cyru\cyrk\cyro\cyrv\cyro\cyrd\cyri\cyrt\cyre\cyrl\cyrsftsn} \def\salabel{\saname} % \end{macrocode} % \DescribeMacro{\revname}\index{Ìàêðîñû!\verb+\revname+} % \DescribeMacro{\revlabel}\index{Ìàêðîñû!\verb+\revlabel+} % Ðåöåíçåíò % \begin{macrocode} \def\revname{\cyr\CYRR\cyre\cyrc\cyre\cyrn\cyrz\cyre\cyrn\cyrt} \def\revlabel{\revname} % \end{macrocode} % \DescribeMacro{\conname}\index{Ìàêðîñû!\verb+\conname+} % \DescribeMacro{\conlabel}\index{Ìàêðîñû!\verb+\conlabel+} % Êîíñóëüòàíò % \begin{macrocode} \def\conname{\cyr\CYRK\cyro\cyrn\cyrs\cyru\cyrl\cyrsftsn\cyrt\cyra\cyrn\cyrt} \def\conlabel{\conname\ \cyrp\cyro\ \@conspec} % \end{macrocode} % \DescribeMacro{\asmanuscriptname}\index{Ìàêðîñû!\verb+\asmanuscriptname+} % Íà ïðàâàõ ðóêîïèñè % \begin{macrocode} \def\asmanuscriptname{\cyr\CYRN\cyra\ \cyrp\cyrr\cyra\cyrv\cyra\cyrh\ % \cyrr\cyru\cyrk\cyro\cyrp\cyri\cyrs\cyri} % \end{macrocode} % \DescribeMacro{\libcatname}\index{Ìàêðîñû!\verb+\libcatname+} % ÓÄÊ % \begin{macrocode} \def\libcatname{\cyr\CYRU\CYRD\CYRK} % \end{macrocode} % \DescribeMacro{\consultname}\index{Ìàêðîñû!\verb+\consultname+} % Êîíñóëüòàíòû % \begin{macrocode} \def\consultname{% \cyr\CYRK\cyro\cyrn\cyrs\cyru\cyrl\cyrsftsn\cyrt\cyra\cyrn\cyrt\cyrery:} % \end{macrocode} % % \subsection{Èíòåðôåéñ äëÿ îïðåäåëåíèÿ ýëåìåíòîâ òèòóëüíîãî ëèñòà} % % \DescribeMacro{\institution}\index{Ìàêðîñû!\verb*+\institution+} % Îðãàíèçàöèÿ % \begin{macrocode} \def\institution#1{\gdef\@institution{#1}}\institution{} % \end{macrocode} % % \DescribeMacro{\spec}\index{Ìàêðîñû!\verb*+\spec+} % Íàçâàíèå ñïåöèàëüíîñòè % \begin{macrocode} \def\spec#1{\gdef\@spec{#1}}\spec{} % \end{macrocode} % \DescribeMacro{\specnum}\index{Ìàêðîñû!\verb*+\specnum+} % Íîìåð ñïåöèàëüíîñòè % \begin{macrocode} \def\specnum#1{\gdef\@specnum{#1}}\specnum{} % \end{macrocode} % \DescribeMacro{\course}\index{Ìàêðîñû!\verb*+\course+} % Íàçâàíèå íàïðàâëåíèÿ % \begin{macrocode} \def\course#1{\gdef\@course{#1}}\course{} % \end{macrocode} % \DescribeMacro{\coursenum}\index{Ìàêðîñû!\verb*+\coursenum+} % Íîìåð íàïðàâëåíèÿ % \begin{macrocode} \def\coursenum#1{\gdef\@coursenum{#1}}\coursenum{} % \end{macrocode} % \DescribeMacro{\keywords}\index{Ìàêðîñû!\verb*+\keywords+} % Êëþ÷åâûå ñëîâà % \begin{macrocode} \def\keywords#1{\gdef\@keywords{#1}}\keywords{} % \end{macrocode} % \DescribeMacro{\title}\index{Ìàêðîñû!\verb*+\title+} % Çàãîëîâîê % \begin{macrocode} \def\title#1{\gdef\@title{#1}}\title{} % \end{macrocode} % \DescribeMacro{\topic}\index{Ìàêðîñû!\verb*+\topic+} % Òåìà % \begin{macrocode} \def\topic#1{\gdef\@topic{#1}}\topic{} % \end{macrocode} % \DescribeMacro{\author}\index{Ìàêðîñû!\verb*+\author+} % Àâòîð % \begin{macrocode} \def\author#1{\gdef\@author{#1}}\author{} % \end{macrocode} % \DescribeMacro{\city}\index{Ìàêðîñû!\verb*+\city+} % Ãîðîä % \begin{macrocode} \def\city#1{\gdef\@city{#1}}\city{} % \end{macrocode} % \DescribeMacro{\faculty}\index{Ìàêðîñû!\verb*+\faculty+} % Ôàêóëüòåò % \begin{macrocode} \def\faculty#1{\gdef\@faculty{#1}}\faculty{} % \end{macrocode} % \DescribeMacro{\department}\index{Ìàêðîñû!\verb*+\department+} % êàôåäðà % \begin{macrocode} \def\department#1{\gdef\@department{#1}}\department{} % \end{macrocode} % \DescribeMacro{\apname}\index{Ìàêðîñû!\verb*+\apname+} % ÔÈÎ ëèöà, äîïóñêàþùåãî ê çàùèòå (çàâ. êàôåäðîé) % \begin{macrocode} \def\apname#1{\gdef\@apname{#1}}\apname{} % \end{macrocode} % \DescribeMacro{\libcatnum}\index{Ìàêðîñû!\verb*+\libcatnum+} % Íîìåð ÓÄÊ % \begin{macrocode} \def\libcatnum#1{\gdef\@libcatnum{#1}}\libcatnum{} % \end{macrocode} % \DescribeMacro{\group}\index{Ìàêðîñû!\verb*+\group+} % Àêàäåìè÷åñêàÿ ãðóïïà % \begin{macrocode} \def\group#1{\gdef\@group{#1}}\group{} % \end{macrocode} % \DescribeMacro{\masterprognum}\index{Ìàêðîñû!\verb*+\masterprognum+} % Íîìåð ìàãèñòåðñêîé ïðîãðàììû % \begin{macrocode} \def\masterprognum#1{\gdef\@masterprognum{#1}}\masterprognum{} % \end{macrocode} % \DescribeMacro{\masterprog}\index{Ìàêðîñû!\verb*+\masterprog+} % Íàçâàíèå ìàãèñòåðñêîé ïðîãðàììû % \begin{macrocode} \def\masterprog#1{\gdef\@masterprog{#1}}\masterprog{} % \end{macrocode} % Çíà÷åíèå |\data| ïî óìîë÷àíèþ % \begin{macrocode} \date{\number\year} % \end{macrocode} % \DescribeMacro{\yearname}\index{Ìàêðîñû!\verb*+\yearname+} % Ñîêðàùåíèå ãîäà <<ã.>> % \begin{macrocode} \def\yearname{\cyr\cyrg.} % \end{macrocode} % \DescribeMacro{\commonsect}\index{Ìàêðîñû!\verb*+\commonsect+} % \DescribeMacro{\postcommonsect}\index{Ìàêðîñû!\verb*+\postcommonsect+} % Ôîðìàò çàãîëîâêîâ îáùåãî òåêñòà <<Ââåäåíèÿ>> è àâòîðåôåðàòà. % \begin{macrocode} \let\commonsect=\textbf \def\postcommonsect{\ } % \end{macrocode} % % \subsubsection{Íàó÷íûé ðóêîâîäèòåëü} % \DescribeMacro{\sa}\index{Ìàêðîñû!\verb*+\sa+} % ÔÈÎ % \begin{macrocode} \def\sa#1{\gdef\@sa{#1}}\sa{} % \end{macrocode} % \DescribeMacro{\sastatus}\index{Ìàêðîñû!\verb*+\sastatus+} % Ó÷¸íîå çâàíèå % \begin{macrocode} \def\sastatus#1{\gdef\@sastatus{#1}}\sastatus{} % \end{macrocode} % % \subsubsection{Ðåöåíçåíò} % \DescribeMacro{\rev}\index{Ìàêðîñû!\verb*+\rev+} % ÔÈÎ % \begin{macrocode} \def\rev#1{\gdef\@rev{#1}}\rev{} % \end{macrocode} % \DescribeMacro{\revstatus}\index{Ìàêðîñû!\verb*+\revstatus+} % ó÷¸íîå çâàíèå % \begin{macrocode} \def\revstatus#1{\gdef\@revstatus{#1}}\revstatus{} % \end{macrocode} % % \subsubsection{Êîíñóëüòàíò} % % \DescribeMacro{\conspec}\index{Ìàêðîñû!\verb*+\conspec+} % Ñïåöèàëüíîñòü % \begin{macrocode} \def\conspec#1{\gdef\@conspec{#1}} % \end{macrocode} % \DescribeMacro{\con}\index{Ìàêðîñû!\verb*+\con+} % ÔÈÎ % \begin{macrocode} \def\con#1{\gdef\@con{#1}} % \end{macrocode} % \DescribeMacro{\constatus}\index{Ìàêðîñû!\verb*+\constatus+} % Ó÷¸íîå çâàíèå è ñòåïåíü % \begin{macrocode} \def\constatus#1{\gdef\@constatus{#1}} % \end{macrocode} % % \subsubsection{Íàçâàíèÿ íåíóìåðóåìûõ ãëàâ} % % \begin{itemize} % \item Ñîäåðæàíèå % \DescribeMacro{\contentsname}\index{Ìàêðîñû!\verb*+\contentsname+} % \begin{macrocode} \AtBeginDocument{ \addto\captionsrussian{% \def\contentsname{\cyr\CYRS\cyro\cyrd\cyre\cyrr\cyrzh\cyra\cyrn\cyri\cyre} } } % \end{macrocode} % \item Ââåäåíèå % \DescribeMacro{\introname}\index{Ìàêðîñû!\verb*+\introname+} % \DescribeMacro{\intro}\index{Ìàêðîñû!\verb*+\intro+} % \begin{macrocode} \newcommand\introname{\cyr\CYRV\cyrv\cyre\cyrd\cyre\cyrn\cyri\cyre} \newcommand\intro{\nchapter{\introname}} % \end{macrocode} % \item Çàêëþ÷åíèå % \DescribeMacro{\conclusionname}\index{Ìàêðîñû!\verb*+\conclusionname+} % \begin{macrocode} \newcommand\conclusionname{% \cyr\CYRZ\cyra\cyrk\cyrl\cyryu\cyrch\cyre\cyrn\cyri\cyre } \newcommand\conclusion{\nchapter{\conclusionname}} % \end{macrocode} % \item Ñïèñîê èñïîëüçóåìûõ îáîçíà÷åíèé % \DescribeMacro{\defsname}\index{Ìàêðîñû!\verb*+\defsname+} % \end{itemize} % \begin{macrocode} \newcommand\defsname{% {\cyr\CYRS\cyrp\cyri\cyrs\cyro\cyrk\ % \cyri\cyrs\cyrp\cyro\cyrl\cyrsftsn\cyrz\cyru\cyre\cyrm\cyrery\cyrh\ % \cyro\cyrb\cyro\cyrz\cyrn\cyra\cyrch\cyre\cyrn\cyri\cyrishrt} } \newcommand\defs{\nchapter{\defsname}} % \end{macrocode} % Îáçîð ëèòåðàòóðû % \DescribeMacro{\reviewname}\index{Ìàêðîñû!\verb*+\reviewname+} % \begin{macrocode} \newcommand\reviewname{\cyr\CYRO\cyrb\cyrz\cyro\cyrr\ % \cyrl\cyri\cyrt\cyre\cyrr\cyra\cyrt\cyru\cyrr\cyrery} \newcommand\review{\nchapter{\reviewname}} % \end{macrocode} % % \subsubsection{Ïîëÿ òèòóëüíîãî ëèñòà} % % \DescribeMacro{\field}\index{Ìàêðîñû!\verb*+\field+} % Ôîðìàò çàïèñåé äëÿ íàó÷íîãî ðóêîâîäèòåëÿ, ðåöåíçåíòà è êîíñóëüòàíòà % \begin{macrocode} \def\field#1{% \csname #1label\endcsname,\\% \csname @#1status\endcsname\> \makebox[8.5cm][l]{\hrulefill\ \csname @#1\endcsname} } % \end{macrocode} % % \DescribeMacro{\@approved}\index{Ìàêðîñû!\verb+"\"@approved+} % \makeatother % Äèññåðòàöèÿ äîïóùåíà ê çàùèòå % \begin{macrocode} \def\@approved{ \begin{tabbing} \hspace{8cm}\={\approved} \\ \>\appos \\[9pt] \>\makebox[8.5cm][r]{\hrulefill\ \@apname} \\[9pt] \>\makebox[1.5cm][r]{<<\hrulefill>>} \makebox[7cm][r]{\hrulefill\ \@date\,\yearname} \end{tabbing} } % \end{macrocode} % \DescribeMacro{\datefield}\index{Ìàêðîñû!\verb*+\datefield+} % Ïîëå äëÿ çàïèñè äàòû. Äëÿ îòîáðàæåíèÿ ïðîèçâîëüíîãî ãîäà íóæíî % ïðèñâîèòü çíà÷åíèå íåîáÿçàòåëüíîìó àðãóìåíòó. % \begin{macrocode} \providecommand\datefield[1][\number\year]{<<\rule[0pt]{1cm}{.5pt}>>\ % \rule[0pt]{3cm}{0.5pt}\ #1~\yearname} % \end{macrocode} % \DescribeMacro{\mkcommonsect}\index{Ìàêðîñû!\verb*+\mkcommonsect+} % Ãåíåðàòîð êîìàíä äëÿ îáùåãî òåêñòà äèññåðòàöèè è àâòîðåôåðàòà. % \begin{macrocode} \providecommand\mkcommonsect[3]{% \@namedef{#1head}{#2} \@namedef{#1section}{\commonsect{\expandafter\csname #1head\endcsname}\postcommonsect} \@namedef{#1text}{#3} } \let\mkintrosect=\mkcommonsect % \end{macrocode} % \DescribeMacro{\facsimile}\index{Ìàêðîñû!\verb*+\facsimile+} % Êîìàíäà äëÿ âêëþ÷åíèÿ ãðàôè÷åñêîãî ôàéëà ñ ïîäïèñüþ äèññåðòàíòà. % \begin{macrocode} \providecommand\facsimile{\vskip 6pt\includegraphics[width=3cm]{facsimile}} %</titledefs> % \end{macrocode} ============================================================
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:bug#4895
; Package emacs
.
(Tue, 10 Nov 2009 01:40:05 GMT) Full text and rfc822 format available.Kenichi Handa <handa <at> m17n.org>
:Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
(Tue, 10 Nov 2009 01:40:05 GMT) Full text and rfc822 format available.Message #10 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):
From: Kenichi Handa <handa <at> m17n.org> To: cmr.Pent <at> gmail.com, 4895 <at> debbugs.gnu.org Cc: bug-gnu-emacs <at> gnu.org Subject: Re: bug#4895: 23.1; Incorrect font selected Date: Tue, 10 Nov 2009 10:32:24 +0900
In article <E1N7Zlb-0006fY-GR <at> neo.paramonovs>, Andrey Paramonov <pent <at> aparamon.msk.ru> writes: > 0) emacs -Q > My .Xresources: > emacs*font: DejaVu Sans Mono-11 > 1) C-x C-f titledefs.dtx (attached) > Latin characters are displayed with DejaVu Sans Mono, as expected. > Cyrillic characters are not displayed properly. This is Ok yet, > because the file is encoded in cp1251. > 2) C-x RET r cp1251 RET > yes RET > Latin characters are displayed with DejaVu Sans Mono, as expected. > Cyrillic characters are displayed, but not with DejaVu Sans Mono. > Looks like they are displayed with Terminus. This is because Emacs prefers a font whose registry matches with `charset' text property. In the above case, the default fontset has this entry for cyrillic: (cyrillic ,(font-spec :registry "iso10646-1" :script 'cyrillic) (nil . "ISO8859-5") (nil . "microsoft-cp1251") (nil . "koi8-r")) and when you read a file with cp1251, the charset property `cp1251' is put on the buffer text. Thus the font-selector prefers a font whose registry is "microsoft-cp1251". If you prefer cyrillic characters to be displayed by the default font, you can do this in .emacs: (set-fontset-font "fontset-default" 'cyrillic (font-spec :registry "iso10646-1" :script 'cyrillic)) --- Kenichi Handa handa <at> m17n.org
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:bug#4895
; Package emacs
.
(Tue, 10 Nov 2009 01:40:07 GMT) Full text and rfc822 format available.Kenichi Handa <handa <at> m17n.org>
:Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
(Tue, 10 Nov 2009 01:40:07 GMT) Full text and rfc822 format available.bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:bug#4895
; Package emacs
.
(Tue, 10 Nov 2009 06:25:04 GMT) Full text and rfc822 format available.Андрей Парамонов <cmr.pent <at> gmail.com>
:Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
(Tue, 10 Nov 2009 06:25:05 GMT) Full text and rfc822 format available.Message #20 received at 4895 <at> emacsbugs.donarmstrong.com (full text, mbox):
From: Андрей Парамонов <cmr.pent <at> gmail.com> To: Kenichi Handa <handa <at> m17n.org> Cc: 4895 <at> debbugs.gnu.org Subject: Re: bug#4895: 23.1; Incorrect font selected Date: Tue, 10 Nov 2009 09:15:33 +0300
Hello! 2009/11/10 Kenichi Handa <handa <at> m17n.org>: > This is because Emacs prefers a font whose registry matches > with `charset' text property. > > In the above case, the default fontset has this entry for > cyrillic: > > (cyrillic ,(font-spec :registry "iso10646-1" :script 'cyrillic) > (nil . "ISO8859-5") > (nil . "microsoft-cp1251") > (nil . "koi8-r")) > > and when you read a file with cp1251, the charset property > `cp1251' is put on the buffer text. Thus the font-selector > prefers a font whose registry is "microsoft-cp1251". > > If you prefer cyrillic characters to be displayed by the > default font, you can do this in .emacs: > > (set-fontset-font "fontset-default" 'cyrillic > (font-spec :registry "iso10646-1" :script 'cyrillic)) > Thanks for the explanation. Do you think it's still valid not to prefer unicode fonts to fonts with specific registries? I believe the unicode is dominating by now, at least for european languages. Andrey Paramonov
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:bug#4895
; Package emacs
.
(Tue, 10 Nov 2009 08:15:03 GMT) Full text and rfc822 format available.Kenichi Handa <handa <at> m17n.org>
:Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
(Tue, 10 Nov 2009 08:15:03 GMT) Full text and rfc822 format available.Message #25 received at 4895 <at> emacsbugs.donarmstrong.com (full text, mbox):
From: Kenichi Handa <handa <at> m17n.org> To: =?UTF-8?B?0JDQvdC00YDQtdC5INCf0LDRgNCw0LzQvtC90L7Qsg==?= <cmr.pent <at> gmail.com> Cc: 4895 <at> debbugs.gnu.org Subject: Re: bug#4895: 23.1; Incorrect font selected Date: Tue, 10 Nov 2009 17:10:30 +0900
In article <5f0660120911092215v48f00477l5f2c68855507ab4b <at> mail.gmail.com>, =?UTF-8?B?0JDQvdC00YDQtdC5INCf0LDRgNCw0LzQvtC90L7Qsg==?= <cmr.pent <at> gmail.com> writes: > Thanks for the explanation. Do you think it's still valid not to > prefer unicode fonts to fonts with specific registries? I believe the > unicode is dominating by now, at least for european languages. I'm not sure. At least, a while ago, bitmap fonts of legacy registries (e.g. iso8859-X, koi8, etc) are better than unicode bitmap fonts. I think using cp1251 fonts for cp1251-encoded file is a good default even now. First of all, if unicode is dominating by now, the chance of reading cp1251 files should be rare. --- Kenichi Handa handa <at> m17n.org
bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>
:bug#4895
; Package emacs
.
(Wed, 11 Nov 2009 11:05:10 GMT) Full text and rfc822 format available.Juri Linkov <juri <at> jurta.org>
:Emacs Bugs <bug-gnu-emacs <at> gnu.org>
.
(Wed, 11 Nov 2009 11:05:10 GMT) Full text and rfc822 format available.Message #30 received at 4895 <at> emacsbugs.donarmstrong.com (full text, mbox):
From: Juri Linkov <juri <at> jurta.org> To: Kenichi Handa <handa <at> m17n.org> Cc: 4895 <at> debbugs.gnu.org, cmr.pent <at> gmail.com Subject: Re: bug#4895: 23.1; Incorrect font selected Date: Wed, 11 Nov 2009 12:45:09 +0200
[Message part 1 (text/plain, inline)]
>> Thanks for the explanation. Do you think it's still valid not to >> prefer unicode fonts to fonts with specific registries? I believe the >> unicode is dominating by now, at least for european languages. > > I'm not sure. At least, a while ago, bitmap fonts of legacy > registries (e.g. iso8859-X, koi8, etc) are better than > unicode bitmap fonts. I think using cp1251 fonts for > cp1251-encoded file is a good default even now. First of > all, if unicode is dominating by now, the chance of reading > cp1251 files should be rare. Unfortunately, cp1251 is still common in the documents created on Windows. Opening such documents in Emacs on GNU/Linux often results in a very ugly look, especially when cp1251 text is surrounded by Latin or Unicode characters. Unicode fonts are well developed and maintained unlike legacy cp1251 fonts that are less relevant nowadays. Please see in the attached screenshot from part of etc/HELLO how ugly it looks with default cp1251 and koi8-r fonts when other text uses Unicode fonts:
[ugly-fonts.png (image/png, inline)]
[Message part 3 (text/plain, inline)]
IIUC other applications allow font configuration based on a language or a script that is more important for the user than a technical detail like a charset. And they use the same Unicode font by default. -- Juri Linkov http://www.jurta.org/emacs/
Chong Yidong <cyd <at> gnu.org>
to control <at> debbugs.gnu.org
.
(Mon, 09 Jul 2012 05:00:02 GMT) Full text and rfc822 format available.bug-gnu-emacs <at> gnu.org
:bug#4895
; Package emacs
.
(Mon, 09 Jul 2012 05:33:02 GMT) Full text and rfc822 format available.Message #35 received at 4895 <at> debbugs.gnu.org (full text, mbox):
From: Chong Yidong <cyd <at> gnu.org> To: Juri Linkov <juri <at> jurta.org> Cc: 4895 <at> debbugs.gnu.org, cmr.pent <at> gmail.com, Kenichi Handa <handa <at> m17n.org> Subject: Re: bug#4895: 23.1; Incorrect font selected Date: Mon, 09 Jul 2012 13:26:55 +0800
Juri Linkov <juri <at> jurta.org> writes: >>> Thanks for the explanation. Do you think it's still valid not to >>> prefer unicode fonts to fonts with specific registries? I believe the >>> unicode is dominating by now, at least for european languages. >> >> I'm not sure. At least, a while ago, bitmap fonts of legacy >> registries (e.g. iso8859-X, koi8, etc) are better than >> unicode bitmap fonts. I think using cp1251 fonts for >> cp1251-encoded file is a good default even now. First of >> all, if unicode is dominating by now, the chance of reading >> cp1251 files should be rare. > > Unfortunately, cp1251 is still common in the documents created on > Windows. Opening such documents in Emacs on GNU/Linux often results > in a very ugly look, especially when cp1251 text is surrounded > by Latin or Unicode characters. Unicode fonts are well developed and > maintained unlike legacy cp1251 fonts that are less relevant nowadays. Presumably, unicode fonts should have even better coverage now than three years ago, when this discussion first took place. Any objections to making the switch? Also, where in the code does this >> when you read a file with cp1251, the charset property >> `cp1251' is put on the buffer text. Thus the font-selector >> prefers a font whose registry is "microsoft-cp1251". occur? I took a quick look at the documentation, e.g. the docstring of new-fontset, and couldn't find the explanation of how the font-selector chooses the font to use from the list of font specifications. If the list of font specifications is not given in order of priority, that should be clearly explained somewhere.
bug-gnu-emacs <at> gnu.org
:bug#4895
; Package emacs
.
(Mon, 09 Jul 2012 08:25:01 GMT) Full text and rfc822 format available.Message #38 received at 4895 <at> debbugs.gnu.org (full text, mbox):
From: Juri Linkov <juri <at> jurta.org> To: Chong Yidong <cyd <at> gnu.org> Cc: 4895 <at> debbugs.gnu.org, cmr.pent <at> gmail.com, Kenichi Handa <handa <at> m17n.org> Subject: Re: bug#4895: 23.1; Incorrect font selected Date: Mon, 09 Jul 2012 11:10:10 +0300
> Presumably, unicode fonts should have even better coverage now than > three years ago, when this discussion first took place. Any objections > to making the switch? Yes, the current situation is better than three years ago because there are less cp1251 fonts on GNU/Linux installations, and more fonts with wider charset coverage that have the same look for different charsets, so a charset selected by font-selector matters less now.
bug-gnu-emacs <at> gnu.org
:bug#4895
; Package emacs
.
(Mon, 09 Jul 2012 16:47:03 GMT) Full text and rfc822 format available.Message #41 received at 4895 <at> debbugs.gnu.org (full text, mbox):
From: Eli Zaretskii <eliz <at> gnu.org> To: Chong Yidong <cyd <at> gnu.org> Cc: juri <at> jurta.org, 4895 <at> debbugs.gnu.org, cmr.pent <at> gmail.com, handa <at> m17n.org Subject: Re: bug#4895: 23.1; Incorrect font selected Date: Mon, 09 Jul 2012 19:41:20 +0300
> From: Chong Yidong <cyd <at> gnu.org> > Date: Mon, 09 Jul 2012 13:26:55 +0800 > Cc: 4895 <at> debbugs.gnu.org, cmr.pent <at> gmail.com, Kenichi Handa <handa <at> m17n.org> > > Also, where in the code does this > > >> when you read a file with cp1251, the charset property > >> `cp1251' is put on the buffer text. Thus the font-selector > >> prefers a font whose registry is "microsoft-cp1251". > > occur? decode_coding calls produce_annotation that calls produce_charset, which puts the 'charset' text property on the decoded text. Then font_for_char uses this property to get the charset ID with which it calls fontset_font, which in turn calls fontset_find_font, which prefers fonts whose repertory matches that ID. > I took a quick look at the documentation, e.g. the docstring of > new-fontset, and couldn't find the explanation of how the > font-selector chooses the font to use from the list of font > specifications. If the list of font specifications is not given in > order of priority, that should be clearly explained somewhere. The documentation of fontset stuff could use a lot of improvement.
Juri Linkov <juri <at> jurta.org>
to control <at> debbugs.gnu.org
.
(Mon, 09 Jul 2012 21:38:02 GMT) Full text and rfc822 format available.Debbugs Internal Request <help-debbugs <at> gnu.org>
to internal_control <at> debbugs.gnu.org
.
(Wed, 08 Aug 2012 11:24:04 GMT) Full text and rfc822 format available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.