I'm a little hesitant to put this out there because I'm not sure if
it's a silly idea or not. I asked a little while back about
interactive template creation. I created a portfolio website that,
when the entries are created correctly, automatically generates
client lists, recent project lists, portfolio pages, etc. I just
needed a way to enter the data and have it format a blog entry.
What I ended up doing with it was using tm_dialog to create a form
and then process that in a template command that outputs to a new
blog.html file. It's very specific to my needs, so I'm obviously not
sending that to the list. However, the process seemed relatively
new, so I thought I'd share it, just in case.
The template will take any key-value pairs fed to it by the nib and
substitute them for the :::key::: in the template file. You can
build as complex a nib as you like, and do whatever you want with the
keys in the template file. It's all done in ruby.
It just includes a Mad Lib and is basically a proof of concept, but I
think it has applications ranging from composing emails to blog
entries and anything that could be sped up by inputting values into a
template interactively.

Brett Terpstra : Art Director
Circle Six Design, Inc.
111 Riverfront Dr, Suite 204
..................................................
p: 507.459.4398
877.858.4332
f: 1.866.540.3063
e: brett(a)circlesixdesign.com
http://www.circlesixdesign.com
..................................................
Hi Folks,
I've just started using TextMate and I'm very very impressed. I've
noticed the following behaviour and I wonder if anybody could let me
know if this is a "feature" or a bug.
I make a column selection and I replace "foo" with "foobar". This
increases the width of the column selection. Here is the problem --
any continuous text that passed through the column will now be broken
and expanded with spaces. This is not what I would expect and it will
seriously limit my use of find/replace in column selections.
Is this a bug? Or is it an operator error?
Thanks,
Leo
Hi,
Thanks for the tips, all. I got it working fine when I
understood where these damn commands should be put. I
got a bit lost between macros, commands, execute line,
plugins, bundles,... as a start ;)
anyway, it works now, thanks!
PS: is there any RSS feed for this list, or a good way
to follow it? (my yahoo! webmail doesn't like the
encoding of the message for some reason, it's very
annoying)
> Commands:
> http://macromates.com/textmate/manual/commands
>
> Feel free to ask follow-up questions, I donât know
> exactly what
> Octave produces, or which arguments it takes, but
> making the command
> be: âoctave -fâ and input âEntire Documentâ
> with output
> being⦠uhm⦠show tool tip, maybe? sounds like it
> should get you
> started.
>
> As for path to Octave, see:
> http://macromates.com/textmate/manual/
> shell_commands#search_path
>
>
>
> > De: Allan Odgaard <throw-away-1(a)macromates.com>
> À: TextMate users <textmate(a)lists.macromates.com>
> Date: Sun, 12 Nov 2006 16:33:36 +0100
> Objet: Re: [TxMt] run Octave code
>
> On 12. Nov 2006, at 15:59, baptiste auguie wrote:
>
> > Example:
> >
> > #! /sw/bin/octave -f
> >
> > load("datafile.dat");
> >
> > ...
> >
> > displays an error,
> >
> > error: load: unable to open input file
> `datafile.dat'.
>
> Itâs a relative path, so it must be, that the
> current working
> directory of your command is not the one which
> contains datafile.dat.
>
> If you do a real command (as suggested in the other
> letter) then the
> current working directory should always be that of
> the current file.
> For âR executions it is not the case.
>
___________________________________________________________________________
Découvrez une nouvelle façon d'obtenir des réponses à toutes vos questions !
Profitez des connaissances, des opinions et des expériences des internautes sur Yahoo! Questions/Réponses
http://fr.answers.yahoo.com
> You should have a look at the Help file within the
> LaTeX bundle,
> there's a number of different autocompletion
> commands in the LaTeX
> bundle. For the particular case you quoted, i.e.
> creating new
> environments, you would create it by first typing
> abstract and then
> pressing cmd-{ (cmd-shift-[ in US keyboards). (This
> is the command
> named "Insert Environment based on current word".
> You can also try to
> press cmd-{ before typing anything and see the
> options you get. If
> you want to autocomplete plain commands, then typing
> \ and the first
> couple of letters, and then pressing esc should do
> exactly what you
> want.
>
> Finally, you might want to have a look at the
> screencasts if you
> haven't seen them yet:
>
http://skiadas.dcostanet.net/afterthought/list-of-my-textmate-pages/
>
> Haris
Thanks, I had a closer look at these, and they
probably are efficient ways to provide autocompletion.
I sort of prefer a list that follows my typing than a
keyword though (I think it's a bad habit to type
"document" and then let TM wrap it in a \begin{}\end{}
environment. If you ever have to switch to another
editor for some reason, it's gonna be a pain.) Have
you had a chance to try Kile? I found its
autocompletion a dream.
I quite like the "ESC" way, though this key is quite
far on my keyboard. Is there a way to change the
mapping for the "TAB" which i never use for instance?
thanks again,
baptiste
___________________________________________________________________________
Découvrez une nouvelle façon d'obtenir des réponses à toutes vos questions !
Profitez des connaissances, des opinions et des expériences des internautes sur Yahoo! Questions/Réponses
http://fr.answers.yahoo.com
Hello,
I've run successfully some Octave code with Textmate,
using the following syntax,
#! /sw/bin/octave -f
my code here
i just select the whole text, and run "Execute line
inserting result". It used to work well, but for some
reason it now displays an error message when I try to
use some data files in the Octave code.
Example:
#! /sw/bin/octave -f
load("datafile.dat");
...
displays an error,
error: load: unable to open input file `datafile.dat'.
Running the same script in the Terminal works fine, so
the problem is really when running the script in
Octave. A simpler self containing script works fine
(not loading a file).
It's probably something to do with path directory, but
I don't know why it used to work and doesn't anymore
(possibly some update of TM in the meantime, and I
also registered and added a few bundles).
Any tips?
thanks,
baptiste
___________________________________________________________________________
Découvrez une nouvelle façon d'obtenir des réponses à toutes vos questions !
Profitez des connaissances, des opinions et des expériences des internautes sur Yahoo! Questions/Réponses
http://fr.answers.yahoo.com
Hi,
I've just purchased TextMate, and I have a few
questions:
1 - when editing LaTeX code, I'd love to get a similar
autocompletion feature as Kile for Linux (when you
type \be, you get a list of possiblities that follows
your typing (\begin{abstract},...)). It's *very*
convenient and clever: it gives you the latex commands
as well as words already present in the document, and
narrows the list according to your typing.
I found some posts about a latex autocompletion
bundle/macro for TM, but I can't have it to work (I'm
not sure what it does exactly anyway!). I get a huge
list, from which I can't seem to choose before it
disappears and leaves me with a blank document !
2 - Is it possible to always have tab editing
available, not only in projects? Or is there a way to
open TextMate with an empty project by default (where
you just drag and drop the files you want to use)?
3 - I run some Octave scripts from TextMate, using the
Matlab mode, but I have to put something like #!
/sw/bin/octave -f and run the script using the shell
command with all the text selected. How can I add this
compilation feature to the Matlab bundle (giving the
path to Octave, and not having to select the text
before running it)?
Thanks,
best regards,
baptiste
___________________________________________________________________________
Découvrez une nouvelle façon d'obtenir des réponses à toutes vos questions !
Profitez des connaissances, des opinions et des expériences des internautes sur Yahoo! Questions/Réponses
http://fr.answers.yahoo.com
I'd like to know if I'm the only one having problem with "Go to
project". When I choose it, I get a list of my projects, but choosing
any one of them does not do anything.
Thanks,
Alan
--
Alan Schmitt <http://alan.petitepomme.net/>
The hacker: someone who figured things out and made something cool
happen.
.O.
..O
OOO
Howdy.
There is a new syntax grammar in the Experimental bundle.
It scopes a bunch of things that I think the main Ruby syntax should
be scoping.
Since so many people use Ruby, I don't want to make any major changes
to it without getting some serious feedback.
It could be that some of this stuff should be kept separate in a
wrapper grammar for ruby, i don't know.
If you are interested in Ruby and the Ruby parsing and coloring that
TextMate does, please check out this new language and give us all
your feedback.
Also, I updated the Brilliance Black theme (in the official textmate
svn repo) to support all this new stuff.
If you're checking out the new stuff, this theme will show it in all
it's glory.
Enjoy
thomas Aylott — design42 — subtleGradient — CrazyEgg
Ahoy textmateys!
Avast ye white i-beam mouse cursor!
The current one is just pure white and totally disappears when it
hovers over something white (which happens often)
So I made a new one with a bit of a shadow.
It's included in the TextMate UNO nib theme
http://textmate.svn.subtlegradient.com/Hacked%20Nibs!/TextMate%20UNO.zip
Allan, can we just update the actual app for this one?
thomas Aylott — design42 — subtleGradient — CrazyEgg
I had my first go at creating a template last night. It was fairly
miserable. Even just using what TextMate creates automatically
resulted in a "dead" template that does nothing upon hitting test or
the assigned key combination. I copied an existing template and made
modifications to no avail. Is there a tutorial that goes beyond the
docs or is there something I'm missing?
Thanks,
Brett
Brett Terpstra : Art Director
Circle Six Design, Inc.
111 Riverfront Dr, Suite 204
..................................................
p: 507.459.4398
877.858.4332
f: 1.866.540.3063
e: brett(a)circlesixdesign.com
http://www.circlesixdesign.com
..................................................
James Edward Gray II wrote:
> I literally miss one feature of BBEdit: multi-file search...
> However, I see no point in complaining about this since I can add a
> bundle for it at any time.
Oh, I so wish you would do that, James; is now "any time"? ;)
Seriously tho, lately I've been using grep to do multifile searches
since it's too much effort within TextMate, and it's not worth firing
up BBEdit for. I usually have one or two files open rather than a
project, and usually my multi-file searches are within a folder
associated with another project completely. I only need to do this a
couple times a week so it's not too annoying, but it would be nice if
I could search a given directory like BBEdit.
Things keeping me from loving TextMate even more than I already do:
- better multifile searches
- side-by-side diff (love BBEdit!)
- better handling of very large files
- split views
- chunked undo
And to be fair, just a few of the things I love about TextMate:
- editing is fun
- amazing syntax hilighting for all the languages I work with and
many more as well
- snippets
- it's really smart
- incredible support (see thanks below)
- bundles beyond count
- creating my own snippets, commands and macros EASILY!
- it's constantly being updated (program and snippets both)
- the screencasts
Many thanks to Allan and the many people creating and maintaining
bundles, you really have created the best text editor out there (IMHO).
- Dave Winzler
Perhaps it doesn't exist or I don't know how but is it possible to
search in a specific directory? I know you can search through a whole
project. My project is huge and the searches take forever eventhough I
usually know which directory I want to search in anyway. I wind up
having to fire up another editor to search.
Any ideas?
thanks
Hi,
I was trying out Hypersearch and I noticed that there was similar
functionality in TextMate already. I then tried that and found a bug.
If you 'Find All in Document' - shift-control-f - and the document
hasn't been saved yet, then you get a weird error:
/tmp/temp_textmate.aZZ02d:4:in `url_esc': private method `gsub'
called for nil:NilClass (NoMethodError) from /tmp/
temp_textmate.aZZ02d:25 from /tmp/temp_textmate.aZZ02d:22:in
`each_line' from /tmp/temp_textmate.aZZ02d:22
'Find All in Document' is part of the TextMate bundle, so I guess I
could fix this myself, but I don't use it enough. I was just playing.
Have a nice day,
Will :-}
Hi Textmate Guys,
I'm trying out textmate using version 1.5.4 and I checked out bundle
revision 6074 from SVN this afternoon. It appears the perl bundle
has a few problems with indenting. Specifically with nested hashes
and closing curly braces.
Typing this code is fine (the auto-indenting works great):
my $b = {
a => {
test => 1
},
b => {
test_me => 2
}
};
But if you were to re-indent that section you wind up with:
my $b = {
a => {
test => 1
},
b => {
test_me => 2
}
};
Obviously this causes lots of problems for code read ability.
Secondarily, if you have a statement like:
my ($brand_name, $product_name) = $self->{feed_db}->selectrow_array
("select brand, name from products where sku = ? limit 1", undef,
$results->{unique_product_id});
And reindent it changes to:
my ($brand_name, $product_name) = $self->{feed_db}->selectrow_array
("select brand, name from products where sku = ? limit 1", undef,
$results->{unique_product_id});
Is there a way to indent the parameters to keep alignment with the
first parameter, this helps for really long statements that take
multiple lines.
It also appears to have problems with if statements like:
if($bar) {
if($car) {
$baz;
} else {
$car;
}
}
After re-indent that becomes:
if($bar) {
if($car) {
$baz;
} else {
$car;
}
}
It would appear this is a general problem with a closing curly brace
as even,
foo(bar => {
a => 1,
},
car => {
test => 3
})
Becomes:
foo(bar => {
a => 1,
},
car => {
test => 3
})
Secondarily:
Is it possible to have a preference so that:
foo(bar => {
a => 1,
})
When indented becomes:
foo(bar => {
a => 1,
})
Lastly a more general Textmate question coming from XEmacs. I didn't
see any support for register buffers. Would there be a way to add
them? As for what a register buffer does is that it allows you to
copy to a named "register" (commonly you pick a letter), and then you
can insert a register by just entering that same letter that you
copied the contents to. You can see the docs from XEmacs about this
here:
http://www.xemacs.org/Documentation/21.5/html/xemacs_13.html#SEC102
This would require support for reading input from the user once they
hit the appropriate key binding.
Thanks,
Rusty
That was quick. Thanks!!
Norm
---
Norman A. Cohen
nacohen(a)mac.com
"Whatever you may be sure of, be sure of this, that you are
dreadfully like other people."
James Russell Lowell
On Nov 11, 2006, at 13:50 PM, textmate-request(a)lists.macromates.com
wrote:
> Oh man, I forgot to change it. It was pointing to the nib I was
> using for testing. I just committed a fix.
>
I have a half-baked idea for a bundle and I wanted to solicit
feedback in an attempt to more fully bake it.
When coding I commonly find myself jumping around not only within a
file but often between files. Typically to do this I'm either using
the CTags bundle or cmd-E, cmd-shift-F, click in the find window,
look at something, then try to figure out where I was. I find myself
expending way too much mental effort trying to remember where I am at
any point in time.
My idea is for a module which allows you to set global bookmarks per
project along with history as you follow the bookmarks. The bookmarks
would be persisted via a file in the project root called .tmbookmarks
or some such. The bundle would have these actions:
- add bookmark (also places bookmark on top of history)
- show bookmarks
- delete bookmark (presents list of bookmarks, select to delete one
or more)
- clear bookmarks (deletes all bookmarks)
- show history
- go back (returns to most recently added/followed bookmark)
- go forward
- clear history
The bookmarks/history would be presented either via tmdialog or
simply as an HTML window (similar to CTags's navigation window).
The forward/back would be a browser-type history that is populated as
you click thru your bookmarks. I'd like to tie the history into the
CTags bundle as well.
So for example, you could do something like:
- add bookmark (this would add the current file/line)
- cmd-e, cmd-shift-f, click to new file.
- go back (this would save the current file/line then jump back to
the just added bookmark)
I have to think a bit more about how the bookmarks/history will
interact. It might be better to have the history work more like a
shell's pushd/popd actions.
Also, obviously as you edit a file your bookmarks end up pointing to
the wrong line. However, I have this crazy idea that I can save two
or three lines of context with each bookmark (a la diff) so that when
following a bookmark I can validate it and resync automatically (a la
patch).
Thoughts?
j.
Jay Soffian wrote:
> This reminds me. I was surprised to find that the Diff bundle does
> not support using Xcode's opendiff. Is this just an oversight
> (either in the bundle or by me), or does no one care for opendiff?
>
> In general it seems like it would be useful to be able to
> generically configure all the bundles to use opendiff where it
> makes sense to use it as a replacement for /usr/bin/diff. This
> would be settable via something like TM_USEOPENDIFF or some such. I
> know there's certainly times when I'd prefer to have the Subversion
> bundle diff for me using opendiff.
Yup, that's pretty much what I'm looking for too.
I ended up hacking together some of the commands from the Diff bundle
to get an opendiff equivalent of "Diff Document With Arbitrary
File...", but it only works with the saved version of the current
document which limits its usefulness (can't compare unsaved changes,
can't compare new unsaved documents for instance).
Still, in case anybody else finds it useful:
(Save: Nothing)
(Input: Entire Document)
(Output: Discard)
require_cmd opendiff "Opendiff comes with Apple's developer tools."
# set utf-8 as the default encoding (used by opendiff)
export __CF_USER_TEXT_ENCODING=$UID:0x8000100:0x8000100
path=$(osascript<<END
tell application "TextMate"
set theFile to choose file
set the result to POSIX path of theFile
end tell
END)
opendiff "$path" "$TM_FILEPATH"
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Hi,
yesterday I tried to use the new feature "New Project" from the
"Xcode"-bundle. I got an error that "tm_dialog" can't use the option -
d, it didn't work.
So I checked out the hole "Bundle", "PlugIns", "Support" and "Tools"
directories from the subversion repository to ~/Library/Application
Support/TextMate/ and tried it again, but it didn't work also.
Then I opened the "Dialog Plugin" from "Tools" in Xcode, compiled the
Dialog.tmplugin, put it in "PlugIns" and tried it again - it didn't
worked.
Later I realized I had to compile "tm_dialog.mm" in the same project
and put it in "Support/bin" and also put the before compiled
"Dialog.tmplugin" in "PlugIns". This works finally.
Now I'm asking myself if I did anything wrong or missed anything or
is this the usual way to get new tools to work?
I think it would be easier to put an compiled updated version of the
files to "PlugIns" or "Support/bin" in the subversion repository if
the source file gets updated so an svn update would get all user data
up to date.
It would also be nice if there could be a new target in the Xcode-
project which builds tm_dialog so this gets done automatically; I did
this in the terminal.
Thanks for all the info I missed,
Simon
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)
iD8DBQFFVKYFYRX4BO+zMikRCl2wAJ4pzM63D0d2PNIrAJSkMYUGyY2W7QCfexI/
H0rtEix8UvebyHzkrgg8f28=
=UzNJ
-----END PGP SIGNATURE-----
Allan,
I'm looking at improving the folding support in the Python bundle.
One thing that would help would be if the stop marker regex could
reference a capture made in the start marker regex. That way I could
capture the indent that was in effect when the start marker matched.
The other thing that would help (I think) would be a way to
explicitly reset the nesting level.
Also, is there a way to view what the nesting level is? Something
like TM_FOLD_LEVEL seems like it might be useful.
Thoughts?
j.
I'm trying to write a snippet that will erase
*everything within inclosing tags
and
*everything with enclosing tags including the tags themselves.
So far I've got `perl -e 's/<\${TM_SELECTED_TEXT}>(\n|.)+?/<\/$
{TM_SELECTED_TEXT}>//g'`, input is document, output is new document
where the user has the word inside a tag selected. This isn't
working... and it would be better if the user could select the whole
ending or beginning tag rather than just the word. Any pointers would
be appreciated.
Is there a simple way (within Textmate or otherwise) to convert a
page of mediawiki syntax to that for dokuwiki ?
(Mediawiki is what Wikipedia uses; here is an example of dokuwiki:
http://zshwiki.org/ ).
Thanks in advance.
Bill Scott
Hello,
I'm a complete newbie concerning TextMate customization, but there is
something I'd like to do that I would find very useful which I don't
know how to tackle.
The latest beta of MailTags allows one to create urls pointing to
Mail messages in a very robust way: the url works across several macs
synchronized to the same imap account and when the message is moved
or tagged. I'm now using these urls to refer to emails in my GTDAlt
file.
How would one proceed to add a command that opens such a message (in
Mail) when called on a url. The way I proceed now is select and copy
the url (which looks like message://454F0376.2010005@ens-lyon.fr),
and type "open " and paste the url in a terminal, which opens it. I
found one improvement, which is adding "open " before the url in
TextMate, selecting it, and calling ^R. What I would like is a way,
when the cursor is inside the url, to call a command that opens it,
but I don't know how to do it.
Thank you for any suggestion,
Alan
--
Alan Schmitt <http://alan.petitepomme.net/>
The hacker: someone who figured things out and made something cool
happen.
.O.
..O
OOO
Soo. I started doing some work on my website in TextMate, and wanted to get
the changes regularly/easily up; the Transmit bundle that shipped w/
TextMate was okay, buut, didn't quite do what I wanted or in a _way_ that I
wanted.. I didn't see another option so went and made one.. :) Posting here
in case it suits anyone elses needs better then the current offering.
Basically, its purpose is to sync your current project (and it has to be a
project) with a remote site. You start out by selecting
"Synchronization->Configure Sync" and in the file that pops up enter the
host, username, path and method (only 'Transmit' is supported right now).
These settings can be accessed through that command in the future; they're
stored in a file called ".~sync.sh" in the root of your project so are
persistant across your project.
Then, you hit Command+F12, and it grabs your password from your Keychain
(the first time it sets it), then uses AppleScript to tell Transmit to
connect, sync the files, and then close.
The "Method" actually is used to determine which AppleScript file to run to
actually tell Transmit/whatever to DO things. There's a lame attempt at a
Cyberduck one in there, but since I'm happy w/ Transmit I never made it work
:)
--Stephen
Hello,
I'm often switching between French and English during my work day,
and I was wondering if there was an easy way to switch the spell
checker using only the keyboard in TextMate. (For most applications I
use Spell Catcher X, but as it's an input method it does not play
well with TextMate.)
Thanks,
Alan
--
Alan Schmitt <http://alan.petitepomme.net/>
The hacker: someone who figured things out and made something cool
happen.
.O.
..O
OOO