> I'll give a talk on the ConTeXt bundle next weekend in
> Epen/Netherlands. Until then I will enchance it a lot and post it to
> the ConTeXt mailing list. (And here, if anyobdy is interested.)
>
>
> Patrick
Patrcick,
Would you mind posting a link to your talk here too? (I don't
subscribe to the
ConTeXt mailing list anymore)
> I suppose that given that the syntax is very similar, we could try to
> add ConTeXt to the existing LaTeX bundle and try to make the commands
> work for ConTeXt as well. I'd be happy to help people out with this,
> but I don't know much ConTeXt. (On the other hand, I do know the
> workings of the LaTeX bundle pretty well ;) ). So perhaps we can
> figure out what needs to be done and then start doing it.
>
> Do I understand correctly that ConTeXt is an extension of TeX, i.e.
> all TeX code is valid in general? In that case we can use the
> existing TeX syntax and include it, and just add the special features
> that ConTeXt has.
>
> Really the only reason ConTeXt is not part of the LaTeX bundle at
> this point is (I think) simply the fact that the people who have
> worked on the LaTeX bundle haven't had much use for ConTeXt. But I
> see no reason not to make it work, if there are enough people
> interested in it and willing to make it work.
>
> Haris Skiadas
> Department of Mathematics and Computer Science
> Hanover College
>
>
Haris,
In general, I believe that you can use plain tex commands, but
ConTeXt also provides a complete macro
set built on TeX, so that you do not need to use plain TeX commands.
I've attached a good template file from Sanjoy Mahajan that you can
typeset in TeXShop.
-paul
% "Hello world!" document for the ConTeXt typesetting system
%
% === History ===
% 2006-12-29 Sanjoy Mahajan <sanjoy(a)mit.edu>
% * Created
%
% This document is the public domain (no copyright).
\setupcolors[state=start] % otherwise you get greyscale
\definecolor[headingcolor][r=1,g=0.0]
% for the document info/catalog (reported by 'pdfinfo', for example)
\setupinteraction[state=start, % make hyperlinks active, etc.
title={Hello world!},
subtitle={A ConTeXt template},
author={Sanjoy Mahajan},
keyword={template}]
% useful urls
\useURL[author-email][mailto:a.u.thor@somewhere.edu][]
[a.u.thor(a)somewhere.edu]
\useURL[wiki][http://wiki.contextgarden.net][][\ConTeXt\ wiki]
\useURL[sanjoy][mailto:sanjoy@mit.edu][][sanjoy@mit.edu]
% for US paper; the sensible default is [A4][A4] (A4 typesetting,
% printed on A4 paper)
\setuppapersize[letter][letter]
\setuplayout[topspace=0.5in, backspace=1in, header=24pt, footer=36pt,
height=middle, width=middle]
% uncomment the next line to see the layout
% \showframe
% headers and footers
\setupfooter[style=\it]
\setupfootertexts[\date\hfill \ConTeXt\ template]
\setuppagenumbering[location={header,right}, style=bold]
\setupbodyfont[11pt] % default is 12pt
\setuphead[section,chapter,subject][color=headingcolor]
\setuphead[section,subject][style={\ss\bfa},
before={\bigskip\bigskip}, after={}]
\setuphead[chapter][style={\ss\bfd}]
\setuphead[title][style={\ss\bfd},
before={\begingroup\setupbodyfont[14.4pt]},
after={\leftline{\ss\tfa A. U. Thor $\langle$\from[author-email]$
\rangle$}
\bigskip\bigskip\endgroup}]
\setupitemize[inbetween={}, style=bold]
% set inter-paragraph spacing
\setupwhitespace[medium]
% comment the next line to not indent paragraphs
\setupindenting[medium, yes]
\starttext
\title{Hello, world!}
Here is a hello-world template document to illustrates a few \ConTeXt\
features. Have fun. You can find a lot more information at
\from[wiki]; the preceding text should be colored and clickable, and
clicking it should take you to the wiki.
\subject{A list}
Here is an example of a list.
\startitemize[a] % tags are lowercase letters
\item first
\item second
\item third
\stopitemize
\subject{Math}
An equation can be typeset inline like $e^{\pi i}+1=0$, or as a
displayed formula:
\startformula
\int_0^\infty t^4 e^{-t}\,dt = 24.
\stopformula
% don't use $$...$$ (the plain TeX equivalent)
You can also have numbered equations:
\placeformula[eq:factorial-example]\startformula
\int_0^\infty t^5 e^{-t}\,dt = 120.
\stopformula
And you can refer to them by name. I called the previous equation {\tt
factorial-example}, and it is equation \in[eq:factorial-example].
\ConTeXt\ figures out the number for you. And with interaction turned
on, you can click on the equation number to get to the equation.
\subject{Text with figures}
Now text with a few figures. The first figure goes on the right, with
the paragraph flowing around it.
\placefigure[right,none]{}{\externalfigure[dummy]}
\input tufte
The next figure will go inline, like a displayed formula:
\placefigure[here,none]{}{\externalfigure[dummy]}
\input tufte
Here's another reference to the numbered equation -- equation
\in[eq:factorial-example] on \at{page}[eq:factorial-example], so that
you can test clicking on it or on the page reference.
% most plain TeX commands work
\vfill
\noindent
\framed[corner=round, width=\textwidth,height=1in,
backgroundcolor=gray,background=color]
{This document is in the public domain, so that you can improve it,
share
it, and otherwise do what you want with it.
Suggestions are welcome. You can send them to me
at \from[sanjoy] (Sanjoy Mahajan).}
\stoptext
Hi,
I noticed some weird indentation problem when using "Insert as
Snippet" as the output for a command. I reduced it to a simple test
case (at least I hope):
Make a command with
Output: "Insert as Snippet"
Command: echo -n "$TM_SELECTED_TEXT"
Example text:
✂------✂------✂------✂------
- list1
[tab]- indented list2
paragraph 1
paragraph 2
✂------✂------✂------✂------
If I select the text somewhere in the first line to the end and run
the command, nothing changes, which is good.
If I select the text somewhere after the tab in the second line to
the end I get this:
✂------✂------✂------✂------
- test list
[tab]- test indented list
[tab]paragraph 1
[tab]paragraph 2
✂------✂------✂------✂------
If I use "Replace selected text" instead, this doesn't happend.
So, if I understand this right: When a command inserts a snippet on a
indented line, everything in the snippet is indented. Why?
Just in case, I deselected "Re-indent pasted text" in the prefs,
still the same.
Am I missing something?
Thanks
--
FredB
Hi,
I was wondering if there's an easy to to prefix or suffix selected
lines with a string.
Anyone who has used BBEdit will know what I am taking about.
I assume there is a way to do this, but I was hoping to avoid regular
expressions other overly complex gyrations.
Thanks in advance.
I've found this topic a few times in the archives, but never came up
with a definitive answer.
I'm using Textmate for basic XHTML/CSS/JavaScript editing and while
Camino and Safari happily pop right up when I choose "Open Document
in Running Browser(s)" and Refresh when I pick "Refresh Running
Browser(s)" but Firefox responds a bit differently.
It doesn't respond at all to "Open Document in Running Browser(s)"
and Refresh Running Browser(s)" just opens a new, empty, window or tab.
It's a bit frustrating as Firefox is my browser of choice for working
on sites, thanks of course to the Web Development plugin among others.
Any advice?
Hi all.
I've just finished the 0.1 release of a command I've been working on
tonight, based on Tom Counsell's (http://tom.counsell.org/view/
ExcelToLatexTableConvertor) excel2latex, that will take an excel
table from clipboard (copy from excel. doesn't work for selected text
yet.) and run by typing excel[tab] (excel⇥').
It requires that the longtable package is included, but if you're
working with tables, you'll probably want that anyway. This isn't
perfect, you'll probably want to change the '\begin{longtable}{c c c
c c c }' to format the rows how you like, but it seems to work for me.
let me know what you think. I know this saves me a lot of time, so I
hope it will for you too.
Cheers, Al.
☠☢✯☢☠
Hello!
Two Problems on the Latex bundle.
I have a project structure like this:
-Projectfolder
projectmain.tex (master file)
-- subfolder1
-- file_1_1.tex
-- file_1_2.tex
-- subfolder 2
-- file_2_1.tex
When I now drag file file_1_2.tex into file_2_1.tex,
I get
\include{../subfolder1/file_1_2.tex}
The problem is, that I´get an error, because the file
can not be found. The file path has to be
\include{subfolder1/file_1_2.tex}
because it depends on the master file. But when I then
invoke the command "Show outline", the file file_1_2.tex
is not found, because it expects the path as the first
statement.
Another problem is, that latex does not typeset the
files, that where included. Why does the drag command
produce a include command?
Helge
Hi,
Is there a way to setup Textmate (for Ruby on Rails development) such that
when I'm "tailing" the error log I will get different line colors for errors
based on the severity of the error?
Eg
- logger.error ('xxx') => RED
- logger.warning ('xxx') => ORANGE
- etc
Thanks in advance
Greg
Hi,
I'm looking for a way to crate a simple snippet so that tab
completion: //(tab) will insert CSS comments and wrap any text on the
line if applicable.
I've got so far as this:
/* ${1:${TM_CURRENT_LINE/(^\s+)(.+;)/$2/g}} */
$2
Which when you feed something like:
//(tab)some-property: some-value;
Produces output:
/* some-property: some-value; */
some-property: some-value;
What I would like is to delete the second instance. Is there any
way? Or, will I just have to settle for selecting the text and
create a key equivalent snippet (which means I have one snippet for
plain comment and another for wrapping...).
Oh and one other question about snippets: in the sequence ${«tab
stop»/«regexp»/«format»/«options»} what are the options? I stuck with
g because that's what I had seen.
thanks in advance,
Gabriel
Hi!
Just wondering because of the news that input managers will be banned
in Leopard. Is there already a new solution planned for "Edit in
TextMate"?
Niels
--
Jammern für Anfänger: Niels K. (25) Jammerbacke -- auch für
professionelles Jammern zu haben
http://jammern.wordpress.com
I made my first screencast ever. It's 11 minutes long, and 15Mb big! The
volume is a little low,
pronunciation could be better, but I hope you enjoy! demonstrates the
latest svn features.
http://home.mac.se/joachimm/Objective-C_with_TextMate.mov
Joachim Mårtensson
For a bundle I'm maintaining, I wanted to be able to easily toggle
between having changes written directly to the bundle (so that I can
commit them) and having changes written to deltas (so that I can make
local customizations that are not committed).
I wrote a command for this:
http://henrik.nyh.se/2007/03/24/textmate-command-to-toggle-writing-deltas/
I'm sure others have done similar things before, but I couldn't find
anything, so I rolled my own, and thought I'd share.
If the command does something bad or unnecessary, or if you've solved
this problem in a better way, please let me (us) know.
I have lately had to use code that includes
\begin{SaveVerbatim}[commandchars=\\\{\},codes={\catcode`$=3
\catcode`^=7}]{guard}
$\lnot$busy(phone)
\end{SaveVerbatim}
The \catcode`$=3 confuses the TextMate's grammar and thus everything
that follows is treated at maths in scopes and hence in colouring.
Is there an easy solution without messing with the main language
definition?
Hi there,
after getting nagged at my blog (http://www.gnegg.ch/archives/354-
External-blogging-tools.html) to look into why TextMate's Blogging
Bundle behaves strangely with Serendipity blogs, I had a look into
the problem.
Actually, there are two problems, but so far, I've only fixed one
(it's getting late here):
1) When you have a Date:-Header in your Posting, s9y will interpret
the date wrongly and will assume it to be the beginning of the epoch
(1970-01-01). This is problably a flaw in s9y and I'll report it
there as soon as I know what's going on.
2) The Pings- and Comments-Headers were ignored and Pings/Comments
were turned off regardless of what the headers were set to. This is
what I've actually looked into this evening (GMT+1 here):
Basically it all comes down to the fact that parse_post (blogging.rb)
is unable to cope with empty headers of which s9y produces at least
one: s9y always sends an empty mt_convert_breaks-member in the post
record and when no tags are defined, it'll also send an empty
mt_keywords member.
With an unpatched blogging.rb, this will create something like this
(ignore the f*ed up date - that's caused by bug 1) above):
Type: Blog Post (Markdown)
Blog: s9y
Post: 1
Title: First entry
Date: 1970-01-01 02:00:00 +0100
Keywords:
Format:
Pings: On
Comments: On
This causes the parser to stop after the Keywords-header (lines
206/207) which will lead to the following headers to be ignored, thus
turning off comments (s9y assumes Comments=off if the information
isn't present in the RPC-call).
Now I'm not sure if s9y's behaviour is actually legal here (please
enlighten me), but I think the blogging bundle should be able to cope
with empty fields.
There are two possible fixes: One is to fix the fields-parser to make
it stop bailing out at empty fields. I've attached bb_fixparser.diff
which does that. The other way is to make post_to_document stop
adding empty format and keyword fields. bb_skipempty.diff does that.
I'm not sure which way is the correct way to go. fixparser has the
tendency of working with even more crude blogging engines, while
skipempty is what the bundle did so far (look at the handling of
mt_tags for example.
Anyways. Please consider merging one of the patches to make the
blogging bundle work better with serendipity.
Thanks
Philip
Hi Allan
How diffiicult would it be to add an option to
the folding system telling it to obey indentation
exclusively?
With this option, TextMate would become a
very nice cataloging tool for removable media:
I drag and drop the CD on a TextMate window
and the tab-indented list of the content appears.
It is already very easy to search such lists,
with folding-at-indentations it would be also
easy to navigate them.
Thanks
Piero
Hi,
We are evaluating textmate as part of a wider move from PHP to Rails. I have an issue which I hope someone here might be able to help me with...
We have a shared linux development server and we each checkout and edit our files on the server remotely either via samba shares or directly by SSHing in. This is so we can preview the changes in our dev sites as we make them.
This works OK for the windows guys (they use Tortoise svn and map a network drive to get to their files). I am OK as I am comfortable in the terminal and don't mind SSHing over to the dev server to do any subversion stuff, but we have a couple of designers who have a fear of command lines and want to work strictly within textmate. Running any SVN command from textmate fails because the samba share appears like a local directory and all the SVN commands get screwed up. It then locks their copy and we have to clean up the locks.
Is it possible to set up textmate to either tunnel the SVN commands through SSH so they run in the devserver environment as if performed in a dev server shell or switch to using a different network filesystem (SSHFS, maybe?) so that we can edit our files remotely on the development server and use SVN from within TextMate?
We'd even consider moving to another open source version control system to fix this as long as there is good support for Mac, Win and linux...
Many thanks in advance,
Matt.
---------------------------------
What kind of emailer are you? Find out today - get a free analysis of your email personality. Take the quiz at the Yahoo! Mail Championship.
Hi,
Textmate incorrectly labels italicised and bolded text.
In the following markdown: "this is s_om_e markdown", 'om' will be
tagged as italicised. When converting to HTML, 'om' will not be
italicised. I am guessing that the Markdown processor requires that
italicised text be surrounded by white space. The same is also true
for bolded text.
I was able to modify the language grammar to not incorrectly tag the
text. My solution is probably quite naive but it did work for me. Can
someone with more regex fu vet this and can we get it added to the
official bundle please (assuming it should be added and I am not
wrong on this).
Luke.
I've been toying around with the idea of a PHP/HTML language
definition. The problem is that when I'm working on a PHP project, I
switch back and forth between pure PHP files and PHP/HTML files all
the time. As you can imagine, switching the language definition each
time to get proper syntax hilighting can get bothersome. It would
most likely be a huge bundle and take a lot of work, but I was just
wondering if anybody else has found any tricks for this kind of issue
before I investigate it further.
Thanks,
Michael
Hello!
I have the following Latex code.
\begin{lstlisting}[language=PBN]
[Board "<Boardnummer>"]
\end{lstlisting}
The "< starts the scopes
punctuation.definition.string.begin.latex
string.quoted.double.guillemot.latex
The scopes are still active after the code.
Helge
With this function declaration TextMate will not show it in the
symbols list. Is there anyway of importing symbollists from external
commands instead of using regexps?
void client_clause_string(char *buf, int bufsiz,
struct Clause *pclause)
{
}
--
/Erik
Hi --
A quick request for help...
I thought there might be someone knowledgeable here about an error
that cropped up for me with the latest build (1372). I apologize in
advance is this isn't the sort of thing discussed here or if I should
bring this to another forum, but since it just happened NOW, minutes
after my update, I thought this might be the place.
Anyway, I'm using GTDalt and the context command (shift-@) gives this
error after the selection from the dialog:
/Users/mcg/Applications/Text/Textmate/TextMate.app/Contents/
SharedSupport/Support/lib/dialog.rb:138: warning: Insecure world
writable dir /Users/mcg/Documents, mode 040756
Any advice. Did I do something clueless when I grabbed the latest build?
-- Michael
I am having a problem with the GTDAlt date picker. The date inserted
does not correspond to the date entered. So entering 12/03/2007 gives
me 2007-03-11. And entering 31/05/2007 gives me 2007-05-29.
While on the topic of the date picker a small issue about the UI.
Dates are entered day month year. I think it should be year month day
for two reasons:
1. That way it is consistent with what is entered in the file.
2. The date picker defaults to the current date which is now
February. Helpfully it doesn't allow you to pick a day not in that
month. So to enter in 31/05/2007 I first had to tab ahead to change
the month before entering the day (since there are not 31 days in
February). The year month day format would avoid this problem.
Thanks.
All the best, Mark
_________________
Mark Eli Kalderon
Department of Philosophy
University College London
Gower Street
London WC1E 6BT
Departmental webpage: http://www.ucl.ac.uk/philosophy
Personal webpage: http://markelikalderon.com
Hello all,
I use the Pascal bundle quite a bit, and I've been annoyed that it can't tell the difference between declarations/prototypes of functions and definitions of functions.
I'll give you that this is tricky - in Pascal they both mostly look the same, and what they are is really determined by the next line (which would be a BEGIN if it was a definition)
FUNCTION aTest(varName: theType);
However, there is two cases where such a difference can be seen easily: the forward keyword and the external keyword
FUNCTION aTest(varName: theType); FORWARD;
{a prototype of a function found later in the file}
FUNCTION aTest(varName: theType); EXTERNAL;
{EXTERNAL is just like C's extern keyword}
And, in GPC (the Gnu Pascal Compiler) there's also:
FUNCTION aTest(varName: theType); attribute (name = 'aTest');
{You could see this kinda like declaring a prototype in C -
functions above this in the file OR outside the file
can call this function
}
Can we make the Pascal bundle use the following regular expression in the meta.function.prototype.pascal scope (so then we can use a preference to turn off their appearance in the symbol list?
\b(?i:(function|procedure))\b\s+(\w+(\.\w+)?)(\(.+?\)); (attribute|forward|external)
Or other thoughts etc would be appreciated - this could be an inefficient way of doing this.
Thanks In Advance,
_Ryan Wilcox
--
Wilcox Development Solutions: <http://www.wilcoxd.com>
Toolsmiths for the Internet Age PGP: 0x2F4E9C31
Hi All,
I just got the latest build, Version 1.5.5 (1372), and I noticed that
the python language syntax is now somewhat broken for comment
characters (#) inside regular expression strings r'some regular
expression'.
like:
some_reg_string = r'#'
shows up as illegal / incomplete syntax.
And e.g. all my code following this line:
parentPattern = re.compile(r'^#extends (\w+)\s*$')
becomes:
source.python
meta.function-call.python
meta.function-call.arguments.python
which is a little confusing.
best,
dirk
-----------------------------
Dirk van Oosterbosch
de Wittenstraat 225
1052 AT Amsterdam
the Netherlands
http://labs.ixopusada.com
-----------------------------
This morning I got the notice to update to a new cutting edge build.
Now when I try to use the svn status command I get the following error:
/Applications/TextMate.app/Contents/SharedSupport/Support/lib/
web_preview.rb:70:in `html_head': undefined method `+' for
nil:NilClass (NoMethodError) from /Applications/TextMate.app/Contents/
SharedSupport/Support/lib/web_preview.rb:117:in `html_header' from
(erb):29
svn update gives this error:
/Applications/TextMate.app/Contents/SharedSupport/Support/lib/
web_preview.rb:70:in `html_head': undefined method `+' for
nil:NilClass (NoMethodError) from /Applications/TextMate.app/Contents/
SharedSupport/Support/lib/web_preview.rb:117:in `html_header' from
(erb):29 -:13:in `write': Broken pipe (Errno::EPIPE) from -:13:in
`puts' from -:13 from -:13:in `each_line' from -:13
svn info:
NoMethodError
reason: undefined method `+' for nil:NilClass
trace:
/Applications/TextMate.app/Contents/SharedSupport/Support/lib/
web_preview.rb:70:in `html_head'
/Applications/TextMate.app/Contents/SharedSupport/Bundles/
Subversion.tmbundle/Support/format_info.rb:43
I didn't have any reason to test other commands.
Previously I never had any errors. Is there some new setting to get
svn status working again? Or some old setting I might have that would
be throwing it off?
In the advanced prefs I have TM_SVN set to /usr/local/bin/svn and
that's the only svn related change I have made to TextMate.
thanks,
john
Hello,
We have recently moved to an authenticated only proxy..
and when I open TextMate it gives me an error:
Error NSURLLErrorDomain -1012
I've tried to enter the user/pass in SystemPrefs and it doesn't work..
any idea how I could get updates again?
Thanks
hi there,
I see in the change list that
[NEW] Perl bundle: PerlMate will now request for user input when
reading from <STDIN> (Ciarán Walsh)
This seems very handy: Does anyone have an example of a command which
does this? If it is not perl specific, are there examples of syntax
for other languages, like cmd line php?
cheers,
t
If I write the following snippet:
${3:x}${1:$TM_SELECTED_TEXT}$3$2
activate it, then press tab twice so the first 'x' is selected, I would
expect what I type to be mirrored in the other 'x' too. Why isn't it?
Similarly,
${1:x}${2:y}$1$2
doesn't do what I'd expect: the 'x' is mirrored, but the 'y' is not.
What am I missing?
Thanks,
Robin
Hi,
I'm working on a set of XHTML/PHP pages and the document header
resides in a separate file. Is there a way to tell TextMate to insert
tags properly, ie. <br /> instead of <br> etc.?
Thanks!
Christian
To: All TextMate Actionscripters.
I'm looking to find a simple "Hello World" downloadable TextMate
project which demonstrates how to configure and compile with MTASC.
Haven't been successful yet with the Help documentation.
Sincerely,
Tony Jacobson
Ratio Interactive
Hey all,
i'm using 'xbel' for some specific xml file and like to know if it's
possible to let TextMate knows the files with extension xbel are xml
files ?
best,
Yvon
I have just tried enabling using Textmate from Apple's Mail
application to get better text editing. Works fine, but one thing I
miss from Mail is that text at different quote levels is coloured
differently. This would seem a simple enough thing to do (I would
have to do a bit of reading up though), but has anyone already done
this?
Dave.
Hi there
I have a non-public Wordpress blog behind a htpasswd
authentification. Is it someway possible to use the blogging bundle
all the same? When trying to fetch the posts, I get the following
errors:
/usr/lib/ruby/1.8/xmlrpc/client.rb:533:in `do_rpc': Authorization
failed. (RuntimeError)
HTTP-Error: 401 Authorization Required from /usr/lib/ruby/1.8/xmlrpc/
client.rb:409:in `call2'
from /usr/lib/ruby/1.8/xmlrpc/client.rb:399:in `call'
from /Library/Application Support/TextMate/Bundles/Blogging.tmbundle/
Support/lib/metaweblog.rb:31:in `getRecentPosts'
from /Library/Application Support/TextMate/Bundles/Blogging.tmbundle/
Support/lib/blogging.rb:547:in `fetch'
from /Library/Application Support/TextMate/Bundles/Blogging.tmbundle/
Support/lib/blogging.rb:546:in `popen'
from /Library/Application Support/TextMate/Support/lib/progress.rb:
11:in `call_with_progress'
from /Library/Application Support/TextMate/Bundles/Blogging.tmbundle/
Support/lib/blogging.rb:546:in `fetch'
from /tmp/temp_textmate.V9d44n:3
Thanks for any help in advance!
Oliver
I've just released BlogMate 0.4 which adds support for reading from
and writing to blogs behind HTTP Basic and Digest authentication.
Also, system keychain support is used for storing/fetching username/
password.
hope some of you can check it out.
http://ditchnet.org/blogmate
Todd Ditchendorf
Scandalous Software - Mac XML Developer Tools
http://scan.dalo.us
Hi,
I am a new Textmate user, and this is my first post. My initial
interest in Textmate was in using it as a python editor, although as
I learn more about it, I am interested in using it for LaTeX and
Context. The LaTeX bundle is very nice, though the ConTeXt bundle
doesn't seem to have a way to typeset the resulting file (at least as
far as I can see.) I have configured TeXShop to use Textmate as an
external editor---this works, but it is not as nice as working solely
in Textmate.
Is anyone is working on a ConTeXt bundle similar in functionality to
the LaTeX bundle?
Cheers,
-paul
Hi,
I'd link to run a shell command in a bundle and capture the output in
the html window. So I thought scriptmate.rb seems to be a good way to
go, but I am a bit clueless. Running this from the command line gives
me an error.
--------------------------------------------------
#!/usr/bin/env ruby
ENV['TM_SUPPORT_PATH']="/Applications/TextMate.app/Contents/SharedSupport/Support"
$:.unshift ENV['TM_SUPPORT_PATH'] + "/lib"
require 'scriptmate'
cmd_mate("ls")
--------------------------------------------------
nil
/Applications/TextMate.app/Contents/SharedSupport/Support/lib/scriptmate.rb:92:in `waitpid': no implicit conversion from nil to integer (TypeError)
from /Applications/TextMate.app/Contents/SharedSupport/Support/lib/scriptmate.rb:92:in `emit_html'
from /Applications/TextMate.app/Contents/SharedSupport/Support/lib/scriptmate.rb:16:in `cmd_mate'
from ./parse_texrun.rb:42
And scriptmate.rb looks a bit strange to me:
....
def emit_html
emit_header()
stdout, stderr, stack_dump, pid = @command.run
....
is trying to get 4 parameters from @command.run, but UserCommand#run
only returns 3. A related question: is it possible to get a pid from
popen3?
Patrick
> Looking at the diff, the b was previously a <, so the intent was to
> convert \< to \b (because of a change in the regexp library), but
> accidentally all <’s where converted to b’s.
>
> I have now reverted this part of r976, better late than never :)
Excellent! My first bug report and fix! Most exciting. Please
forgive my enthusiasm; I only came to programming in a serious way
about a year ago. I was 'inspired' to do so by a custom program my
company rolled out that was so astonishingly awful that I felt that I
had to demonstrate that better could be done. So, a year later, with
20+ newly purchased yet well worn O'Reilly titles on my shelf, it's
nice to be able to start contributing back to projects I like.
In addition, I have found another small problem with the Python
bundle - it has to do with the way it scopes 'meta.item-
access.python' sections.
In particular, it gets confused by the end ], and does not recognize
it as 'punctuation.definition.arguments.end.python', although it
recognizes the lead [ correctly as
'punctuation.definition.arguments.start.python'. For instance, put
the following in TextMate as Python, and note the scopes/coloring of
the []'s.
pairing_name = findNextWord(packet[row])[0]
The regexes responsible are below, along with my explanation of the
problem and proposed fix:
{ name = 'meta.item-access.python';
begin = '(?=[A-Za-z_][A-Za-z0-9_]*(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*\s*\[)';
end = '(\])';
patterns = (
{ begin = '(?=[A-Za-z_][A-Za-z0-9_]*(?:\.[A-Za-z_][A-Za-z0-9_]*)*\s*
\[)';
end = '(?=\s*\[)';
patterns = ( { include = '#dotted_name'; } );
},
{ begin = '(\[)';
end = '(?=\])';
beginCaptures = { 1 = { name =
'punctuation.definition.arguments.begin.python'; }; };
endCaptures = { 1 = { name =
'punctuation.definition.arguments.end.python'; }; };
patterns = ( { include = '$base'; } );
contentName = 'meta.item-access.arguments.python';
},
The problem is that the 'meta.item-access.python' begin regex tags a
LOCATION, specifically the location of the beginning of the first
legit Python dotted name followed by a [, thus correctly allowing the
[ itself to be matched within by
'punctuation.definition.arguments.begin.python'. However, the
'meta.item-access.python' end regex tags not the LOCATION of the
end ], but the end ] itself, thus preventing
'punctuation.definition.arguments.end.python' from selecting the
end ] as it should. In addition, the regex for
'punctuation.definition.arguments.end.python', instead of selecting
the end ], selects the LOCATION followed by an end ], which gives it
no characters in its scope!
My proposed fix swaps the two; both the start and end 'meta.item-
access.python' regexes select for LOCATION, and both
'punctuation.definition.arguments.begin.python' and
'punctuation.definition.arguments.end.python' select for the actual
CHARACTERS [ and ]. The code is below, and I have tested that it
properly scopes the Python constructs now.
{ name = 'meta.item-access.python';
begin = '(?=[A-Za-z_][A-Za-z0-9_]*(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*\s*\[)';
end = '(?<=\])';
patterns = (
{ begin = '(?=[A-Za-z_][A-Za-z0-9_]*(?:\.[A-Za-z_][A-Za-z0-9_]*)*\s*
\[)';
end = '(?=\s*\[)';
patterns = ( { include = '#dotted_name'; } );
},
{ begin = '(\[)';
end = '(\])';
beginCaptures = { 1 = { name =
'punctuation.definition.arguments.begin.python'; }; };
endCaptures = { 1 = { name =
'punctuation.definition.arguments.end.python'; }; };
patterns = ( { include = '$base'; } );
contentName = 'meta.item-access.arguments.python';
},
);
},
Hope this is helpful - I am (slowly!) looking through the rest of the
Python language definition to see if there are any other glitches I
can spot. Cheers,
Nick
When connecting to a blog over SSL, various blogging commands (e.g., Fetch Post) will include "warning: peer certificate won't be verified in this SSL session" in their output. Net::HTTP generates this warning when its verify_mode hasn't been set. It then defaults to OpenSSL::SSL::VERIFY_NONE. My patch sets it explicitly to avoid the warning.
I don't work with column editing much at all, but I do instinctively
use "select, drag, option key" to copy text. But most of the time my
clicking option gets me into column select mode.
Is there a way to remap the "select column" off of option so it'll
just drag-and-copy for me?
Thanks.
Hi,
Any tips on how to change the format of a line of Ruby based on it's
content?
In particular I was wanting to try deemphasize logging lines (i.e. starting
with "logger.*") by setting the text font to a gray. Any ideas/tips would
be great. Couldn't seem to see when it would be possible to do this in the
bundle manager.
Tks
Greg
TextMate has a syntax element called "Embedded Source", which is used
for things like the lstlisting environment in LaTeX or JavaScript
code embedded in HTML. The default background color for this element
is a light blue, which is almost identical to the light blue used for
selected text. Because of the similarity, I always get confused and
think I've inadvertently selected some embedded source. I'm wondering
why there is such a similarity between these colors. Was it
deliberate (and if so, what was the reason?) or was this an oversight?
Trevor
Hey folks -
I'm trying to get up-and-running with TextMate, which I will be using
primarily for LaTeX-ing, and I'm having some troubles. I've been
using LaTeX installed via MacPorts/DarwinPorts for a few months now,
so I'd prefer to get TM working with that if possible rather than
abandoning it for MacTex (unless there is really and truly a good
reason to do so).
The main problem I'm having is that when I call the "Insert Label/
Citation Based on Current Word" command, TM spits out "The tex
binaries cannot be located!" I assume this means that I have not
properly told TM where to find my LaTeX installation, but I can't
figure out how to do so. I tried creating a PATH environment
variable equal to the output of "echo $PATH" in Terminal, but I don't
think it helped. Sorry... either I'm doing something dumb or I'm
just not unix-y enough to understand what's going on here.
Any suggestions?
Thanks very much!
Best
- Chris MacMinn
Hi - I was looking over the Python language definition, and I came
upon a regex that I don't understand - or, it might be a bug. The
regex is in the FoldingStartMarker:
<key>foldingStartMarker</key>
<string>^\s*(def|class)\s+([.a-zA-Z0-9_ b]+)\s*(\((.*)\))?\s*:|\{\s*
$|\(\s*$|\[\s*$|^\s*"""(?=.)(?!.*""")</string>
The key mysterious part is right in the first character class, which
I believe is designed to pick out the name of the class/def in question:
[.a-zA-Z0-9_ b]+
Okay, I get it up until the ' b' part. Essentially, the name of a
class or def is a series of characters that are in a-z, A-Z, 0-9, or
are '_' or '.' . What's the point of the ' b' part? Was this meant
to be '\b', signifying a word boundary? Or is there some deeper
meaning to space b that I don't understand? Please forgive if this
is not an appropriate place for this question; I am rather new (well,
completely and totally new) to the use of mailing lists.
Brilliant program, btw - it takes time to appreciate it.
Nick
Hi,
Is there a way to highlight all occurances (e.g. in yellow say) of a
particular piece of text? Say a variable name for example?
Ideally also is there a way to, once such a variable is highlighted
through-out the file, you can change it in one place and it automatically
changes it in real time in other places in the file (I know I had this in
Jbuilder).
Tks
Greg
Hi!
Now I sit at my laptop because my other computer is right now not
available, my blog is set up here exactly (at least I think so) like
at my working-computer and if I use the cat-Snippet from the blogging
bundle I get the following behaviour and error:
TextMate tries to contact the blog for fetching the items and then I
get the error
/usr/lib/ruby/1.8/xmlrpc/client.rb:403:in `call':
XMLRPC::FaultException (XMLRPC::FaultException)
from /tmp/temp_textmate.xQsjEh:27
from /tmp/temp_textmate.xQsjEh:24:in `call'
from /Users/nik/Library/Application
Support/TextMate/Support/lib/progress.rb:36:in `call_with_progress'
from /Users/nik/Library/Application
Support/TextMate/Support/lib/progress.rb:32:in `call'
from /Users/nik/Library/Application
Support/TextMate/Support/lib/progress.rb:43:in `call_with_progress'
from /Users/nik/Library/Application
Support/TextMate/Support/lib/progress.rb:40:in `dialog'
from /Users/nik/Library/Application
Support/TextMate/Support/lib/progress.rb:40:in `call_with_progress'
from /tmp/temp_textmate.xQsjEh:24
Any help appreciated
Niels
Hi,
I am trying to follow this approach in the latex-help file:
In the case where what is expected is a label, then pressing escape
will similarly offer all matching labels from the TeX document.
Depending on your naming conventions, this could for instance offer a
list of all theorems: If the labels for theorems are all of the form
thm:labelname, and you have included the colon (:) in the list of
word characters in TextMate’s preferences, then pressing escape when
the caret is right before the closing brace in \ref{thm} will offer
as completion options all labels corresponding to theorems.
If there are many matching completions, it is often more convenient
to use the pull-down-list versions of the commands, which are
triggered by ⌥⎋.
I do have ":_" (just a colon and an underscore, no quotations)in the
preference pane as Word Characters. Is this ok or do they need to be
separated / in quotations / ... ?
Neither pressing <escape> nor <escape> + <alt> while the caret is
right in front of the closing bracket in latex mode, doesn't do
anything.
Now, I looked into the bundle editor, into the latex bundle in my
installation:
1) <escape> is the key equivalent for bibdesk completion
2) <alt>+<escape> is the key equivalent for "Citation based on
Current Word / Selection" AND for "Label Based on Current Word /
Selection" --- this seems a little weird to me. Is this how it should
be originally? Or have I changed this accidently at some point?
I remember a time when hitting <escape> (I think) actually has
worked and I used "eqn:" and "fig:" for labeling and referencing
equations and figures, respectively. Should the difference between
<alt>+<escape> and <escape> only that <alt>+<escape> should offer a
pull-down list and hitting <escape> multiple times would move through
the possible choices?
Is this something that got changed over the releases (I am working
with cutting edge)? That leads me to another question: when a bundle
gets updated in the bundle repository... do those changes get updated
in each new (cutting edge) release or would I check them out and
update them as I would with any other "default" bundle?
Thanks for your help,
Claus
Hello:)
1) I know that my use of Latex is different from the majorities of
the users because I create especially packages. I need to have a
really different completion. I need for example :
newcommand
renewcommand
RequirePackage
newcounter
setcounter
stepcounter
newlength
etc..
for xkeyval
define@cmdkey
define@boolkey
presetkeys....
for ifthen
ifthenelsee etc....
etc...
I would like to know the good way to obtain this
Is it necessary that I modify LateXCommandCompletions.rb ?
2) But I do not understand why in the LateXCommandCompletions.rb,
there are words like pi, Pi, lim etc ... words with 2 or 3 letters ?
Which is the interest to complement these words?
greetints alain