From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/68473 Path: news.gmane.org!not-for-mail From: Aditya Mahajan Newsgroups: gmane.comp.tex.context Subject: A module for generic external syntax highlighter Date: Tue, 17 May 2011 21:54:18 -0400 (EDT) Message-ID: Reply-To: mailing list for ConTeXt users NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1305683702 11756 80.91.229.12 (18 May 2011 01:55:02 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 18 May 2011 01:55:02 +0000 (UTC) To: mailing list for ConTeXt users Original-X-From: ntg-context-bounces@ntg.nl Wed May 18 03:54:58 2011 Return-path: Envelope-to: gctc-ntg-context-518@m.gmane.org Original-Received: from balder.ntg.nl ([195.12.62.10]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QMVyT-00015w-Tt for gctc-ntg-context-518@m.gmane.org; Wed, 18 May 2011 03:54:57 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id 0ACACCAD0A; Wed, 18 May 2011 03:54:57 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at balder.ntg.nl Original-Received: from balder.ntg.nl ([127.0.0.1]) by localhost (balder.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id uCwXnI75MosP; Wed, 18 May 2011 03:54:53 +0200 (CEST) Original-Received: from balder.ntg.nl (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id 9BBC8CACFF; Wed, 18 May 2011 03:54:53 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id 32D7FCACFF for ; Wed, 18 May 2011 03:54:52 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at balder.ntg.nl Original-Received: from balder.ntg.nl ([127.0.0.1]) by localhost (balder.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id r8+ZNGFtPYgz for ; Wed, 18 May 2011 03:54:39 +0200 (CEST) Original-Received: from filter5-til.mf.surf.net (filter5-til.mf.surf.net [194.171.167.221]) by balder.ntg.nl (Postfix) with ESMTP id BACBACACF3 for ; Wed, 18 May 2011 03:54:39 +0200 (CEST) Original-Received: from hellskitchen.mr.itd.umich.edu (smtp.mail.umich.edu [141.211.14.82]) by filter5-til.mf.surf.net (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id p4I1saaf015896 for ; Wed, 18 May 2011 03:54:38 +0200 Original-Received: FROM adi-netbook (bas3-montreal02-1096681357.dsl.bell.ca [65.94.7.141]) By hellskitchen.mr.itd.umich.edu ID 4DD326DB.91009.18504 ; Authuser adityam; 17 May 2011 21:54:35 EDT User-Agent: Alpine 2.02 (LNX 1266 2009-07-14) X-Bayes-Prob: 0.0001 (Score 0, tokens from: @@RPTN) X-CanIt-Geo: ip=141.211.14.82; country=US; region=MI; city=Ann Arbor; postalcode=48109; latitude=42.2923; longitude=-83.7145; metrocode=505; areacode=734; http://maps.google.com/maps?q=42.2923,-83.7145&z=6 X-CanItPRO-Stream: uu:ntg-context@ntg.nl (inherits from uu:default, base:default) X-Canit-Stats-ID: 0xEINSBbE - f1b39f04b01a - 20110518 X-Scanned-By: CanIt (www . roaringpenguin . com) on 194.171.167.221 X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.12 Precedence: list List-Id: mailing list for ConTeXt users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: ntg-context-bounces@ntg.nl Errors-To: ntg-context-bounces@ntg.nl Xref: news.gmane.org gmane.comp.tex.context:68473 Archived-At: Hi all, I have modularized the vim module[1] so that it is easy to reuse components for other external syntax highlight programs. The set up for defining a new external syntax highlighting is done in t-syntax-highlight module, and the set up for defining a new color scheme is done in t-syntax-groups. The vim module simply calls these modules with the relevant setups. These modules also use an experimental coding style for the ConTeXt code. This is based on some discussions that we had on the list earlier. (This style sets the catcode of : to be other; this can break existing ConTeXt code). All modules work with both MkII and MkIV; as a result, some of the things are more complicated than they need to be just for MkIV. I believe that this split will make it easy to add new external programs as syntax highlighters. The external highlighter needs to generate ConTeXt code in a specific format: - Start each new line with \CR{} - Escape all \, {, and }, as \\, \{, and \} - Group each syntax region as follows: \SYN[group-name]{content} The external highlighter should also support a means of specifing the start and stop lines to be highlighted. At the TeX end, a new syntax highlighting module should specify the exact external command to be called, and define color schemes (style and color) for each of the group-name used in the \SYN command in the highlighter. In case anyone is interested in testing a specific external highlighter, let me know. Any other feedback is welcome. Aditya [1]: https://github.com/adityam/filter/tree/dev ___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________