From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Etienne Prud'homme Newsgroups: gmane.emacs.devel Subject: SCSS parser ideas Date: Tue, 5 Apr 2016 16:51:54 -0400 Message-ID: <20160405165154.72ba85b9@ThinkPax> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1459889547 3463 80.91.229.3 (5 Apr 2016 20:52:27 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 5 Apr 2016 20:52:27 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Apr 05 22:52:20 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1anXxU-0007s7-2y for ged-emacs-devel@m.gmane.org; Tue, 05 Apr 2016 22:52:20 +0200 Original-Received: from localhost ([::1]:39258 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1anXxT-0007yB-H3 for ged-emacs-devel@m.gmane.org; Tue, 05 Apr 2016 16:52:19 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:47230) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1anXxE-0007y0-Ik for emacs-devel@gnu.org; Tue, 05 Apr 2016 16:52:05 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1anXx9-0005mw-Fr for emacs-devel@gnu.org; Tue, 05 Apr 2016 16:52:04 -0400 Original-Received: from mail-qg0-x22c.google.com ([2607:f8b0:400d:c04::22c]:35528) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1anXx9-0005mG-Ab for emacs-devel@gnu.org; Tue, 05 Apr 2016 16:51:59 -0400 Original-Received: by mail-qg0-x22c.google.com with SMTP id y89so20775525qge.2 for ; Tue, 05 Apr 2016 13:51:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:subject:message-id:mime-version :content-transfer-encoding; bh=5HKllssLwXcaEqlIFTRTc4x5DsGrrMWqku4iSkqad6A=; b=ExisATgDeygDGW8qreq0P/4pWg7oC4kGd+JP3OgR7kD+mG9ToUFoRz1SBuJKeaWKpf JkMRKZGBm4wfOiII8WyaB+bSTR7LbE6zpY/40KQGUrXGoYFxy88LECULQmFxw2Ha+Ei0 ouGisFxL6C6sRD46FIPRp3FXLMb5WArEoqUONE7LRFa9t3ZC9mNLetQ9VhTlSQP8b754 sSkWn07aqzw/F4INN8hGHdR8+usZSciLAY0nLz3vq4/bURY1cqGMvtFtc7YugtdZuVkE b/m2oN/3rTzp4Aye1kCOmH/56ugaydVpowBCB9DgLwgoyHqHa0m3Hp2ns7PsKoLvpAZK 1mSw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:date:from:to:subject:message-id:mime-version :content-transfer-encoding; bh=5HKllssLwXcaEqlIFTRTc4x5DsGrrMWqku4iSkqad6A=; b=jjtKRCoB82X5JuZaTvzzJiy15tONZOP8AsawepUpCM3ae/5908AHxZh8EH6QEIJrO4 u6qm4E4lKarcj9CKADRwmNLRf6R/o9NQDYMnQlBHFZZL5AyFHyG2k0oxk9QoPAj/lLYe dN+r01V0D/44nVQC8KMeTdWGkwTbUaMx61tQb8euPIdlwxBu9ofE9Ux678A9LQj3Gznb zTerwwuyazzMDP3+ie1tuPJLEbDz6pqzlvgHI7a40nIpV9XWmtnPu7x4KcTolkC5mNzr Q7KV1R6qHGhaUqnrbiCLLLqdqVfSp5/AtCLVRXgZFPBsnE5aR0K9xZxXD0QuCcdAxSJA R+Aw== X-Gm-Message-State: AD7BkJIsavAnnCHZN2w0v5iR845e7fPDTPbjPboIgnn7whizwLRKly4WSUCPuGnMcM3o1w== X-Received: by 10.140.231.80 with SMTP id b77mr22472671qhc.56.1459889518488; Tue, 05 Apr 2016 13:51:58 -0700 (PDT) Original-Received: from ThinkPax ([173.199.65.64]) by smtp.gmail.com with ESMTPSA id h34sm6190040qge.30.2016.04.05.13.51.57 for (version=TLS1_2 cipher=AES128-SHA bits=128/128); Tue, 05 Apr 2016 13:51:58 -0700 (PDT) X-Mailer: Claws Mail 3.13.1 (GTK+ 2.24.23; x86_64-unknown-linux-gnu) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2607:f8b0:400d:c04::22c X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:202754 Archived-At: Since I study in the field of Front-End web development, I find it sad that Emacs lacks features that would otherwise be included in other text-editors. One feature that is lacking is discovering SCSS variable values. I=E2=80=99m thinking something like Eldoc is doing for function declarations in C or Emacs lisp. Given that SCSS is a Preprocessor, it=E2=80=99s possible to evaluate a vari= able by simply parsing a file. Unless a file changes, a variable will always stay the same. I made a basic prototype parser in elisp that did a hash map of all variable declarations from a buffer. However, I don=E2=80=99t think it=E2= =80=99s suitable in the long-term. Since I=E2=80=99ve got no experience in grammar parsing implementation, I w= as wondering if it could be worth making a CEDET Semantic SCSS parser (and thus CSS one). It would give much more flexibility. We could include variables from other files, functions and mixins support or even a CSS tree structure of a project. Best regards,