From mboxrd@z Thu Jan  1 00:00:00 1970
Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail
From: Eli Zaretskii <eliz@gnu.org>
Newsgroups: gmane.emacs.devel
Subject: Re: Any new method to deal with Emacs Fonts settings puzzles nearly
 every Chinese =?utf-8?Q?emacser=EF=BC=9F?=
Date: Sat, 13 Nov 2021 17:21:13 +0200
Message-ID: <838rxsxes6.fsf@gnu.org>
References: <2c676019.21d2.17d19ba2dc8.Coremail.tumashu@163.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit
Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214";
	logging-data="31429"; mail-complaints-to="usenet@ciao.gmane.io"
Cc: emacs-devel@gnu.org
To: tumashu <tumashu@163.com>
Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Nov 13 16:22:14 2021
Return-path: <emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org>
Envelope-to: ged-emacs-devel@m.gmane-mx.org
Original-Received: from lists.gnu.org ([209.51.188.17])
	by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
	(Exim 4.92)
	(envelope-from <emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org>)
	id 1mlur7-0007xN-RX
	for ged-emacs-devel@m.gmane-mx.org; Sat, 13 Nov 2021 16:22:14 +0100
Original-Received: from localhost ([::1]:48360 helo=lists1p.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.90_1)
	(envelope-from <emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org>)
	id 1mlur6-0004M5-Mq
	for ged-emacs-devel@m.gmane-mx.org; Sat, 13 Nov 2021 10:22:12 -0500
Original-Received: from eggs.gnu.org ([209.51.188.92]:47360)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@gnu.org>) id 1mluqQ-0003fC-6X
 for emacs-devel@gnu.org; Sat, 13 Nov 2021 10:21:30 -0500
Original-Received: from [2001:470:142:3::e] (port=53812 helo=fencepost.gnu.org)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@gnu.org>)
 id 1mluqP-0001LS-Up; Sat, 13 Nov 2021 10:21:29 -0500
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From:
 Date; bh=412y6GS2GFEF3NUmy2cy9iYKwX+poy3w/2BjQ29WMhU=; b=ghZ1Em9ezjXOi8J4nwlf
 XyyIXHD5jMTRa9Du5Pie0HkKLMkIpcO4YgVCDFk8wWo2YA1+XbGiSWdCUSm10fp8kZj+PVB0I2WMU
 8yB3mdefTS9GiekTqzueG2UG8z1I4Q5cmuXlwe1iSsv/a4z6abx6/Zioa72lisiMHJycuYPjydyQ3
 /xLFkCx9qjYk6U41tUUxLMtIsl0lsjUEDksxMIjlUpQtW79SLqEcx7ydve5TCAF99p88AXjfOlhvD
 UfkbF9oPxpF4VIiFgqZTnBUWaot4x1p8k8DNnvx2NCdWoj4xlIcEvJessrChUr/ct5515XchMbhrj
 xWv78TlLQrdMCA==;
Original-Received: from [87.69.77.57] (port=1694 helo=home-c4e4a596f7)
 by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <eliz@gnu.org>)
 id 1mluqP-0003AI-Ff; Sat, 13 Nov 2021 10:21:29 -0500
In-Reply-To: <2c676019.21d2.17d19ba2dc8.Coremail.tumashu@163.com> (message
 from tumashu on Sat, 13 Nov 2021 22:36:11 +0800 (CST))
X-BeenThere: emacs-devel@gnu.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Emacs development discussions." <emacs-devel.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/emacs-devel>,
 <mailto:emacs-devel-request@gnu.org?subject=unsubscribe>
List-Archive: <https://lists.gnu.org/archive/html/emacs-devel>
List-Post: <mailto:emacs-devel@gnu.org>
List-Help: <mailto:emacs-devel-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/emacs-devel>,
 <mailto:emacs-devel-request@gnu.org?subject=subscribe>
Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org
Original-Sender: "Emacs-devel"
 <emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org>
Xref: news.gmane.io gmane.emacs.devel:279328
Archived-At: <http://permalink.gmane.org/gmane.emacs.devel/279328>

> Date: Sat, 13 Nov 2021 22:36:11 +0800 (CST)
> From: tumashu <tumashu@163.com>
> 
> Hello everyone:
> 
>    (1)    How to let A Chinese char width = 2 * Ascii char width is an eternal topic for Chinese new emacser.

On GUI frames Emacs takes the width of each character in pixels from
the font that is being used.  So if you want each Chinese character to
take exactly 2 character cells of an ASCII character, you need to find
a pair of fonts that satisfy this relation.  Because the font used for
ASCII varies between users, and the font used for Chinese probably
varies as well, I don't think I see how Emacs can solve this problem,
because Emacs doesn't understand the significance of each font.

> it let all Chinese new users and many old users puzzle a lot, that is the reason my cnfonts package (a Chinese fonts setup utils) get >600 github star.
> recent day, we talk about Emacs fonts, so I want to know, is it possible provide a feature in emacs core to solve this problem?

Which problem is that?  The 2 questions you asked or something else?

> The two question is that: How to force set min line-width to a value?

What do you mean by "min line-width" here?

> Chinese emaser use will use two fonts generally, a Ascii fonts and A Chinese fonts.
> Two fonts will use different height to let 1 Chinese Char width = 2 * Ascii char width,  but this set will get other problem:
> 
>      (2)                     Chinese char Height > Ascii char height,
> 
> 
> The results is that head-line, mode-line and minibuffer's height will shark (change frequently depend Chinese char exist or not).
> it looks very very ugly.

Did you try to set the line-height text property on the newline of
each line?