From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/70968 Path: news.gmane.org!not-for-mail From: Aditya Mahajan Newsgroups: gmane.comp.tex.context Subject: Re: Custom parameters/options for t-vim Date: Mon, 29 Aug 2011 17:35:31 -0400 (EDT) Message-ID: References: <4E5CF365.2040908@gmx.de> 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 1314731849 5059 80.91.229.12 (30 Aug 2011 19:17:29 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 30 Aug 2011 19:17:29 +0000 (UTC) To: mailing list for ConTeXt users Original-X-From: ntg-context-bounces@ntg.nl Tue Aug 30 21:17:25 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 1QyToG-0003Du-NN for gctc-ntg-context-518@m.gmane.org; Tue, 30 Aug 2011 21:17:20 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id 833C5CAF36; Tue, 30 Aug 2011 21:17:16 +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 vHkvXsAWT+6T; Tue, 30 Aug 2011 21:17:16 +0200 (CEST) Original-Received: from balder.ntg.nl (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id DCF76CAF2F; Tue, 30 Aug 2011 21:17:09 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id 5CAEDCAF2F for ; Tue, 30 Aug 2011 21:17:08 +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 j2wgPQ0znNzM for ; Tue, 30 Aug 2011 21:16:57 +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 33756CAF26 for ; Tue, 30 Aug 2011 21:16:57 +0200 (CEST) Original-Received: from tombraider.mr.itd.umich.edu (smtp.mail.umich.edu [141.211.12.86]) by filter5-til.mf.surf.net (8.14.3/8.14.3/Debian-5+lenny1) with ESMTP id p7UJGsXd010072 for ; Tue, 30 Aug 2011 21:16:56 +0200 Original-Received: FROM [10.0.2.15] (web044028.Wireless.McGill.CA [142.157.44.28]) By tombraider.mr.itd.umich.edu ID 4E5D3725.28C23.7824 ; Authuser adityam; 30 Aug 2011 15:16:53 EDT In-Reply-To: <4E5CF365.2040908@gmx.de> 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.12.86; 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: 0xFqHgSIU - abc4d7e6e5bf - 20110830 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:70968 Archived-At: On Tue, 30 Aug 2011, Andreas Schneider wrote: > I worked with t-vim a bit more and encountered a small problem with the way > vim handles syntax definitions. Some of them have several modes that get > activated by setting a variable first. For example the syntax "sh" (shell > scripts) can be enhanced for bash, ksh, etc. > > Example: > let g:is_bash=1 > set syntax=sh > > Now a line like "export foo=bar" is highlighted differently than when I would > omit the "let g:is_bash=1". > > Therefore I would propose another options to \setupvimtyping to specify > custom options to be passed to vim. Preferably they should be passed at least > before the "set syntax=..." line to make sure that this particular case -- > i.e. switching syntax modes -- works well (which may be the only necessary > case). That is certainly possible, but the exact solution depends on how robust you want it to be. I can easily add an option so that \definevimtyping [....] [extras={let g:is_bash=1}] will pass the argument to vim. However, string arguments like \definevimtyping [....] [extras={let g:name="Whatever"}] will not work. The reason is that, t-vim first creates a command line argument that is passed to mtxrun. mtxrun parses the entire expression, including all the options, When mtxrun figures out that all the arguments were meant for an external program, it recreates the list of arguments (to the best of its abilities), and passes the arguments to the shell. Then the shell tries to interpret the quotes. I haven't been able to find a solution that will work correctly though these three transformations. Another option is to write everything to an external file and source it as a vimrc file. So, you could do: \definevimtyping [...] [vimrc=shell] \startvimrc[shell] let g:is_bash = 1 \stopvimrc This requires more coding, but is much more flexible than the first option. Do all syntax highlighting options work with 0/1 parameters? If so, then the first alternative is easiest. Aditya ___________________________________________________________________________________ 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 ___________________________________________________________________________________