From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Etienne Prud'homme Newsgroups: gmane.emacs.bugs Subject: bug#23188: [PATCH] Support completion of at-rules in SCSS mode Date: Fri, 1 Apr 2016 15:57:07 -0400 Message-ID: <20160401155707.4730bda5@ThinkPax> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/qnugWSW/6H_3jAv7cGVHM.I" X-Trace: ger.gmane.org 1459625122 3563 80.91.229.3 (2 Apr 2016 19:25:22 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 2 Apr 2016 19:25:22 +0000 (UTC) To: 23188@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Apr 02 21:25:12 2016 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1amRAU-0004Pv-LY for geb-bug-gnu-emacs@m.gmane.org; Sat, 02 Apr 2016 21:25:10 +0200 Original-Received: from localhost ([::1]:50690 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1amRAU-0000Pj-5x for geb-bug-gnu-emacs@m.gmane.org; Sat, 02 Apr 2016 15:25:10 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:49119) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1amRAQ-0000OO-Rd for bug-gnu-emacs@gnu.org; Sat, 02 Apr 2016 15:25:07 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1amRAM-0006WR-R6 for bug-gnu-emacs@gnu.org; Sat, 02 Apr 2016 15:25:06 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:51984) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1amRAM-0006WN-Mj for bug-gnu-emacs@gnu.org; Sat, 02 Apr 2016 15:25:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1amRAM-0007S8-Id for bug-gnu-emacs@gnu.org; Sat, 02 Apr 2016 15:25:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Etienne Prud'homme Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 02 Apr 2016 19:25:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 23188 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.145962504928571 (code B ref -1); Sat, 02 Apr 2016 19:25:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 2 Apr 2016 19:24:09 +0000 Original-Received: from localhost ([127.0.0.1]:49110 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1amR9U-0007Qk-S6 for submit@debbugs.gnu.org; Sat, 02 Apr 2016 15:24:09 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:40895) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1am5Ci-0002T9-Ln for submit@debbugs.gnu.org; Fri, 01 Apr 2016 15:58:01 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1am5Cc-0000F0-OB for submit@debbugs.gnu.org; Fri, 01 Apr 2016 15:57:55 -0400 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:33041) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1am5Cc-0000Ew-Kj for submit@debbugs.gnu.org; Fri, 01 Apr 2016 15:57:54 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:60098) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1am5Cb-0006PQ-Jq for bug-gnu-emacs@gnu.org; Fri, 01 Apr 2016 15:57:54 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1am5CW-0000ES-JM for bug-gnu-emacs@gnu.org; Fri, 01 Apr 2016 15:57:53 -0400 Original-Received: from mail-qg0-x243.google.com ([2607:f8b0:400d:c04::243]:36439) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1am5CW-0000E8-ES for bug-gnu-emacs@gnu.org; Fri, 01 Apr 2016 15:57:48 -0400 Original-Received: by mail-qg0-x243.google.com with SMTP id n34so12172625qge.3 for ; Fri, 01 Apr 2016 12:57:47 -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; bh=AKEW/wqlq//xygVKII3RYRKFNzNRhYpB5PoMOB2Ldww=; b=qBD/5PfdAxVp6/9veNNLfW4ceLVTyvPd4B5WT0YNJO2HAjjeqgm35phN7NaM6gKnwq rYXwZQfo4C9w+6PlvmNLGwBdTv0vaa9L8zJP/VFxSBgrEq/8xgyiT8aqzGtSlJYn2dNN 3NoD8s/7VrDf38FhMpkebvVXbCnlthta0QHEvXqx5ew2KkB5oL2U5NF7Ry3+C876PM96 +g+qfdZBkkTte700btsXx2TXasHDb60bxxvOp9VS+oo1WrtzobKjz7e7ZugLSBFOeKsG VtoLr+7DADlBIDn7KCy+zJKaBvgUAldtBlqXUrrTDBZNyN7vlNiW8dgo9wPhudbYhMa2 ZCtQ== 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; bh=AKEW/wqlq//xygVKII3RYRKFNzNRhYpB5PoMOB2Ldww=; b=lxTsDQ6BYnKZ6C5+dCyz3nSYsioNcprX+yt9QgfGAj3GkPZeoB8R/4OOhAXVBcKSgK g8HAU3nfgkKzGRcj/zPh63ElGtPIyuEq17WM7nHqpfCOwdGM+qfmZm7DD3XTSotKS85t Flyu4MePIPwUXmQVUTwzSIQV+cbHiP24a4uQS5Hq3zBXctU/7wAQaD9Ch/0cXg2a9GXB pMMoVJguTExBPkzjyrtisB2XDEJy4n6DCRVKgAxwVGTv/uDn2m7kQrCT16SWhs2zxRXD Nlu5TwW+m4IXORjXZ1eCgTEzDaW0zbeTOxl+9HiUc4wPsjKrc/c9LqiWbz+Fs+ghbW+M YWBQ== X-Gm-Message-State: AD7BkJI/XXM55C29Gm0J/J5oRczRsEqH31AQxVneMGKi6EmGZzN/bwtopGzwKO9duYm54g== X-Received: by 10.140.246.136 with SMTP id r130mr362216qhc.12.1459540667543; Fri, 01 Apr 2016 12:57:47 -0700 (PDT) Original-Received: from ThinkPax ([173.199.65.14]) by smtp.gmail.com with ESMTPSA id s8sm6770709qhb.20.2016.04.01.12.57.46 for (version=TLS1_2 cipher=AES128-SHA bits=128/128); Fri, 01 Apr 2016 12:57:47 -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-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Mailman-Approved-At: Sat, 02 Apr 2016 15:24:07 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:115885 Archived-At: --MP_/qnugWSW/6H_3jAv7cGVHM.I Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline The attached patch adds support for at-rules completion in SCSS mode. It=E2=80=99s more or less the same code from bug#23135 (Support completion = of bang-rules in CSS mode). --MP_/qnugWSW/6H_3jAv7cGVHM.I Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0001-Support-completion-of-at-rules-in-SCSS-mode.patch >From 4ad8f21f11ed9c48f986cfdd8d50883389fa8d2a Mon Sep 17 00:00:00 2001 From: Etienne Prud'homme Date: Fri, 1 Apr 2016 15:09:15 -0400 Subject: [PATCH] Support completion of at-rules in SCSS mode --- lisp/textmodes/css-mode.el | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/lisp/textmodes/css-mode.el b/lisp/textmodes/css-mode.el index cbef3d4..02a5b11 100644 --- a/lisp/textmodes/css-mode.el +++ b/lisp/textmodes/css-mode.el @@ -56,6 +56,15 @@ '("charset" "font-face" "import" "media" "namespace" "page") "Identifiers that appear in the form @foo.") +(defconst scss-at-ids + '("at-root" "content" "debug" "each" "else" "else if" "error" "extend" "for" + "function" "if" "import" "include" "mixin" "return" "warn" "while") + "Additional identifiers that appear in the form @foo in SCSS.") + +(defvar css--at-ids css-at-ids + "List of at-rules for the current mode.") +(make-variable-buffer-local 'css--at-ids) + (defconst css-bang-ids '("important") "Identifiers that appear in the form !foo.") @@ -759,7 +768,7 @@ cannot be completed sensibly: `angle', `element-reference', (let ((pos (point))) (skip-chars-backward "-[:alnum:]") (when (eq (char-before) ?\@) - (list (point) pos css-at-ids))))) + (list (point) pos css--at-ids))))) (defvar css--property-value-cache (make-hash-table :test 'equal :size (length css-property-alist)) @@ -969,6 +978,7 @@ pseudo-elements, pseudo-classes, at-rules, and bang-rules." (setq-local comment-continue " *") (setq-local comment-start-skip "/[*/]+[ \t]*") (setq-local comment-end-skip "[ \t]*\\(?:\n\\|\\*+/\\)") + (setq-local css--at-ids (append css-at-ids scss-at-ids)) (setq-local css--bang-ids (append css-bang-ids scss-bang-ids)) (setq-local font-lock-defaults (list (scss-font-lock-keywords) nil t))) -- 2.8.0 --MP_/qnugWSW/6H_3jAv7cGVHM.I--