From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: =?UTF-8?Q?Cl=c3=a9ment_Pit-Claudel?= Newsgroups: gmane.emacs.devel Subject: Re: Variable-width font indentation Date: Tue, 6 Mar 2018 10:02:53 -0500 Message-ID: <8bdab58e-36a2-ca82-d25e-14cff77a2f2b@gmail.com> References: <87inaiss6l.fsf@web.de> <6FCF6ACA-4F29-4B6B-BE9D-D7130C6E9495@gnu.org> <87fu5moe4c.fsf@web.de> <877eqyocro.fsf@web.de> <83zi3uz4nb.fsf@gnu.org> <0b1dd3fa-e0b0-ed20-a256-dd92d1c1826f@dancol.org> <8bc3c4c7-dfc7-987a-95e7-bd309e2326c6@cs.ucla.edu> <03118DC0-39DA-4AB5-980E-A33809B9A5EE@raeburn.org> <83vaeas8uz.fsf@gnu.org> <83lgf6s3aa.fsf@gnu.org> <64ad488a4aa74c37b9711bf89d1d8abb@lanl.gov> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Trace: blaine.gmane.org 1520348636 32657 195.159.176.226 (6 Mar 2018 15:03:56 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 6 Mar 2018 15:03:56 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 Cc: Paul Eggert To: "Herring, Davis" , "emacs-devel@gnu.org" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Mar 06 16:03:52 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1etE80-00073F-Ru for ged-emacs-devel@m.gmane.org; Tue, 06 Mar 2018 16:03:44 +0100 Original-Received: from localhost ([::1]:56336 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1etEA3-0002l7-KI for ged-emacs-devel@m.gmane.org; Tue, 06 Mar 2018 10:05:51 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:42000) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1etE7J-0000eo-JA for emacs-devel@gnu.org; Tue, 06 Mar 2018 10:03:11 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1etE7E-0000y7-28 for emacs-devel@gnu.org; Tue, 06 Mar 2018 10:03:01 -0500 Original-Received: from mail-it0-x22a.google.com ([2607:f8b0:4001:c0b::22a]:55109) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1etE7D-0000xl-UK for emacs-devel@gnu.org; Tue, 06 Mar 2018 10:02:56 -0500 Original-Received: by mail-it0-x22a.google.com with SMTP id c11so14083170ith.4 for ; Tue, 06 Mar 2018 07:02:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=NepBySYwpqEitm+qdD04+HPn5mruDzYz1ffjgsCt39g=; b=H8v+sqa1iT9Bu0phGERq91JOfj5prWhXU7dln/JJnCoUw0aAXie6bp/Wco1n9HYTuc vwg6yDmd0+SSPyzNrnw+6YW1D/rNL1R/3s42T00Zz9jCfXoDNb6Q+UqaYxfkoIwnMcQd uZWr7q6NTEhBJY9uZhG7coox4ap+d+weDpJ2dRbztN/DRY9tImXbqMfjv57XpSdp6970 VEm9itGAh6mb6hVJxpJ+HNiFnk0I7Fe7QdVqY4MuhgPde0tHz+tYFi0RM6Sw8iT3z+D1 eGRE3m7/v+AVgtwej/a+ay4Mi3HMcOpqLD72kcd/VSjrPG0bCSkPnSQF9B9jp0+JMdsU 20gA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=NepBySYwpqEitm+qdD04+HPn5mruDzYz1ffjgsCt39g=; b=Rcj0cKS3ITNiEK355+27X3SRnwL4ufcCkEPVd0yOQOerqWGVI7f9ihildW37VukdRX ioCB9qWC/S+mICWw82R1WY6ujGubBGctVBQB/ZoKxDjFoPP9l/kxvhUqTJA+JCtK0It3 31BkZg89N8+EuekizkjlBJd77bteyPnVHze+hml0D4iWtP54KikPC0nbUS9z0/FIhO7V j3vQZMiT6jhWVITZpcya5yA8PiRSaENnQn08XXCyBc2wNapwlkqc0fo3RRpquBUXqUG7 JGfg34Sc75ZqANlyHqgbCP+cZ3TAotMaJpP49w+ER0VDWaZDGk2SE0mAt/rGwXHVitq5 gS3A== X-Gm-Message-State: AElRT7FmlFq3pRVYHv+w4ctDV37jqWSakrOuG2uAaeFv9SkK9kpp54Jd KW56/6FVlovvjKxQ3jJEbO8= X-Google-Smtp-Source: AG47ELt2rSzYL48xRWQDEfinTF4r2n78a7ayMwUP6nfMG5CfuW8llc7NsOecRUtGLDRKHfd2P9778w== X-Received: by 10.36.31.21 with SMTP id d21mr9999312itd.71.1520348575239; Tue, 06 Mar 2018 07:02:55 -0800 (PST) Original-Received: from [18.26.2.123] (26-2-123.dynamic.csail.mit.edu. [18.26.2.123]) by smtp.gmail.com with ESMTPSA id y96sm7072581ita.39.2018.03.06.07.02.54 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 06 Mar 2018 07:02:54 -0800 (PST) In-Reply-To: Content-Language: en-GB X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4001:c0b::22a X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:223328 Archived-At: On 2018-03-06 09:18, Herring, Davis wrote: > Maybe I misunderstand -- how is this a problem? If the number of spaces is correct, it identifies the correct character to match against. It's a problem if you scale each space to match the width of the character above it (or below it, in this case). If you instead align to a particular position, you run into the issue of deciding which space to stretch (strech all spaces in the range evenly? stretch a single one? what about cases where the spaces need to be shrunk?) > (progn > >-(foo) > >-(bar)) > > (and > _(foo) > _(bar)) I have a lot of trouble reading these examples, as the '>' get converted to reply markers by my email client; but looking at the source, I think I understand. Question: why do you indent the body of a 'progn' differently from an 'and'? I was thinking of cases like 'if', for example: (if test true-case false-case) Where do you use tabs? > > int>-x>-= 1, > >-y>-=2; > doTheFoo();>-// it's true > doTheBar();>-// so far I don't think these are ambiguities (as in, the spec is clear on what should happen here); but indeed this doesn't render ideally; you'd write it like this instead: int x = 1, y = 2; doTheFoo(); // it's true doTheBar(); // so far (I personally don't like the concept very much, because it doesn't let you distinguish between a 0-width indentation marker and a non-zero width indentation marker). That is, it forces you to writ this: int f( int argc; char** argv) instead of int f(int argc; int argv) Clément.