Received: by 10.192.165.148 with SMTP id m20csp5284752imm; Tue, 1 May 2018 12:13:18 -0700 (PDT) X-Google-Smtp-Source: AB8JxZppJ5u/bI1J7pKua//2+g6j0W2jzXaAmRtfFmJNDLP8U61PLIfRsTWnWKzalUkmcIn8IPxg X-Received: by 10.98.10.137 with SMTP id 9mr4980419pfk.112.1525201998695; Tue, 01 May 2018 12:13:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525201998; cv=none; d=google.com; s=arc-20160816; b=oYqMQiijGJnhJATmiDsGXvttKAC/OSdF12+3SsPqtQVUnWDkHuMwWwno/gD0n72Gm2 2Y7YXTRhW61p0a8jCze54/S+Htwl5zTf0LQBH+5p0xEirC9sDAw3TWK7pj+czNKipqXS h3mwdjSGQ0lJjm+vuC+dKlR/06gCkIUXzxnu897LbOlKRPTjWWhq1rqV+ID3B6usmGBR pfO94empacwnpUgIlt7sAIy0KKMYc7D1E1yG+9yrQzEC4ogICcf5x0RsWCYojzcKhvV4 Tl16i6OrtVE6b74NsECTo6EYoXguusZB0BI/XxmYZCZxOwzu+qaCgM8OzBfMvm3j2DeK x1uQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:cc:to:subject :message-id:date:from:references:in-reply-to:mime-version :dkim-signature:arc-authentication-results; bh=KlXnuDa8cC4paI9rvvIZFPn5kAysnIaTCm1AtuL1fY8=; b=eR9xc5rg9yhD5p8pvAvNsbsoW0hpkeOgYSdkja0Vj9TN2bbm4gU6TF8nZsry3Q9bzw T5xnXI+cUgtILrP3LoPVSUYKZWzNOir/7R8IUWbKCLlS2pBzgoSWbIauS8tG0QX/D4oT Jf4TFRn+hwop6cQ5Zk8ByVMr6tpWjICqz82E0aY9BYQg/rDcXV4Qos3aKr8Ihza29OFd 16bOKrk8rkA0AyfZVaQNNGNUiDkv0Vo90am9QF6oAFJhxjRjjD1wmuCWlq+nMDa7In6P Dbr9wVJNxQhFaP3NqQEhEkVr0epa5vFlCXLn12Gw2myFDINOh3n/M48z+xz2jEsKxqqP 6LkA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=VJ26zy01; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h1-v6si7903832pgs.169.2018.05.01.12.13.04; Tue, 01 May 2018 12:13:18 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=VJ26zy01; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756427AbeEATMx (ORCPT + 99 others); Tue, 1 May 2018 15:12:53 -0400 Received: from mail-oi0-f65.google.com ([209.85.218.65]:40608 "EHLO mail-oi0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753505AbeEATMu (ORCPT ); Tue, 1 May 2018 15:12:50 -0400 Received: by mail-oi0-f65.google.com with SMTP id c203-v6so10876987oib.7; Tue, 01 May 2018 12:12:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=KlXnuDa8cC4paI9rvvIZFPn5kAysnIaTCm1AtuL1fY8=; b=VJ26zy01dgoqXPCDuS95TR/b06jZ1jZ4cBPuVhr3Th8RiL/h+rkAsaMOA/qDL5lNKW KAcJ1W+775eHHTpSu0p5I0Dhj5mwRaeRSGVf8B35nGr8octISEmqermSYGG+CA376N4Q /3dDm8zOR1iMVuhiIcD2L13Z65BJnHlTnEuMRr52zbTBRryRKPUPr/p8Vq8BLZveM0Iu fY7Y1myyWAnpyiQYexyQktDuGtdX3s7rRy22A4teJ1up8sho36CsKu+P8zq4XA3WDBfB CzEPLQHXnX0AcOal9PXVGiLyRn2WVGjdhOGmkTTaJeeHpSImpvM3yaAfCaubR6h9ZvoP inNw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=KlXnuDa8cC4paI9rvvIZFPn5kAysnIaTCm1AtuL1fY8=; b=EqdSo2y2XuX+fVm9uIIKFHWvDsZCKTnfFIV7ebXIwkdsO6RyL7qgRQSQlR6+V4C1OU +2agUSP+IK7329UOEFYMrUasgyK1oeEaofTcttP04m8ZCc2DokycsNIhYpVPXbFI/sXn K3iInkyNYiYy/UjQajrYvU+AMS8J8AxQLVvruWMNSetkxW4tfMKT8kn+Eyts/0WBVO9T 0tnTc1tckuZs+62FheksLtCB1UfiGgstfJVq8aLvvyVkTlHxCrbqYIeqTx4q7+Hfp5uA ndoTjmza+xt9nSlRa6Sns6HwsBet+9MOfIPLhfpZMJHxulj8cNzA5z6hNcrXK5cDnUWz 5bvA== X-Gm-Message-State: ALQs6tAJZc9SVrfy8yyvu8CuVVJmaBOURgwH7hYeg7cKZQ3S7FyeL4iH 8pTs5d2Wud8oSufM0dHVWNlVfsXnWW9PTsJPoMCMpirB X-Received: by 2002:aca:5885:: with SMTP id m127-v6mr9567007oib.352.1525201969848; Tue, 01 May 2018 12:12:49 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a9d:185:0:0:0:0:0 with HTTP; Tue, 1 May 2018 12:12:49 -0700 (PDT) In-Reply-To: References: From: Ulf Magnusson Date: Tue, 1 May 2018 21:12:49 +0200 Message-ID: Subject: Re: [ANNOUNCE] Kconfiglib menuconfig implementation To: Randy Dunlap Cc: Linux Kbuild mailing list , Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, May 1, 2018 at 7:56 PM, Randy Dunlap wrote: > On 04/30/2018 05:57 PM, Ulf Magnusson wrote: >> Hello, >> >> Kconfiglib (https://github.com/ulfalizer/Kconfiglib) now has a >> terminal menuconfig implementation, implemented in plain curses >> (which is in the Python standard library). >> >> The interface should feel familiar to people used to mconf. It has >> some features that mconf lacks: >> >> - Seamless resizing >> >> - Unicode support >> >> - Runs on Windows (via 'pip install windows-curses', which uses >> PDCurses) >> >> - Improved information displays: >> >> * All expressions are split into readable chunks >> >> * Menus and comments have information displays >> >> - Relatively easy-to-read and easy-to-tweak code. >> >> Kconfiglib automatically invalidates symbols as needed, and >> values can never get stale, which helps. >> >> Some upcoming features are mouse support and a search feature that >> can jump directly to the definition of a symbol. The jump-to feature >> will use a "show-all" mode in case the symbol isn't visible. >> >> See the Kconfiglib GitHub page for screenshots. The menuconfig >> implementation is at >> https://github.com/ulfalizer/Kconfiglib/blob/master/menuconfig.py. >> The docstring at the top has some more information. > > Hi, > > I'm probably missing some python additive (I hope it's that easy), but > menuconfig.py is not liking the "degree" symbol in drivers/net/can/peak_c= anfd/Kconfig: > > config CAN_PEAK_PCIEFD > depends on PCI > tristate "PEAK-System PCAN-PCIe FD cards" > ---help--- > This driver adds support for the PEAK-System PCI Express FD > CAN-FD cards family. > These 1x or 2x CAN-FD channels cards offer CAN 2.0 a/b as well = as > CAN-FD access to the CAN bus. Besides the nominal bitrate of up= to > 1 Mbit/s, the data bytes of CAN-FD frames can be transmitted wi= th > up to 12 Mbit/s. A galvanic isolation of the CAN ports protects= the > electronics of the card and the respective computer against > disturbances of up to 500 Volts. The PCAN-PCI Express FD can be > operated with ambient temperatures in a range of -40 to +85 =C2= =B0C. > > > kconfiglib.KconfigSyntaxError: > Malformed ascii in drivers/net/can/peak_canfd/Kconfig > Context: b't temperatures in a range of -40 to +85 \xc2\xb0C.\n' > Problematic data: b'\xc2' > Reason: ordinal not in range(128) > > > thanks, > -- > ~Randy Thanks for trying it out! You're probably running in the C locale, which implies an ASCII encoding. That has caused enough trouble that the Python devs decided to automatically convert it to UTF-8 in Python 3.7: https://www.python.org/dev/peps/pep-0538/. LC_CTYPE=3DC.UTF-8 should fix it. It's a bit silly to have it crash for something like that though. I could force UTF-8 instead of respecting the locale (though it feels neater to respect settings), or tell Python to ignore decoding errors. Should probably do something at least... Cheers, Ulf